@charset "UTF-8";
@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900";

/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*,
:before,
:after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent
}

body {
  margin: 0
}

main {
  display: block
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none
}

dt {
  font-weight: 700
}

dd {
  margin-left: 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit
}

pre {
  font-family: monospace, monospace;
  font-size: inherit
}

address {
  font-style: inherit
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit
}

abbr[title] {
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom
}

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default
}

:-moz-focusring {
  outline: auto
}

select:disabled {
  opacity: inherit
}

option {
  padding: 0
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0
}

legend {
  padding: 0
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

[type=number] {
  -moz-appearance: textfield
}

label[for] {
  cursor: pointer
}

details {
  display: block
}

summary {
  display: list-item
}

[contenteditable]:focus {
  outline: auto
}

table {
  border-color: inherit;
  border-collapse: collapse
}

caption {
  text-align: left
}

td,
th {
  vertical-align: top;
  padding: 0
}

th {
  text-align: left;
  font-weight: 700
}

@keyframes jump-once {
  0% {
    transform: translateY(0)
  }

  50% {
    transform: translateY(-.4em)
  }

  to {
    transform: translateY(0)
  }
}

@keyframes scrollbar {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }

  to {
    -webkit-transform: translateY(350%);
    transform: translateY(350%)
  }
}

@keyframes starmap-star-fade {
  0% {
    opacity: 0%
  }

  to {
    opacity: 100%
  }
}

@keyframes progress-scale {
  0% {
    transform: scaleX(0)
  }

  to {
    transform: scaleX(1)
  }
}

@keyframes tgi-home-parallax-in-pc {
  0% {
    opacity: 0
  }

  50% {
    opacity: 1
  }

  to {
    opacity: 1
  }
}

@keyframes tgi-home-parallax-in-sp {
  0% {
    opacity: 0
  }

  80% {
    opacity: 1
  }

  to {
    opacity: 1
  }
}

:root {
  --theme-color-black: #000;
  --theme-color-black-shadow-20: rgba(0, 0, 0, .196);
  --theme-color-darkgray: #222222;
  --theme-color-gray: #8D8D8D;
  --theme-color-gray-semidark: #707070;
  --theme-color-lightgray: #D9D9D9;
  --theme-color-lightgray-semilight: #EEEEEE;
  --theme-color-lightgray-light: #F5F5F5;
  --theme-color-lightgray-semidark: #C1C1C1;
  --theme-color-lightgray-dark: #a7a7a7;
  --theme-color-white: #fff;
  --theme-color-white-op50: rgba(255, 255, 255, .4980392157);
  --theme-color-red: #CF0909;
  --theme-color-red-semidark: #AC1616;
  --theme-color-blue: #00ABEB;
  --theme-color-gold: #C4B393;
  --theme-color-gold-semilight: #E6E2D7;
  --theme-color-gold-light: #F2F2EC;
  --theme-color-gold-semidark: #8C8069;
  --theme-color-accent: #C4B393;
  --theme-color-accent-semilight: #E6E2D7;
  --theme-color-accent-light: #F2F2EC;
  --theme-color-accent-semidark: #8C8069;
  --theme-color-font: #222222;
  --theme-site-bg: white;
  --theme-font-family: Noto Sans JP, sans-serif;
  --theme-font-size: 1.0416666667vw;
  --theme-font-weight: 500;
  --theme-line-height: 1.6;
  --theme-wrapper-side-space: 8rem;
  --theme-wrapper-middle-side-space: 2.4rem;
  --theme-wrapper-narrow-side-space: 2.4rem;
  --theme-wrapper: 80rem;
  --theme-wrapper-middle: 64rem;
  --theme-wrapper-narrow: 53.3333333333rem;
  --theme-wrapper-middle-gap: calc((var(--theme-wrapper) - var(--theme-wrapper-middle)) * .5 - var(--theme-wrapper-middle-side-space));
  --theme-wrapper-narrow-gap: calc((var(--theme-wrapper) - var(--theme-wrapper-narrow)) * .5 - var(--theme-wrapper-narrow-side-space));
  --theme-header-height: 5.6rem;
  --theme-header-logo-width: 9.0806666667rem;
  --theme-header-wrapper-space: 2.1333333333rem;
  --theme-page-header-bc-area-height: 5.5555555556vw;
  --theme-section-padding: 5.3333333333rem;
  --theme-list-block-space: 42px;
  --theme-border-radius-exlarge: 2.6666666667rem;
  --theme-border-radius-semilarge: .8rem;
  --theme-border-radius-large: .5333333333rem;
  --theme-border-radius-small: .2666666667rem;
  --theme-form-optional-text: "任意";
  --theme-form-required-text: "必須";
  --theme-header-bc-bottom-margin-sp: 11.0256410256vw
}

@media screen and (min-width: 1440px) {
  :root {
    --theme-font-size: 15px
  }
}

@media screen and (max-width: 768.98px) {
  :root {
    --theme-safari-address-bar-height: 57px;
    --theme-safari-address-bar-height-vw: 14.6153846154vw;
    --theme-safari-address-bar-height-rem: 4.0714285714rem;
    --theme-font-size: max(10px, 3.5897435897vw);
    --theme-line-height: 1.65;
    --theme-wrapper-side-space: 1.7142857143rem;
    --theme-wrapper-middle-side-space: 2.1428571429rem;
    --theme-wrapper-narrow-side-space: 1.7142857143rem;
    --theme-wrapper-narrow-title-left-space: calc(var(--theme-wrapper-side-space) + 2.0512820513vw);
    --theme-header-height: 4.4285714286rem;
    --theme-header-logo-width: 7.0714285714rem;
    --theme-header-wrapper-space: 1.2857142857rem;
    --theme-page-header-bc-area-height: auto;
    --theme-section-padding: 2.1428571429rem;
    --theme-list-block-space: 24px;
    --theme-border-radius-exlarge: .7142857143rem;
    --theme-border-radius-semilarge: .5714285714rem;
    --theme-border-radius-large: .2857142857rem;
    --theme-border-radius-small: .1428571429rem
  }
}

:root {
  font-size: var(--theme-font-size);
  font-feature-settings: "palt";
  font-weight: 400;
  letter-spacing: .04em;
  color: var(--theme-color-font);
  background: var(--theme-site-bg)
}

picture {
  display: contents
}

.hidden {
  display: none !important
}

@media screen and (min-width: 769px) {
  .hidden-pc {
    display: none !important
  }
}

@media screen and (max-width: 768.98px) {
  .hidden-sp {
    display: none !important
  }
}

.eng {
  font-family: futura-100, Futura, Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal
}

.eng {
  letter-spacing: 0
}

a,
span,
h1,
h2,
h3,
h4,
h5,
h6,
h7,
h8,
article,
section,
header,
p,
div,
ul,
li,
ol,
nav {
  word-break: break-word
}

@media screen and (min-width: 390px) and (max-width: 1440px) {
  :root {
    --dev-design-width: "pc"
  }
}

@media screen and (max-width: 390px) {
  :root {
    --dev-design-width: "sp"
  }
}

body {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
  font-weight: var(--theme-font-weight);
  font-optical-sizing: auto;
  line-height: var(--theme-line-height);
  color: var(--theme-color-font);
  background: var(--theme-site-bg)
}

body * {
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset
}

@media only screen and (min-resolution: 2dppx) {
  body * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
  }
}

body *:focus {
  outline: none
}

body ::selection {
  color: #fff;
  background-color: #353538
}

img {
  object-fit: cover;
  max-width: 100%;
  height: auto
}

@media screen and (min-width: 769px) {
  .pc-none {
    display: none !important
  }
}

@media screen and (max-width: 768.98px) {
  .sp-none {
    display: none !important
  }
}

.displayContents {
  display: contents
}

.toggle-view {
  pointer-events: none
}

.toggle-view.is-show {
  pointer-events: auto
}

.flex {
  display: flex
}

.flex.flex-center {
  justify-content: center;
  align-items: center
}

.flex.flex-between {
  justify-content: space-between;
  align-items: flex-end
}

.grid {
  display: grid
}

.grid.grid-2 {
  grid-template-columns: repeat(2, 1fr)
}

@media screen and (max-width: 768.98px) {
  .grid.grid-2 {
    grid-template-columns: 1fr
  }
}

@media screen and (min-width: 769px) {
  .grid.grid-2 .grid-full {
    grid-column: span 2
  }
}

.grid.grid-2-sp {
  grid-template-columns: repeat(2, 1fr)
}

@media screen and (max-width: 768.98px) {
  .grid.grid-2-sp {
    grid-template-columns: repeat(2, 1fr)
  }
}

.grid.grid-2-sp .grid-full {
  grid-column: span 2
}

@media screen and (min-width: 769px) {
  .gird-menu-left {
    grid-template-columns: 1fr 64.5333333333rem;
    gap: 4.8rem
  }
}

@media screen and (max-width: 768.98px) {
  .gird-menu-left {
    gap: 3.4285714286rem
  }
}

@media screen and (min-width: 769px) {
  .gird-menu-right {
    grid-template-columns: var(--theme-wrapper-narrow) 1fr;
    gap: 4.8rem
  }
}

@media screen and (max-width: 768.98px) {
  .gird-menu-right {
    gap: 2.7857142857rem
  }
}

.ez-toc-debug-messages {
  display: none !important
}

a {
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {
  a:hover {
    opacity: .5
  }
}

a:active,
a:focus,
a:focus-within {
  opacity: .5
}

header h1:last-child,
header h2:last-child {
  margin-bottom: 0
}

body>article {
  border-top-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  body>article {
    border-top-width: .0714285714rem
  }
}

body>article {
  border-style: solid;
  border-color: var(--theme-color-font);
  margin-top: var(--theme-header-height)
}

body.smooth_anime_scroll_enabled>#smooth-wrapper>#smooth-content>article {
  margin-top: var(--theme-header-height)
}

body.layout-article-full>article {
  margin-top: 0
}

body.home>article {
  border-width: 0
}

body.article-border-none>article {
  border-width: 0
}

@media screen and (max-width: 768.98px) {

  body.article-border-sp-none>article,
  body.inc-page-header>article {
    border-width: 0
  }
}

body.gnavi-open {
  pointer-events: none
}

section {
  position: relative;
  padding-block: var(--theme-section-padding);
  background: #fff
}

section header {
  margin-bottom: 3.8rem
}

section .sec-subtitle {
  font-size: .9333333333rem
}

@media screen and (max-width: 768.98px) {
  section .sec-subtitle {
    font-size: 1rem
  }
}

section .sec-subtitle {
  font-weight: 500;
  letter-spacing: -.04em;
  line-height: 1.05;
  margin-bottom: .8em
}

section .sec-subtitle.vw {
  font-size: .9722222222vw
}

@media screen and (max-width: 768.98px) {
  section .sec-subtitle.vw {
    font-size: 1rem
  }
}

section .sec-title {
  font-size: 2.6666666667rem;
  font-weight: 700;
  letter-spacing: .1em
}

@media screen and (max-width: 768.98px) {
  section .sec-title {
    font-size: 2rem
  }
}

@media screen and (min-width: 769px) {
  section .sec-title.vw {
    font-size: 2.7777777778vw
  }
}

section#mainvisual {
  padding-block: 0
}

.wrapper,
.wrapper-middle {
  margin-inline: auto;
  width: 100%;
  max-width: calc(var(--theme-wrapper-side-space) * 2 + var(--theme-wrapper));
  padding-inline: var(--theme-wrapper-side-space)
}

.wrapper-middle {
  padding-inline: calc(var(--theme-wrapper-middle-side-space) + var(--theme-wrapper-middle-gap));
  max-width: calc(var(--theme-wrapper-middle) + var(--theme-wrapper-middle-side-space) * 2 + var(--theme-wrapper-middle-gap) * 2)
}

@media screen and (max-width: 768.98px) {
  .wrapper-middle {
    padding-inline: var(--theme-wrapper-middle-side-space)
  }
}

.wrapper-narrow {
  margin-inline: auto;
  width: 100%;
  max-width: calc(var(--theme-wrapper-side-space) * 2 + var(--theme-wrapper));
  padding-inline: var(--theme-wrapper-side-space)
}

.wrapper-narrow {
  padding-inline: calc(var(--theme-wrapper-narrow-side-space) + var(--theme-wrapper-narrow-gap));
  max-width: calc(var(--theme-wrapper-narrow) + var(--theme-wrapper-narrow-side-space) * 2 + var(--theme-wrapper-narrow-gap) * 2)
}

@media screen and (max-width: 768.98px) {
  .wrapper-narrow {
    padding-inline: var(--theme-wrapper-narrow-side-space)
  }
}

.wrapper-cancel {
  margin-inline: calc(var(--theme-wrapper-side-space) * -1)
}

.circle-h {
  overflow: hidden;
  border-radius: 30rem
}

.swiper-autoslider .swiper-wrapper {
  transition-timing-function: linear
}

.swiper-pagination-bullets {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .22em;
  margin-inline: 1.25rem;
  min-width: 3.8rem
}

.swiper-pagination-bullets .swiper-pagination-bullet {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  .swiper-pagination-bullets .swiper-pagination-bullet {
    --circle-size: .5714285714rem
  }
}

.swiper-pagination-bullets .swiper-pagination-bullet {
  background: var(--theme-color-lightgray)
}

.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--theme-color-black)
}

.swiper-pagination-bullets .swiper-pagination-clickable .swiper-pagination-bullet {
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {
  .swiper-pagination-bullets .swiper-pagination-clickable .swiper-pagination-bullet:hover {
    opacity: .5
  }
}

.swiper-pagination-bullets .swiper-pagination-clickable .swiper-pagination-bullet:active,
.swiper-pagination-bullets .swiper-pagination-clickable .swiper-pagination-bullet:focus,
.swiper-pagination-bullets .swiper-pagination-clickable .swiper-pagination-bullet:focus-within {
  opacity: .5
}

.slider-navi {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  margin-top: 1.6rem
}

.slider-navi .btn {
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {
  .slider-navi .btn:hover {
    opacity: .5
  }
}

.slider-navi .btn:active,
.slider-navi .btn:focus,
.slider-navi .btn:focus-within {
  opacity: .5
}

.box-accordion .view-toggle {
  cursor: pointer
}

@media (hover: hover) {
  .box-accordion .view-toggle:hover {
    transition: all .25s ease;
    transition-property: opacity
  }
}

@media (hover: hover) and (hover: hover) {
  .box-accordion .view-toggle:hover:hover {
    opacity: .5
  }
}

@media (hover: hover) {

  .box-accordion .view-toggle:hover:active,
  .box-accordion .view-toggle:hover:focus,
  .box-accordion .view-toggle:hover:focus-within {
    opacity: .5
  }
}

.box-accordion .view-toggle:active,
.box-accordion .view-toggle:focus,
.box-accordion .view-toggle:focus-within {
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {

  .box-accordion .view-toggle:active:hover,
  .box-accordion .view-toggle:focus:hover,
  .box-accordion .view-toggle:focus-within:hover {
    opacity: .5
  }
}

.box-accordion .view-toggle:active:active,
.box-accordion .view-toggle:active:focus,
.box-accordion .view-toggle:active:focus-within,
.box-accordion .view-toggle:focus:active,
.box-accordion .view-toggle:focus:focus,
.box-accordion .view-toggle:focus:focus-within,
.box-accordion .view-toggle:focus-within:active,
.box-accordion .view-toggle:focus-within:focus,
.box-accordion .view-toggle:focus-within:focus-within {
  opacity: .5
}

.box-accordion .view-accordion-area {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height .25s ease-out, opacity .25s ease-out
}

.box-accordion.is-open .view-accordion-area {
  opacity: 1
}

.flex-column {
  display: flex;
  flex-direction: column
}

.sentence {
  --my-p-gap: 1.6em
}

.sentence p {
  margin-bottom: var(--my-p-gap)
}

.sentence p:last-child {
  margin-bottom: 0
}

.description {
  font-size: 1.2rem;
  font-weight: 500
}

@media screen and (max-width: 768.98px) {
  .description {
    font-size: .8571428571rem
  }
}

.breadcrumbs {
  display: flex;
  align-items: center
}

.breadcrumbs>span {
  display: inline-block
}

.breadcrumbs>span span,
.breadcrumbs>span .bc-bar {
  margin-right: .5em
}

.breadcrumbs .bc-bar {
  width: .5333333333rem;
  height: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  .breadcrumbs .bc-bar {
    width: .5714285714rem
  }
}

@media screen and (max-width: 768.98px) {
  .breadcrumbs .bc-bar {
    height: .0714285714rem
  }
}

.breadcrumbs .bc-bar {
  display: inline-block;
  margin-bottom: .3em;
  background: var(--theme-color-font)
}

.breadcrumbs .breadcrumb_last {
  opacity: .6;
  color: var(--theme-color-gray-semidark)
}

.header-breadcrumb-area {
  font-size: .9027777778vw;
  padding-top: .6597222222vw;
  letter-spacing: 0
}

@media screen and (max-width: 768.98px) {
  .header-breadcrumb-area {
    font-size: 3.0769230769vw;
    padding-top: .55em
  }
}

.header-breadcrumb-area .wrapper .breadcrumbs {
  font-size: .8666666667rem
}

@media screen and (max-width: 768.98px) {
  .header-breadcrumb-area .wrapper .breadcrumbs {
    font-size: .8571428571rem
  }
}

.btn-area {
  margin-top: 4rem
}

@media screen and (max-width: 768.98px) {
  .btn-area {
    margin-top: 2.8rem
  }
}

.bg-grass {
  --my-grass-shadow-y: .0666666667rem;
  --my-grass-blur: .2666666667rem;
  --my-grass-bf-blur: .6666666667rem;
  position: relative;
  overflow: hidden;
  background: #ffffff0f;
  backdrop-filter: blur(var(--my-grass-blur)) saturate(180%);
  -webkit-backdrop-filter: blur(var(--my-grass-blur)) saturate(180%);
  box-shadow: inset 0 var(--my-grass-shadow-y) 0 #ffffff40
}

.bg-grass:before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  filter: blur(var(--my-grass-bf-blur)) brightness(1.1);
  transform: scale(1.1);
  opacity: .6;
  pointer-events: none
}

.bg-grass:after {
  content: "";
  position: absolute;
  inset: 0;
  border: var(--my-grass-shadow-y) solid rgba(255, 255, 255, .75);
  box-shadow: inset 0 0 var(--my-grass-bf-blur) 0 #fff;
  background: linear-gradient(-45deg, rgba(255, 255, 255, .8), rgba(255, 255, 255, .1), transparent 60%);
  mix-blend-mode: overlay;
  opacity: .6;
  pointer-events: none
}

@media screen and (max-width: 768.98px) {
  .bg-grass {
    --my-grass-shadow-y: .0714285714rem;
    --my-grass-blur: .2857142857rem;
    --my-grass-bf-blur: .7142857143rem
  }
}

.bg-accent-light {
  background: var(--theme-color-accent-light)
}

.slider-area {
  display: flex;
  align-items: center;
  width: 100%
}

.slider-area .video-slider {
  width: 100%
}

.slider-area .video-slider .video {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.slider-area .video-slider .video.is-playing {
  opacity: 1
}

.starmap .star {
  animation-name: starmap-star-fade;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-fill-mode: both;
  animation-timing-function: linear
}

.post-list {
  --my-post-list-gap: 1.3em;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--my-post-list-gap)
}

.post-list .list-item .post-item-inner {
  display: flex;
  flex-direction: column
}

@media (hover: hover) {
  .post-list .list-item .post-item-inner:hover {
    opacity: 1
  }

  .post-list .list-item .post-item-inner:hover .image-area img {
    transform: scale(1.2)
  }

  .post-list .list-item .post-item-inner:hover .post-title {
    opacity: .5
  }

  .post-list .list-item .post-item-inner:hover .post-title {
    text-decoration: underline
  }
}

.post-list .list-item .post-item-inner:active,
.post-list .list-item .post-item-inner:focus,
.post-list .list-item .post-item-inner:focus-within {
  opacity: 1
}

.post-list .list-item .post-item-inner:active .image-area img,
.post-list .list-item .post-item-inner:focus .image-area img,
.post-list .list-item .post-item-inner:focus-within .image-area img {
  transform: scale(1.2)
}

.post-list .list-item .post-item-inner:active .post-title,
.post-list .list-item .post-item-inner:focus .post-title,
.post-list .list-item .post-item-inner:focus-within .post-title {
  opacity: .5
}

.post-list .list-item .post-item-inner:active .post-title,
.post-list .list-item .post-item-inner:focus .post-title,
.post-list .list-item .post-item-inner:focus-within .post-title {
  text-decoration: underline
}

.post-list .list-item .image-area {
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  .post-list .list-item .image-area {
    border-radius: .5714285714rem
  }
}

.post-list .list-item .image-area {
  display: flex;
  overflow: hidden;
  flex-grow: 1;
  width: 100%;
  height: 11.1333333333rem;
  background: var(--theme-color-lightgray-light)
}

@media screen and (max-width: 768.98px) {
  .post-list .list-item .image-area {
    height: 13.7142857143rem
  }
}

.post-list .list-item .image-area img {
  transition: all .25s ease;
  object-fit: contain;
}

.post-list .list-item .image-area img {
  transition-property: transform;
  flex-grow: 1
}

.post-list .list-item .text-area {
  display: flex;
  flex-direction: column;
  gap: .6em
}

.post-list .list-item .text-area .post-info {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: .5em;
  margin-top: 1rem
}

.post-list .list-item .text-area .post-info .post-date {
  font-size: .9333333333rem;
  font-weight: 700;
  text-align: right;
  line-height: 1.2;
  letter-spacing: 0;
  flex-shrink: 0;
  padding-bottom: .2em
}

.post-list .list-item .text-area .post-title {
  transition: all .25s ease
}

.post-list .list-item .text-area .post-title {
  transition-property: opacity;
  font-size: 1rem;
  font-weight: 700
}

.post-list.swiper-wrapper {
  display: flex;
  gap: 0
}

.post-list.swiper-wrapper .list-item {
  padding-inline: calc(var(--my-post-list-gap) * .5)
}

@media screen and (min-width: 769px) {
  .post-list.type-large .list-item .image-area {
    height: 20.2666666667rem
  }
}

.post-list.type-large .list-item .text-area .post-title {
  font-size: 1.3333333333rem
}

.post-list.type-vertical .list-item .post-item-inner {
  flex-direction: row;
  gap: 1rem
}

.post-list.type-vertical .list-item .image-area {
  flex-shrink: 0;
  width: 40%
}

@media screen and (min-width: 769px) {
  .post-list.type-vertical .list-item .image-area {
    height: 9rem
  }
}

.post-list.type-vertical .list-item .text-area {
  flex-grow: 1
}

.post-list.type-vertical .list-item .text-area .post-info {
  margin-top: 0
}

.post-list.type-vertical .list-item .text-area .post-title {
  font-size: 1.0666666667rem
}

.post-list.type-vertical-small {
  --my-post-list-gap: 1.0666666667rem
}

@media screen and (max-width: 768.98px) {
  .post-list.type-vertical-small {
    --my-post-list-gap: 1.1428571429rem
  }
}

.post-list.type-vertical-small .list-item .post-item-inner {
  flex-direction: row;
  gap: 1rem
}

@media screen and (min-width: 769px) {
  .post-list.type-vertical-small .list-item .post-item-inner {
    min-height: 4.8rem
  }
}

.post-list.type-vertical-small .list-item .image-area {
  height: 4.8rem
}

@media screen and (max-width: 768.98px) {
  .post-list.type-vertical-small .list-item .image-area {
    height: 5.1428571429rem
  }
}

.post-list.type-vertical-small .list-item .image-area {
  flex-shrink: 0;
  flex-grow: 0;
  width: 39%;
  border-radius: 0
}

@media screen and (max-width: 768.98px) {
  .post-list.type-vertical-small .list-item .image-area {
    width: 37.3%
  }
}

.post-list.type-vertical-small .list-item .text-area {
  justify-content: space-between;
  flex-grow: 1
}

.post-list.type-vertical-small .list-item .text-area .post-info {
  margin-top: 0
}

.post-list.type-vertical-small .list-item .text-area .post-info .post-date {
  font-size: .6666666667rem
}

@media screen and (max-width: 768.98px) {
  .post-list.type-vertical-small .list-item .text-area .post-info .post-date {
    font-size: .7142857143rem
  }
}

.post-list.type-vertical-small .list-item .text-area .post-info .post-date {
  opacity: .8;
  color: var(--theme-color-gray-semidark)
}

.post-list.type-vertical-small .list-item .text-area .post-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden
}

.post-list.type-vertical-small .list-item .text-area .post-title {
  font-size: .8666666667rem;
  line-height: 1.5;
  letter-spacing: 0
}

@media screen and (max-width: 768.98px) {
  .post-list.type-vertical-small .list-item .text-area .post-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden
  }

  .post-list.type-vertical-small .list-item .text-area .post-title {
    font-size: .8571428571rem
  }
}

.post-list.relative-post-list .list-item .text-area .post-info .post-date {
  opacity: 1;
  color: var(--theme-color-font)
}

.badge-list,
.category-badge-list {
  display: flex;
  flex-wrap: wrap;
  gap: .3em
}

.badge-list .badge-item,
.badge-list .category-item,
.category-badge-list .badge-item,
.category-badge-list .category-item {
  border-radius: .2666666667rem;
  font-size: .8666666667rem;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  .badge-list .badge-item,
  .badge-list .category-item,
  .category-badge-list .badge-item,
  .category-badge-list .category-item {
    border-radius: .2857142857rem
  }
}

@media screen and (max-width: 768.98px) {

  .badge-list .badge-item,
  .badge-list .category-item,
  .category-badge-list .badge-item,
  .category-badge-list .category-item {
    font-size: .9285714286rem
  }
}

@media screen and (max-width: 768.98px) {

  .badge-list .badge-item,
  .badge-list .category-item,
  .category-badge-list .badge-item,
  .category-badge-list .category-item {
    border-width: .0714285714rem
  }
}

.badge-list .badge-item,
.badge-list .category-item,
.category-badge-list .badge-item,
.category-badge-list .category-item {
  display: flex;
  font-weight: 500;
  text-align: left;
  line-height: 1.2;
  justify-content: center;
  align-items: center;
  padding: .4em .9em .45em;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

.badge-list .badge-item.is-active,
.badge-list .category-item.is-active,
.category-badge-list .badge-item.is-active,
.category-badge-list .category-item.is-active {
  color: var(--theme-color-white);
  border-color: var(--theme-color-font);
  background: var(--theme-color-font)
}

.header-border {
  height: .0694444444vw
}

@media screen and (max-width: 768.98px) {
  .header-border {
    height: .0714285714rem
  }
}

.header-border {
  display: block;
  position: relative;
  width: 100%;
  background: var(--theme-color-lightgray)
}

.header-border:before {
  width: 8.3333333333vw
}

@media screen and (max-width: 768.98px) {
  .header-border:before {
    width: 8.5714285714rem
  }
}

.header-border:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  background: var(--theme-color-black)
}

.first-image img {
  object-fit: cover;
  height: 100%;
  width: 100%
}

.sep-border {
  height: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  .sep-border {
    height: .0714285714rem
  }
}

.sep-border {
  display: block;
  background: var(--theme-color-font)
}

#loader {
  position: absolute;
  inset: 0;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 100000;
  background: #fff
}

#loader figure {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4em;
  max-width: 70%;
  max-height: 80%;
  background: #fff
}

#loader figure img {
  object-fit: contain;
  width: 20.8333333333vw;
  height: 4.375vw;
  max-width: 100%;
  max-height: 100%
}

@media screen and (max-width: 768.98px) {
  #loader figure img {
    width: 61.5384615385vw;
    height: 12.8205128205vw
  }
}

#page-header {
  --my-header-accent-color: var(--theme-color-accent);
  display: grid;
  grid-template-columns: 48.6% 1fr;
  margin-bottom: 6.5972222222vw
}

@media screen and (max-width: 768.98px) {
  #page-header {
    grid-template-columns: 1fr;
    margin-bottom: 20.5128205128vw
  }
}

#page-header .page-info-area {
  --my-subtitle-bottom-space: 1.6rem;
  display: flex;
  flex-direction: column
}

@media screen and (max-width: 768.98px) {
  #page-header .page-info-area {
    flex-direction: column-reverse;
    min-height: 13.5714285714rem
  }
}

#page-header .page-info-area .inner {
  padding-left: var(--theme-wrapper-side-space);
  padding-right: .8em
}

@media screen and (max-width: 768.98px) {
  #page-header .page-info-area .inner {
    padding-right: var(--theme-wrapper-side-space)
  }
}

#page-header .page-info-area .page-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  flex-grow: 1;
  padding-bottom: 1.8229166667vw
}

@media screen and (min-width: 769px) {
  #page-header .page-info-area .page-info {
    background-size: cover
  }
}

@media screen and (max-width: 768.98px) {
  #page-header .page-info-area .page-info {
    justify-content: flex-start;
    margin-top: var(--theme-header-bc-bottom-margin-sp);
    padding-left: calc(var(--theme-wrapper-side-space) + 2.0512820513vw);
    padding-bottom: 1.5em
  }
}

#page-header .page-info-area .page-info .page-subtitle {
  display: flex;
  font-size: .9722222222vw;
  font-weight: 500;
  align-items: center;
  justify-content: flex-start;
  gap: .5833333333vw;
  margin-bottom: 1.6666666667vw
}

@media screen and (max-width: 768.98px) {
  #page-header .page-info-area .page-info .page-subtitle {
    font-size: .8571428571rem;
    gap: .7142857143rem;
    margin-bottom: .9285714286rem
  }
}

#page-header .page-info-area .page-info .page-subtitle:before {
  border-radius: 50%;
  --circle-size: .625vw;
  width: var(--circle-size);
  height: var(--circle-size)
}

#page-header .page-info-area .page-info .page-subtitle:before {
  content: "";
  display: inline-block;
  background: var(--my-header-accent-color)
}

@media screen and (max-width: 768.98px) {
  #page-header .page-info-area .page-info .page-subtitle:before {
    --circle-size: 1.7948717949vw
  }
}

#page-header .page-info-area .page-info .page-title {
  font-size: 5vw;
  font-weight: 500;
  line-height: 1.1
}

@media screen and (max-width: 768.98px) {
  #page-header .page-info-area .page-info .page-title {
    font-size: 8.2051282051vw
  }
}

#page-header .page-info-area .page-info .page-title.eng {
  line-height: 1
}

#page-header .page-info-area .header-breadcrumb-area {
  height: var(--theme-page-header-bc-area-height)
}

#page-header .page-thum {
  overflow: hidden;
  height: 29.1666666667vw
}

@media screen and (min-width: 769px) {
  #page-header .page-thum {
    border-bottom-left-radius: var(--theme-border-radius-exlarge)
  }
}

@media screen and (max-width: 768.98px) {
  #page-header .page-thum {
    margin-top: 0;
    height: 56.6666666667vw
  }
}

#page-header .page-thum img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

@media screen and (min-width: 769px) {

  #page-header+.wrapper-narrow>section:first-child,
  #page-header+section {
    padding-top: 2.6666666667rem
  }
}

#page-header.color-accent {
  --my-header-accent-color: var(--theme-color-accent)
}

#page-header.page-info-bg-white .page-info-area .page-info {
  background: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {
  #page-header.page-info-bg-white {
    background: var(--theme-color-white)
  }
}

#page-header.cover-next-sec {
  margin-bottom: calc(var(--theme-page-header-bc-area-height) * -1)
}

@media screen and (min-width: 769px) {

  #page-header.cover-next-sec .header-breadcrumb-area,
  #page-header.cover-next-sec .page-thum {
    position: relative;
    z-index: 1
  }
}

#page-header.cover-next-sec+section {
  --my-header-cover-space: var(--theme-page-header-bc-area-height)
}

#page-header-easy {
  --my-header-accent-color: var(--theme-color-red);
  display: flex;
  flex-direction: column;
  margin-bottom: 6.5972222222vw
}

@media screen and (max-width: 768.98px) {
  #page-header-easy {
    grid-template-columns: 1fr;
    margin-bottom: 20.5128205128vw
  }
}

#page-header-easy .page-info-area {
  --my-subtitle-bottom-space: 1.6rem;
  display: flex;
  flex-direction: column
}

@media screen and (max-width: 768.98px) {
  #page-header-easy .page-info-area {
    flex-direction: column-reverse;
    min-height: 13.5714285714rem
  }
}

#page-header-easy .page-info-area .page-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  flex-grow: 1;
  padding-bottom: 1.8229166667vw
}

@media screen and (max-width: 768.98px) {
  #page-header-easy .page-info-area .page-info {
    justify-content: flex-start;
    margin-top: 11.0256410256vw;
    padding-left: calc(var(--theme-wrapper-side-space) + 2.0512820513vw);
    padding-bottom: 1.5em
  }
}

#page-header-easy .page-info-area .page-info .page-subtitle {
  display: flex;
  font-size: .9722222222vw;
  font-weight: 500;
  align-items: center;
  justify-content: flex-start;
  gap: .5833333333vw;
  margin-bottom: 1.6666666667vw
}

@media screen and (max-width: 768.98px) {
  #page-header-easy .page-info-area .page-info .page-subtitle {
    font-size: .8571428571rem;
    gap: .7142857143rem;
    margin-bottom: .9285714286rem
  }
}

#page-header-easy .page-info-area .page-info .page-subtitle:before {
  border-radius: 50%;
  --circle-size: .625vw;
  width: var(--circle-size);
  height: var(--circle-size)
}

#page-header-easy .page-info-area .page-info .page-subtitle:before {
  content: "";
  display: inline-block;
  background: var(--my-header-accent-color)
}

@media screen and (max-width: 768.98px) {
  #page-header-easy .page-info-area .page-info .page-subtitle:before {
    --circle-size: 1.7948717949vw
  }
}

#page-header-easy .page-info-area .page-info .page-title {
  font-size: 5vw;
  font-weight: 500;
  line-height: 1.1
}

@media screen and (max-width: 768.98px) {
  #page-header-easy .page-info-area .page-info .page-title {
    font-size: 8.2051282051vw
  }
}

#page-header-easy .page-info-area .page-info .page-title.eng {
  line-height: 1
}

#page-header-easy .page-info-area .header-breadcrumb-area {
  height: 5.5555555556vw
}

@media screen and (max-width: 768.98px) {
  #page-header-easy .page-info-area .header-breadcrumb-area {
    height: auto
  }
}

#footer-link-box {
  margin-block: 3.2rem 0;
  padding: 5.3333333333rem
}

@media screen and (max-width: 768.98px) {
  #footer-link-box {
    margin-top: 1.4285714286rem;
    padding: 2.7142857143rem 1.5714285714rem
  }
}

#footer-link-box .inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.6666666667rem
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .inner {
    gap: 1.2142857143rem;
    grid-template-columns: 1fr
  }
}

#footer-link-box .link-item {
  display: block;
  position: relative
}

#footer-link-box .link-item .item-inner {
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .link-item .item-inner {
    border-width: .0714285714rem
  }
}

#footer-link-box .link-item .item-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  height: 18.6666666667rem;
  width: 100%;
  background: var(--theme-color-white);
  border-color: var(--theme-color-accent);
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .link-item .item-inner {
    height: 11rem;
    border-radius: .4285714286rem
  }
}

#footer-link-box .link-item .item-inner .bg-image {
  position: absolute;
  inset: 0;
  margin: auto;
  transition: all .25s ease
}

#footer-link-box .link-item .item-inner .bg-image {
  transition-property: opacity;
  opacity: 0
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .link-item .item-inner .bg-image {
    opacity: .00001
  }
}

#footer-link-box .link-item .item-inner .bg-image img {
  height: 100%;
  width: 100%
}

#footer-link-box .link-item .item-inner .text-area {
  transition: all .25s ease
}

#footer-link-box .link-item .item-inner .text-area {
  transition-property: color;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: .5333333333rem;
  position: relative;
  color: var(--theme-color-font)
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .link-item .item-inner .text-area {
    gap: .2857142857rem
  }
}

#footer-link-box .link-item .item-inner .text-area .item-subtitle,
#footer-link-box .link-item .item-inner .text-area .item-title {
  font-weight: 500;
  line-height: 1.2
}

#footer-link-box .link-item .item-inner .text-area .item-title {
  font-size: 2.6666666667rem
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .link-item .item-inner .text-area .item-title {
    font-size: 1.7142857143rem
  }
}

#footer-link-box .link-item .item-inner .text-area .item-subtitle {
  font-size: .8rem
}

@media screen and (max-width: 768.98px) {
  #footer-link-box .link-item .item-inner .text-area .item-subtitle {
    font-size: .7142857143rem
  }
}

@media (hover: hover) {

  #footer-link-box .link-item:hover,
  #footer-link-box .link-item:hover .bg-image {
    opacity: 1
  }

  #footer-link-box .link-item:hover .text-area {
    color: var(--theme-color-white)
  }
}

#footer-link-box .link-item:active,
#footer-link-box .link-item:focus,
#footer-link-box .link-item:focus-within {
  opacity: 1
}

#footer-link-box .link-item:active .bg-image,
#footer-link-box .link-item:focus .bg-image,
#footer-link-box .link-item:focus-within .bg-image {
  opacity: 1
}

#footer-link-box .link-item:active .text-area,
#footer-link-box .link-item:focus .text-area,
#footer-link-box .link-item:focus-within .text-area {
  color: var(--theme-color-white)
}

.icon-arrow-white-up {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-white-up {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-white-up.svg)
}

.icon-arrow-black-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-black-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-black-left.svg)
}

.icon-arrow-black-bold-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-black-bold-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-black-bold-left.svg)
}

.icon-arrow-black-right {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-black-right {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-black-right.svg)
}

.icon-arrow-white-right {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-white-right {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-black-right.svg);
  background: var(--theme-color-white)
}

.icon-arrow-white-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-white-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-black-left.svg);
  background: var(--theme-color-white)
}

.icon-arrow-line-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-line-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-left.svg)
}

.icon-arrow-line-right {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-line-right {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-right.svg)
}

.icon-arrow-line-small-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor;
  font-size: .7333333333rem
}

@media screen and (max-width: 768.98px) {
  .icon-arrow-line-small-left {
    font-size: .7857142857rem
  }
}

.icon-arrow-line-small-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-small-right.svg);
  transform: translate(-.1em) rotate(180deg)
}

.icon-arrow-line-small-right {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor;
  font-size: .7333333333rem
}

@media screen and (max-width: 768.98px) {
  .icon-arrow-line-small-right {
    font-size: .7857142857rem
  }
}

.icon-arrow-line-small-right {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-small-right.svg)
}

.icon-arrow-line-small-2-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor;
  font-size: .7333333333rem
}

@media screen and (max-width: 768.98px) {
  .icon-arrow-line-small-2-left {
    font-size: .7857142857rem
  }
}

.icon-arrow-line-small-2-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-small-2-left.svg)
}

.icon-arrow-line-small-2-right {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor;
  font-size: .7333333333rem
}

@media screen and (max-width: 768.98px) {
  .icon-arrow-line-small-2-right {
    font-size: .7857142857rem
  }
}

.icon-arrow-line-small-2-right {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-small-2-right.svg)
}

.icon-arrow-line-exsmall-left {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor;
  font-size: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  .icon-arrow-line-exsmall-left {
    font-size: .5714285714rem
  }
}

.icon-arrow-line-exsmall-left {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-exsmall-left.svg)
}

.icon-arrow-line-exsmall-right {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor;
  font-size: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  .icon-arrow-line-exsmall-right {
    font-size: .5714285714rem
  }
}

.icon-arrow-line-exsmall-right {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-exsmall-right.svg)
}

.icon-arrow-line-small-down {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-line-small-down {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-line-small-down.svg)
}

.icon-arrow-right-3-head {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-right-3-head {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-right-3-head.svg)
}

.icon-arrow-bottom-3-head {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-arrow-bottom-3-head {
  display: inline-block;
  mask-image: url(../images/common/icon-arrow-bottom-3-head.svg)
}

.icon-ex-link {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-ex-link {
  display: inline-block;
  mask-image: url(../images/common/icon-ex-link.svg)
}

.icon-ex-link-2 {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-ex-link-2 {
  display: inline-block;
  mask-image: url(../images/common/icon-ex-link-2.svg)
}

.icon-control-play {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-control-play {
  display: inline-block;
  mask-image: url(../images/common/icon-control-play.svg)
}

.icon-control-stop {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-control-stop {
  display: inline-block;
  mask-image: url(../images/common/icon-control-stop.svg)
}

.icon-ship {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-ship {
  display: inline-block;
  mask-image: url(../images/common/icon-ship.svg)
}

.icon-grow-users {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-grow-users {
  display: inline-block;
  mask-image: url(../images/common/icon-grow-users.svg)
}

.icon-twinkle-star-1 {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.icon-twinkle-star-1 {
  display: inline-block;
  mask-image: url(../images/common/icon-twinkle-star-1.svg)
}

.menubtn-hover-follow a,
.btn-hover-follow {
  transition: all .25s ease;
  font-size: .9333333333rem;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  .menubtn-hover-follow a,
  .btn-hover-follow {
    font-size: 1rem
  }
}

@media screen and (max-width: 768.98px) {

  .menubtn-hover-follow a,
  .btn-hover-follow {
    border-width: .0714285714rem
  }
}

.menubtn-hover-follow a,
.btn-hover-follow {
  --my-btn-color-text: var(--theme-color-font);
  --my-btn-color-border: var(--theme-color-font);
  --my-btn-color-hover-text: white;
  --my-btn-color-hover-bg: var(--theme-color-font);
  --my-btn-color-bg: white;
  --my-btn-bg-size: 90vw;
  --my-btn-bg-color: var(--theme-color-font);
  transition-property: color;
  display: flex;
  font-weight: 700;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  gap: .9em;
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding: .6em 2.25em .55em;
  min-height: 3.2rem;
  width: 15.4666666667rem;
  min-width: 15.4666666667rem;
  color: var(--my-btn-color-text);
  background: var(--my-btn-color-bg);
  border-style: solid;
  border-color: var(--my-btn-color-border);
  border-radius: 3em
}

@media screen and (max-width: 768.98px) {

  .menubtn-hover-follow a,
  .btn-hover-follow {
    --my-btn-bg-size: 200vw;
    padding: 1em 2.25em 1.05em;
    min-height: 4rem;
    width: 15.4285714286rem;
    min-width: 15.4285714286rem
  }
}

.menubtn-hover-follow a *,
.btn-hover-follow * {
  transform: translateZ(0)
}

.menubtn-hover-follow a .bg,
.btn-hover-follow .bg {
  transition: scale .35s ease-out;
  scale: 0;
  transform-origin: center center;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: var(--my-btn-bg-size);
  height: var(--my-btn-bg-size);
  aspect-ratio: 1;
  background-color: var(--my-btn-color-hover-bg);
  border-radius: 50%;
  margin-top: calc(var(--my-btn-bg-size) * -.5);
  margin-left: calc(var(--my-btn-bg-size) * -.5)
}

@media (hover: hover) {

  .menubtn-hover-follow a:hover,
  .btn-hover-follow:hover {
    opacity: 1;
    color: var(--my-btn-color-hover-text)
  }

  .menubtn-hover-follow a:hover .bg,
  .btn-hover-follow:hover .bg {
    transition-timing-function: ease-out;
    scale: 1
  }
}

.menubtn-hover-follow a:active,
.menubtn-hover-follow a:focus,
.menubtn-hover-follow a:focus-within,
.btn-hover-follow:active,
.btn-hover-follow:focus,
.btn-hover-follow:focus-within {
  opacity: 1;
  color: var(--my-btn-color-hover-text)
}

.menubtn-hover-follow a:active .bg,
.menubtn-hover-follow a:focus .bg,
.menubtn-hover-follow a:focus-within .bg,
.btn-hover-follow:active .bg,
.btn-hover-follow:focus .bg,
.btn-hover-follow:focus-within .bg {
  transition-timing-function: ease-out;
  scale: 1
}

.menubtn-hover-follow a,
.btn-hover-follow {
  padding-left: 1.8em
}

.menubtn-hover-follow a .icon,
.menubtn-hover-follow a:before,
.btn-hover-follow .icon,
.btn-hover-follow:before {
  transition: all .25s ease
}

.menubtn-hover-follow a .icon,
.menubtn-hover-follow a:before,
.btn-hover-follow .icon,
.btn-hover-follow:before {
  transition-property: background-color;
  transform: translateZ(0);
  font-size: 1.4em;
  background-color: var(--my-btn-color-text)
}

@media (hover: hover) {

  .menubtn-hover-follow a:hover .icon,
  .menubtn-hover-follow a:hover:before,
  .btn-hover-follow:hover .icon,
  .btn-hover-follow:hover:before {
    background-color: var(--my-btn-color-hover-text)
  }
}

.menubtn-hover-follow a:active .icon,
.menubtn-hover-follow a:active:before,
.menubtn-hover-follow a:focus .icon,
.menubtn-hover-follow a:focus:before,
.menubtn-hover-follow a:focus-within .icon,
.menubtn-hover-follow a:focus-within:before,
.btn-hover-follow:active .icon,
.btn-hover-follow:active:before,
.btn-hover-follow:focus .icon,
.btn-hover-follow:focus:before,
.btn-hover-follow:focus-within .icon,
.btn-hover-follow:focus-within:before {
  background-color: var(--my-btn-color-hover-text)
}

.menubtn-hover-follow a.icon-pos-after,
.btn-hover-follow.icon-pos-after {
  padding-right: 1.6666666667rem
}

@media screen and (max-width: 768.98px) {

  .menubtn-hover-follow a.icon-pos-after,
  .btn-hover-follow.icon-pos-after {
    padding-right: 1.7857142857rem
  }
}

@media screen and (min-width: 769px) {

  .menubtn-hover-follow a.semi-height,
  .btn-hover-follow.semi-height {
    min-height: 3.7333333333rem
  }
}

@media screen and (min-width: 769px) {

  .menubtn-hover-follow a.narrow-width,
  .btn-hover-follow.narrow-width {
    width: 12.4rem;
    min-width: 12.4rem
  }
}

.menubtn-hover-follow a:disabled,
.btn-hover-follow:disabled {
  opacity: .5;
  pointer-events: none
}

.menubtn-hover-follow.menubtn-color-accent a,
.menubtn-hover-follow.btn-color-accent,
.btn-hover-follow.menubtn-color-accent a,
.btn-hover-follow.btn-color-accent {
  --my-btn-color-text: white;
  --my-btn-color-border: var(--theme-color-accent);
  --my-btn-color-bg: var(--theme-color-accent);
  --my-btn-bg-color: var(--theme-color-font);
  --my-btn-color-hover-text: var(--theme-color-accent);
  --my-btn-color-hover-bg: white
}

.menubtn-hover-follow.btn-color-blue,
.btn-hover-follow.btn-color-blue {
  --my-btn-color-text: white;
  --my-btn-color-border: var(--theme-color-blue);
  --my-btn-color-bg: var(--theme-color-blue);
  --my-btn-bg-color: var(--theme-color-font);
  --my-btn-color-hover-text: var(--theme-color-blue);
  --my-btn-color-hover-bg: white
}

.menubtn-hover-follow.btn-color-frame-white,
.btn-hover-follow.btn-color-frame-white {
  --my-btn-color-text: var(--theme-color-white);
  --my-btn-color-border: var(--theme-color-white);
  --my-btn-color-bg: transparent;
  --my-btn-bg-color: transparent;
  --my-btn-color-hover-text: var(--theme-color-font);
  --my-btn-color-hover-bg: var(--theme-color-white)
}

.btn-side-round {
  transition: all .25s ease;
  font-size: .9333333333rem;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  .btn-side-round {
    font-size: 1rem
  }
}

@media screen and (max-width: 768.98px) {
  .btn-side-round {
    border-width: .0714285714rem
  }
}

.btn-side-round {
  --my-btn-color-text: var(--theme-color-font);
  --my-btn-color-border: var(--theme-color-font);
  --my-btn-color-hover-text: white;
  --my-btn-color-hover-bg: var(--theme-color-font);
  --my-btn-color-bg: white;
  --my-btn-bg-size: 90vw;
  --my-btn-bg-color: var(--theme-color-font);
  transition-property: color;
  display: flex;
  font-weight: 700;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  gap: .9em;
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding: .6em 2.25em .55em;
  min-height: 3.2rem;
  width: 15.4666666667rem;
  min-width: 15.4666666667rem;
  color: var(--my-btn-color-text);
  background: var(--my-btn-color-bg);
  border-style: solid;
  border-color: var(--my-btn-color-border);
  border-radius: 3em
}

@media screen and (max-width: 768.98px) {
  .btn-side-round {
    --my-btn-bg-size: 200vw;
    padding: 1em 2.25em 1.05em;
    min-height: 4rem;
    width: 15.4285714286rem;
    min-width: 15.4285714286rem
  }
}

.btn-side-round * {
  transform: translateZ(0)
}

.btn-side-round .bg {
  transition: scale .35s ease-out;
  scale: 0;
  transform-origin: center center;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: var(--my-btn-bg-size);
  height: var(--my-btn-bg-size);
  aspect-ratio: 1;
  background-color: var(--my-btn-color-hover-bg);
  border-radius: 50%;
  margin-top: calc(var(--my-btn-bg-size) * -.5);
  margin-left: calc(var(--my-btn-bg-size) * -.5)
}

@media (hover: hover) {
  .btn-side-round:hover {
    opacity: 1;
    color: var(--my-btn-color-hover-text)
  }

  .btn-side-round:hover .bg {
    transition-timing-function: ease-out;
    scale: 1
  }
}

.btn-side-round:active,
.btn-side-round:focus,
.btn-side-round:focus-within {
  opacity: 1;
  color: var(--my-btn-color-hover-text)
}

.btn-side-round:active .bg,
.btn-side-round:focus .bg,
.btn-side-round:focus-within .bg {
  transition-timing-function: ease-out;
  scale: 1
}

.btn-side-round.icon-pos-after {
  padding-right: 1.6666666667rem
}

@media screen and (max-width: 768.98px) {
  .btn-side-round.icon-pos-after {
    padding-right: 1.7857142857rem
  }
}

@media screen and (min-width: 769px) {
  .btn-side-round.semi-height {
    min-height: 3.7333333333rem
  }
}

@media screen and (min-width: 769px) {
  .btn-side-round.narrow-width {
    width: 12.4rem;
    min-width: 12.4rem
  }
}

.btn-side-round:disabled {
  opacity: .5;
  pointer-events: none
}

.btn-circle-frame-black {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: 3.2rem;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  .btn-circle-frame-black {
    --circle-size: 3.4285714286rem
  }
}

@media screen and (max-width: 768.98px) {
  .btn-circle-frame-black {
    border-width: .0714285714rem
  }
}

.btn-circle-frame-black {
  --my-border-color: var(--theme-color-font);
  transform: scale(1);
  display: flex;
  align-items: center;
  justify-content: center;
  border-style: solid;
  border-color: var(--my-border-color)
}

.btn-circle-frame-black:not(.bg-grass) {
  background: transparent
}

.btn-circle-frame-white {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: 3.2rem;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  .btn-circle-frame-white {
    --circle-size: 3.4285714286rem
  }
}

@media screen and (max-width: 768.98px) {
  .btn-circle-frame-white {
    border-width: .0714285714rem
  }
}

.btn-circle-frame-white {
  --my-border-color: var(--theme-color-font);
  transform: scale(1);
  display: flex;
  align-items: center;
  justify-content: center;
  border-style: solid;
  border-color: var(--my-border-color)
}

.btn-circle-frame-white:not(.bg-grass) {
  background: transparent
}

.btn-circle-frame-white {
  --my-border-color: var(--theme-color-white);
  background: transparent
}

.btn-circle-white-large {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: 5.3333333333rem
}

@media screen and (max-width: 768.98px) {
  .btn-circle-white-large {
    --circle-size: 5.7142857143rem
  }
}

.btn-circle-white-large {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--theme-color-white)
}

.lang-navi {
  display: flex;
  font-size: 1rem;
  font-weight: 700;
  position: relative
}

.lang-navi .btn-view-toggle {
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {
  .lang-navi .btn-view-toggle:hover {
    opacity: .5
  }
}

.lang-navi .btn-view-toggle:active,
.lang-navi .btn-view-toggle:focus,
.lang-navi .btn-view-toggle:focus-within {
  opacity: .5
}

.lang-navi .current-language {
  display: flex;
  cursor: pointer;
  gap: .45em;
  padding: .2em
}

.lang-navi .current-language:after {
  transition: all .25s ease;
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.lang-navi .current-language:after {
  transition-property: transform;
  content: "";
  display: inline-block;
  font-size: .8em;
  position: relative;
  top: .55em;
  width: 1em;
  height: 1em;
  mask-image: url(../images/common/icon-arrow-line-small-down.svg);
  background: var(--theme-color-font)
}

.lang-navi .language-select-menu {
  transition: all .25s ease;
  transition-property: opacity;
  transform: translate(-50%);
  position: absolute;
  top: 100%;
  left: 50%;
  opacity: 0;
  padding-top: .3em
}

.lang-navi .language-select-menu .inner {
  transition: all .25s ease;
  transition-property: transform;
  transform: translateY(-.5em);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .15em;
  padding: .55em 1.9em;
  line-height: 1.4;
  border: .0666666667rem solid var(--theme-color-font);
  border-radius: var(--theme-border-radius-small);
  background: #fff
}

.lang-navi .language-select-menu .inner a,
.lang-navi .language-select-menu .inner span {
  display: block;
  word-break: keep-all
}

.lang-navi .language-select-menu .inner a.current,
.lang-navi .language-select-menu .inner span.current {
  color: var(--theme-color-gray)
}

.lang-navi.is-open .btn-view-toggle:after {
  transform: rotate(180deg)
}

.lang-navi.is-open .language-select-menu {
  opacity: 1
}

.lang-navi.is-open .language-select-menu .inner {
  transform: translateY(0)
}

.lang-navi.is-close .language-select-menu {
  opacity: 0;
  pointer-events: none
}

.lang-navi.is-close .language-select-menu .inner {
  transform: translateY(-.5em)
}

#site-header {
  transition: all .25s ease
}

#site-header {
  pointer-events: auto;
  transition-property: transform;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999
}

#site-header>.inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding-inline: var(--theme-header-wrapper-space);
  height: var(--theme-header-height);
  background: var(--theme-color-white)
}

#site-header .logo-area {
  transition: all .25s ease
}

#site-header .logo-area {
  transition-property: opacity
}

#site-header .logo-area .logo img {
  width: var(--theme-header-logo-width)
}

#site-header .header-menu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.6em
}

#site-header .header-menu .sub-navigation,
#site-header .header-menu .main-navigation,
#site-header .header-menu .sub-navigation .container,
#site-header .header-menu .main-navigation .container,
#site-header .header-menu .sub-navigation .container .nav-menu,
#site-header .header-menu .main-navigation .container .nav-menu {
  display: flex
}

#site-header .header-menu .sub-navigation .container .nav-menu .menu-item,
#site-header .header-menu .main-navigation .container .nav-menu .menu-item {
  font-weight: 700
}

#site-header .header-menu .main-navigation {
  margin-right: 2em
}

#site-header .header-menu .main-navigation .nav-menu {
  --my-menu-gap: .75em;
  font-size: .9333333333rem;
  gap: var(--my-menu-gap)
}

#site-header .header-menu .main-navigation .nav-menu .menu-item a {
  --my-hover-line-height: .0666666667rem
}

#site-header .header-menu .main-navigation .nav-menu .menu-item a .link-area {
  transition: background-size .25s ease
}

#site-header .header-menu .main-navigation .nav-menu .menu-item a .link-area {
  --my-hover-color: currentColor;
  --my-hover-line-height: 1px;
  text-decoration: none;
  background-image: linear-gradient(var(--my-hover-color), var(--my-hover-color));
  background-position: left bottom;
  background-size: 0% var(--my-hover-line-height);
  background-repeat: no-repeat
}

@media screen and (max-width: 768.98px) {
  #site-header .header-menu .main-navigation .nav-menu .menu-item a .link-area {
    transition-duration: .03s
  }
}

@media (hover: hover) {
  #site-header .header-menu .main-navigation .nav-menu .menu-item a:hover .link-area {
    background-size: 100% var(--my-hover-line-height)
  }
}

#site-header .header-menu .main-navigation .nav-menu .menu-item a:active .link-area,
#site-header .header-menu .main-navigation .nav-menu .menu-item a:focus .link-area,
#site-header .header-menu .main-navigation .nav-menu .menu-item a:focus-within .link-area {
  background-size: 100% var(--my-hover-line-height)
}

@media screen and (max-width: 768.98px) {
  #site-header .header-menu .main-navigation .nav-menu .menu-item a {
    --my-hover-line-height: .0714285714rem
  }
}

#site-header .header-menu .main-navigation .nav-menu .menu-item:after {
  content: "";
  transform: rotate(-58deg);
  display: inline-block;
  vertical-align: middle;
  margin-left: calc(var(--my-menu-gap) + .2em);
  height: .0666666667rem;
  width: .85em;
  background: var(--theme-color-font)
}

#site-header .header-menu .main-navigation .nav-menu .menu-item:last-child:after {
  display: none
}

body.home .main-navigation .nav-menu {
  --my-menu-sep-view: 1;
  --my-menu-gap: .52em
}

#site-header .header-menu .sub-navigation .nav-menu {
  font-size: .9333333333rem;
  gap: 1.1em
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item a {
  letter-spacing: 0
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a {
  padding: .7em 2.25em .85em 1.6em;
  min-height: 3.8em;
  min-width: unset
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:before {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:before {
  content: "";
  display: flex;
  background-color: var(--my-btn-color-text)
}

@media (hover: hover) {
  #site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:hover:before {
    background-color: var(--my-btn-color-hover-text)
  }
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:active:before,
#site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:focus:before,
#site-header .header-menu .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:focus-within:before {
  background-color: var(--my-btn-color-hover-text)
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.recruit a {
  width: 9.7333333333rem
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.recruit a:before {
  mask-image: url(../images/common/icon-board.svg)
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.contact a {
  width: 11.6rem
}

#site-header .header-menu .sub-navigation .nav-menu .menu-item.contact a:before {
  mask-image: url(../images/common/icon-mail.svg)
}

body.home #site-header>.inner {
  transition: all .25s ease
}

body.home #site-header>.inner {
  transition-property: background;
  transition-duration: .5s
}

body.home:not(.out-mainvisual) #site-header>.inner {
  background: transparent;
  border-bottom: 0
}

body.gnavi-open #site-header .logo-area {
  transition-delay: .25s;
  opacity: 0
}

#site-header.is-hide {
  transform: translateY(-100%)
}

#gnavi-btn-area .btn-gnavi-toggle {
  border-radius: 50%;
  --circle-size: 3.4285714286rem;
  width: var(--circle-size);
  height: var(--circle-size)
}

#gnavi-btn-area .btn-gnavi-toggle .bar {
  --my-bar-height: .1607142857rem;
  --my-bar-width: 1.1785714286rem;
  --my-bar-color: var(--theme-color-font);
  position: relative;
  height: var(--my-bar-height);
  width: var(--my-bar-width);
  background: var(--my-bar-color);
  border-radius: 2em
}

#gnavi-btn-area .btn-gnavi-toggle .bar:before,
#gnavi-btn-area .btn-gnavi-toggle .bar:after {
  content: "";
  display: block;
  position: absolute;
  height: var(--my-bar-height);
  width: var(--my-bar-width);
  background: var(--my-bar-color);
  border-radius: 2em
}

#gnavi-btn-area .btn-gnavi-toggle .bar:before {
  top: -.4rem
}

#gnavi-btn-area .btn-gnavi-toggle .bar:after {
  bottom: -.4rem
}

#gnavi-btn-area .btn-gnavi-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  border: .0714285714rem solid var(--theme-color-font);
  background: #fff
}

#gnavi-btn-area .btn-gnavi-toggle .bar {
  transition: all .25s ease
}

#gnavi-btn-area .btn-gnavi-toggle .bar {
  --my-bar-height: .1607142857rem;
  --my-bar-width: 1.3571428571rem;
  --my-bar-color: var(--theme-color-font);
  transition-property: background-color
}

#gnavi-btn-area .btn-gnavi-toggle .bar:before,
#gnavi-btn-area .btn-gnavi-toggle .bar:after {
  transition: all .25s ease
}

#gnavi-btn-area .btn-gnavi-toggle .bar:before,
#gnavi-btn-area .btn-gnavi-toggle .bar:after {
  transition-property: transform, top, bottom
}

#gnavi-btn-area .btn-gnavi-toggle .bar:before {
  transition: top .25s ease 0s, transform .25s ease .3s
}

#gnavi-btn-area .btn-gnavi-toggle .bar:after {
  transition: bottom .25s ease 0s, transform .25s ease .3s
}

#gnavi-btn-area .btn-gnavi-toggle.nav-open .bar {
  transition: all .25s ease
}

#gnavi-btn-area .btn-gnavi-toggle.nav-open .bar {
  background-color: transparent
}

#gnavi-btn-area .btn-gnavi-toggle.nav-open .bar:before {
  transform: rotate(35deg) scaleX(1.2);
  top: 0
}

#gnavi-btn-area .btn-gnavi-toggle.nav-open .bar:after {
  transform: rotate(-35deg) scaleX(1.2);
  bottom: 0
}

#gnavi-btn-area .btn-gnavi-toggle.nav-open.nav-trans .bar {
  background-color: transparent
}

#gnavi-btn-area .btn-gnavi-toggle.nav-close.nav-trans-ready .bar:before {
  transition: transform .25s ease 0s, top .25s ease .3s
}

#gnavi-btn-area .btn-gnavi-toggle.nav-close.nav-trans-ready .bar:after {
  transition: transform .25s ease 0s, bottom .25s ease .3s
}

#gnavi-btn-area {
  pointer-events: auto;
  display: block;
  position: fixed;
  top: .5rem;
  right: 1.4285714286rem;
  z-index: 1010
}

@media screen and (min-width: 769px) {
  #gnavi-btn-area {
    display: none !important
  }
}

#gnavi {
  pointer-events: auto;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000
}

#gnavi:before {
  content: "";
  position: fixed;
  inset: 0;
  opacity: 0;
  background: transparent
}

#gnavi .navi-inner {
  transition: all .25s ease
}

#gnavi .navi-inner {
  transition-property: opacity, transform;
  position: relative
}

#gnavi .navi-inner:before {
  position: absolute;
  inset: 0;
  margin: auto
}

#gnavi .navi-inner:before {
  content: "";
  display: block;
  opacity: .9;
  background: var(--theme-color-white)
}

#gnavi .header-area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  padding-inline: var(--theme-header-wrapper-space);
  height: var(--theme-header-height)
}

#gnavi .header-area .logo img {
  width: var(--theme-header-logo-width)
}

#gnavi .header-area .lang-navi {
  margin-right: 5.2142857143rem;
  font-size: 1.1428571429rem
}

#gnavi .header-area .lang-navi .btn-view-toggle {
  padding-bottom: .2857142857rem
}

#gnavi .header-area .lang-navi .btn-view-toggle:after {
  font-size: .8571428571rem;
  top: .6428571429rem
}

#gnavi .header-area .lang-navi .language-select-menu {
  z-index: 1
}

#gnavi .gnavi-main {
  --my-menu-font-size: 1.4285714286rem;
  position: relative;
  padding-block: 2.4285714286rem 3.4285714286rem
}

#gnavi .gnavi-main .wrapper {
  display: flex;
  flex-direction: column;
  gap: 2.3571428571rem
}

#gnavi .gnavi-main .main-navigation .nav-menu {
  display: flex;
  font-size: var(--my-menu-font-size);
  font-weight: 700;
  flex-direction: column;
  align-items: center;
  gap: 1.3571428571rem
}

#gnavi .gnavi-main .sub-navigation .nav-menu {
  display: flex;
  font-size: 1rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.1428571429rem
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item a {
  letter-spacing: 0
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a {
  padding: .7em 2.25em .85em 1.6em;
  min-height: 4.2857142857rem;
  min-width: unset;
  width: 20rem
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:before {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:before {
  content: "";
  display: flex;
  background-color: var(--my-btn-color-text)
}

@media (hover: hover) {
  #gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:hover:before {
    background-color: var(--my-btn-color-hover-text)
  }
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:active:before,
#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:focus:before,
#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.menubtn-hover-follow a:focus-within:before {
  background-color: var(--my-btn-color-hover-text)
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.recruit a:before {
  mask-image: url(../images/common/icon-board.svg)
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.recruit a .link-area {
  font-size: var(--my-menu-font-size)
}

#gnavi .gnavi-main .sub-navigation .nav-menu .menu-item.contact a:before {
  mask-image: url(../images/common/icon-mail.svg)
}

#gnavi.nav-close {
  display: none
}

#gnavi.nav-close.nav-trans-ready {
  display: block
}

#gnavi.nav-close.nav-trans-ready .navi-inner {
  transform: translateY(0);
  opacity: 1
}

#gnavi.nav-close.nav-trans .navi-inner {
  transform: translateY(-5%);
  opacity: 0
}

#gnavi.nav-open {
  display: block
}

#gnavi.nav-open:before {
  display: block
}

#gnavi.nav-open.nav-trans-ready .header-area {
  transition: all .25s ease
}

#gnavi.nav-open.nav-trans-ready .header-area {
  transition-property: opacity;
  transition-delay: .6s;
  transition-duration: .8s;
  opacity: 0
}

#gnavi.nav-open.nav-trans-ready .navi-inner {
  transform: translateY(-5%);
  opacity: 0
}

#gnavi.nav-open.nav-trans .header-area {
  opacity: 1
}

#gnavi.nav-open.nav-trans .navi-inner {
  transform: translateY(0);
  opacity: 1
}

.title {
  display: block;
  padding: 40px;
  font-size: 30px;
  background-image: url(assets/img/dummy.webp)
}

.title .test {
  color: red
}

.btn-page-top {
  --my-hover-line-height: .0666666667rem
}

.btn-page-top .text {
  transition: background-size .25s ease
}

.btn-page-top .text {
  --my-hover-color: currentColor;
  --my-hover-line-height: 1px;
  text-decoration: none;
  background-image: linear-gradient(var(--my-hover-color), var(--my-hover-color));
  background-position: left bottom;
  background-size: 0% var(--my-hover-line-height);
  background-repeat: no-repeat
}

@media screen and (max-width: 768.98px) {
  .btn-page-top .text {
    transition-duration: .03s
  }
}

@media (hover: hover) {
  .btn-page-top:hover .text {
    background-size: 100% var(--my-hover-line-height)
  }
}

.btn-page-top:active .text,
.btn-page-top:focus .text,
.btn-page-top:focus-within .text {
  background-size: 100% var(--my-hover-line-height)
}

@media screen and (max-width: 768.98px) {
  .btn-page-top {
    --my-hover-line-height: .0714285714rem
  }
}

.btn-page-top {
  display: flex;
  gap: .8em;
  align-items: center
}

@media screen and (max-width: 768.98px) {
  .btn-page-top {
    flex-direction: column;
    gap: .4em
  }
}

.btn-page-top .icon {
  font-size: 1.35em
}

@media screen and (max-width: 768.98px) {
  .btn-page-top .icon {
    font-size: 1.08em
  }
}

.btn-page-top .text {
  font-weight: 500
}

@media screen and (max-width: 768.98px) {
  .btn-page-top .text {
    font-size: .8571428571rem
  }
}

@media (hover: hover) {
  .btn-page-top:hover .icon {
    animation: jump-once .5s cubic-bezier(.25, .8, .25, 1)
  }

  .btn-page-top:hover .text {
    opacity: .5
  }
}

.btn-page-top:active .icon,
.btn-page-top:focus .icon,
.btn-page-top:focus-within .icon {
  animation: jump-once .5s cubic-bezier(.25, .8, .25, 1)
}

.btn-page-top:active .text,
.btn-page-top:focus .text,
.btn-page-top:focus-within .text {
  opacity: .5
}

#site-footer {
  position: relative;
  padding-block: 8rem 4rem;
  color: var(--theme-color-white);
  background: var(--theme-color-font)
}

@media screen and (max-width: 768.98px) {
  #site-footer {
    padding-block: 3.6rem 2rem
  }

  #site-footer .wrapper {
    max-width: 25.7142857143rem
  }
}

#site-footer .footer-main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4rem;
  padding-bottom: 7.9rem;
  border-bottom: .0666666667rem solid var(--theme-color-gray)
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-main {
    flex-direction: column;
    gap: 3.6rem;
    margin-block: 4rem 2.6rem;
    padding-bottom: 3.4rem
  }
}

#site-footer .footer-main .logo img {
  width: 13.1333333333rem
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-main .logo img {
    width: 14.0714285714rem
  }
}

#site-footer .footer-main .footer-menu-area .nav-menu {
  font-size: 1.0666666667rem
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-main .footer-menu-area .nav-menu {
    font-size: 1.1428571429rem
  }
}

#site-footer .footer-main .footer-menu-area .nav-menu {
  display: flex;
  font-weight: 700;
  flex-wrap: wrap;
  gap: 1.25em
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-main .footer-menu-area .nav-menu {
    align-items: center;
    justify-content: center;
    gap: .6em 1.3em
  }
}

#site-footer .footer-main .footer-menu-area .nav-menu a {
  --my-hover-line-height: .0666666667rem
}

#site-footer .footer-main .footer-menu-area .nav-menu a .link-area {
  transition: background-size .25s ease
}

#site-footer .footer-main .footer-menu-area .nav-menu a .link-area {
  --my-hover-color: currentColor;
  --my-hover-line-height: 1px;
  text-decoration: none;
  background-image: linear-gradient(var(--my-hover-color), var(--my-hover-color));
  background-position: left bottom;
  background-size: 0% var(--my-hover-line-height);
  background-repeat: no-repeat
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-main .footer-menu-area .nav-menu a .link-area {
    transition-duration: .03s
  }
}

@media (hover: hover) {
  #site-footer .footer-main .footer-menu-area .nav-menu a:hover .link-area {
    background-size: 100% var(--my-hover-line-height)
  }
}

#site-footer .footer-main .footer-menu-area .nav-menu a:active .link-area,
#site-footer .footer-main .footer-menu-area .nav-menu a:focus .link-area,
#site-footer .footer-main .footer-menu-area .nav-menu a:focus-within .link-area {
  background-size: 100% var(--my-hover-line-height)
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-main .footer-menu-area .nav-menu a {
    --my-hover-line-height: .0714285714rem
  }
}

#site-footer .footer-sub {
  font-size: .8rem
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-sub {
    font-size: .8571428571rem
  }
}

#site-footer .footer-sub {
  display: flex;
  justify-content: space-between;
  align-items: flex-end
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-sub {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 3.75em
  }
}

#site-footer .footer-sub .site-info {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 2.1em
}

@media screen and (max-width: 768.98px) {
  #site-footer .footer-sub .site-info {
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    gap: 1.38em
  }
}

#site-footer .footer-sub .site-info .copyright {
  font-size: 1em
}

#site-footer .footer-sub .site-info .footer-menu-sub-area a {
  text-decoration: underline
}

@media screen and (max-width: 768.98px) {
  #site-footer .btn-page-top-area {
    display: flex;
    justify-content: center
  }
}

#ez-toc-container {
  margin-bottom: 4.2rem;
  padding: 2.6666666667rem;
  background: var(--theme-color-lightgray-light)
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container {
    padding: 2.1428571429rem 1.7857142857rem
  }
}

#ez-toc-container .ez-toc-title {
  font-size: 1.3333333333rem;
  font-weight: 700;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-title {
    font-size: 1.1428571429rem
  }
}

#ez-toc-container .ez-toc-list {
  display: flex;
  flex-direction: column;
  gap: .7333333333rem;
  font-size: .9333333333rem
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list {
    gap: 1.7857142857rem
  }
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li ul {
    font-size: .9285714286rem;
    margin-top: 1.0714285714rem;
    padding-left: 1.7142857143rem
  }
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list {
    font-size: 1rem
  }
}

#ez-toc-container .ez-toc-list {
  font-weight: 500;
  margin-block: 1.8rem 0;
  padding: 0
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list {
    margin-top: 1.4285714286rem
  }
}

#ez-toc-container .ez-toc-list li a {
  display: inline-block;
  text-indent: -1em;
  padding-left: 1em
}

#ez-toc-container .ez-toc-list li a:before {
  width: .5333333333rem;
  height: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li a:before {
    width: .5714285714rem
  }
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li a:before {
    height: .0714285714rem
  }
}

#ez-toc-container .ez-toc-list li a:before {
  content: "";
  display: inline-block;
  position: relative;
  top: -.5em;
  margin-right: .6em;
  background: var(--theme-color-black)
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li a:before {
    top: -.4em
  }
}

#ez-toc-container .ez-toc-list li ul {
  display: flex;
  flex-direction: column;
  gap: .7333333333rem
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li ul {
    gap: 1.7857142857rem
  }
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li ul li ul {
    font-size: .9285714286rem;
    margin-top: 1.0714285714rem;
    padding-left: 1.7142857143rem
  }
}

#ez-toc-container .ez-toc-list li ul {
  margin-bottom: 0;
  padding-left: 1.6rem
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li ul {
    gap: 1rem
  }
}

#ez-toc-container .ez-toc-list li ul li a:before {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  #ez-toc-container .ez-toc-list li ul li a:before {
    --circle-size: .5714285714rem
  }
}

#ez-toc-container .ez-toc-list li ul li a:before {
  display: inline-block;
  position: relative;
  top: -.08em;
  left: calc(var(--my-ul-left-space) * -1);
  background: radial-gradient(50% 50% at 50% 50%, #fff 23.08%, #ddd 36.54%, #707070 97.12%)
}

#ez-toc-container .ez-toc-list li ul li a:before {
  content: ""
}

#ez-toc-container .ez-toc-title-toggle {
  display: none !important
}

#ez-toc-container+p,
#ez-toc-container+h1,
#ez-toc-container+h2,
#ez-toc-container+h3 {
  margin-top: 0
}

@media screen and (max-width: 768.98px) {
  body.single article {
    border-top: 0
  }
}

body.single .post-single-main {
  margin-block: var(--theme-section-padding) 2rem
}

@media screen and (max-width: 768.98px) {
  body.single .post-single-main {
    margin-block: 4.2857142857rem 5.7142857143rem
  }
}

body.single .post-single-main .gird-menu-right section:first-child {
  padding-top: 0
}

body.single .contents-main {
  overflow: hidden
}

body.single .contents-main header {
  display: flex;
  flex-direction: column;
  gap: .8666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main header {
    gap: 1rem
  }
}

body.single .contents-main header .post-title {
  font-size: 1.8666666667rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .04em
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main header .post-title {
    font-size: 1.4285714286rem
  }
}

body.single .contents-main .post-info {
  align-items: center;
  gap: 1em
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .post-info .category-badge-list .category-item {
    font-size: .8571428571rem
  }
}

body.single .contents-main .post-info .post-date {
  font-size: .8rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .post-info .post-date {
    font-size: .8571428571rem
  }
}

body.single .contents-main .post-info .post-date {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .04em;
  opacity: .6;
  flex-shrink: 0;
  color: var(--theme-color-gray-semidark)
}

body.single .contents-main .post-thum {
  margin-block: 1.4666666667rem 3.8666666667rem;
  height: 30rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .post-thum {
    margin-block: 1.2142857143rem 4.2857142857rem;
    height: 13.4285714286rem
  }
}

body.single .contents-main .post-thum img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

body.single .contents-main .editor-contents {
  margin-bottom: 4.6666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .editor-contents {
    margin-block: 4.2857142857rem
  }
}

body.single .contents-main .relative-post-list-area {
  border-top-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .relative-post-list-area {
    border-top-width: .0714285714rem
  }
}

body.single .contents-main .relative-post-list-area {
  padding-block: 2rem;
  border-style: solid;
  border-color: var(--theme-color-black)
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .relative-post-list-area {
    padding-block: .9285714286rem
  }
}

@media screen and (min-width: 769px) {
  body.single .contents-main .relative-post-list-area .relative-post-list {
    --my-post-list-gap: 2.6666666667rem;
    grid-template-columns: repeat(3, 1fr)
  }
}

@media screen and (min-width: 769px) {
  body.single .contents-main .relative-post-list-area .relative-post-list .list-item .image-area {
    height: 9rem
  }
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .relative-post-list-area .relative-post-list .list-item .text-area .category-badge-list .category-item {
    font-size: .7142857143rem;
    padding: .1428571429rem .3571428571rem;
    border-radius: .1428571429rem
  }

  body.single .contents-main .relative-post-list-area .relative-post-list .list-item .text-area .post-date {
    font-size: .7142857143rem
  }
}

body.single .contents-main .relative-post-list-area .list-title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  margin-block: 2.65em 1em
}

body.single .contents-main .relative-post-list-area .list-title:not(.wp-block):first-child {
  margin-top: 0
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .relative-post-list-area .list-title {
    font-size: 1.2857142857rem;
    line-height: 1.7
  }
}

body.single .contents-main .relative-post-list-area .list-title {
  margin-bottom: 2.7333333333rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .relative-post-list-area .list-title {
    margin-bottom: 1.5714285714rem
  }
}

body.single .contents-main .relative-post-list-area .btn-area {
  display: flex;
  justify-content: center;
  margin-top: 5rem
}

@media screen and (max-width: 768.98px) {
  body.single .contents-main .relative-post-list-area .btn-area {
    margin-top: 3.2857142857rem
  }
}

body.single .post-menu {
  display: flex;
  flex-direction: column;
  gap: 2.1333333333rem
}

@media screen and (max-width: 768.98px) {
  body.single .post-menu {
    gap: 1.5714285714rem
  }
}

body.single .post-menu .menu-item {
  border-bottom-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .post-menu .menu-item {
    border-bottom-width: .0714285714rem
  }
}

body.single .post-menu .menu-item {
  padding-bottom: 2.0666666667rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

body.single .post-menu .menu-title {
  font-size: 1.0666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .post-menu .menu-title {
    font-size: 1.1428571429rem
  }
}

body.single .post-menu .menu-title {
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 1.6666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .post-menu .menu-title {
    margin-bottom: 1.2857142857rem
  }
}

body.single .post-menu .badge-list,
body.single .post-menu .category-badge-list {
  flex-direction: row
}

@media screen and (min-width: 769px) {

  body.single .post-menu .badge-list,
  body.single .post-menu .category-badge-list {
    align-items: flex-start
  }
}

@media screen and (max-width: 768.98px) {

  body.single .post-menu .badge-list,
  body.single .post-menu .category-badge-list {
    gap: 1.0714285714rem 1.2857142857rem
  }
}

@media screen and (max-width: 768.98px) {

  body.single .post-menu .badge-list .badge-item,
  body.single .post-menu .badge-list .category-badge-item,
  body.single .post-menu .category-badge-list .badge-item,
  body.single .post-menu .category-badge-list .category-badge-item {
    padding: .2857142857rem .7142857143rem .3571428571rem
  }
}

@media screen and (min-width: 769px) {
  body.single .post-menu .category-badge-list {
    flex-direction: column
  }
}

body.single .editor-contents .size-auto:not(.block-editor-block-list__block),
body.single .editor-contents .size-full:not(.block-editor-block-list__block),
body.single .editor-contents .size-large:not(.block-editor-block-list__block),
body.single .editor-contents .size-medium:not(.block-editor-block-list__block),
body.single .editor-contents .size-thumbnail:not(.block-editor-block-list__block) {
  max-width: 100%;
  height: auto
}

body.single .editor-contents .alignleft {
  float: left;
  margin: 0 1.5em .8em 0
}

body.single .editor-contents .alignright {
  float: right;
  margin: 0 0 .8em 1.5em
}

body.single .editor-contents .aligncenter {
  display: block;
  margin: 2em auto
}

body.single .editor-contents .alignnone {
  max-width: 100%
}

body.single .editor-contents .more-link {
  display: inline-block;
  margin-top: .8em
}

body.single .editor-contents .clear-float {
  clear: both
}

body.single .editor-contents .wp-caption,
body.single .editor-contents .wp-caption .wp-caption-text {
  max-width: 100%
}

body.single .editor-contents {
  font-family: var(--theme-font-family);
  font-size: var(--theme-font-size);
  font-weight: var(--theme-font-weight)
}

body.single .editor-contents p {
  margin-block: 0 1em;
  font-size: 1rem;
  line-height: 1.6
}

body.single .editor-contents p:last-child {
  margin-bottom: 0
}

@media screen and (max-width: 768.98px) {
  body.single .editor-contents p {
    margin-top: .6em
  }
}

@media screen and (min-width: 769px) {
  body.single .editor-contents p {
    margin-top: 1.65em
  }
}

body.single .editor-contents p:first-child {
  margin-top: 0
}

body.single .editor-contents p a {
  color: #00f;
  text-decoration: underline
}

body.single .editor-contents p s {
  text-decoration: line-through
}

body.single .editor-contents ul,
body.single .editor-contents ol {
  margin-block: 1.8em;
  padding-left: 3em
}

body.single .editor-contents ul ul,
body.single .editor-contents ul ol,
body.single .editor-contents ol ul,
body.single .editor-contents ol ol {
  margin-block: .6em;
  padding-left: 2em
}

body.single .editor-contents ul.wp-block,
body.single .editor-contents ul.wp-block-list {
  --my-ul-left-space: .6em;
  line-height: 1.8
}

body.single .editor-contents ul.wp-block li,
body.single .editor-contents ul.wp-block-list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start
}

body.single .editor-contents ul.wp-block li:before,
body.single .editor-contents ul.wp-block-list li:before {
  flex-shrink: 0
}

body.single .editor-contents ul.wp-block,
body.single .editor-contents ul.wp-block-list {
  --my-list-color: var(--theme-color-red);
  margin-block: var(--theme-list-block-space);
  padding-left: 0
}

body.single .editor-contents ul.wp-block li,
body.single .editor-contents ul.wp-block-list li {
  gap: .6em;
  list-style-type: none;
  position: relative;
  margin-bottom: .8em
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents ul.wp-block li,
  body.single .editor-contents ul.wp-block-list li {
    gap: .9em
  }
}

body.single .editor-contents ul.wp-block li:before,
body.single .editor-contents ul.wp-block-list li:before {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents ul.wp-block li:before,
  body.single .editor-contents ul.wp-block-list li:before {
    --circle-size: .5714285714rem
  }
}

body.single .editor-contents ul.wp-block li:before,
body.single .editor-contents ul.wp-block-list li:before {
  display: inline-block;
  position: relative;
  top: -.08em;
  left: calc(var(--my-ul-left-space) * -1);
  background: radial-gradient(50% 50% at 50% 50%, #fff 23.08%, #ddd 36.54%, #707070 97.12%)
}

body.single .editor-contents ul.wp-block li:before,
body.single .editor-contents ul.wp-block-list li:before {
  content: "";
  left: 0;
  top: .6666666667rem
}

body.single .editor-contents ul.wp-block li:last-child,
body.single .editor-contents ul.wp-block-list li:last-child {
  margin-bottom: 0
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents ul.wp-block li:before,
  body.single .editor-contents ul.wp-block-list li:before {
    --box-size: .6428571429rem
  }
}

body.single .editor-contents ul.wp-block.block-editor-block-list__block,
body.single .editor-contents ul.wp-block-list.block-editor-block-list__block {
  padding-left: 2em
}

body.single .editor-contents ul.wp-block.block-editor-block-list__block li:before,
body.single .editor-contents ul.wp-block-list.block-editor-block-list__block li:before {
  left: -1.8em
}

body.single .editor-contents ol.wp-block,
body.single .editor-contents ol.wp-block-list {
  --my-ul-left-space: .6em;
  line-height: 1.8
}

body.single .editor-contents ol.wp-block li,
body.single .editor-contents ol.wp-block-list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start
}

body.single .editor-contents ol.wp-block li:before,
body.single .editor-contents ol.wp-block-list li:before {
  flex-shrink: 0
}

body.single .editor-contents ol.wp-block,
body.single .editor-contents ol.wp-block-list {
  --my-ul-left-space: .6em;
  counter-reset: my-counter;
  margin-block: var(--theme-list-block-space);
  padding-left: 0
}

body.single .editor-contents ol.wp-block li,
body.single .editor-contents ol.wp-block-list li {
  gap: .5em;
  counter-increment: my-counter;
  list-style-type: none;
  position: relative;
  margin-bottom: .69em
}

body.single .editor-contents ol.wp-block li:before,
body.single .editor-contents ol.wp-block-list li:before {
  content: counter(my-counter) ".";
  display: inline-block
}

body.single .editor-contents ol.wp-block li:last-child,
body.single .editor-contents ol.wp-block-list li:last-child {
  margin-bottom: 0
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents ol.wp-block li:before,
  body.single .editor-contents ol.wp-block-list li:before {
    --box-size: .7142857143rem
  }
}

body.single .editor-contents ol.wp-block.block-editor-block-list__block,
body.single .editor-contents ol.wp-block-list.block-editor-block-list__block {
  padding-left: 2em
}

body.single .editor-contents ol.wp-block.block-editor-block-list__block li:before,
body.single .editor-contents ol.wp-block-list.block-editor-block-list__block li:before {
  left: -1.8em
}

body.single .editor-contents h1:not(.wp-block-post-title),
body.single .editor-contents h1.wp-block-heading {
  font-size: 1.8666666667rem;
  font-weight: 700;
  line-height: 1.5;
  margin-block: 2.5em 1em
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents h1:not(.wp-block-post-title),
  body.single .editor-contents h1.wp-block-heading {
    margin-bottom: .9em
  }
}

body.single .editor-contents h1:not(.wp-block-post-title):not(.wp-block):first-child,
body.single .editor-contents h1.wp-block-heading:not(.wp-block):first-child {
  margin-top: 0
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents h1:not(.wp-block-post-title),
  body.single .editor-contents h1.wp-block-heading {
    font-size: 1.4285714286rem
  }
}

body.single .editor-contents h2,
body.single .editor-contents h2.wp-block-heading {
  font-size: 1.8666666667rem;
  font-weight: 700;
  line-height: 1.5;
  margin-block: 2.5em 1em
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents h2,
  body.single .editor-contents h2.wp-block-heading {
    margin-bottom: .9em
  }
}

body.single .editor-contents h2:not(.wp-block):first-child,
body.single .editor-contents h2.wp-block-heading:not(.wp-block):first-child {
  margin-top: 0
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents h2,
  body.single .editor-contents h2.wp-block-heading {
    font-size: 1.4285714286rem
  }
}

body.single .editor-contents h3,
body.single .editor-contents h3.wp-block-heading,
body.single .editor-contents .header-3 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  margin-block: 2.65em 1em
}

body.single .editor-contents h3:not(.wp-block):first-child,
body.single .editor-contents h3.wp-block-heading:not(.wp-block):first-child,
body.single .editor-contents .header-3:not(.wp-block):first-child {
  margin-top: 0
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents h3,
  body.single .editor-contents h3.wp-block-heading,
  body.single .editor-contents .header-3 {
    font-size: 1.2857142857rem;
    line-height: 1.7
  }
}

body.single .editor-contents h4,
body.single .editor-contents h4.wp-block-heading {
  font-size: 1.3333333333rem;
  font-weight: 700;
  line-height: 1.5;
  margin-block: 2em 1em
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents h4,
  body.single .editor-contents h4.wp-block-heading {
    font-size: 1.1428571429rem;
    line-height: 1.7
  }
}

body.single .editor-contents blockquote,
body.single .editor-contents blockquote.wp-block-quote {
  --my-border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents blockquote,
  body.single .editor-contents blockquote.wp-block-quote {
    --my-border-width: .0714285714rem
  }
}

body.single .editor-contents blockquote,
body.single .editor-contents blockquote.wp-block-quote {
  --my-right-shadow-space: 1.0666666667rem;
  display: flex;
  font-size: 1.0666666667rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .1em;
  justify-content: flex-start;
  position: relative;
  margin-block: 2rem calc(2rem + var(--my-right-shadow-space));
  padding: 2.4em 1em 1.5em 2.5em;
  background: url(../images/common/img-double-quotes.svg) no-repeat 1.5333333333rem 1.5333333333rem;
  background-size: 2.3333333333rem 1.6666666667rem;
  border-width: var(--my-border-width);
  border-style: solid;
  border-color: var(--theme-color-font)
}

body.single .editor-contents blockquote p,
body.single .editor-contents blockquote.wp-block-quote p {
  font-size: 1em
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents blockquote,
  body.single .editor-contents blockquote.wp-block-quote {
    --my-right-shadow-space: .5714285714rem;
    font-size: .8571428571rem;
    margin-block: 1.7857142857rem calc(1.7857142857rem + var(--my-right-shadow-space));
    padding: 2.2142857143rem 1.6428571429rem;
    background-size: 2rem 1.4285714286rem;
    background-position: 1.0714285714rem 1.4285714286rem
  }
}

@media screen and (max-width: 768.98px) {

  body.single .editor-contents blockquote,
  body.single .editor-contents blockquote.wp-block-quote {
    font-size: .8571428571rem;
    line-height: 1.65;
    letter-spacing: .1em
  }
}

body.single .editor-contents blockquote:after,
body.single .editor-contents blockquote:before,
body.single .editor-contents blockquote.wp-block-quote:after,
body.single .editor-contents blockquote.wp-block-quote:before {
  content: "";
  display: block;
  position: absolute;
  right: calc(var(--my-right-shadow-space) * -1 - (var(--my-border-width)));
  background: var(--theme-color-lightgray-light)
}

body.single .editor-contents blockquote:before,
body.single .editor-contents blockquote.wp-block-quote:before {
  top: calc(var(--my-border-width) * -1);
  width: var(--my-right-shadow-space);
  height: calc(100% + var(--my-border-width) * 2 + 1px)
}

body.single .editor-contents blockquote:after,
body.single .editor-contents blockquote.wp-block-quote:after {
  bottom: calc(var(--my-right-shadow-space) * -1 - (var(--my-border-width)));
  height: var(--my-right-shadow-space);
  left: calc(var(--my-border-width) * -1)
}

body.single .editor-contents blockquote p,
body.single .editor-contents blockquote.wp-block-quote p {
  line-height: 1.7;
  margin-inline: 0
}

body.single .editor-contents blockquote:not(.block-editor-block-list__block),
body.single .editor-contents blockquote.wp-block-quote:not(.block-editor-block-list__block) {
  margin-right: var(--my-right-shadow-space)
}

body.single .editor-contents table {
  width: 100%;
  margin: 3em 0;
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #c4c4c4
}

body.single .editor-contents table tr th,
body.single .editor-contents table tr td {
  padding: .5em .8em .45em;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: #c4c4c4;
  line-height: 1.4
}

body.single .editor-contents table tr th {
  font-weight: 700
}

body.single .editor-contents table tr td p {
  margin-top: .5em
}

body.single .editor-contents header {
  margin-bottom: 1.65rem
}

body.single .editor-contents header+p {
  margin-top: 0
}

@media screen and (max-width: 768.98px) {
  body.single .editor-contents .small {
    font-size: .8571428571rem
  }
}

body.single .editor-contents .wp-block-flexible-table-block-table,
body.single .editor-contents .wp-block-table {
  --my-table-border-color: var(--theme-color-lightgray);
  --my-table-block-space: 2rem;
  --my-table-scroll-height: 1.3333333333rem;
  overflow: auto;
  margin-block: var(--my-table-block-space) calc(var(--my-table-block-space) - var(--my-table-scroll-height))
}

body.single .editor-contents .wp-block-flexible-table-block-table table,
body.single .editor-contents .wp-block-table table {
  margin-block: 0;
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: var(--my-table-border-color)
}

body.single .editor-contents .wp-block-flexible-table-block-table table thead,
body.single .editor-contents .wp-block-table table thead {
  border: 0
}

body.single .editor-contents .wp-block-flexible-table-block-table table tr th,
body.single .editor-contents .wp-block-flexible-table-block-table table tr td,
body.single .editor-contents .wp-block-table table tr th,
body.single .editor-contents .wp-block-table table tr td {
  padding: .75em .65em;
  line-height: 1.7;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: var(--my-table-border-color)
}

body.single .editor-contents .wp-block-flexible-table-block-table table tr th,
body.single .editor-contents .wp-block-table table tr th {
  background: var(--theme-color-lightgray-semilight)
}

body.single .editor-contents .wp-block-flexible-table-block-table table tr:first-child th,
body.single .editor-contents .wp-block-table table tr:first-child th {
  border-bottom: 0
}

body.single .editor-contents .wp-block-flexible-table-block-table table.has-fixed-layout,
body.single .editor-contents .wp-block-table table.has-fixed-layout {
  --my-table-wrapper-bottom-space: 0;
  margin-bottom: var(--my-table-scroll-height);
  max-width: none
}

body.single .editor-contents .wp-block-image {
  flex-direction: column;
  justify-content: center;
  margin-block: 1rem .6666666667rem
}

@media screen and (max-width: 768.98px) {
  body.single .editor-contents .wp-block-image {
    margin-block: 2.1428571429rem 1.1428571429rem
  }
}

body.single .editor-contents .wp-block-image .wp-element-caption {
  display: block;
  font-size: .9333333333rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: right;
  letter-spacing: .04em
}

@media screen and (max-width: 768.98px) {
  body.single .editor-contents .wp-block-image .wp-element-caption {
    font-size: .7142857143rem;
    font-weight: 500
  }
}

body.single .editor-contents .wp-block-image+p {
  margin-top: 0
}

body.single .editor-contents .wp-block-image img {
  max-width: 100%
}

body.single .editor-contents .wp-block-image figure {
  margin-bottom: 0
}

body.single .editor-contents .wp-block-image:not(.block-editor-block-list__block) {
  display: flex
}

body.single .editor-contents .wp-block-image.alignleft {
  justify-content: flex-start
}

body.single .editor-contents .wp-block-image.aligncenter {
  justify-content: center
}

body.single .editor-contents .wp-block-image.alignright {
  justify-content: flex-end
}

body.single .editor-contents .wp-block-image.size-large img {
  flex-grow: 1;
  width: 100%
}

body.single .editor-contents .wp-block-image.is-resized img {
  flex-grow: 0
}

body.single .editor-contents .wp-block-image:first-child,
body.single .editor-contents .wp-block-columns .wp-block-column .wp-block-image:first-child {
  margin-top: 0
}

body.single .editor-contents .wp-block-columns .wp-block-column .wp-block-image:last-child {
  margin-bottom: 0
}

body.single .editor-contents .wp-block-button .wp-element-button {
  text-decoration: none
}

@media (hover: hover) {
  body.single .editor-contents .wp-block-button .wp-element-button:hover {
    text-decoration: none
  }
}

body.single .editor-contents .wp-block-button .wp-element-button:active,
body.single .editor-contents .wp-block-button .wp-element-button:focus,
body.single .editor-contents .wp-block-button .wp-element-button:focus-within {
  text-decoration: none
}

body.single .editor-contents .wp-block-button.is-style-fill .wp-element-button,
body.single .editor-contents .wp-block-button.has-background .wp-element-button {
  transition: all .25s ease
}

@media screen and (max-width: 782px) {
  body.single .editor-contents .editor-styles-wrapper .is-layout-grid {
    grid-template-columns: auto
  }
}

body.single .editor-contents .has-underline {
  text-decoration: underline
}

body.single .editor-contents.expansion-custom a {
  color: var(--theme-color-red)
}

body.single .editor-contents section {
  margin-block: var(--theme-section-padding);
  padding-block: 0
}

body.single #footer-link-box {
  margin-top: 0
}

.nav-select-view {
  border-width: .0666666667rem;
  border-radius: .2666666667rem
}

@media screen and (max-width: 768.98px) {
  .nav-select-view {
    border-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {
  .nav-select-view {
    border-radius: .2857142857rem
  }
}

.nav-select-view {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  position: relative;
  border-style: solid;
  border-color: var(--theme-color-lightgray);
  background: var(--theme-color-lightgray-light)
}

.nav-select-view:before,
.nav-select-view:after {
  pointer-events: none
}

.nav-select-view:before {
  right: 2.2rem;
  width: .0666666667rem;
  height: .8rem
}

@media screen and (max-width: 768.98px) {
  .nav-select-view:before {
    right: 2.3571428571rem
  }
}

@media screen and (max-width: 768.98px) {
  .nav-select-view:before {
    width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {
  .nav-select-view:before {
    height: .8571428571rem
  }
}

.nav-select-view:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: var(--theme-color-lightgray)
}

.nav-select-view:after {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

.nav-select-view:after {
  content: "";
  display: block;
  font-size: .8666666667rem;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 12px auto auto;
  mask-image: url(../images/common/icon-arrow-line-small-down.svg)
}

.nav-select-view select {
  display: block;
  position: relative;
  padding: .65em 1em .75em;
  width: 100%;
  border: 0;
  background: transparent
}

.archive-main .archive-menu {
  display: flex;
  flex-direction: column;
  gap: 2.2rem
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-menu {
    padding-inline: .5714285714rem;
    gap: 1.5714285714rem
  }
}

.archive-main .archive-menu .menu-title {
  border-bottom-width: .0666666667rem;
  font-size: 1rem
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-menu .menu-title {
    border-bottom-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-menu .menu-title {
    font-size: 1.0714285714rem
  }
}

.archive-main .archive-menu .menu-title {
  font-weight: 700;
  margin-bottom: 1.0666666667rem;
  padding-bottom: .8rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-menu .menu-title {
    margin-bottom: 1.2857142857rem
  }
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-menu .menu-main {
    display: flex;
    justify-content: flex-start
  }

  .archive-main .archive-menu .menu-main .nav-select-view {
    min-width: 11.4em
  }
}

.archive-main .archive-menu .category-badge-list {
  flex-direction: column;
  align-items: flex-start
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-menu .category-badge-list {
    flex-direction: row;
    gap: .6428571429rem
  }
}

@media screen and (min-width: 769px) {
  .archive-main .archive-post-list .post-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.0666666667rem 2.6rem
  }
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-post-list .post-list .list-item .category-item {
    font-size: .7142857143rem;
    padding: .1428571429rem .3571428571rem
  }
}

@media screen and (max-width: 768.98px) {
  .archive-main .archive-post-list .post-list .list-item .post-date {
    font-size: .7142857143rem
  }
}

.pager {
  --my-pager-color-active: var(--theme-color-red);
  --my-pager-nav-arrow-side: .5em;
  --my-pager-num-side-space: 12px;
  --my-pager-dot-side-space: 5px;
  margin-top: 5.3333333333rem
}

.pager .nav-links,
.pager .wp-pagenavi {
  font-size: .8rem;
  gap: .2666666667rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links,
  .pager .wp-pagenavi {
    font-size: .8571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links,
  .pager .wp-pagenavi {
    gap: .2857142857rem
  }
}

.pager .nav-links,
.pager .wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links,
  .pager .wp-pagenavi {
    width: 100%
  }
}

.pager .nav-links .pages,
.pager .wp-pagenavi .pages {
  display: none
}

.pager .nav-links .empty,
.pager .nav-links .prev,
.pager .nav-links .previouspostslink,
.pager .nav-links .next,
.pager .nav-links .nextpostslink,
.pager .nav-links .current,
.pager .wp-pagenavi .empty,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .previouspostslink,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .nextpostslink,
.pager .wp-pagenavi .current {
  flex-shrink: 0
}

.pager .nav-links .empty,
.pager .nav-links .first,
.pager .nav-links .last,
.pager .nav-links .page-numbers,
.pager .nav-links .page,
.pager .nav-links .dots,
.pager .nav-links .extend,
.pager .nav-links .current,
.pager .wp-pagenavi .empty,
.pager .wp-pagenavi .first,
.pager .wp-pagenavi .last,
.pager .wp-pagenavi .page-numbers,
.pager .wp-pagenavi .page,
.pager .wp-pagenavi .dots,
.pager .wp-pagenavi .extend,
.pager .wp-pagenavi .current {
  font-family: futura-100, Futura, Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal
}

.pager .nav-links .empty,
.pager .nav-links .first,
.pager .nav-links .last,
.pager .nav-links .page-numbers,
.pager .nav-links .page,
.pager .nav-links .dots,
.pager .nav-links .extend,
.pager .nav-links .current,
.pager .wp-pagenavi .empty,
.pager .wp-pagenavi .first,
.pager .wp-pagenavi .last,
.pager .wp-pagenavi .page-numbers,
.pager .wp-pagenavi .page,
.pager .wp-pagenavi .dots,
.pager .wp-pagenavi .extend,
.pager .wp-pagenavi .current {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  border: 0
}

.pager .nav-links .prev,
.pager .nav-links .next,
.pager .nav-links .page-numbers,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .page-numbers {
  min-width: 2.1333333333rem;
  height: 2.1333333333rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .prev,
  .pager .nav-links .next,
  .pager .nav-links .page-numbers,
  .pager .wp-pagenavi .prev,
  .pager .wp-pagenavi .next,
  .pager .wp-pagenavi .page-numbers {
    min-width: 2.2857142857rem
  }
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .prev,
  .pager .nav-links .next,
  .pager .nav-links .page-numbers,
  .pager .wp-pagenavi .prev,
  .pager .wp-pagenavi .next,
  .pager .wp-pagenavi .page-numbers {
    height: 2.2857142857rem
  }
}

.pager .nav-links .prev,
.pager .nav-links .next,
.pager .nav-links .page-numbers,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none
}

.pager .nav-links .dots,
.pager .wp-pagenavi .dots {
  min-width: .9333333333rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .dots,
  .pager .wp-pagenavi .dots {
    min-width: 1rem
  }
}

.pager .nav-links .empty,
.pager .wp-pagenavi .empty {
  opacity: 0
}

.pager .nav-links .current,
.pager .wp-pagenavi .current {
  text-decoration: underline
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .empty-prev,
  .pager .nav-links .prev,
  .pager .wp-pagenavi .empty-prev,
  .pager .wp-pagenavi .prev {
    margin-right: auto
  }
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .empty-next,
  .pager .nav-links .next,
  .pager .wp-pagenavi .empty-next,
  .pager .wp-pagenavi .next {
    margin-left: auto
  }
}

.pager .nav-links .dots,
.pager .nav-links .extend,
.pager .wp-pagenavi .dots,
.pager .wp-pagenavi .extend {
  min-width: 0
}

.pager .nav-links .empty,
.pager .nav-links .prev,
.pager .nav-links .previouspostslink,
.pager .nav-links .next,
.pager .nav-links .nextpostslink,
.pager .wp-pagenavi .empty,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .previouspostslink,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .nextpostslink {
  --box-size: 2.9333333333rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .empty,
  .pager .nav-links .prev,
  .pager .nav-links .previouspostslink,
  .pager .nav-links .next,
  .pager .nav-links .nextpostslink,
  .pager .wp-pagenavi .empty,
  .pager .wp-pagenavi .prev,
  .pager .wp-pagenavi .previouspostslink,
  .pager .wp-pagenavi .next,
  .pager .wp-pagenavi .nextpostslink {
    --box-size: 2.4285714286rem
  }
}

.pager .nav-links .empty .text,
.pager .nav-links .prev .text,
.pager .nav-links .previouspostslink .text,
.pager .nav-links .next .text,
.pager .nav-links .nextpostslink .text,
.pager .wp-pagenavi .empty .text,
.pager .wp-pagenavi .prev .text,
.pager .wp-pagenavi .previouspostslink .text,
.pager .wp-pagenavi .next .text,
.pager .wp-pagenavi .nextpostslink .text {
  font-size: 1.2666666667rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .empty .text,
  .pager .nav-links .prev .text,
  .pager .nav-links .previouspostslink .text,
  .pager .nav-links .next .text,
  .pager .nav-links .nextpostslink .text,
  .pager .wp-pagenavi .empty .text,
  .pager .wp-pagenavi .prev .text,
  .pager .wp-pagenavi .previouspostslink .text,
  .pager .wp-pagenavi .next .text,
  .pager .wp-pagenavi .nextpostslink .text {
    font-size: 1.0714285714rem
  }
}

.pager .nav-links .empty .circle,
.pager .nav-links .prev .circle,
.pager .nav-links .previouspostslink .circle,
.pager .nav-links .next .circle,
.pager .nav-links .nextpostslink .circle,
.pager .wp-pagenavi .empty .circle,
.pager .wp-pagenavi .prev .circle,
.pager .wp-pagenavi .previouspostslink .circle,
.pager .wp-pagenavi .next .circle,
.pager .wp-pagenavi .nextpostslink .circle {
  border-width: .1333333333rem
}

.pager .nav-links .prev,
.pager .nav-links .previouspostslink,
.pager .nav-links .next,
.pager .nav-links .nextpostslink,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .previouspostslink,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .nextpostslink {
  border-radius: 50%;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .prev,
  .pager .nav-links .previouspostslink,
  .pager .nav-links .next,
  .pager .nav-links .nextpostslink,
  .pager .wp-pagenavi .prev,
  .pager .wp-pagenavi .previouspostslink,
  .pager .wp-pagenavi .next,
  .pager .wp-pagenavi .nextpostslink {
    border-width: .0714285714rem
  }
}

.pager .nav-links .prev,
.pager .nav-links .previouspostslink,
.pager .nav-links .next,
.pager .nav-links .nextpostslink,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .previouspostslink,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .nextpostslink {
  border-style: solid;
  border-color: var(--theme-color-black)
}

.pager .nav-links .prev .icon,
.pager .nav-links .previouspostslink .icon,
.pager .nav-links .next .icon,
.pager .nav-links .nextpostslink .icon,
.pager .wp-pagenavi .prev .icon,
.pager .wp-pagenavi .previouspostslink .icon,
.pager .wp-pagenavi .next .icon,
.pager .wp-pagenavi .nextpostslink .icon {
  font-size: .6rem
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .prev .icon,
  .pager .nav-links .previouspostslink .icon,
  .pager .nav-links .next .icon,
  .pager .nav-links .nextpostslink .icon,
  .pager .wp-pagenavi .prev .icon,
  .pager .wp-pagenavi .previouspostslink .icon,
  .pager .wp-pagenavi .next .icon,
  .pager .wp-pagenavi .nextpostslink .icon {
    font-size: .6428571429rem
  }
}

.pager .nav-links .prev,
.pager .nav-links .previouspostslink,
.pager .wp-pagenavi .prev,
.pager .wp-pagenavi .previouspostslink {
  margin-right: var(--my-pager-nav-arrow-side)
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .prev,
  .pager .nav-links .previouspostslink,
  .pager .wp-pagenavi .prev,
  .pager .wp-pagenavi .previouspostslink {
    margin-inline: 0 auto
  }
}

.pager .nav-links .next,
.pager .nav-links .nextpostslink,
.pager .wp-pagenavi .next,
.pager .wp-pagenavi .nextpostslink {
  margin-left: var(--my-pager-nav-arrow-side)
}

@media screen and (max-width: 768.98px) {

  .pager .nav-links .next,
  .pager .nav-links .nextpostslink,
  .pager .wp-pagenavi .next,
  .pager .wp-pagenavi .nextpostslink {
    margin-inline: auto 0
  }
}

@media screen and (max-width: 768.98px) {
  #page-header {
    margin-bottom: 2.0714285714rem
  }
}

.form-contents .description {
  font-size: 1.2rem;
  font-weight: 500
}

@media screen and (max-width: 768.98px) {
  .form-contents .description {
    font-size: 1rem
  }
}

.form-input-area {
  --my-form-attention-color: var(--theme-color-red-semidark);
  margin-block: 4rem
}

.form-input-area form dl {
  display: flex;
  flex-direction: column;
  gap: .7333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form dl {
    gap: .5714285714rem
  }
}

.form-input-area form dl dt,
.form-input-area form dl dd {
  padding: 0
}

.form-input-area form dl dt {
  font-weight: 700;
  font-size: 1.0666666667rem;
  line-height: 1.7
}

@media screen and (max-width: 768.98px) {
  .form-input-area form dl dt {
    font-size: 1rem
  }
}

.form-input-area form dl dt:before {
  border-radius: .3333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form dl dt:before {
    border-radius: .3571428571rem
  }
}

.form-input-area form dl dt:before {
  content: var(--theme-form-optional-text);
  display: inline-block;
  font-size: .8rem;
  font-weight: 700;
  margin-right: 1.0666666667rem;
  padding: .2666666667rem .8rem;
  color: var(--theme-color-font);
  background: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form dl dt:before {
    margin-right: .5714285714rem;
    padding: .2857142857rem .9285714286rem
  }
}
span.small_font {
    font-size: 0.9rem;
}
.form-input-area form dl dt p {
  display: inline-block
}

.form-input-area form dl.required dt {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline
}

.form-input-area form dl.required dt:before {
  border-radius: .3333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form dl.required dt:before {
    border-radius: .3571428571rem
  }
}

.form-input-area form dl.required dt:before {
  content: var(--theme-form-required-text);
  color: var(--theme-color-white);
  background: var(--my-form-attention-color)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form dl.required dt:before {
    margin-right: .5714285714rem;
    padding: .2857142857rem .9285714286rem
  }
}

.form-input-area form .input-area-main {
  display: flex;
  flex-direction: column;
  gap: 2.1333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input-area-main {
    gap: 1.9285714286rem
  }
}

.form-input-area form .grid {
  gap: 1.6rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .grid {
    gap: 1.2142857143rem
  }
}

.form-input-area form .input {
  border-width: .1333333333rem;
  border-radius: .3333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input {
    border-width: .1428571429rem
  }
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input {
    border-radius: .3571428571rem
  }
}

.form-input-area form .input {
  font-size: 1.0666666667rem;
  font-weight: 500;
  line-height: 1.7;
  padding: .5333333333rem 1rem;
  width: 100%;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input {
    font-size: 1.1428571429rem;
    padding: .7142857143rem .9285714286rem
  }
}

.form-input-area form .input::placeholder {
  color: var(--theme-color-lightgray-dark)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input::placeholder {
    font-size: 1.0714285714rem
  }
}

.form-input-area form .input::-ms-input-placeholder {
  color: var(--theme-color-lightgray-dark)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input::-ms-input-placeholder {
    font-size: 1.0714285714rem
  }
}

.form-input-area form .input:-ms-input-placeholder {
  color: var(--theme-color-lightgray-dark)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .input:-ms-input-placeholder {
    font-size: 1.0714285714rem
  }
}

.form-input-area form .radio,
.form-input-area form .checkbox {
  display: flex;
  font-weight: 500;
  flex-direction: column;
  gap: .4rem;
  margin-block: .6666666667rem
}

.form-input-area form .radio .wpcf7-list-item,
.form-input-area form .checkbox .wpcf7-list-item {
  margin: 0
}

.form-input-area form .radio .wpcf7-list-item label,
.form-input-area form .checkbox .wpcf7-list-item label {
  display: flex;
  align-items: center
}

@media screen and (max-width: 768.98px) {

  .form-input-area form .radio .wpcf7-list-item label,
  .form-input-area form .checkbox .wpcf7-list-item label {
    gap: .5714285714rem
  }
}

.form-input-area form .radio .wpcf7-list-item label input[type=radio],
.form-input-area form .radio .wpcf7-list-item label input[type=checkbox],
.form-input-area form .checkbox .wpcf7-list-item label input[type=radio],
.form-input-area form .checkbox .wpcf7-list-item label input[type=checkbox] {
  flex-shrink: 0;
  margin-top: .1333333333rem;
  margin-right: .4rem
}

@media screen and (max-width: 768.98px) {

  .form-input-area form .radio .wpcf7-list-item label input[type=radio],
  .form-input-area form .radio .wpcf7-list-item label input[type=checkbox],
  .form-input-area form .checkbox .wpcf7-list-item label input[type=radio],
  .form-input-area form .checkbox .wpcf7-list-item label input[type=checkbox] {
    margin-top: .1428571429rem;
    margin-right: 0
  }
}

@media screen and (max-width: 768.98px) {

  .form-input-area form .radio .wpcf7-list-item label input[type=radio],
  .form-input-area form .checkbox .wpcf7-list-item label input[type=radio] {
    position: relative;
    top: .0714285714rem;
    margin-top: 0
  }
}

@media screen and (min-width: 769px) {

  .form-input-area form .radio,
  .form-input-area form .checkbox {
    font-size: 1rem
  }
}

.form-input-area form .radio input[type=radio] {
  border-width: .1333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .radio input[type=radio] {
    border-width: .1428571429rem
  }
}

.form-input-area form .radio input[type=radio] {
  --my-radio-fs: 1.4rem;
  font-size: var(--my-radio-fs);
  width: 1em;
  height: 1em;
  border-style: solid;
  border-color: var(--theme-color-font);
  box-shadow: none
}

.form-input-area form .radio input[type=radio]:before {
  margin: .15rem;
  width: calc(var(--my-radio-fs) * .58);
  height: calc(var(--my-radio-fs) * .58);
  background: var(--theme-color-font)
}

.form-input-area form .view-error-tip-none+.wpcf7-not-valid-tip {
  display: none
}

.form-input-area form .view-error-only {
  display: none
}

.form-input-area form .wpcf7-not-valid-tip {
  font-size: .8rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  margin-top: .4666666667rem;
  color: var(--my-form-attention-color)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .wpcf7-not-valid-tip {
    margin-top: .7142857143rem
  }
}

.form-input-area form .wpcf7-acceptance .wpcf7-list-item label {
  font-size: .8rem;
  gap: .2666666667rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .wpcf7-acceptance .wpcf7-list-item label {
    font-size: .8571428571rem
  }
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .wpcf7-acceptance .wpcf7-list-item label {
    gap: .2857142857rem
  }
}

.form-input-area form .wpcf7-acceptance .wpcf7-list-item label {
  display: flex;
  align-items: center
}

.form-input-area form .wpcf7-acceptance .wpcf7-list-item label input.checkbox {
  font-size: 1.5333333333rem;
  border-width: .1333333333rem
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .wpcf7-acceptance .wpcf7-list-item label input.checkbox {
    font-size: 1.6428571429rem
  }
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .wpcf7-acceptance .wpcf7-list-item label input.checkbox {
    border-width: .1428571429rem
  }
}

.form-input-area form .wpcf7-acceptance .wpcf7-list-item label input.checkbox {
  width: 1em;
  height: 1em;
  border-style: solid;
  border-color: var(--theme-color-lightgray);
  box-shadow: none
}

.form-input-area form .wpcf7-acceptance .wpcf7-list-item label input.checkbox:before {
  margin: -.2rem 0 0 -.3333333333rem;
  height: 1.2em;
  width: 1.2em
}

.form-input-area form .form-accept-area {
  display: flex;
  text-align: center;
  flex-direction: column;
  align-items: center;
  margin-top: 2.1333333333rem
}

.form-input-area form .form-accept-area a {
  text-decoration: underline
}

.form-input-area form .form-accept-area>p {
  font-weight: 700
}

.form-input-area form .google-privacy-guide {
  font-size: .7333333333rem;
  font-weight: 500;
  margin-top: 1.4rem;
  color: var(--theme-color-gray)
}

@media screen and (max-width: 768.98px) {
  .form-input-area form .google-privacy-guide {
    font-size: .8571428571rem;
    margin-top: .7857142857rem
  }
}

.form-input-area form .btn-area {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin-top: 3.2rem
}

.grecaptcha-badge {
  visibility: hidden
}

#form-system {
  display: none !important
}

body.form-step-work-1 .form-step-view-2:not(.form-step-view-1),
body.form-step-work-1 .form-step-view-3:not(.form-step-view-1) {
  display: none !important
}

body.form-step-work-2 .form-step-view-1:not(.form-step-view-2),
body.form-step-work-2 .form-step-view-3:not(.form-step-view-2) {
  display: none !important
}

body.form-step-work-3 .form-step-view-1:not(.form-step-view-3),
body.form-step-work-3 .form-step-view-2:not(.form-step-view-3) {
  display: none !important
}

body.layout-style-small {
  --my-style-section-block: 4rem;
  --my-style-p-block: .5em
}

@media screen and (max-width: 768.98px) {
  body.layout-style-small {
    --my-style--section-block: 2.1428571429rem
  }
}

body.layout-style-small section {
  margin-block: var(--my-style-section-block);
  padding-block: 0
}

@media screen and (min-width: 769px) {
  body.layout-style-small article {
    margin-bottom: 8rem
  }
}

body.layout-style-small .editor-contents header {
  margin-bottom: 1.6rem
}

@media screen and (max-width: 768.98px) {
  body.layout-style-small .editor-contents header {
    margin-bottom: 1.3rem
  }
}

body.layout-style-small .editor-contents p {
  margin-block: 0 var(--my-style-p-block)
}

body.layout-style-small .editor-contents h1:not(.wp-block-post-title),
body.layout-style-small .editor-contents h1.wp-block-heading {
  font-size: 1.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.layout-style-small .editor-contents h1:not(.wp-block-post-title),
  body.layout-style-small .editor-contents h1.wp-block-heading {
    font-size: 1.2857142857rem
  }
}

body.layout-style-small .editor-contents h2,
body.layout-style-small .editor-contents h2.wp-block-heading {
  font-size: 1.3333333333rem;
  font-weight: 700
}

@media screen and (max-width: 768.98px) {

  body.layout-style-small .editor-contents h2,
  body.layout-style-small .editor-contents h2.wp-block-heading {
    font-size: 1.2857142857rem
  }
}

body.layout-style-small .editor-contents ul {
  --my-ul-left-space: .55em;
  margin-block: 0;
  padding-left: var(--my-ul-left-space)
}

body.layout-style-small .editor-contents ul li {
  margin-top: .1em;
  text-indent: calc(var(--my-ul-left-space) * -1);
  padding-left: var(--my-ul-left-space)
}

body.layout-style-small .editor-contents ul li:before {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  body.layout-style-small .editor-contents ul li:before {
    --circle-size: .5714285714rem
  }
}

body.layout-style-small .editor-contents ul li:before {
  display: inline-block;
  position: relative;
  top: -.08em;
  left: calc(var(--my-ul-left-space) * -1);
  background: radial-gradient(50% 50% at 50% 50%, #fff 23.08%, #ddd 36.54%, #707070 97.12%)
}

body.layout-style-small .editor-contents ul li:before {
  content: ""
}

body.layout-style-small .editor-contents ul li:first-child {
  margin-top: 0
}

body.layout-simple article {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  min-height: 48.2666666667rem
}

@media screen and (max-width: 768.98px) {
  body.layout-simple article {
    min-height: 38.4285714286rem
  }
}

body.layout-simple article:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0 0 0 48%;
  background: url(../images/common/img-sparkle-1-pc.webp) no-repeat center
}

@media screen and (min-width: 769px) {
  body.layout-simple article:before {
    mask-image: linear-gradient(to right, transparent 0%, black 10%, black 100%)
  }
}

@media screen and (max-width: 768.98px) {
  body.layout-simple article:before {
    left: 0;
    background-image: url(../images/common/img-sparkle-1-sp.webp);
    background-position: center left
  }
}

body.layout-simple article header {
  position: relative;
  margin-bottom: 3.2rem
}

@media screen and (max-width: 768.98px) {
  body.layout-simple article header {
    margin-bottom: 2rem
  }
}

body.layout-simple article header .page-subtitle {
  margin-top: .75em
}

@media screen and (max-width: 768.98px) {
  body.layout-simple article header .page-subtitle {
    margin-top: .5em
  }
}

body.layout-simple article .wrapper {
  display: flex;
  flex-direction: column;
  position: relative
}

body.layout-simple article>.wrapper {
  align-items: center;
  justify-content: center;
  flex-grow: 1
}

body.layout-simple .page-title {
  text-align: center
}

body.layout-simple .page-title.eng {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--theme-color-black)
}

@media screen and (max-width: 768.98px) {
  body.layout-simple .page-title.eng {
    font-size: 2.2857142857rem
  }
}

body.layout-simple .page-subtitle {
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center
}

@media screen and (max-width: 768.98px) {
  body.layout-simple .page-subtitle {
    font-size: 1rem
  }
}

body.layout-simple .description {
  text-align: center
}

body.layout-simple .btn-area .btn {
  text-align: center;
  width: auto
}

body.layout-simple:not(.no-page-header)>article {
  border-top: 0
}

@media screen and (max-width: 768.98px) {
  body.layout-simple:not(.no-page-header)>article>.wrapper:first-child {
    padding-top: 1.7857142857rem
  }
}

body.layout-simple.no-page-header article {
  min-height: 39.2666666667rem
}

@media screen and (max-width: 768.98px) {
  body.layout-simple.no-page-header article {
    min-height: 29.5rem
  }
}

body.layout-simple #page-header-breadcrumb .wrapper .header-breadcrumb-area {
  font-size: .8666666667rem;
  font-weight: 500
}

@media screen and (max-width: 768.98px) {
  body.layout-simple #page-header-breadcrumb .wrapper .header-breadcrumb-area {
    font-size: .8571428571rem
  }
}

.anime-clip-left {
  clip-path: inset(0 100% 0 0)
}

.anime-fadein {
  opacity: 0
}

.cta-buttons {
  --my-btn-pos-x: 1.694444vw;
  --my-btn-pos-y: 11.694444vw;
  gap: .6944444444vw
}

@media screen and (max-width: 768.98px) {
  .cta-buttons {
    --my-btn-pos-x: .7142857143rem
  }
}

@media screen and (max-width: 768.98px) {
  .cta-buttons {
    --my-btn-pos-y: 4.714286rem;
  }
}

@media screen and (max-width: 768.98px) {
  .cta-buttons {
    gap: .7142857143rem
  }
}

.cta-buttons {
  display: flex;
  pointer-events: none;
  flex-direction: row-reverse;
  flex-wrap: wrap-reverse;
  align-items: flex-end;
  position: fixed;
  bottom: var(--my-btn-pos-y);
  right: var(--my-btn-pos-x);
  z-index: 90;
  transition: opacity .3s, visibility .3s
}

body.in-site-footer .cta-buttons {
  opacity: 0;
  visibility: hidden;
  pointer-events: none
}

.cta-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: .45em;
  pointer-events: auto
}

.cta-button .sub {
  font-size: .8em;
  letter-spacing: .08em
}

.cta-button .main {
  font-size: 1.15em;
  font-weight: 700;
  line-height: 1.4
}

.cta-button .is-latin,
.cta-button .eng {
  font-family: futura-100, Futura, Noto Sans JP, sans-serif
}

.cta-button .arrow:before {
  content: "→";
  font-size: 1.1em
}

.cta-button--white,
.cta-button--beige,
.cta-button--gold {
  --my-btn-size: 9.0277777778vw
}

@media screen and (max-width: 768.98px) {

  .cta-button--white,
  .cta-button--beige,
  .cta-button--gold {
    --my-btn-size: 9.2857142857rem
  }
}

.cta-button--white,
.cta-button--beige,
.cta-button--gold {
  --my-btn-size: 9.0277777778vw;
  color: var(--theme-color-font)
}

@media screen and (max-width: 768.98px) {

  .cta-button--white,
  .cta-button--beige,
  .cta-button--gold {
    --my-btn-size: 18.641026vw;
  }
}

.cta-button--white .item-inner,
.cta-button--beige .item-inner,
.cta-button--gold .item-inner {
  --my-bs-shadow-size: .8333333333vw;
  --my-bs-shadow-y: .2083333333vw
}

@media screen and (max-width: 768.98px) {

  .cta-button--white .item-inner,
  .cta-button--beige .item-inner,
  .cta-button--gold .item-inner {
    --my-bs-shadow-size: .8571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  .cta-button--white .item-inner,
  .cta-button--beige .item-inner,
  .cta-button--gold .item-inner {
    --my-bs-shadow-y: .2142857143rem
  }
}

.cta-button--white .item-inner,
.cta-button--beige .item-inner,
.cta-button--gold .item-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  aspect-ratio: 1;
  text-align: center;
  gap: .3472222222vw;
  width: var(--my-btn-size);
  border-radius: 50%;
  box-shadow: 0 var(--my-bs-shadow-y) var(--my-bs-shadow-size) var(--theme-color-black-shadow-20)
}

@media screen and (max-width: 768.98px) {

  .cta-button--white .item-inner,
  .cta-button--beige .item-inner,
  .cta-button--gold .item-inner {
    gap: .5128205128vw
  }
}

.cta-button--white .sub-label,
.cta-button--beige .sub-label,
.cta-button--gold .sub-label {
  font-size: .6944444444vw;
  font-weight: 500
}

@media screen and (max-width: 768.98px) {

  .cta-button--white .sub-label,
  .cta-button--beige .sub-label,
  .cta-button--gold .sub-label {
    font-size: 2.0512820513vw
  }
}

.cta-button--white .label,
.cta-button--beige .label,
.cta-button--gold .label {
  font-size: 1.0416666667vw;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .03em
}

@media screen and (max-width: 768.98px) {

  .cta-button--white .label,
  .cta-button--beige .label,
  .cta-button--gold .label {
    font-size: 2.333333vw;
  }
}

.cta-button--white .icon,
.cta-button--beige .icon,
.cta-button--gold .icon {
  display: block;
  margin-inline: auto;
  margin-top: .7638888889vw;
  margin-bottom: -.6944444444vw;
  padding-top: 1.0416666667vw
}

@media screen and (max-width: 768.98px) {

  .cta-button--white .icon,
  .cta-button--beige .icon,
  .cta-button--gold .icon {
    margin-top: 1.2820512821vw;
    margin-bottom: -2.0512820513vw;
    padding-top: 0
  }
}

.cta-button--white .item-inner {
  background: linear-gradient(133.64deg, #FFFFFF 2.54%, var(--theme-color-gold-light) 98.08%)
}

.cta-button--beige .item-inner {
  background-color: var(--theme-color-gold-light)
}

.cta-button--gold {
  color: var(--theme-color-white)
}

.cta-button--gold .item-inner {
  background-color: var(--theme-color-gold)
}

body.home {
  --page-sec-subtitle-bottom-space-sp: .5em
}

body.home header {
  margin-bottom: 2.6rem
}

@media screen and (max-width: 768.98px) {
  body.home header {
    margin-bottom: 2.8rem
  }
}

body.home header .sec-subtitle {
  margin-bottom: .6em
}

@media screen and (max-width: 768.98px) {
  body.home header .sec-subtitle {
    margin-bottom: .8em
  }
}

body.home header.flex-between .btn-area {
  margin-top: 0;
  padding-bottom: .9rem
}

body.home article {
  overflow-x: clip;
  overflow-y: visible
}

@media screen and (max-width: 768.98px) {
  body.home section {
    padding-block: 3rem
  }
}

body.home .sec-subtitle.eng {
  font-size: .9333333333rem;
  font-weight: 500;
  letter-spacing: -.06em
}

@media screen and (max-width: 768.98px) {
  body.home .sec-subtitle.eng {
    font-size: .8571428571rem
  }
}

body.home .sec-title {
  font-size: 3.3333333333rem;
  font-weight: 700;
  line-height: 1.6
}

@media screen and (max-width: 768.98px) {
  body.home .sec-title {
    font-size: 2.2857142857rem
  }
}

body.home #mainvisual-anime-area {
  position: relative
}

body.home #mainvisual {
  position: sticky;
  bottom: auto;
  min-height: 100lvh
}

body.home #mainvisual .inner {
  display: block;
  position: relative;
  padding-block: 5.5rem 0;
  height: 60.8333333333vw
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .inner {
    margin-top: -2.5641025641vw;
    padding-block: calc(var(--theme-header-height) - 2.5641025641vw) 0;
    height: 236.1538461538vw
  }
}

body.home #mainvisual .slider-area {
  position: relative;
  transform: translateZ(0);
  will-change: transform, opacity;
  content-visibility: visible !important
}

body.home #mainvisual .slider-area .video-slider {
  --my-virtical-buffer: 3.3333333333rem;
  --my-slide-active-scale: 1.215;
  --my-slide-active-top-pos: .4166666667vw;
  --my-slide-active-margin: 4.1666666667vw;
  --my-slide-gap: 2.7777777778vw;
  --my-slide-area-padding: 5.5rem;
  transform: rotate(-1.73deg);
  width: auto
}

@media screen and (min-width: 769px) {
  body.home #mainvisual .slider-area .video-slider {
    margin-inline: -15.9722222222vw -.625vw;
    margin-top: calc(var(--my-virtical-buffer) * -1);
    padding-block: calc(7.3rem + var(--my-virtical-buffer));
    height: calc(54.375vw - 3rem + var(--my-virtical-buffer))
  }
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .video-slider {
    --my-slide-active-margin: 12.3076923077vw 14.1025641026vw;
    --my-slide-active-top-pos: .7692307692vw;
    --my-virtical-buffer: 1.0256410256vw;
    --my-virtical-top-buffer: -2.0512820513vw;
    --my-slide-area-padding: 22.3076923077vw;
    --my-slide-active-scale: 1.38;
    --my-slide-gap: 2.3076923077vw;
    margin-inline: -4.2142857143rem -14.1428571429rem;
    margin-top: calc(var(--my-virtical-top-buffer) * -1);
    padding-inline: 7.8571428571rem 0;
    padding-block: calc(var(--my-slide-area-padding) + var(--my-virtical-buffer));
    height: calc(92.3076923077vw + var(--my-slide-area-padding) * 2 + var(--my-virtical-buffer))
  }
}

body.home #mainvisual .slider-area .video-slider .swiper-slide {
  --my-border-radius: .8rem;
  transform: translateZ(0);
  will-change: transform, opacity;
  content-visibility: visible !important;
  transition: transform .4s ease, opacity .4s ease;
  transform: scale(1);
  opacity: .3;
  padding-inline: calc(var(--my-slide-gap) * .5)
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .video-slider .swiper-slide {
    --my-border-radius: .5714285714rem
  }
}

body.home #mainvisual .slider-area .video-slider .swiper-slide .video {
  position: relative;
  opacity: 0;
  border-radius: var(--my-border-radius)
}

.mobile body body.home #mainvisual .slider-area .video-slider .swiper-slide .video {
  touch-action: pan-y;
  pointer-events: none
}

body.home #mainvisual .slider-area .video-slider .swiper-slide .video[poster] {
  will-change: contents
}

body.home #mainvisual .slider-area .video-slider .swiper-slide .poster {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #mainvisual .slider-area .video-slider .swiper-slide .poster {
  right: calc(var(--my-slide-gap) * .5);
  left: calc(var(--my-slide-gap) * .5);
  overflow: hidden;
  border-radius: var(--my-border-radius)
}

body.home #mainvisual .slider-area .video-slider .swiper-slide .poster img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

body.home #mainvisual .slider-area .video-slider .swiper-slide.is-active {
  transform: scale(var(--my-slide-active-scale)) translateY(var(--my-slide-active-top-pos));
  opacity: 1;
  z-index: 2;
  margin-inline: var(--my-slide-active-margin)
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .video-slider .swiper-slide.is-active {
    --my-border-radius-active: 2.3076923077vw
  }
}

body.home #mainvisual .slider-area .video-slider .swiper-slide.is-active .video {
  opacity: 1;
  box-shadow: 0 .3272013889vw 1.9632083333vw .5726020833vw #00000026
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .video-slider .swiper-slide.is-active .video {
    border-radius: var(--my-border-radius-active);
    width: 51.2820512821vw;
    height: 91.0256410256vw
  }
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .video-slider .swiper-slide.is-active .poster {
    border-radius: var(--my-border-radius-active);
    padding-left: .0641025641vw;
    width: 51.1538461538vw;
    height: 91.0256410256vw
  }
}

body.home #mainvisual .slider-area .slider-navi {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 45.8%;
  right: 13.8888888889vw;
  z-index: 400;
  width: 32.7777777778vw;
  margin-top: 0
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .slider-navi {
    top: 43.7%;
    left: 2.1428571429rem;
    right: .8571428571rem;
    width: auto
  }
}

body.home #mainvisual .slider-area .slider-navi .btn {
  --circle-size: 3.3333333333vw;
  border-width: .0694444444vw;
  transition: all .25s ease;
  transition-property: opacity
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .slider-navi .btn {
    --circle-size: 3.4285714286rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .slider-area .slider-navi .btn {
    border-width: .0714285714rem
  }
}

body.home #mainvisual .slider-area .slider-navi .btn .icon {
  background: var(--theme-color-font)
}

@media (hover: hover) {
  body.home #mainvisual .slider-area .slider-navi .btn:hover {
    opacity: .5
  }
}

body.home #mainvisual .slider-area .slider-navi .btn:active,
body.home #mainvisual .slider-area .slider-navi .btn:focus,
body.home #mainvisual .slider-area .slider-navi .btn:focus-within {
  opacity: .5
}

body.home #mainvisual .text-area {
  pointer-events: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  z-index: 1
}

@media screen and (min-width: 769px) {
  body.home #mainvisual .text-area {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10.4166666667vw;
    padding-bottom: 1.1%;
    max-width: 41.6666666667vw
  }
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area {
    position: relative;
    top: -19.4871794872vw;
    padding-inline: 2.2rem
  }
}

body.home #mainvisual .text-area .title-area {
  display: flex;
  flex-direction: column;
  gap: .45rem
}

body.home #mainvisual .text-area .title-area .text-1 img {
  width: 29.6527777778vw
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .title-area .text-1 img {
    width: 74.358974359vw
  }
}

body.home #mainvisual .text-area .title-area .text-2 img {
  width: 18.125vw
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .title-area .text-2 img {
    width: 46.6666666667vw
  }
}

body.home #mainvisual .text-area .subtitle {
  font-size: 2.2222222222vw;
  font-weight: 500;
  letter-spacing: -.04em;
  margin-top: 1rem
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .subtitle {
    font-size: 5.1282051282vw
  }
}

body.home #mainvisual .text-area .subtitle p {
  display: flex;
  align-items: center;
  gap: .4em
}

body.home #mainvisual .text-area .subtitle p:before {
  height: .0694444444vw
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .subtitle p:before {
    height: .0714285714rem
  }
}

body.home #mainvisual .text-area .subtitle p:before {
  content: "";
  display: block;
  background: var(--theme-color-font);
  width: 3.3333333333vw
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .subtitle p:before {
    width: 5.1282051282vw
  }
}

body.home #mainvisual .text-area .description {
  font-size: 1.0416666667vw
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .description {
    font-size: 1.0714285714rem
  }
}

body.home #mainvisual .text-area .description {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .03em;
  margin-top: 4.1em
}

@media screen and (min-width: 769px) {
  body.home #mainvisual .text-area .description {
    padding-left: .45em
  }
}

@media screen and (max-width: 768.98px) {
  body.home #mainvisual .text-area .description {
    margin-top: 1.7em
  }
}

body.home #mainvisual .scroll-bar-area {
  pointer-events: none;
  position: absolute;
  bottom: 5.625vw;
  right: 1.7361111111vw;
  z-index: 1
}

body.home #mainvisual .scroll-bar-area .scroll-bar {
  --my-bar-color: var(--theme-color-font);
  position: relative
}

body.home #mainvisual .scroll-bar-area .scroll-bar .scroll-text {
  transform: rotate(90deg);
  display: flex;
  font-weight: 500;
  font-size: .9027777778vw;
  text-align: center;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  position: relative;
  left: .05em;
  letter-spacing: -.03em
}

body.home #mainvisual .scroll-bar-area .scroll-bar .scroll-border {
  position: relative;
  top: 10px;
  width: 100%;
  height: 6.4583333333vw;
  overflow: hidden
}

body.home #mainvisual .scroll-bar-area .scroll-bar .scroll-border:before,
body.home #mainvisual .scroll-bar-area .scroll-bar .scroll-border:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: var(--my-bar-color);
  margin: auto
}

body.home #mainvisual .scroll-bar-area .scroll-bar .scroll-border:before {
  width: .0694444444vw;
  height: 100%
}

body.home #mainvisual .scroll-bar-area .scroll-bar .scroll-border:after {
  width: 3px;
  height: 30px;
  animation: scrollbar 2s ease-in-out infinite
}

body.home #parallax-1 {
  position: relative;
  z-index: 2;
  background: var(--theme-color-white)
}

@supports (animation-timeline: view()) {
  body.home #parallax-1 {
    animation: tgi-home-parallax-in-pc linear both;
    animation-timeline: view();
    animation-range: cover 0% cover 25%
  }

  @media screen and (max-width: 768.98px) {
    body.home #parallax-1 {
      animation-name: tgi-home-parallax-in-sp
    }
  }
}

body.home #catch {
  position: relative;
  z-index: 2;
  padding-top: 6.6666666667rem
}

@media screen and (max-width: 768.98px) {
  body.home #catch {
    padding-top: 4.2857142857rem
  }
}

@media screen and (min-width: 769px) {
  body.home #catch header .btn-area .btn {
    width: 12.4rem
  }
}

@media screen and (min-width: 769px) {
  body.home #catch .wrapper {
    align-items: flex-end
  }
}

body.home #catch .text-contents header {
  width: 100%
}

@media screen and (min-width: 769px) {
  body.home #catch .text-contents .text-area {
    width: 53.5%
  }
}

@media screen and (max-width: 768.98px) {
  body.home #catch .text-contents .text-area {
    display: flex;
    flex-direction: column;
    align-items: center
  }
}

body.home #catch .text-contents .description {
  font-size: 1.0666666667rem;
  line-height: 2
}

@media screen and (max-width: 768.98px) {
  body.home #catch .text-contents .description {
    font-size: 1.0714285714rem;
    line-height: 1.8;
    flex-grow: 1;
    width: 100%
  }
}

body.home #catch .text-contents .btn-area {
  margin-top: 3.2rem
}

body.home #catch .photo-gallery {
  --my-slide-space-h: 1.6666666667vw;
  --my-slide-gap: 1.6666666667vw;
  --my-slider-height: 22.0833333333vw;
  margin-top: 5.3rem;
  height: calc(var(--my-slider-height))
}

@media screen and (max-width: 768.98px) {
  body.home #catch .photo-gallery {
    --my-slider-height: 45.1282051282vw;
    --my-slide-space-h: 3.3333333333vw;
    --my-slide-gap: 3.3333333333vw;
    margin-top: 4.4rem
  }
}

body.home #catch .photo-gallery .swiper {
  height: 100%;
  opacity: 0
}

body.home #catch .photo-gallery .swiper.swiper-initialized {
  opacity: 1
}

body.home #catch .photo-gallery .swiper-wrapper {
  will-change: transform;
  transform: translateZ(0);
  backface-visibility: hidden;
  transition-timing-function: linear;
  height: 100%
}

body.home #catch .photo-gallery .swiper-wrapper .swiper-slide {
  height: 100%
}

body.home #catch .photo-gallery .swiper-wrapper .swiper-slide .slider-image {
  padding-inline: calc(var(--my-slide-gap) * .5);
  padding-block: 0 var(--my-slide-space-h);
  height: 100%
}

body.home #catch .photo-gallery .swiper-wrapper .swiper-slide .slider-image img {
  border-radius: var(--theme-border-radius-semilarge)
}

body.home #catch .photo-gallery .swiper-wrapper .swiper-slide .slider-image img {
  object-fit: cover;
  height: 100%;
  width: 100%
}

body.home #catch .photo-gallery .swiper-wrapper .swiper-slide.slide-even .slider-image {
  padding-block: var(--my-slide-space-h) 0
}

@media screen and (max-width: 768.98px) {
  body.home #news header {
    margin-bottom: 1.7rem;
    padding-inline: .6rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #news header .sec-subtitle {
    margin-bottom: var(--page-sec-subtitle-bottom-space-sp)
  }
}

body.home #news .post-grid .post-top {
  padding-right: 4rem
}

body.home #news .news-post-slider-area {
  margin-inline: calc(var(--theme-wrapper-side-space) * -1)
}

@media screen and (max-width: 768.98px) {
  body.home #news .news-post-slider-area .post-list .image-area {
    height: 13.0714285714rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #news .btn-area {
    display: flex;
    justify-content: center
  }
}

@media screen and (min-width: 769px) {
  body.home #news > .wrapper > nav.btn-area {
    display: flex;
    justify-content: flex-end
  }
}

body.home #service {
  position: relative;
  padding-block: 0 1.8055555556vw;
  width: 100%;
  background: var(--theme-color-white)
}

body.home #service .inner {
  height: 56.1111111111vw;
  min-height: 100lvh
}

@media screen and (max-width: 768.98px) {
  body.home #service .inner {
    height: 185.3846153846vw
  }
}

@media screen and (max-width: 768.98px) {
  body.home #service {
    padding-block: 0
  }
}

body.home #service .text-area {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #service .text-area {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff
}

body.home #service .text-area header {
  margin-bottom: 0
}

body.home #service .text-area header .sec-subtitle {
  text-align: center;
  margin-bottom: .4em
}

body.home #service .text-area header .sec-title {
  line-height: 1.2;
  text-align: center
}

body.home #service .bg-image-grid {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #service .bg-image-grid {
  overflow: hidden
}

body.home #service .bg-image-grid .grid-area {
  --my-grid-overflow-y: -31.9%;
  --my-grid-overflow-x: -16.5%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem 1.9444444444vw;
  position: absolute;
  top: calc(var(--my-grid-overflow-y) + 2%);
  bottom: var(--my-grid-overflow-y);
  left: calc(var(--my-grid-overflow-x) + 1.1%);
  right: calc(var(--my-grid-overflow-x) - 1.1%);
  overflow: hidden
}

@media screen and (max-width: 768.98px) {
  body.home #service .bg-image-grid .grid-area {
    --my-grid-rows-tb: 24.6%;
    --my-grid-overflow-x: -64.2%;
    --my-grid-overflow-y: -2.2%;
    grid-template-rows: var(--my-grid-rows-tb) 1fr var(--my-grid-rows-tb);
    gap: .9285714286rem 3.3333333333vw;
    top: calc(var(--my-grid-overflow-y));
    bottom: calc(var(--my-grid-overflow-y) - 4.9%);
    left: calc(var(--my-grid-overflow-x));
    right: calc(var(--my-grid-overflow-x) - 2.1%)
  }
}

body.home #service .bg-image-grid .grid-item {
  border-radius: var(--theme-border-radius-semilarge)
}

body.home #service .bg-image-grid .grid-item {
  position: relative;
  overflow: hidden
}

body.home #service .bg-image-grid .grid-item .bg-cover {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #service .bg-image-grid .grid-item .bg-cover {
  opacity: .3;
  background: #000
}

body.home #service .bg-image-grid .grid-item img {
  transform: scale(1.5);
  object-fit: cover;
  width: 100%;
  height: 100%
}

body.home #service .cover {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #service .cover {
  opacity: 0;
  background: #000
}

body.home #sec-service-group {
  padding-top: 9.0277777778vw
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group {
    padding-top: 4rem
  }
}

body.home #sec-service-group .sec-service {
  position: relative;
  padding-block: 0;
  width: 100%;
  height: 100lvh;
  background: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service {
    height: 100lvh
  }
}

body.home #sec-service-group .sec-service .bg-image {
  height: 100%
}

body.home #sec-service-group .sec-service .bg-image img {
  height: 100%;
  width: 100%
}

body.home #sec-service-group .sec-service .bg-image:after {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #sec-service-group .sec-service .bg-image:after {
  content: "";
  top: auto;
  height: 63.4146341463%;
  background: linear-gradient(180deg, #fff0, #070707c8 118.21%)
}

body.home #sec-service-group .sec-service .text-area {
  position: absolute;
  inset: 0;
  margin: auto
}

body.home #sec-service-group .sec-service .text-area {
  top: auto;
  padding-bottom: 3.5416666667vw;
  padding-inline: 5.6% 5.4%;
  color: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    top: 0;
    bottom: auto;
    height: 100lvh;
    padding-bottom: 3rem;
    padding-inline: 2.1rem
  }
}

body.home #sec-service-group .sec-service .text-area header {
  margin-bottom: 1.4rem
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area header {
    margin-bottom: .9rem
  }
}

body.home #sec-service-group .sec-service .text-area .sec-title {
  font-size: 4.8611111111vw
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area .sec-title {
    font-size: 2.8571428571rem
  }
}

body.home #sec-service-group .sec-service .text-area .sec-subtitle {
  margin-bottom: .8em
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area .main-contents {
    flex-direction: column;
    align-items: center;
    gap: 2.2em
  }
}

body.home #sec-service-group .sec-service .text-area .main-contents .description {
  font-size: 1.0416666667vw;
  line-height: 1.8
}

@media screen and (min-width: 769px) {
  body.home #sec-service-group .sec-service .text-area .main-contents .description {
    width: 60.1%
  }
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area .main-contents .description {
    font-size: .9285714286rem
  }
}

body.home #sec-service-group .sec-service .text-area .main-contents .btn-area {
  margin-block: 0 1.875vw
}

body.home #sec-service-group .sec-service .text-area .main-contents .btn-area .btn {
  font-size: .9722222222vw;
  min-height: 3.8888888889vw;
  width: 17.2222222222vw
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area .main-contents .btn-area .btn {
    font-size: 1rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area .main-contents .btn-area .btn {
    min-height: 4rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #sec-service-group .sec-service .text-area .main-contents .btn-area .btn {
    width: 14.714286rem;
  }
}

@media screen and (min-width: 769px) {
  body.home #sec-service-group .parallax-service-group {
    padding-bottom: 1.7361111111vw
  }

  body.home #sec-service-group .parallax-service-group:last-child {
    padding-bottom: 0
  }
}

@media screen and (max-width: 768.98px) {
  html.mobile.safari body.home #sec-service-group .is-animating .sec-service .text-area {
    padding-bottom: 3rem;
    height: 100dvh
  }
}

body.home #recruit {
  overflow: hidden
}

@media screen and (min-width: 769px) {
  body.home #recruit {
    padding-block: 0;
    height: 100lvh;
    max-height: 68.2638888889vw
  }
}

@media screen and (max-width: 768.98px) {
  body.home #recruit {
    padding-bottom: 7.2rem;
    min-height: 100lvh
  }
}

body.home #recruit .inner {
  --my-flex-text-area-w: 50.9%;
  display: flex;
  position: relative
}

@media screen and (min-width: 769px) {
  body.home #recruit .inner {
    height: 100%;
    margin-inline: 10.9rem 4.5rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .inner {
    flex-direction: column;
    gap: 4.2rem
  }
}

body.home #recruit .text-area {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  flex-shrink: 0
}

@media screen and (min-width: 769px) {
  body.home #recruit .text-area {
    padding-block: var(--theme-section-padding);
    padding-right: 2em;
    width: var(--my-flex-text-area-w);
    height: 100%
  }
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .text-area {
    padding-inline: var(--theme-wrapper-side-space)
  }
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .text-area header {
    margin-bottom: 1.5rem
  }
}

body.home #recruit .text-area .description {
  font-size: 1.0666666667rem;
  line-height: 1.8
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .text-area .description {
    font-size: 1.0714285714rem
  }
}

@media screen and (min-width: 769px) {
  body.home #recruit .text-area .btn-area {
    margin-top: 3rem
  }
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .text-area .btn-area {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 2.6rem
  }
}

body.home #recruit .slider-group-area {
  --my-slide-item-gap: 2.0833333333vw;
  display: flex;
  gap: 2.0833333333vw;
  flex-grow: 1
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .slider-group-area {
    --my-slide-item-gap: 12px;
    flex-direction: column;
    gap: var(--my-slide-item-gap)
  }
}

body.home #recruit .slider-group-area .swiper {
  width: 100%
}

@media screen and (min-width: 769px) {
  body.home #recruit .slider-group-area .swiper {
    flex-grow: 1
  }
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .slider-group-area .swiper {
    width: 100%
  }
}

body.home #recruit .slider-group-area .swiper .swiper-wrapper {
  transition-timing-function: linear
}

body.home #recruit .slider-group-area .swiper .slider-image {
  padding: calc(var(--my-slide-item-gap) * .5) 0;
  height: 100%;
  width: 100%
}

@media screen and (max-width: 768.98px) {
  body.home #recruit .slider-group-area .swiper .slider-image {
    padding: 0 calc(var(--my-slide-item-gap) * .5)
  }
}

body.home #recruit .slider-group-area .swiper .slider-image img {
  border-radius: var(--theme-border-radius-semilarge)
}

body.home #recruit .slider-group-area .swiper .slider-image img {
  height: 100%;
  width: 100%
}

body.style-about header.center,
body.page-about header.center {
  text-align: center
}

body.style-about .bar-h,
body.page-about .bar-h {
  width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-about .bar-h,
  body.page-about .bar-h {
    width: .0714285714rem
  }
}

body.style-about .bar-h,
body.page-about .bar-h {
  margin-inline: auto;
  height: 5.6666666667rem;
  background: var(--theme-color-font)
}

@media screen and (max-width: 768.98px) {

  body.style-about .bar-h,
  body.page-about .bar-h {
    height: 4.5714285714rem
  }
}

body.style-about .header-space-gap,
body.page-about .header-space-gap {
  height: var(--theme-header-height)
}

body.style-about #about,
body.page-about #about {
  padding-block: 7.5333333333rem 6.4rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #about,
  body.page-about #about {
    padding-block: 2.8571428571rem 4.2857142857rem
  }
}

@media screen and (min-width: 769px) {

  body.style-about #about .grid-text-image,
  body.page-about #about .grid-text-image {
    grid-template-columns: 45.7% 1fr;
    gap: 10.5%;
    padding-inline: 2.3333333333rem 1.6rem
  }
}

body.style-about #about .text-area header,
body.page-about #about .text-area header {
  position: relative;
  margin-bottom: 3.9333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #about .text-area header,
  body.page-about #about .text-area header {
    margin-bottom: 3.1428571429rem
  }
}

body.style-about #about .text-area .sec-title,
body.page-about #about .text-area .sec-title {
  font-size: 4.5333333333rem;
  letter-spacing: 0;
  line-height: 1.2;
  margin-top: 2.2666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #about .text-area .sec-title,
  body.page-about #about .text-area .sec-title {
    font-size: 2.8571428571rem;
    line-height: 1.2;
    letter-spacing: .04em
  }
}

body.style-about #about .text-area .sec-gray-text,
body.page-about #about .text-area .sec-gray-text {
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.06em;
  position: absolute;
  bottom: .4666666667rem;
  left: 16.1333333333rem;
  color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {

  body.style-about #about .text-area .sec-gray-text,
  body.page-about #about .text-area .sec-gray-text {
    font-size: 1.1428571429rem;
    bottom: .2142857143rem;
    left: 11.3571428571rem
  }
}

body.style-about #about .text-area .sec-description,
body.page-about #about .text-area .sec-description {
  font-size: 1.0666666667rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-about #about .text-area .sec-description,
  body.page-about #about .text-area .sec-description {
    font-size: 1.0714285714rem;
    line-height: 1.6
  }
}

body.style-about #about .text-area .sec-description,
body.page-about #about .text-area .sec-description {
  --my-p-gap: 1.95em
}

@media screen and (max-width: 768.98px) {

  body.style-about #about .text-area .sec-description,
  body.page-about #about .text-area .sec-description {
    line-height: 2
  }
}

body.style-about #about .image-area,
body.page-about #about .image-area {
  padding-top: 3.6666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #about .image-area,
  body.page-about #about .image-area {
    padding-top: 2.5714285714rem;
    padding-inline: .6428571429rem
  }
}

body.style-about #story,
body.page-about #story {
  padding-block: 10.6666666667rem;
  background: var(--theme-color-lightgray-light)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story,
  body.page-about #story {
    padding-block: 2.8571428571rem
  }
}

body.style-about #story header,
body.page-about #story header {
  --my-anime-header-space: calc(var(--theme-header-height) + .6666666667rem);
  position: relative;
  z-index: 1;
  margin-bottom: 3.6666666667rem;
  padding-top: 10.6rem;
  text-align: center
}

@media screen and (max-width: 768.98px) {

  body.style-about #story header,
  body.page-about #story header {
    --my-anime-header-space: var(--theme-header-height);
    margin-bottom: 2rem;
    padding-top: 3.4285714286rem
  }
}

@media screen and (min-width: 769px) {

  body.style-about #story header .sec-subtitle,
  body.page-about #story header .sec-subtitle {
    margin-bottom: .5333333333rem
  }
}

body.style-about #story header .sec-title,
body.page-about #story header .sec-title {
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.65
}

@media screen and (max-width: 768.98px) {

  body.style-about #story header .sec-title,
  body.page-about #story header .sec-title {
    font-size: 1.2857142857rem
  }
}

body.style-about #story header .header-description,
body.page-about #story header .header-description {
  margin-top: 1em
}

body.style-about #story .line-circle-inner,
body.page-about #story .line-circle-inner {
  --my-anime-buffer-w: 2rem;
  --my-anime-buffer-h: 2rem;
  overflow: hidden;
  margin: calc(var(--my-anime-buffer-h) * -1) calc(var(--my-anime-buffer-w) * -1);
  padding: var(--my-anime-buffer-h) var(--my-anime-buffer-w)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story .line-circle-inner,
  body.page-about #story .line-circle-inner {
    --my-anime-buffer-h: 1.2857142857rem;
    --my-anime-buffer-w: 1rem
  }
}

body.style-about #story .sec-inner,
body.page-about #story .sec-inner {
  position: relative;
  overflow: hidden;
  padding: 0 2.5333333333rem 10.6666666667rem;
  background: var(--theme-color-white)
}

@media screen and (min-width: 769px) {

  body.style-about #story .sec-inner,
  body.page-about #story .sec-inner {
    background-image: url(../images/page/about/img-story-bottom-bg-pc.webp);
    background-position: bottom center;
    background-repeat: repeat-x;
    background-size: 75%
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #story .sec-inner,
  body.page-about #story .sec-inner {
    padding: 0 1rem 3.3571428571rem
  }
}

body.style-about #story .after-things,
body.page-about #story .after-things {
  padding-top: 3.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #story .after-things,
  body.page-about #story .after-things {
    padding-top: 1.7142857143rem
  }
}

body.style-about #story .after-things .sec-description,
body.page-about #story .after-things .sec-description {
  font-size: 1.0666666667rem;
  font-weight: 400;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-about #story .after-things .sec-description,
  body.page-about #story .after-things .sec-description {
    font-size: 1rem
  }
}

body.style-about #story .after-things .sec-description,
body.page-about #story .after-things .sec-description {
  margin-top: 1.4666666667rem;
  text-align: center
}

body.style-about #story #things .inner,
body.page-about #story #things .inner {
  position: relative
}

body.style-about #story #things .grid-image-text,
body.page-about #story #things .grid-image-text {
  display: flex;
  gap: 8.2%
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text,
  body.page-about #story #things .grid-image-text {
    flex-direction: column;
    gap: 1.2857142857rem
  }
}

@media screen and (min-width: 769px) {

  body.style-about #story #things .grid-image-text .line-circles-area,
  body.page-about #story #things .grid-image-text .line-circles-area {
    flex-basis: 50.178%;
    flex-shrink: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area,
  body.page-about #story #things .grid-image-text .line-circles-area {
    height: 22.4285714286rem
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle {
  --my-transform-origin: 48.7% 50%;
  --my-bg-circle-base-color: #e9e9e9;
  backface-visibility: hidden;
  transform: translateZ(0);
  position: relative
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .base-circle,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .base-circle {
  transform-origin: var(--my-transform-origin);
  backface-visibility: hidden;
  transform: translateZ(0)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .base-circle img,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .base-circle img {
  width: 100%;
  height: 100%
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle {
  transform-origin: var(--my-transform-origin);
  backface-visibility: hidden;
  transform: translateZ(0)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item {
  border-radius: 50%;
  --circle-size: 16.0666666667rem;
  width: var(--circle-size);
  height: var(--circle-size)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item {
  --my-item-color: var(--theme-color-white);
  backface-visibility: hidden;
  transform: translateZ(0) scale(.7);
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  overflow: hidden;
  color: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item {
    --circle-size: 9.5rem
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg-gold,
body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg-gold,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg-gold,
body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg-gold,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg {
  background: var(--my-bg-circle-base-color)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg {
  opacity: 1
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg-gold,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-bg-gold {
  background: radial-gradient(50.01% 50.01% at 50% 47.38%, #d3cbaa, #fff)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-main,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-main {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-main,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: .4rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-main,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .circle-main {
    line-height: 1.05;
    gap: .2142857143rem;
    padding-block: 0
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .icon-area .icon,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .icon-area .icon {
  font-size: 1.6666666667rem;
  background: var(--my-item-color)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .icon-area .icon,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .icon-area .icon {
    font-size: 1rem
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .item-title,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .item-title {
  text-align: center;
  color: var(--my-item-color)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .item-title.eng,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .item-title.eng {
  text-transform: uppercase;
  letter-spacing: -.045em
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .item-title,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item .item-title {
    font-size: .8042857143rem
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things {
  top: 9.8%;
  right: 12.2%;
  color: var(--theme-color-font)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things {
    top: 10.2%;
    right: 12.6%
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things .item-title,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things .item-title {
  color: var(--theme-color-font)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things .icon,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-things .icon {
  background-color: var(--theme-color-font)
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-better,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-better {
  top: 9.8%;
  right: 50.2%;
  transform: translateZ(0) scale(.7)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-better,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-better {
    top: 9.8%;
    right: 50.6%
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-better .circle-bg,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-better .circle-bg {
  opacity: 0
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-grow,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-grow {
  top: 43.3%;
  right: 48.2%;
  transform: translateZ(0) scale(.7)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-grow,
  body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-grow {
    top: 43.4%;
    right: 48.4%
  }
}

body.style-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-grow .circle-bg,
body.page-about #story #things .grid-image-text .line-circles-area .line-circle .story-circle .circle-item.circle-grow .circle-bg {
  opacity: 0
}

body.style-about #story #things .grid-image-text .text-rolls-area,
body.page-about #story #things .grid-image-text .text-rolls-area {
  --my-anime-buffer-height: auto;
  position: relative;
  overflow: hidden
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area,
  body.page-about #story #things .grid-image-text .text-rolls-area {
    --my-anime-buffer-height: calc(100dvh - 123.0769230769vw);
    min-height: 18em
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls {
    margin-top: 1.7142857143rem
  }
}

body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item,
body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item {
  border-bottom-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item {
    border-bottom-width: .0714285714rem
  }
}

body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item,
body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item {
  padding-block: 2.4666666667rem 1.6rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item {
    padding-block: 2.8571428571rem 1.1428571429rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item:first-child,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item:first-child {
    padding-top: 0
  }
}

body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-title,
body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-title {
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.05
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-title,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-title {
    font-size: 2.2857142857rem
  }
}

body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-title strong,
body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-title strong {
  font-weight: 700
}

body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description,
body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description {
  font-size: 1.0666666667rem;
  font-weight: 400;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description {
    font-size: 1rem
  }
}

body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description,
body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description {
  margin-top: 1.4666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description,
  body.page-about #story #things .grid-image-text .text-rolls-area .text-rolls .list-item .item-description {
    margin-top: 1.6428571429rem
  }
}

body.style-about #global,
body.page-about #global {
  background: var(--theme-color-accent-semilight)
}

@media screen and (min-width: 769px) {

  body.style-about #global,
  body.page-about #global {
    padding-block: 0;
    height: 51.1333333333rem
  }

  body.style-about #global .grid-text-image,
  body.style-about #global .wrapper,
  body.page-about #global .grid-text-image,
  body.page-about #global .wrapper {
    height: 100%
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #global,
  body.page-about #global {
    padding-block: 4.2857142857rem
  }
}

body.style-about #global .grid-text-image,
body.page-about #global .grid-text-image {
  display: flex;
  gap: 11%
}

@media screen and (min-width: 769px) {

  body.style-about #global .grid-text-image .text-area,
  body.page-about #global .grid-text-image .text-area {
    flex-grow: 1
  }

  body.style-about #global .grid-text-image .image-area,
  body.page-about #global .grid-text-image .image-area {
    flex-basis: 33.5%
  }
}

@media screen and (min-width: 769px) and (min-width: 769px) {

  body.style-about #global .grid-text-image .image-area,
  body.page-about #global .grid-text-image .image-area {
    flex-shrink: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .grid-text-image,
  body.page-about #global .grid-text-image {
    flex-direction: column;
    gap: 2.7857142857rem
  }
}

body.style-about #global .text-area,
body.page-about #global .text-area {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start
}

@media screen and (min-width: 769px) {

  body.style-about #global .text-area,
  body.page-about #global .text-area {
    padding-block: var(--theme-section-padding);
    padding-left: 5.2666666667rem
  }
}

body.style-about #global .text-area header,
body.page-about #global .text-area header {
  margin-bottom: 3.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .text-area header,
  body.page-about #global .text-area header {
    margin-bottom: 2.2142857143rem
  }
}

body.style-about #global .text-area .sec-subtitle,
body.page-about #global .text-area .sec-subtitle {
  margin-bottom: 1.3333333333rem
}

body.style-about #global .text-area .sec-title,
body.page-about #global .text-area .sec-title {
  font-size: 3.2rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.45
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .text-area .sec-title,
  body.page-about #global .text-area .sec-title {
    font-size: 2.2857142857rem
  }
}

@media screen and (min-width: 769px) {

  body.style-about #global .text-area .sec-title,
  body.page-about #global .text-area .sec-title {
    line-height: 1.3
  }
}

body.style-about #global .text-area .sec-description,
body.page-about #global .text-area .sec-description {
  font-size: 1.0666666667rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .text-area .sec-description,
  body.page-about #global .text-area .sec-description {
    font-size: 1rem;
    line-height: 1.6
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .text-area .sec-description,
  body.page-about #global .text-area .sec-description {
    line-height: 2
  }
}

body.style-about #global .image-area,
body.page-about #global .image-area {
  overflow: hidden
}

@media screen and (min-width: 769px) {

  body.style-about #global .image-area,
  body.page-about #global .image-area {
    height: 100%
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .image-area,
  body.page-about #global .image-area {
    margin-inline: calc(var(--theme-wrapper-side-space) * -1)
  }

  body.style-about #global .image-area,
  body.page-about #global .image-area {
    height: 12.8571428571rem
  }
}

body.style-about #global .image-area .slider-group-area,
body.page-about #global .image-area .slider-group-area {
  display: block;
  overflow: hidden;
  position: relative;
  height: 100%
}

body.style-about #global .image-area .swiper,
body.page-about #global .image-area .swiper,
body.style-about #global .image-area .slider-image,
body.page-about #global .image-area .slider-image {
  height: 100%
}

@media screen and (min-width: 769px) {

  body.style-about #global .image-area .slider-image,
  body.page-about #global .image-area .slider-image {
    padding-block: .8rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #global .image-area .slider-image,
  body.page-about #global .image-area .slider-image {
    padding-inline: .8571428571rem
  }
}

body.style-about #global .image-area .slider-image img,
body.page-about #global .image-area .slider-image img {
  height: 100%
}

body.style-about #strength,
body.page-about #strength {
  padding-bottom: 7.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength,
  body.page-about #strength {
    padding-block: 4.2857142857rem 3.1428571429rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength header,
  body.page-about #strength header {
    margin-bottom: 2.8571428571rem
  }
}

body.style-about #strength header .bar-h,
body.page-about #strength header .bar-h {
  margin-bottom: .6666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength header .bar-h,
  body.page-about #strength header .bar-h {
    margin-bottom: 1.5rem
  }
}

body.style-about #strength header .sec-subtitle,
body.page-about #strength header .sec-subtitle {
  margin-bottom: 1rem
}

body.style-about #strength header .sec-title,
body.page-about #strength header .sec-title {
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.65
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength header .sec-title,
  body.page-about #strength header .sec-title {
    font-size: 1.2857142857rem
  }
}

body.style-about #strength .produce-grid ul,
body.page-about #strength .produce-grid ul {
  display: grid;
  gap: 2.6666666667rem
}

@media screen and (min-width: 769px) {

  body.style-about #strength .produce-grid ul,
  body.page-about #strength .produce-grid ul {
    grid-template-columns: repeat(3, 1fr)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength .produce-grid ul,
  body.page-about #strength .produce-grid ul {
    gap: 1.0714285714rem
  }
}

body.style-about #strength .produce-grid ul .list-item,
body.page-about #strength .produce-grid ul .list-item {
  display: flex
}

body.style-about #strength .produce-grid ul .list-item .item-inner,
body.page-about #strength .produce-grid ul .list-item .item-inner {
  border-width: .0666666667rem;
  border-radius: .5333333333rem
}

@media screen and (min-width: 769px)  {
  ul.group-content-inner {
      background: #d9cdb7;
      color: #fffFFF;
      display: flex;
      border-radius: .5333333333rem;
  }
  
  .group-content {
      text-align: center;
  }
  
  p.strength-discription {
      text-align: center;
      line-height: 2;
      padding-top: 1rem;
  }
  
  p.group-content-data {
      font-size: 1.4rem;
  }
  
  p.group-content-data span {
      font-size: 5.3rem;
  }
  
  p.group-content-add {
      font-size: 1rem;
  }
  
  h2.group-content-title {
      font-size: 1.4rem;
      font-weight: bold;
      margin-top: 7rem;
      margin-bottom: 1rem;
  }

p.group-content-discription {
    line-height: 2;
    margin-bottom: 2rem;
}
  ul.group-content-inner li {
      width: 100%;
      padding: 0  1.6rem  1.6rem;
      position: relative;
  }
  ul.group-content-inner li::after
  {
      content:"";
      display: block;
      border-right: solid 1px #ffffff54;
      height: 60%;
      position: absolute;
      top: 20%;
      right: 0;
  }
    ul.group-content-inner li:last-child::after
  {
      border-right:none;
  }
}
  p.group-content-add_ {
    color: var(--theme-color-gray);
    text-align: right;
    padding-top: 0.5em;
}
@media screen and (max-width: 768.98px)  {
  ul.group-content-inner {
      background: #d9cdb7;
      color: #fffFFF;
      border-radius: .5333333333rem;
  }
  
  .group-content {
      text-align: center;
  }
  
  p.strength-discription {
      text-align: center;
      line-height: 2;
      padding-top: 1rem;
  }
  
  p.group-content-data {
      font-size: 1rem;
  }
  
  p.group-content-data span {
      font-size: 4.3rem;
  }
  
  p.group-content-add {
      font-size: 1rem;
  }
  
  h2.group-content-title {
      font-size: 1.4rem;
      font-weight: bold;
      margin-top: 7rem;
      margin-bottom: 1rem;
  }

p.group-content-discription {
    line-height: 2;
    margin-bottom: 2rem;
}
  ul.group-content-inner li {
      width: 100%;
      padding: 0  1.6rem  1.6rem;
      position: relative;
  }
  ul.group-content-inner li::after
  {
      content:"";
      display: block;
      border-bottom: solid 1px #ffffff54;
      position: absolute;
      width:80%;
      bottom: 0;
  }
    ul.group-content-inner li:last-child::after
  {
      border-bottom:none;
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength .produce-grid ul .list-item .item-inner,
  body.page-about #strength .produce-grid ul .list-item .item-inner {
    border-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength .produce-grid ul .list-item .item-inner,
  body.page-about #strength .produce-grid ul .list-item .item-inner {
    border-radius: .5714285714rem
  }
}

body.style-about #strength .produce-grid ul .list-item .item-inner,
body.page-about #strength .produce-grid ul .list-item .item-inner {
  display: flex;
  flex-direction: column;
  gap: 2.6666666667rem;
  padding: 3.6666666667rem 1.6rem 1.6rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray);
  background: linear-gradient(133.64deg, #ffffff80 2.54%, #f2eee280 98.08%);
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength .produce-grid ul .list-item .item-inner,
  body.page-about #strength .produce-grid ul .list-item .item-inner {
    gap: 2.2857142857rem;
    padding: 2.8571428571rem 1.5714285714rem 1.7142857143rem
  }
}

body.style-about #strength .produce-grid ul .list-item .icon-area img,
body.page-about #strength .produce-grid ul .list-item .icon-area img {
  width: 1.8666666667rem
}

body.style-about #strength .produce-grid ul .list-item .text-area,
body.page-about #strength .produce-grid ul .list-item .text-area {
  display: flex;
  flex-direction: column;
  gap: 1.1333333333rem
}

body.style-about #strength .produce-grid ul .list-item .text-area .item-title,
body.page-about #strength .produce-grid ul .list-item .text-area .item-title {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-about #strength .produce-grid ul .list-item .text-area .item-title,
  body.page-about #strength .produce-grid ul .list-item .text-area .item-title {
    font-size: 1.1428571429rem
  }
}

body.style-about #strength .produce-grid ul .list-item .text-area .item-description,
body.page-about #strength .produce-grid ul .list-item .text-area .item-description {
  line-height: 1.5
}

body.style-company a.ex-link,
body.page-company a.ex-link {
  color: var(--theme-color-accent)
}

body.style-company a.ex-link:after,
body.page-company a.ex-link:after {
  display: block;
  width: 1em;
  height: 1em;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background: currentColor
}

body.style-company a.ex-link:after,
body.page-company a.ex-link:after {
  content: "";
  display: inline-block;
  vertical-align: baseline;
  position: relative;
  top: .15em;
  font-size: .95em;
  margin-left: .4em;
  mask-image: url(../images/common/icon-ex-link.svg)
}

@media screen and (max-width: 768.98px) {

  body.style-company #page-header,
  body.page-company #page-header {
    margin-bottom: 3.8571428571rem
  }
}

body.style-company #company,
body.page-company #company {
  padding-top: 0;
  padding-bottom: 10.6666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company,
  body.page-company #company {
    padding-bottom: 5.7142857143rem
  }
}

@media screen and (min-width: 769px) {

  body.style-company #company .grid-text-image,
  body.page-company #company .grid-text-image {
    grid-template-columns: 20% 1fr;
    gap: 8%
  }
}

body.style-company #company .title-area header,
body.page-company #company .title-area header {
  margin-bottom: 3.5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .title-area header,
  body.page-company #company .title-area header {
    margin-bottom: 3.1428571429rem
  }
}

body.style-company #company .title-area .sec-title,
body.page-company #company .title-area .sec-title {
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: .02em
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .title-area .sec-title,
  body.page-company #company .title-area .sec-title {
    font-size: 1.7142857143rem
  }
}

body.style-company #company .title-area .sec-title,
body.page-company #company .title-area .sec-title {
  padding-top: .6666666667rem
}

body.style-company #company .title-area .btn-area,
body.page-company #company .title-area .btn-area {
  margin-top: 0
}

body.style-company #company .title-area .btn-area .btn,
body.page-company #company .title-area .btn-area .btn {
  width: 14.4rem;
  min-width: 14.4rem
}

body.style-company #company .frame-table,
body.page-company #company .frame-table {
  --my-border-color: var(--theme-color-lightgray);
  display: flex;
  font-weight: 400;
  flex-direction: column;
  gap: 1.2rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table,
  body.page-company #company .frame-table {
    gap: .6428571429rem
  }
}

body.style-company #company .frame-table a,
body.page-company #company .frame-table a {
  text-decoration: underline
}

body.style-company #company .frame-table dl,
body.page-company #company .frame-table dl {
  --my-title-width: 12.8666666667rem;
  display: grid;
  grid-template-columns: var(--my-title-width) 1fr;
  gap: 1rem;
  min-height: 4.9333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl,
  body.page-company #company .frame-table dl {
    --my-title-width: 5.7142857143rem;
    gap: .5rem;
    min-height: 5.2857142857rem
  }
}

body.style-company #company .frame-table dl dt,
body.style-company #company .frame-table dl dd,
body.page-company #company .frame-table dl dt,
body.page-company #company .frame-table dl dd {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.05;
  border-bottom-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl dt,
  body.style-company #company .frame-table dl dd,
  body.page-company #company .frame-table dl dt,
  body.page-company #company .frame-table dl dd {
    font-size: .8571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl dt,
  body.style-company #company .frame-table dl dd,
  body.page-company #company .frame-table dl dt,
  body.page-company #company .frame-table dl dd {
    border-bottom-width: .0714285714rem
  }
}

body.style-company #company .frame-table dl dt,
body.style-company #company .frame-table dl dd,
body.page-company #company .frame-table dl dt,
body.page-company #company .frame-table dl dd {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  line-height: 1.5;
  padding: 1.4666666667rem 1.3333333333rem 1.6rem 2.4666666667rem;
  border-style: solid;
  border-color: var(--my-border-color)
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl dt,
  body.style-company #company .frame-table dl dd,
  body.page-company #company .frame-table dl dt,
  body.page-company #company .frame-table dl dd {
    padding: 1.5rem .3571428571rem 1.3571428571rem 5px
  }
}

body.style-company #company .frame-table dl dt,
body.page-company #company .frame-table dl dt {
  font-weight: 700
}

body.style-company #company .frame-table dl dd,
body.page-company #company .frame-table dl dd {
  position: relative;
  padding-left: 3.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl dd,
  body.page-company #company .frame-table dl dd {
    padding-left: 1.2857142857rem
  }
}

body.style-company #company .frame-table dl dd:before,
body.page-company #company .frame-table dl dd:before {
  width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl dd:before,
  body.page-company #company .frame-table dl dd:before {
    width: .0714285714rem
  }
}

body.style-company #company .frame-table dl dd:before,
body.page-company #company .frame-table dl dd:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: .5333333333rem;
  background: var(--my-border-color)
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .frame-table dl dd:before,
  body.page-company #company .frame-table dl dd:before {
    left: .1428571429rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-company #company .btn-area,
  body.page-company #company .btn-area {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 3.3571428571rem
  }
}

body.style-company #tagline,
body.page-company #tagline {
  position: relative;
  overflow: hidden;
  padding-block: 10.8666666667rem;
  background: var(--theme-color-accent-light)
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline,
  body.page-company #tagline {
    padding-block: 7.1428571429rem
  }
}

body.style-company #tagline .group-company,
body.page-company #tagline .group-company {
  position: relative
}

body.style-company #tagline .group-company header,
body.page-company #tagline .group-company header {
  margin-bottom: 2.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company header,
  body.page-company #tagline .group-company header {
    margin-bottom: .9285714286rem
  }
}

body.style-company #tagline .group-company .sec-subtitle,
body.page-company #tagline .group-company .sec-subtitle {
  margin-bottom: .5333333333rem
}

body.style-company #tagline .group-company .sec-title,
body.page-company #tagline .group-company .sec-title {
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: .02em
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .sec-title,
  body.page-company #tagline .group-company .sec-title {
    font-size: 1.7142857143rem
  }
}

body.style-company #tagline .group-company .group-company-list,
body.page-company #tagline .group-company .group-company-list {
  display: grid;
  gap: 2.6666666667rem
}

@media screen and (min-width: 769px) {

  body.style-company #tagline .group-company .group-company-list,
  body.page-company #tagline .group-company .group-company-list {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list,
  body.page-company #tagline .group-company .group-company-list {
    gap: 1.1428571429rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item,
body.page-company #tagline .group-company .group-company-list .list-item {
  display: flex
}

body.style-company #tagline .group-company .group-company-list .list-item .item-inner,
body.page-company #tagline .group-company .group-company-list .list-item .item-inner {
  border-width: .0666666667rem;
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .item-inner,
  body.page-company #tagline .group-company .group-company-list .list-item .item-inner {
    border-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .item-inner,
  body.page-company #tagline .group-company .group-company-list .list-item .item-inner {
    border-radius: .5714285714rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .item-inner,
body.page-company #tagline .group-company .group-company-list .list-item .item-inner {
  display: flex;
  flex-grow: 1;
  position: relative;
  gap: 1.1333333333rem;
  padding: 1.0666666667rem 4rem 1.0666666667rem 1.0666666667rem;
  background: linear-gradient(133.64deg, #ffffff80 2.54%, #f2eee280 98.08%);
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .item-inner,
  body.page-company #tagline .group-company .group-company-list .list-item .item-inner {
    flex-direction: column;
    gap: 1.1428571429rem;
    padding: 1rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .ex-link-mark,
body.page-company #tagline .group-company .group-company-list .list-item .ex-link-mark {
  width: var(--box-size);
  height: var(--box-size);
  --box-size: 2rem;
  border-radius: .2666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .ex-link-mark,
  body.page-company #tagline .group-company .group-company-list .list-item .ex-link-mark {
    --box-size: 2.1428571429rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .ex-link-mark,
  body.page-company #tagline .group-company .group-company-list .list-item .ex-link-mark {
    border-radius: .2857142857rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .ex-link-mark,
body.page-company #tagline .group-company .group-company-list .list-item .ex-link-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  background: #fff
}

body.style-company #tagline .group-company .group-company-list .list-item .ex-link-mark .icon,
body.page-company #tagline .group-company .group-company-list .list-item .ex-link-mark .icon {
  font-size: .6rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .ex-link-mark .icon,
  body.page-company #tagline .group-company .group-company-list .list-item .ex-link-mark .icon {
    font-size: .6428571429rem
  }
}

@media screen and (min-width: 769px) {

  body.style-company #tagline .group-company .group-company-list .list-item .logo-area,
  body.page-company #tagline .group-company .group-company-list .list-item .logo-area {
    flex-shrink: 0;
    flex-basis: 14.5333333333rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .logo-area,
  body.page-company #tagline .group-company .group-company-list .list-item .logo-area {
    height: 12.4285714286rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .logo-area img,
body.page-company #tagline .group-company .group-company-list .list-item .logo-area img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

body.style-company #tagline .group-company .group-company-list .list-item .text-area,
body.page-company #tagline .group-company .group-company-list .list-item .text-area {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: .4666666667rem;
  flex-grow: 1
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .text-area,
  body.page-company #tagline .group-company .group-company-list .list-item .text-area {
    gap: .2857142857rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .text-area .item-name,
body.page-company #tagline .group-company .group-company-list .list-item .text-area .item-name {
  font-size: 1.0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .text-area .item-name,
  body.page-company #tagline .group-company .group-company-list .list-item .text-area .item-name {
    font-size: 1.1428571429rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .text-area .item-name,
body.page-company #tagline .group-company .group-company-list .list-item .text-area .item-name {
  font-weight: 700;
  line-height: 1.5
}

body.style-company #tagline .group-company .group-company-list .list-item .text-area .item-description,
body.page-company #tagline .group-company .group-company-list .list-item .text-area .item-description {
  font-size: .9333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item .text-area .item-description,
  body.page-company #tagline .group-company .group-company-list .list-item .text-area .item-description {
    font-size: 1rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item .text-area .item-description,
body.page-company #tagline .group-company .group-company-list .list-item .text-area .item-description {
  font-weight: 400;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item.ex-link .item-inner,
  body.page-company #tagline .group-company .group-company-list .list-item.ex-link .item-inner {
    padding-bottom: 4rem
  }
}

body.style-company #tagline .group-company .group-company-list .list-item.cn-1 .logo-area img,
body.page-company #tagline .group-company .group-company-list .list-item.cn-1 .logo-area img {
  object-fit: contain;
  background: #fff;
  padding: 2.6666666667rem;
  height: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company .group-company-list .list-item.cn-1 .logo-area img,
  body.page-company #tagline .group-company .group-company-list .list-item.cn-1 .logo-area img {
    padding: 4.2857142857rem
  }
}

body.style-company #tagline .group-company.is-anime-active,
body.page-company #tagline .group-company.is-anime-active {
  padding-top: 10.4166666667vw
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .group-company.is-anime-active,
  body.page-company #tagline .group-company.is-anime-active {
    padding-top: 12.8205128205vw
  }
}

body.style-company #tagline .and-more,
body.page-company #tagline .and-more {
  display: flex;
  font-weight: 700;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .8rem;
  margin-top: 2.4rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .and-more,
  body.page-company #tagline .and-more {
    margin-top: 6rem
  }
}

body.style-company #tagline .and-more .item-title,
body.page-company #tagline .and-more .item-title {
  font-size: 1.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .and-more .item-title,
  body.page-company #tagline .and-more .item-title {
    font-size: 1.4285714286rem
  }
}

body.style-company #tagline .and-more .dots,
body.page-company #tagline .and-more .dots {
  font-size: 1.0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline .and-more .dots,
  body.page-company #tagline .and-more .dots {
    font-size: 1.1428571429rem
  }
}

body.style-company #tagline .and-more .dots,
body.page-company #tagline .and-more .dots {
  display: flex;
  flex-direction: column;
  margin-top: .2666666667rem
}

body.style-company #tagline .and-more .dots span,
body.page-company #tagline .and-more .dots span {
  margin-block: -.5em
}

body.style-company #tagline #tagline-main,
body.page-company #tagline #tagline-main {
  --my-main-color: var(--theme-color-accent-semidark);
  color: var(--my-main-color)
}

body.style-company #tagline #tagline-main .inner,
body.page-company #tagline #tagline-main .inner {
  position: relative;
  min-height: 100svh
}

body.style-company #tagline #tagline-main .bg-circle,
body.page-company #tagline #tagline-main .bg-circle {
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size)
}

body.style-company #tagline #tagline-main .bg-circle,
body.page-company #tagline #tagline-main .bg-circle {
  --circle-size: 138.8888888889vw;
  display: block;
  position: absolute;
  margin: auto;
  background: var(--theme-color-accent-light);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .bg-circle,
  body.page-company #tagline #tagline-main .bg-circle {
    --circle-size: 307.6923076923vw
  }
}

body.style-company #tagline #tagline-main .text-area,
body.page-company #tagline #tagline-main .text-area {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: relative
}

body.style-company #tagline #tagline-main .text-area .item-inner,
body.page-company #tagline #tagline-main .text-area .item-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 100%;
  max-width: 100%
}

body.style-company #tagline #tagline-main .text-area .sec-title-main,
body.page-company #tagline #tagline-main .text-area .sec-title-main {
  max-width: 100%
}

body.style-company #tagline #tagline-main .text-area .sec-subtitle,
body.page-company #tagline #tagline-main .text-area .sec-subtitle {
  font-size: 1.1111111111vw;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .text-area .sec-subtitle,
  body.page-company #tagline #tagline-main .text-area .sec-subtitle {
    font-size: 3.5897435897vw;
    line-height: 1.6
  }
}

body.style-company #tagline #tagline-main .text-area .sec-gap,
body.page-company #tagline #tagline-main .text-area .sec-gap {
  height: 2.5694444444vw
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .text-area .sec-gap,
  body.page-company #tagline #tagline-main .text-area .sec-gap {
    height: 2.5641025641vw
  }
}

body.style-company #tagline #tagline-main .text-area .sec-title,
body.page-company #tagline #tagline-main .text-area .sec-title {
  font-size: 3.3333333333vw;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .text-area .sec-title,
  body.page-company #tagline #tagline-main .text-area .sec-title {
    font-size: 7.1794871795vw
  }
}

body.style-company #tagline #tagline-main .text-area .sec-title,
body.page-company #tagline #tagline-main .text-area .sec-title {
  letter-spacing: .04em;
  margin: 0 0 3.3333333333vw;
  /* width:max-content; */
  max-width: 100%;
  padding-left: .5em
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .text-area .sec-title,
  body.page-company #tagline #tagline-main .text-area .sec-title {
    margin-bottom: 10.2564102564vw
  }
}

body.style-company #tagline #tagline-main .text-area .sec-description,
body.page-company #tagline #tagline-main .text-area .sec-description {
  font-size: 1.25vw;
  letter-spacing: .04em;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .text-area .sec-description,
  body.page-company #tagline #tagline-main .text-area .sec-description {
    font-size: 4.1025641026vw
  }
}

body.style-company #tagline #tagline-main .text-area .guide-text,
body.page-company #tagline #tagline-main .text-area .guide-text {
  font-size: .8333333333vw;
  font-weight: 500;
  margin-top: 2.9861111111vw
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .text-area .guide-text,
  body.page-company #tagline #tagline-main .text-area .guide-text {
    font-size: 3.0769230769vw;
    margin-top: 11.0256410256vw
  }
}

body.style-company #tagline #tagline-main .h-bar,
body.page-company #tagline #tagline-main .h-bar {
  width: .0694444444vw
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .h-bar,
  body.page-company #tagline #tagline-main .h-bar {
    width: .0714285714rem
  }
}

body.style-company #tagline #tagline-main .h-bar,
body.page-company #tagline #tagline-main .h-bar {
  display: block;
  position: relative;
  margin: 6.6666666667vw auto 0;
  height: 12.1527777778vw;
  background: var(--my-main-color)
}

@media screen and (max-width: 768.98px) {

  body.style-company #tagline #tagline-main .h-bar,
  body.page-company #tagline #tagline-main .h-bar {
    margin-top: 4.8717948718vw
  }
}

body.style-company #footer-link-box,
body.page-company #footer-link-box {
  margin-top: 0
}

#footer-recruit {
  position: relative;
  padding-block: 18.8888888889vw 3.1944444444vw;
  background: url(../images/page/recruit/img-contact-bg-pc.webp) repeat center;
  background-size: cover
}

@media screen and (max-width: 768.98px) {
  #footer-recruit {
    padding-block: 84.358974359vw 12.3076923077vw;
    background-image: url(../images/page/recruit/img-contact-bg-sp.webp)
  }
}

@media screen and (min-width: 769px) {
  #footer-recruit .wrapper {
    padding-inline: 5.3333333333rem;
    max-width: 96rem
  }
}

#footer-recruit .main-contents {
  border-radius: var(--theme-border-radius-semilarge)
}

#footer-recruit .main-contents {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  padding: 5.4666666667rem
}

@media screen and (min-width: 769px) {
  #footer-recruit .main-contents {
    height: 20.5333333333rem
  }
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents {
    padding: 2.2857142857rem 2.2142857143rem 4.2857142857rem;
    border-radius: 0
  }
}

#footer-recruit .main-contents .bg-board {
  position: absolute;
  inset: 0;
  margin: auto
}

#footer-recruit .main-contents .bg-board {
  opacity: .95;
  background: linear-gradient(100.11deg, #181818, #404040 108.23%)
}

#footer-recruit .main-contents .bg-board:before {
  position: absolute;
  inset: 0;
  margin: auto
}

#footer-recruit .main-contents .bg-board:before {
  content: "";
  background: url(../images/page/recruit/img-bg-noise-2-pc.webp) repeat center;
  mix-blend-mode: multiply
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .bg-board:before {
    background-image: url(../images/page/recruit/img-bg-noise-2-sp.webp)
  }
}

#footer-recruit .main-contents .grid {
  gap: 5%;
  align-items: center;
  position: relative;
  width: 100%;
  color: var(--theme-color-white)
}

@media screen and (min-width: 769px) {
  #footer-recruit .main-contents .grid {
    grid-template-columns: 61% 1fr
  }
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid {
    gap: 7.9487179487vw
  }
}

#footer-recruit .main-contents .grid .text-area {
  display: flex;
  flex-direction: column;
  gap: 1.1333333333rem;
  padding-top: .5333333333rem
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .text-area {
    gap: 1.7142857143rem
  }
}

#footer-recruit .main-contents .grid .text-area .item-header {
  font-size: 2.6666666667rem;
  font-weight: 700;
  letter-spacing: 0
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .text-area .item-header {
    font-size: 1.7142857143rem
  }
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .text-area .item-header {
    text-align: center;
    line-height: 1.2
  }
}

#footer-recruit .main-contents .grid .text-area .item-subtitle {
  font-size: 1rem
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .text-area .item-subtitle {
    font-size: 1.0714285714rem
  }
}

#footer-recruit .main-contents .grid .text-area .item-subtitle {
  line-height: 1.5
}

#footer-recruit .main-contents .grid .btn-area {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.4rem;
  padding-top: .8rem;
  margin: 0
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .btn-area {
    gap: 1.4285714286rem
  }
}

#footer-recruit .main-contents .grid .btn-area .btn {
  padding-right: 1.3333333333rem;
  height: 4.2rem;
  width: 24rem
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .btn-area .btn {
    height: 4rem;
    width: 18.5714285714rem
  }
}

#footer-recruit .main-contents .grid .btn-area .btn .text {
  padding-right: .6666666667rem
}

#footer-recruit .main-contents .grid .btn-area .btn .icon {
  font-size: .8rem
}

@media screen and (max-width: 768.98px) {
  #footer-recruit .main-contents .grid .btn-area .btn .icon {
    font-size: .8571428571rem
  }
}

body.style-recruit .sec-title,
body.page-template-page-recruit-plan .sec-title,
body.page-template-page-recruit-management .sec-title,
body.page-template-page-recruit .sec-title {
  letter-spacing: .03em
}

body.style-recruit header.center,
body.page-template-page-recruit-plan header.center,
body.page-template-page-recruit-management header.center,
body.page-template-page-recruit header.center {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative
}

@media screen and (max-width: 768.98px) {

  body.style-recruit header.center .sec-title,
  body.page-template-page-recruit-plan header.center .sec-title,
  body.page-template-page-recruit-management header.center .sec-title,
  body.page-template-page-recruit header.center .sec-title {
    font-size: 8.2051282051vw;
    line-height: 1.6
  }
}

body.style-recruit .wrapper,
body.page-template-page-recruit-plan .wrapper,
body.page-template-page-recruit-management .wrapper,
body.page-template-page-recruit .wrapper {
  position: relative
}

body.style-recruit .bg-noise-cover-2,
body.style-recruit .bg-noise-cover-1,
body.page-template-page-recruit-plan .bg-noise-cover-2,
body.page-template-page-recruit-plan .bg-noise-cover-1,
body.page-template-page-recruit-management .bg-noise-cover-2,
body.page-template-page-recruit-management .bg-noise-cover-1,
body.page-template-page-recruit .bg-noise-cover-2,
body.page-template-page-recruit .bg-noise-cover-1 {
  display: block;
  transform: scaleY(-1);
  position: absolute;
  height: 15.0694444444vw;
  background: linear-gradient(180deg, #f3f3f300, #f3f3f340 9%, #f3f3f380 20%, #fff);
  width: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-recruit .bg-noise-cover-2,
  body.style-recruit .bg-noise-cover-1,
  body.page-template-page-recruit-plan .bg-noise-cover-2,
  body.page-template-page-recruit-plan .bg-noise-cover-1,
  body.page-template-page-recruit-management .bg-noise-cover-2,
  body.page-template-page-recruit-management .bg-noise-cover-1,
  body.page-template-page-recruit .bg-noise-cover-2,
  body.page-template-page-recruit .bg-noise-cover-1 {
    height: 29.2307692308vw
  }
}

body.style-recruit .bg-noise-cover-1,
body.page-template-page-recruit-plan .bg-noise-cover-1,
body.page-template-page-recruit-management .bg-noise-cover-1,
body.page-template-page-recruit .bg-noise-cover-1 {
  top: 0
}

body.style-recruit .bg-noise-cover-2,
body.page-template-page-recruit-plan .bg-noise-cover-2,
body.page-template-page-recruit-management .bg-noise-cover-2,
body.page-template-page-recruit .bg-noise-cover-2 {
  bottom: 0;
  background: linear-gradient(0deg, #f3f3f300, #f3f3f340 9%, #f3f3f380 20%, #fff)
}

body.style-recruit .bg-noise,
body.page-template-page-recruit-plan .bg-noise,
body.page-template-page-recruit-management .bg-noise,
body.page-template-page-recruit .bg-noise {
  background: url(../images/page/recruit/img-bg-noise-1-pc.webp) repeat center
}

@media screen and (max-width: 768.98px) {

  body.style-recruit .bg-noise,
  body.page-template-page-recruit-plan .bg-noise,
  body.page-template-page-recruit-management .bg-noise,
  body.page-template-page-recruit .bg-noise {
    background-image: url(../images/page/recruit/img-bg-noise-1-sp.webp)
  }
}

body.style-recruit .main-contents,
body.page-template-page-recruit-plan .main-contents,
body.page-template-page-recruit-management .main-contents,
body.page-template-page-recruit .main-contents {
  position: relative
}

body.style-recruit-plan section,
body.style-recruit-management section,
body.page-template-page-recruit-plan section,
body.page-template-page-recruit-management section {
  padding-block: 10.4666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan section,
  body.style-recruit-management section,
  body.page-template-page-recruit-plan section,
  body.page-template-page-recruit-management section {
    padding-block: 5.7142857143rem
  }
}

body.style-recruit-plan section header,
body.style-recruit-management section header,
body.page-template-page-recruit-plan section header,
body.page-template-page-recruit-management section header {
  margin-bottom: 3.4rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan section header,
  body.style-recruit-management section header,
  body.page-template-page-recruit-plan section header,
  body.page-template-page-recruit-management section header {
    margin-bottom: 2.7857142857rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .grid.grid-text-image,
  body.style-recruit-management .grid.grid-text-image,
  body.page-template-page-recruit-plan .grid.grid-text-image,
  body.page-template-page-recruit-management .grid.grid-text-image {
    grid-template-columns: 1fr 34.7%;
    gap: 19.9%;
    gap: 12.6666666667rem;
    align-items: center
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .grid.grid-text-image,
  body.style-recruit-management .grid.grid-text-image,
  body.page-template-page-recruit-plan .grid.grid-text-image,
  body.page-template-page-recruit-management .grid.grid-text-image {
    gap: 3.3571428571rem
  }
}

body.style-recruit-plan .sec-title,
body.style-recruit-management .sec-title,
body.page-template-page-recruit-plan .sec-title,
body.page-template-page-recruit-management .sec-title {
  font-size: 2.1333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .sec-title,
  body.style-recruit-management .sec-title,
  body.page-template-page-recruit-plan .sec-title,
  body.page-template-page-recruit-management .sec-title {
    font-size: 1.4285714286rem
  }
}

body.style-recruit-plan .sec-description,
body.style-recruit-management .sec-description,
body.page-template-page-recruit-plan .sec-description,
body.page-template-page-recruit-management .sec-description {
  line-height: 2
}

body.style-recruit-plan .sec-header-grid,
body.style-recruit-management .sec-header-grid,
body.page-template-page-recruit-plan .sec-header-grid,
body.page-template-page-recruit-management .sec-header-grid {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 7.6666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .sec-header-grid,
  body.style-recruit-management .sec-header-grid,
  body.page-template-page-recruit-plan .sec-header-grid,
  body.page-template-page-recruit-management .sec-header-grid {
    flex-direction: column;
    align-items: stretch;
    margin-bottom: 3.2857142857rem
  }
}

body.style-recruit-plan .sec-header-grid header,
body.style-recruit-management .sec-header-grid header,
body.page-template-page-recruit-plan .sec-header-grid header,
body.page-template-page-recruit-management .sec-header-grid header {
  flex-shrink: 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .sec-header-grid header,
  body.style-recruit-management .sec-header-grid header,
  body.page-template-page-recruit-plan .sec-header-grid header,
  body.page-template-page-recruit-management .sec-header-grid header {
    margin-bottom: 1rem
  }
}

body.style-recruit-plan .sec-header-grid .sec-description,
body.style-recruit-management .sec-header-grid .sec-description,
body.page-template-page-recruit-plan .sec-header-grid .sec-description,
body.page-template-page-recruit-management .sec-header-grid .sec-description {
  text-align: left;
  line-height: 2;
  flex-shrink: 0
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .sec-header-grid .sec-description,
  body.style-recruit-management .sec-header-grid .sec-description,
  body.page-template-page-recruit-plan .sec-header-grid .sec-description,
  body.page-template-page-recruit-management .sec-header-grid .sec-description {
    padding-top: 2rem;
    width: 29.6666666667rem
  }
}

body.style-recruit-plan .sec-header-grid.vertical,
body.style-recruit-management .sec-header-grid.vertical,
body.page-template-page-recruit-plan .sec-header-grid.vertical,
body.page-template-page-recruit-management .sec-header-grid.vertical {
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  margin-bottom: 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .sec-header-grid.vertical,
  body.style-recruit-management .sec-header-grid.vertical,
  body.page-template-page-recruit-plan .sec-header-grid.vertical,
  body.page-template-page-recruit-management .sec-header-grid.vertical {
    margin-bottom: 3.5714285714rem
  }
}

body.style-recruit-plan .sec-header-grid.vertical header,
body.style-recruit-management .sec-header-grid.vertical header,
body.page-template-page-recruit-plan .sec-header-grid.vertical header,
body.page-template-page-recruit-management .sec-header-grid.vertical header {
  margin-bottom: .8rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .sec-header-grid.vertical header,
  body.style-recruit-management .sec-header-grid.vertical header,
  body.page-template-page-recruit-plan .sec-header-grid.vertical header,
  body.page-template-page-recruit-management .sec-header-grid.vertical header {
    width: 100%
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .sec-header-grid.vertical .sec-description,
  body.style-recruit-management .sec-header-grid.vertical .sec-description,
  body.page-template-page-recruit-plan .sec-header-grid.vertical .sec-description,
  body.page-template-page-recruit-management .sec-header-grid.vertical .sec-description {
    padding-top: 0
  }
}

body.style-recruit-plan .work-list ul,
body.style-recruit-management .work-list ul,
body.page-template-page-recruit-plan .work-list ul,
body.page-template-page-recruit-management .work-list ul {
  display: grid;
  gap: .5333333333rem
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .work-list ul,
  body.style-recruit-management .work-list ul,
  body.page-template-page-recruit-plan .work-list ul,
  body.page-template-page-recruit-management .work-list ul {
    grid-template-columns: repeat(3, 1fr)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul,
  body.style-recruit-management .work-list ul,
  body.page-template-page-recruit-plan .work-list ul,
  body.page-template-page-recruit-management .work-list ul {
    gap: 1.7857142857rem
  }
}

body.style-recruit-plan .work-list ul .list-item .item-inner,
body.style-recruit-management .work-list ul .list-item .item-inner,
body.page-template-page-recruit-plan .work-list ul .list-item .item-inner,
body.page-template-page-recruit-management .work-list ul .list-item .item-inner {
  border-width: .0666666667rem;
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .item-inner,
  body.style-recruit-management .work-list ul .list-item .item-inner,
  body.page-template-page-recruit-plan .work-list ul .list-item .item-inner,
  body.page-template-page-recruit-management .work-list ul .list-item .item-inner {
    border-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .item-inner,
  body.style-recruit-management .work-list ul .list-item .item-inner,
  body.page-template-page-recruit-plan .work-list ul .list-item .item-inner,
  body.page-template-page-recruit-management .work-list ul .list-item .item-inner {
    border-radius: .5714285714rem
  }
}

body.style-recruit-plan .work-list ul .list-item .item-inner,
body.style-recruit-management .work-list ul .list-item .item-inner,
body.page-template-page-recruit-plan .work-list ul .list-item .item-inner,
body.page-template-page-recruit-management .work-list ul .list-item .item-inner {
  overflow: hidden;
  height: 100%;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

body.style-recruit-plan .work-list ul .list-item .image-area,
body.style-recruit-management .work-list ul .list-item .image-area,
body.page-template-page-recruit-plan .work-list ul .list-item .image-area,
body.page-template-page-recruit-management .work-list ul .list-item .image-area {
  height: 12.8rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .image-area,
  body.style-recruit-management .work-list ul .list-item .image-area,
  body.page-template-page-recruit-plan .work-list ul .list-item .image-area,
  body.page-template-page-recruit-management .work-list ul .list-item .image-area {
    height: 13.7142857143rem
  }
}

body.style-recruit-plan .work-list ul .list-item .image-area img,
body.style-recruit-management .work-list ul .list-item .image-area img,
body.page-template-page-recruit-plan .work-list ul .list-item .image-area img,
body.page-template-page-recruit-management .work-list ul .list-item .image-area img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

body.style-recruit-plan .work-list ul .list-item .text-area,
body.style-recruit-management .work-list ul .list-item .text-area,
body.page-template-page-recruit-plan .work-list ul .list-item .text-area,
body.page-template-page-recruit-management .work-list ul .list-item .text-area {
  padding: 1.6rem 1.5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .text-area,
  body.style-recruit-management .work-list ul .list-item .text-area,
  body.page-template-page-recruit-plan .work-list ul .list-item .text-area,
  body.page-template-page-recruit-management .work-list ul .list-item .text-area {
    padding: 1.0714285714rem 1.3571428571rem
  }
}

body.style-recruit-plan .work-list ul .list-item .text-area .item-title,
body.style-recruit-management .work-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-plan .work-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-management .work-list ul .list-item .text-area .item-title {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .text-area .item-title,
  body.style-recruit-management .work-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-plan .work-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-management .work-list ul .list-item .text-area .item-title {
    font-size: 1.1428571429rem
  }
}

body.style-recruit-plan .work-list ul .list-item .text-area .item-title,
body.style-recruit-management .work-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-plan .work-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-management .work-list ul .list-item .text-area .item-title {
  margin-bottom: 1rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .text-area .item-title,
  body.style-recruit-management .work-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-plan .work-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-management .work-list ul .list-item .text-area .item-title {
    margin-bottom: .5rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .work-list ul .list-item .text-area .item-description,
  body.style-recruit-management .work-list ul .list-item .text-area .item-description,
  body.page-template-page-recruit-plan .work-list ul .list-item .text-area .item-description,
  body.page-template-page-recruit-management .work-list ul .list-item .text-area .item-description {
    line-height: 1.5
  }
}

body.style-recruit-plan .schedule-list ul,
body.style-recruit-management .schedule-list ul,
body.page-template-page-recruit-plan .schedule-list ul,
body.page-template-page-recruit-management .schedule-list ul {
  display: flex;
  flex-direction: column;
  gap: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul,
  body.style-recruit-management .schedule-list ul,
  body.page-template-page-recruit-plan .schedule-list ul,
  body.page-template-page-recruit-management .schedule-list ul {
    gap: 1.6428571429rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner,
body.style-recruit-management .schedule-list ul .list-item .list-inner,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner {
  display: grid;
  grid-template-columns: 7.4% 1fr;
  gap: 5.8%
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner,
  body.style-recruit-management .schedule-list ul .list-item .list-inner,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner {
    grid-template-columns: 13% 1fr;
    gap: 5.3%
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area,
body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area {
    padding-top: .3333333333rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area {
    margin-top: -.1428571429rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area:after,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area:after {
  width: .1333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area:after,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area:after {
    width: .1428571429rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area:after,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area:after {
  content: "";
  display: block;
  margin: .8rem auto .2666666667rem;
  height: 100%;
  background: var(--theme-color-font);
  border-radius: 2em
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area:after,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area:after,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area:after {
    margin: 1.2857142857rem auto 0
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area .time,
body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area .time,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area .time,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area .time {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area .time,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area .time,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area .time,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area .time {
    font-size: 1.1428571429rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .time-area .time,
body.style-recruit-management .schedule-list ul .list-item .list-inner .time-area .time,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .time-area .time,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .time-area .time {
  line-height: 1.05;
  text-align: center;
  width: max-content
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner {
  border-width: .0666666667rem;
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner {
    border-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner {
    border-radius: .5714285714rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner {
  display: grid;
  padding: 1.6666666667rem 1.6rem 1.5333333333rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray);
  background: var(--theme-color-white-op50)
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner {
    grid-template-columns: 7.8% 1fr
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .item-inner,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .item-inner {
    gap: .5714285714rem;
    padding: 1.0714285714rem 1rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area img {
  height: 1.6666666667rem;
  width: 1.8666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area img {
    height: 1.7857142857rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .image-area img,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .image-area img {
    width: 2rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title {
    font-size: 1.1428571429rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title {
  margin-bottom: .4666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-title {
    margin-bottom: 1.6428571429rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description {
  font-size: .9333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
  body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
  body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
  body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description {
    font-size: 1rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
body.style-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
body.page-template-page-recruit-plan .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description,
body.page-template-page-recruit-management .schedule-list ul .list-item .list-inner .schedule-area .text-area .item-description {
  line-height: 1.65
}

body.style-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
body.style-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before,
body.page-template-page-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
body.page-template-page-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before {
  height: .1333333333rem;
  width: 1.2666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
  body.style-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before,
  body.page-template-page-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
  body.page-template-page-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before {
    height: .1428571429rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
  body.style-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before,
  body.page-template-page-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
  body.page-template-page-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before {
    width: 1.3571428571rem
  }
}

body.style-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
body.style-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before,
body.page-template-page-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:before,
body.page-template-page-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  background: var(--theme-color-font);
  border-radius: 2em
}

body.style-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:after,
body.style-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:after,
body.page-template-page-recruit-plan .schedule-list ul .list-item:last-child .list-inner .time-area:after,
body.page-template-page-recruit-management .schedule-list ul .list-item:last-child .list-inner .time-area:after {
  margin-bottom: 0
}

body.style-recruit-plan .career-list ul,
body.style-recruit-management .career-list ul,
body.page-template-page-recruit-plan .career-list ul,
body.page-template-page-recruit-management .career-list ul {
  display: grid
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul,
  body.style-recruit-management .career-list ul,
  body.page-template-page-recruit-plan .career-list ul,
  body.page-template-page-recruit-management .career-list ul {
    grid-template-columns: repeat(4, 1fr)
  }
}

body.style-recruit-plan .career-list ul .list-item,
body.style-recruit-management .career-list ul .list-item,
body.page-template-page-recruit-plan .career-list ul .list-item,
body.page-template-page-recruit-management .career-list ul .list-item {
  display: flex;
  align-items: flex-start
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item,
  body.style-recruit-management .career-list ul .list-item,
  body.page-template-page-recruit-plan .career-list ul .list-item,
  body.page-template-page-recruit-management .career-list ul .list-item {
    flex-direction: column
  }
}

body.style-recruit-plan .career-list ul .list-item .list-inner,
body.style-recruit-management .career-list ul .list-item .list-inner,
body.page-template-page-recruit-plan .career-list ul .list-item .list-inner,
body.page-template-page-recruit-management .career-list ul .list-item .list-inner {
  border-width: .0666666667rem;
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .list-inner,
  body.style-recruit-management .career-list ul .list-item .list-inner,
  body.page-template-page-recruit-plan .career-list ul .list-item .list-inner,
  body.page-template-page-recruit-management .career-list ul .list-item .list-inner {
    border-width: .0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .list-inner,
  body.style-recruit-management .career-list ul .list-item .list-inner,
  body.page-template-page-recruit-plan .career-list ul .list-item .list-inner,
  body.page-template-page-recruit-management .career-list ul .list-item .list-inner {
    border-radius: .5714285714rem
  }
}

body.style-recruit-plan .career-list ul .list-item .list-inner,
body.style-recruit-management .career-list ul .list-item .list-inner,
body.page-template-page-recruit-plan .career-list ul .list-item .list-inner,
body.page-template-page-recruit-management .career-list ul .list-item .list-inner {
  display: flex;
  flex-direction: column;
  gap: 6.2rem;
  padding: 1rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .list-inner,
  body.style-recruit-management .career-list ul .list-item .list-inner,
  body.page-template-page-recruit-plan .career-list ul .list-item .list-inner,
  body.page-template-page-recruit-management .career-list ul .list-item .list-inner {
    gap: 4.4285714286rem;
    padding: 1.0714285714rem
  }
}

body.style-recruit-plan .career-list ul .list-item .step-num .badge-item,
body.style-recruit-management .career-list ul .list-item .step-num .badge-item,
body.page-template-page-recruit-plan .career-list ul .list-item .step-num .badge-item,
body.page-template-page-recruit-management .career-list ul .list-item .step-num .badge-item {
  font-size: 1.0666666667rem;
  font-weight: 500;
  line-height: 1.5;
  padding: .1333333333rem .6666666667rem;
  min-width: 6.4666666667rem;
  background: var(--theme-color-accent-light);
  border-radius: 4rem;
  border-width: 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .step-num .badge-item,
  body.style-recruit-management .career-list ul .list-item .step-num .badge-item,
  body.page-template-page-recruit-plan .career-list ul .list-item .step-num .badge-item,
  body.page-template-page-recruit-management .career-list ul .list-item .step-num .badge-item {
    font-size: .8571428571rem;
    padding: .2142857143rem .8571428571rem .2857142857rem;
    min-width: 6rem
  }
}

body.style-recruit-plan .career-list ul .list-item .text-area .item-title,
body.style-recruit-management .career-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-plan .career-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-management .career-list ul .list-item .text-area .item-title {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .text-area .item-title,
  body.style-recruit-management .career-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-plan .career-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-management .career-list ul .list-item .text-area .item-title {
    font-size: 1.1428571429rem
  }
}

body.style-recruit-plan .career-list ul .list-item .text-area .item-title,
body.style-recruit-management .career-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-plan .career-list ul .list-item .text-area .item-title,
body.page-template-page-recruit-management .career-list ul .list-item .text-area .item-title {
  margin-bottom: 1.5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .text-area .item-title,
  body.style-recruit-management .career-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-plan .career-list ul .list-item .text-area .item-title,
  body.page-template-page-recruit-management .career-list ul .list-item .text-area .item-title {
    margin-bottom: .6428571429rem
  }
}

body.style-recruit-plan .career-list ul .list-item .text-area .item-description,
body.style-recruit-management .career-list ul .list-item .text-area .item-description,
body.page-template-page-recruit-plan .career-list ul .list-item .text-area .item-description,
body.page-template-page-recruit-management .career-list ul .list-item .text-area .item-description {
  line-height: 1.5
}

body.style-recruit-plan .career-list ul .list-item .flow,
body.style-recruit-management .career-list ul .list-item .flow,
body.page-template-page-recruit-plan .career-list ul .list-item .flow,
body.page-template-page-recruit-management .career-list ul .list-item .flow {
  --my-bar-w: .1333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .flow,
  body.style-recruit-management .career-list ul .list-item .flow,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow,
  body.page-template-page-recruit-management .career-list ul .list-item .flow {
    --my-bar-w: .1428571429rem
  }
}

body.style-recruit-plan .career-list ul .list-item .flow,
body.style-recruit-management .career-list ul .list-item .flow,
body.page-template-page-recruit-plan .career-list ul .list-item .flow,
body.page-template-page-recruit-management .career-list ul .list-item .flow {
  --my-bar-bottom: .3rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
  flex-shrink: 0
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul .list-item .flow,
  body.style-recruit-management .career-list ul .list-item .flow,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow,
  body.page-template-page-recruit-management .career-list ul .list-item .flow {
    width: 1rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .flow,
  body.style-recruit-management .career-list ul .list-item .flow,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow,
  body.page-template-page-recruit-management .career-list ul .list-item .flow {
    height: 1.6428571429rem;
    margin: 0 auto
  }
}

body.style-recruit-plan .career-list ul .list-item .flow:before,
body.style-recruit-plan .career-list ul .list-item .flow:after,
body.style-recruit-management .career-list ul .list-item .flow:before,
body.style-recruit-management .career-list ul .list-item .flow:after,
body.page-template-page-recruit-plan .career-list ul .list-item .flow:before,
body.page-template-page-recruit-plan .career-list ul .list-item .flow:after,
body.page-template-page-recruit-management .career-list ul .list-item .flow:before,
body.page-template-page-recruit-management .career-list ul .list-item .flow:after {
  content: "";
  display: block;
  position: absolute;
  background: var(--theme-color-font)
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul .list-item .flow:before,
  body.style-recruit-plan .career-list ul .list-item .flow:after,
  body.style-recruit-management .career-list ul .list-item .flow:before,
  body.style-recruit-management .career-list ul .list-item .flow:after,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow:before,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow:after,
  body.page-template-page-recruit-management .career-list ul .list-item .flow:before,
  body.page-template-page-recruit-management .career-list ul .list-item .flow:after {
    width: 50%;
    height: var(--my-bar-w)
  }
}

body.style-recruit-plan .career-list ul .list-item .flow:before,
body.style-recruit-management .career-list ul .list-item .flow:before,
body.page-template-page-recruit-plan .career-list ul .list-item .flow:before,
body.page-template-page-recruit-management .career-list ul .list-item .flow:before {
  top: 0;
  margin-left: 0;
  width: 50%;
  height: var(--my-bar-w)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .flow:before,
  body.style-recruit-management .career-list ul .list-item .flow:before,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow:before,
  body.page-template-page-recruit-management .career-list ul .list-item .flow:before {
    width: var(--my-bar-w);
    height: 50%
  }
}

body.style-recruit-plan .career-list ul .list-item .flow:after,
body.style-recruit-management .career-list ul .list-item .flow:after,
body.page-template-page-recruit-plan .career-list ul .list-item .flow:after,
body.page-template-page-recruit-management .career-list ul .list-item .flow:after {
  bottom: var(--my-bar-bottom);
  left: auto;
  right: 0;
  margin-right: 0;
  margin-left: auto
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .flow:after,
  body.style-recruit-management .career-list ul .list-item .flow:after,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow:after,
  body.page-template-page-recruit-management .career-list ul .list-item .flow:after {
    bottom: 0;
    height: 50%;
    width: var(--my-bar-w)
  }
}

body.style-recruit-plan .career-list ul .list-item .flow .bar,
body.style-recruit-management .career-list ul .list-item .flow .bar,
body.page-template-page-recruit-plan .career-list ul .list-item .flow .bar,
body.page-template-page-recruit-management .career-list ul .list-item .flow .bar {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: calc(100% - var(--my-bar-bottom));
  width: var(--my-bar-w);
  background: var(--theme-color-font)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .flow .bar,
  body.style-recruit-management .career-list ul .list-item .flow .bar,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow .bar,
  body.page-template-page-recruit-management .career-list ul .list-item .flow .bar {
    top: 0;
    bottom: 0;
    width: 100%;
    height: var(--my-bar-w)
  }
}

body.style-recruit-plan .career-list ul .list-item .flow .icon,
body.style-recruit-management .career-list ul .list-item .flow .icon,
body.page-template-page-recruit-plan .career-list ul .list-item .flow .icon,
body.page-template-page-recruit-management .career-list ul .list-item .flow .icon {
  font-size: .6666666667rem;
  position: relative;
  margin-left: auto;
  margin-right: -1px;
  width: .65em
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item .flow .icon,
  body.style-recruit-management .career-list ul .list-item .flow .icon,
  body.page-template-page-recruit-plan .career-list ul .list-item .flow .icon,
  body.page-template-page-recruit-management .career-list ul .list-item .flow .icon {
    --my-icon-pos: .2857142857rem;
    position: absolute;
    bottom: -.0714285714rem;
    left: auto;
    right: calc(var(--my-icon-pos) * -1 + .0357142857rem);
    height: .65em;
    width: 1em
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n),
  body.style-recruit-management .career-list ul .list-item:nth-child(2n),
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n),
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) {
    padding-top: 5.2666666667rem
  }
}

body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow,
body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow,
body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow,
body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow {
  justify-content: flex-start
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:before,
  body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow:before,
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:before,
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow:before {
    top: auto;
    bottom: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:before,
  body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow:before,
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:before,
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow:before {
    right: 0;
    left: auto
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:after,
  body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow:after,
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:after,
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow:after {
    top: var(--my-bar-bottom);
    bottom: auto
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:after,
  body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow:after,
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow:after,
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow:after {
    right: auto;
    left: 0
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow .bar,
  body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow .bar,
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow .bar,
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow .bar {
    top: auto;
    bottom: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan .career-list ul .list-item:nth-child(2n) .flow .icon,
  body.style-recruit-management .career-list ul .list-item:nth-child(2n) .flow .icon,
  body.page-template-page-recruit-plan .career-list ul .list-item:nth-child(2n) .flow .icon,
  body.page-template-page-recruit-management .career-list ul .list-item:nth-child(2n) .flow .icon {
    right: auto;
    left: calc(var(--my-icon-pos) * -1 + .0357142857rem)
  }
}

body.style-recruit-plan .career-list ul .list-item:last-child .flow,
body.style-recruit-management .career-list ul .list-item:last-child .flow,
body.page-template-page-recruit-plan .career-list ul .list-item:last-child .flow,
body.page-template-page-recruit-management .career-list ul .list-item:last-child .flow {
  display: none
}

body.style-recruit-plan #about,
body.style-recruit-management #about,
body.page-template-page-recruit-plan #about,
body.page-template-page-recruit-management #about {
  padding-block: calc(var(--theme-page-header-bc-area-height) + 9.1333333333rem) 9.3333333333rem;
  background: url(../images/page/recruit-common/img-about-bg-pc.webp) no-repeat center;
  background-size: cover
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #about,
  body.style-recruit-management #about,
  body.page-template-page-recruit-plan #about,
  body.page-template-page-recruit-management #about {
    padding-block: 5.7142857143rem;
    background-image: url(../images/page/recruit-common/img-about-bg-sp.webp)
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #about .text-area,
  body.style-recruit-management #about .text-area,
  body.page-template-page-recruit-plan #about .text-area,
  body.page-template-page-recruit-management #about .text-area {
    padding-bottom: .5333333333rem
  }
}

body.style-recruit-plan #about .catch,
body.style-recruit-management #about .catch,
body.page-template-page-recruit-plan #about .catch,
body.page-template-page-recruit-management #about .catch {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: .04em;
  margin-bottom: 1.6rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #about .catch,
  body.style-recruit-management #about .catch,
  body.page-template-page-recruit-plan #about .catch,
  body.page-template-page-recruit-management #about .catch {
    font-size: 1.2857142857rem;
    margin-bottom: 1.2142857143rem
  }
}

body.style-recruit-plan #about .image-area figure,
body.style-recruit-management #about .image-area figure,
body.page-template-page-recruit-plan #about .image-area figure,
body.page-template-page-recruit-management #about .image-area figure {
  margin: auto;
  width: 22.2rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #about .image-area figure,
  body.style-recruit-management #about .image-area figure,
  body.page-template-page-recruit-plan #about .image-area figure,
  body.page-template-page-recruit-management #about .image-area figure {
    width: 14.1428571429rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #work .sec-header-grid,
  body.style-recruit-management #work .sec-header-grid,
  body.page-template-page-recruit-plan #work .sec-header-grid,
  body.page-template-page-recruit-management #work .sec-header-grid {
    margin-bottom: 6rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #schedule .sec-header-grid,
  body.style-recruit-management #schedule .sec-header-grid,
  body.page-template-page-recruit-plan #schedule .sec-header-grid,
  body.page-template-page-recruit-management #schedule .sec-header-grid {
    align-items: flex-start
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #schedule .grid-2,
  body.style-recruit-management #schedule .grid-2,
  body.page-template-page-recruit-plan #schedule .grid-2,
  body.page-template-page-recruit-management #schedule .grid-2 {
    grid-template-columns: 35% 1fr;
    gap: 7.3%
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .sec-header-grid,
  body.style-recruit-management #career .sec-header-grid,
  body.page-template-page-recruit-plan #career .sec-header-grid,
  body.page-template-page-recruit-management #career .sec-header-grid {
    margin-bottom: 6.2rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .career-list .step-1 .flow,
  body.style-recruit-management #career .career-list .step-1 .flow,
  body.page-template-page-recruit-plan #career .career-list .step-1 .flow,
  body.page-template-page-recruit-management #career .career-list .step-1 .flow {
    height: 14.2rem;
    top: 9.0666666667rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #career .career-list .step-1 .flow,
  body.style-recruit-management #career .career-list .step-1 .flow,
  body.page-template-page-recruit-plan #career .career-list .step-1 .flow,
  body.page-template-page-recruit-management #career .career-list .step-1 .flow {
    left: -.5rem;
    width: 14.8571428571rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .career-list .step-1 .flow .icon,
  body.style-recruit-management #career .career-list .step-1 .flow .icon,
  body.page-template-page-recruit-plan #career .career-list .step-1 .flow .icon,
  body.page-template-page-recruit-management #career .career-list .step-1 .flow .icon {
    top: -.0333333333rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .career-list .step-2 .flow,
  body.style-recruit-management #career .career-list .step-2 .flow,
  body.page-template-page-recruit-plan #career .career-list .step-2 .flow,
  body.page-template-page-recruit-management #career .career-list .step-2 .flow {
    top: 1.8rem;
    height: 10.0666666667rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #career .career-list .step-2 .flow,
  body.style-recruit-management #career .career-list .step-2 .flow,
  body.page-template-page-recruit-plan #career .career-list .step-2 .flow,
  body.page-template-page-recruit-management #career .career-list .step-2 .flow {
    right: -2.5714285714rem;
    width: 9.1428571429rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .career-list .step-2 .flow .icon,
  body.style-recruit-management #career .career-list .step-2 .flow .icon,
  body.page-template-page-recruit-plan #career .career-list .step-2 .flow .icon,
  body.page-template-page-recruit-management #career .career-list .step-2 .flow .icon {
    top: .0333333333rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .career-list .step-3 .flow,
  body.style-recruit-management #career .career-list .step-3 .flow,
  body.page-template-page-recruit-plan #career .career-list .step-3 .flow,
  body.page-template-page-recruit-management #career .career-list .step-3 .flow {
    top: 5.3333333333rem;
    height: 14.2666666667rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #career .career-list .step-3 .flow,
  body.style-recruit-management #career .career-list .step-3 .flow,
  body.page-template-page-recruit-plan #career .career-list .step-3 .flow,
  body.page-template-page-recruit-management #career .career-list .step-3 .flow {
    left: -.5rem;
    width: 14.8571428571rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #career .career-list .step-3 .flow .icon,
  body.style-recruit-management #career .career-list .step-3 .flow .icon,
  body.page-template-page-recruit-plan #career .career-list .step-3 .flow .icon,
  body.page-template-page-recruit-management #career .career-list .step-3 .flow .icon {
    top: -.0333333333rem
  }
}

body.style-recruit-plan #voice,
body.style-recruit-management #voice,
body.page-template-page-recruit-plan #voice,
body.page-template-page-recruit-management #voice {
  --my-slide-side-space: 1.3333333333rem;
  background: url(../images/page/recruit-common/img-voice-bg-pc.svg) no-repeat center;
  background-size: cover
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice,
  body.style-recruit-management #voice,
  body.page-template-page-recruit-plan #voice,
  body.page-template-page-recruit-management #voice {
    background-image: url(../images/page/recruit-common/img-voice-bg-sp.svg)
  }
}

body.style-recruit-plan #voice .sec-inner,
body.style-recruit-management #voice .sec-inner,
body.page-template-page-recruit-plan #voice .sec-inner,
body.page-template-page-recruit-management #voice .sec-inner {
  overflow: hidden
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .sec-inner,
  body.style-recruit-management #voice .sec-inner,
  body.page-template-page-recruit-plan #voice .sec-inner,
  body.page-template-page-recruit-management #voice .sec-inner {
    margin-left: var(--theme-wrapper-side-space)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .sec-inner,
  body.style-recruit-management #voice .sec-inner,
  body.page-template-page-recruit-plan #voice .sec-inner,
  body.page-template-page-recruit-management #voice .sec-inner {
    margin-inline: auto;
    width: 100%;
    max-width: calc(var(--theme-wrapper-side-space) * 2 + var(--theme-wrapper));
    padding-inline: var(--theme-wrapper-side-space)
  }
}

body.style-recruit-plan #voice .grid-text-image,
body.style-recruit-management #voice .grid-text-image,
body.page-template-page-recruit-plan #voice .grid-text-image,
body.page-template-page-recruit-management #voice .grid-text-image {
  position: relative
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .grid-text-image,
  body.style-recruit-management #voice .grid-text-image,
  body.page-template-page-recruit-plan #voice .grid-text-image,
  body.page-template-page-recruit-management #voice .grid-text-image {
    grid-template-columns: 33.3% 1fr;
    gap: calc(8.6% - var(--my-slide-side-space))
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .grid-text-image,
  body.style-recruit-management #voice .grid-text-image,
  body.page-template-page-recruit-plan #voice .grid-text-image,
  body.page-template-page-recruit-management #voice .grid-text-image {
    gap: 0
  }
}

body.style-recruit-plan #voice .grid-text-image .sec-header-grid,
body.style-recruit-management #voice .grid-text-image .sec-header-grid,
body.page-template-page-recruit-plan #voice .grid-text-image .sec-header-grid,
body.page-template-page-recruit-management #voice .grid-text-image .sec-header-grid {
  align-items: flex-start
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .grid-text-image .sec-header-grid,
  body.style-recruit-management #voice .grid-text-image .sec-header-grid,
  body.page-template-page-recruit-plan #voice .grid-text-image .sec-header-grid,
  body.page-template-page-recruit-management #voice .grid-text-image .sec-header-grid {
    padding-bottom: 7.3333333333rem
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .grid-text-image .sec-header-grid header,
  body.style-recruit-management #voice .grid-text-image .sec-header-grid header,
  body.page-template-page-recruit-plan #voice .grid-text-image .sec-header-grid header,
  body.page-template-page-recruit-management #voice .grid-text-image .sec-header-grid header {
    margin-bottom: 3.3333333333rem
  }
}

body.style-recruit-plan #voice .voice-slide-area,
body.style-recruit-management #voice .voice-slide-area,
body.page-template-page-recruit-plan #voice .voice-slide-area,
body.page-template-page-recruit-management #voice .voice-slide-area {
  position: relative
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area,
  body.style-recruit-management #voice .voice-slide-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area,
  body.page-template-page-recruit-management #voice .voice-slide-area {
    margin-inline: calc(var(--theme-wrapper-side-space) * -1)
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-area-main,
body.style-recruit-management #voice .voice-slide-area .slider-area-main,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-area-main,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-area-main {
  display: grid;
  overflow: hidden;
  position: relative
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-area,
  body.style-recruit-management #voice .voice-slide-area .slider-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-area,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-area {
    padding-bottom: 11.1111111111vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-area,
  body.style-recruit-management #voice .voice-slide-area .slider-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-area,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-area {
    padding-bottom: 0
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents {
  transition: all .25s ease
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents {
  transition-property: transform, opacity;
  opacity: .5;
  position: relative;
  padding-inline: var(--my-slide-side-space)
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents {
    transform: scale(.7) translate(2.4305555556vw, 8.75vw)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents {
    opacity: 0;
    padding-inline: 1.5384615385vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .image-area,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .image-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .image-area,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .image-area {
    height: 80.5128205128vw
  }

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .image-area img,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .image-area img,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .image-area img,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .image-area img {
    object-fit: cover;
    height: 100%;
    width: 100%
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame {
  transition: all .25s ease;
  transition-property: opacity transform;
  transform: translateY(10%);
  opacity: 0;
  position: absolute
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame {
    bottom: -8.125vw;
    left: 10.9722222222vw;
    width: 35.2777777778vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame {
    --my-box-side-pos: -15.3846153846vw;
    transition-delay: .25s;
    transform: translateY(5%);
    position: relative;
    left: 0;
    right: 0;
    width: auto;
    margin-top: -17.4358974359vw;
    margin-inline: var(--my-box-side-pos)
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area {
  border-radius: var(--theme-border-radius-large)
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area {
  padding: 2.6388888889vw 2.7777777778vw;
  background: linear-gradient(297.95deg, #FFFFFF 16.33%, var(--theme-color-accent-light) 130.95%)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area {
    padding: 6.1538461538vw
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle {
  font-size: .9722222222vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle {
    font-size: 1rem
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-subtitle {
  margin-bottom: .625vw;
  line-height: 1.5
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title {
  font-size: 1.3888888889vw;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.65
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title {
    font-size: 4.1025641026vw
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-title {
  margin-bottom: 1.0416666667vw
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-description,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-description,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-description,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide .slider-contents .text-frame .text-area .item-description {
    font-size: 1.0416666667vw
  }
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active,
body.style-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active {
  z-index: 1
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents,
body.style-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents {
  transform: none;
  opacity: 1
}

body.style-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents .text-frame,
body.style-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents .text-frame,
body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents .text-frame,
body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active .slider-contents .text-frame {
  transition-delay: .2s;
  transform: translateY(0);
  opacity: 1
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active+.swiper-slide .slider-contents,
  body.style-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active+.swiper-slide .slider-contents,
  body.page-template-page-recruit-plan #voice .voice-slide-area .swiper-slide.swiper-slide-active+.swiper-slide .slider-contents,
  body.page-template-page-recruit-management #voice .voice-slide-area .swiper-slide.swiper-slide-active+.swiper-slide .slider-contents {
    transform: scale(.7) translate(1.0256410256vw, 34.358974359vw);
    transform-origin: left top;
    opacity: .5
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area {
  display: flex;
  justify-content: flex-end;
  position: relative;
  margin-top: .7638888889vw
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-navi-area,
  body.style-recruit-management #voice .voice-slide-area .slider-navi-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area {
    padding-right: var(--theme-wrapper-side-space)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-navi-area,
  body.style-recruit-management #voice .voice-slide-area .slider-navi-area,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area {
    margin-top: 5.8974358974vw;
    justify-content: center
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi {
  gap: 1.5972222222vw;
  margin-top: 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi,
  body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi {
    gap: 6.6666666667vw
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .btn {
  --circle-size: 1.6666666667vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
  body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .btn {
    --circle-size: 1.7142857143rem
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .btn,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .btn {
  background: var(--theme-color-white)
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator-area,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator-area,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator-area,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator-area {
  display: flex;
  align-items: center;
  gap: .5555555556vw;
  margin-inline: 0
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .slider-indicator {
  margin-inline: .0694444444vw 1.1111111111vw;
  gap: .5333333333rem
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet {
  transition: all .25s ease;
  border-radius: 50%;
  width: var(--circle-size);
  height: var(--circle-size);
  --circle-size: .4166666667vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
  body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet {
    --circle-size: .4285714286rem
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet {
  transition-property: width;
  position: relative;
  overflow: hidden;
  background: var(--theme-color-lightgray);
  border-radius: 2rem
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active {
  width: 2.7777777778vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
  body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
  body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
  body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active {
    width: 2.8571428571rem
  }
}

body.style-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
body.style-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
body.page-template-page-recruit-plan #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active,
body.page-template-page-recruit-management #voice .voice-slide-area .slider-navi-area .slider-navi .swiper-pagination-bullet-active {
  background: var(--theme-color-font)
}

body.style-recruit-plan #voice .voice-slide-area .accessory-navi,
body.style-recruit-management #voice .voice-slide-area .accessory-navi,
body.page-template-page-recruit-plan #voice .voice-slide-area .accessory-navi,
body.page-template-page-recruit-management #voice .voice-slide-area .accessory-navi {
  pointer-events: none;
  position: absolute;
  bottom: 31.4%;
  left: -3.2%;
  z-index: 1
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #voice .voice-slide-area .accessory-navi,
  body.style-recruit-management #voice .voice-slide-area .accessory-navi,
  body.page-template-page-recruit-plan #voice .voice-slide-area .accessory-navi,
  body.page-template-page-recruit-management #voice .voice-slide-area .accessory-navi {
    display: none
  }
}

body.style-recruit-plan #voice .voice-slide-area .accessory-navi img,
body.style-recruit-management #voice .voice-slide-area .accessory-navi img,
body.page-template-page-recruit-plan #voice .voice-slide-area .accessory-navi img,
body.page-template-page-recruit-management #voice .voice-slide-area .accessory-navi img {
  width: 4.7222222222vw;
  height: 6.5277777778vw
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #faq .grid-text-faq,
  body.style-recruit-management #faq .grid-text-faq,
  body.page-template-page-recruit-plan #faq .grid-text-faq,
  body.page-template-page-recruit-management #faq .grid-text-faq {
    grid-template-columns: 35% 1fr;
    gap: 14.9%
  }
}

body.style-recruit-plan #faq .grid-text-faq .sec-header-grid,
body.style-recruit-management #faq .grid-text-faq .sec-header-grid,
body.page-template-page-recruit-plan #faq .grid-text-faq .sec-header-grid,
body.page-template-page-recruit-management #faq .grid-text-faq .sec-header-grid {
  align-items: flex-start
}

@media screen and (min-width: 769px) {

  body.style-recruit-plan #faq .grid-text-faq .sec-header-grid header,
  body.style-recruit-management #faq .grid-text-faq .sec-header-grid header,
  body.page-template-page-recruit-plan #faq .grid-text-faq .sec-header-grid header,
  body.page-template-page-recruit-management #faq .grid-text-faq .sec-header-grid header {
    margin-bottom: 3.4rem
  }
}

body.style-recruit-plan #faq .qa-list ul,
body.style-recruit-management #faq .qa-list ul,
body.page-template-page-recruit-plan #faq .qa-list ul,
body.page-template-page-recruit-management #faq .qa-list ul {
  display: flex;
  flex-direction: column;
  width: 100%
}

body.style-recruit-plan #faq .qa-list ul .list-item,
body.style-recruit-management #faq .qa-list ul .list-item,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item,
body.page-template-page-recruit-management #faq .qa-list ul .list-item {
  --my-item-side-padding: 2.8rem;
  --my-text-area-mark-gap: .5333333333rem;
  display: flex
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item,
  body.style-recruit-management #faq .qa-list ul .list-item,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item {
    --my-item-side-padding: .5714285714rem;
    --my-text-area-mark-gap: .5714285714rem
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item .list-inner,
body.style-recruit-management #faq .qa-list ul .list-item .list-inner,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-inner,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-inner {
  border-top-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .list-inner,
  body.style-recruit-management #faq .qa-list ul .list-item .list-inner,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-inner,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-inner {
    border-top-width: .0714285714rem
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item .list-inner,
body.style-recruit-management #faq .qa-list ul .list-item .list-inner,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-inner,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-inner {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area,
body.style-recruit-management #faq .qa-list ul .list-item .title-area,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area {
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5333333333rem 1rem 1.5333333333rem var(--my-item-side-padding)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .title-area,
  body.style-recruit-management #faq .qa-list ul .list-item .title-area,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area {
    gap: 2.3571428571rem;
    padding: .9285714286rem .5714285714rem .9285714286rem var(--my-item-side-padding)
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .title-main,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .title-main,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .title-main,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .title-main {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  gap: .5333333333rem
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .title-main .title-mark,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .title-main .title-mark,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .title-main .title-mark,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .title-main .title-mark {
  flex-shrink: 0
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .title,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .title,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .title,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .title {
  font-size: 1rem
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark {
  width: var(--box-size);
  height: var(--box-size);
  --box-size: .9333333333rem;
  --my-bar-height: .1rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
  body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark {
    --box-size: 1rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
  body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark {
    --my-bar-height: .1071428571rem
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark {
  --my-bar-color: var(--theme-color-black);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex-shrink: 0
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark .bar,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark .bar,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark .bar,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark .bar {
  display: block;
  height: var(--my-bar-height);
  width: 100%;
  background: var(--my-bar-color);
  border-radius: 2em
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before {
  transition: all .25s ease
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before,
body.style-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area .toggle-mark .bar:before {
  transition-property: opacity transform;
  transform: rotate(-90deg);
  content: "";
  display: block;
  height: var(--my-bar-height);
  width: 100%;
  background: var(--my-bar-color);
  border-radius: 2em
}

body.style-recruit-plan #faq .qa-list ul .list-item .title-area.is-open .toggle-mark .bar:before,
body.style-recruit-management #faq .qa-list ul .list-item .title-area.is-open .toggle-mark .bar:before,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .title-area.is-open .toggle-mark .bar:before,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .title-area.is-open .toggle-mark .bar:before {
  transform: rotate(0);
  opacity: 0
}

body.style-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
body.style-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner {
  border-top-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
  body.style-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner {
    border-top-width: .0714285714rem
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
body.style-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner {
  font-weight: 400;
  padding: 1.5333333333rem var(--my-item-side-padding);
  border-color: var(--theme-color-lightgray);
  border-top-style: dashed
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
  body.style-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-text-main .item-inner,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-text-main .item-inner {
    padding-block: 1.0714285714rem
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item .list-text-main .title-mark,
body.style-recruit-management #faq .qa-list ul .list-item .list-text-main .title-mark,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-text-main .title-mark,
body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-text-main .title-mark {
  font-weight: 700;
  flex-shrink: 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item .list-text-main .text-area p,
  body.style-recruit-management #faq .qa-list ul .list-item .list-text-main .text-area p,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item .list-text-main .text-area p,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item .list-text-main .text-area p {
    display: flex;
    gap: var(--my-text-area-mark-gap)
  }
}

body.style-recruit-plan #faq .qa-list ul .list-item:last-child .list-inner,
body.style-recruit-management #faq .qa-list ul .list-item:last-child .list-inner,
body.page-template-page-recruit-plan #faq .qa-list ul .list-item:last-child .list-inner,
body.page-template-page-recruit-management #faq .qa-list ul .list-item:last-child .list-inner {
  border-bottom-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit-plan #faq .qa-list ul .list-item:last-child .list-inner,
  body.style-recruit-management #faq .qa-list ul .list-item:last-child .list-inner,
  body.page-template-page-recruit-plan #faq .qa-list ul .list-item:last-child .list-inner,
  body.page-template-page-recruit-management #faq .qa-list ul .list-item:last-child .list-inner {
    border-bottom-width: .0714285714rem
  }
}

body.style-recruit #page-header-easy,
body.page-recruit #page-header-easy {
  --my-header-accent-color: var(--theme-color-gold);
  position: relative;
  z-index: 1
}

@media screen and (min-width: 769px) {

  body.style-recruit #page-header-easy,
  body.page-recruit #page-header-easy {
    margin-bottom: 7.4305555556vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #page-header-easy,
  body.page-recruit #page-header-easy {
    margin-bottom: var(--theme-header-bc-bottom-margin-sp)
  }
}

body.style-recruit #page-header-easy .header-breadcrumb-area,
body.page-recruit #page-header-easy .header-breadcrumb-area {
  height: var(--my-bc-height);
  background: var(--theme-color-white)
}

body.style-recruit #page-header-easy .page-info-area,
body.page-recruit #page-header-easy .page-info-area {
  display: none;
  margin-top: 7.6388888889vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #page-header-easy .page-info-area,
  body.page-recruit #page-header-easy .page-info-area {
    min-height: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #page-header-easy .page-info-area .page-info,
  body.page-recruit #page-header-easy .page-info-area .page-info {
    margin-top: 0;
    padding-left: 0
  }
}

body.style-recruit #page-header-easy .page-info-area .page-info .page-subtitle,
body.page-recruit #page-header-easy .page-info-area .page-info .page-subtitle {
  margin-bottom: .6944444444vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #page-header-easy .page-info-area .page-info .page-subtitle,
  body.page-recruit #page-header-easy .page-info-area .page-info .page-subtitle {
    margin-bottom: 3.3333333333vw
  }
}

body.style-recruit #page-header-easy .page-info-area .page-info .page-title,
body.page-recruit #page-header-easy .page-info-area .page-info .page-title {
  font-size: 6.9444444444vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #page-header-easy .page-info-area .page-info .page-title,
  body.page-recruit #page-header-easy .page-info-area .page-info .page-title {
    font-size: 8.2051282051vw
  }
}

body.style-recruit #fv,
body.page-recruit #fv {
  --my-bc-height: 2.2222222222vw;
  position: relative;
  overflow: clip;
  padding-top: 0;
  height: 158.125vw;
  background: url(../images/page/recruit/img-fv-bg-pc.webp) repeat center
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv,
  body.page-recruit #fv {
    --my-bc-height: 6.9230769231vw;
    height: 328.2051282051vw;
    background-image: url(../images/page/recruit/img-fv-bg-2-sp.webp)
  }
}

body.style-recruit #fv .bg-noise-cover-1,
body.page-recruit #fv .bg-noise-cover-1 {
  top: var(--my-bc-height)
}

body.style-recruit #fv .bg-color-area,
body.page-recruit #fv .bg-color-area {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-recruit #fv .bg-color-area,
body.page-recruit #fv .bg-color-area {
  opacity: 0;
  background: #fff
}

body.style-recruit #fv .bg-circle-area,
body.page-recruit #fv .bg-circle-area {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-recruit #fv .bg-circle-area,
body.page-recruit #fv .bg-circle-area {
  display: flex;
  align-items: center;
  justify-content: center
}

body.style-recruit #fv .bg-circle-area .circle,
body.page-recruit #fv .bg-circle-area .circle {
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 50%
}

body.style-recruit #fv .bg-circle-area .circle,
body.page-recruit #fv .bg-circle-area .circle {
  position: relative;
  top: 9.9%;
  left: 1%;
  z-index: 1;
  aspect-ratio: 1035/1690;
  width: 169px;
  background: radial-gradient(ellipse 50% 50% at 50% 50%, #fff 0% 49%, #ffffffd6 62%, #ffffff80 75%, #ffffff29 87%, #fff0);
  backface-visibility: hidden;
  transform: translateZ(0)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv .bg-circle-area .circle,
  body.page-recruit #fv .bg-circle-area .circle {
    top: 2%
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv #page-header-info,
  body.page-recruit #fv #page-header-info {
    min-height: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv #page-header-info .wrapper,
  body.page-recruit #fv #page-header-info .wrapper {
    padding-left: var(--theme-wrapper-narrow-title-left-space)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv #page-header-info .page-info,
  body.page-recruit #fv #page-header-info .page-info {
    margin-top: 0;
    padding-left: 0
  }
}

body.style-recruit #fv #page-header-info .page-info .page-subtitle,
body.page-recruit #fv #page-header-info .page-info .page-subtitle {
  font-size: .9722222222vw
}

@media screen and (min-width: 769px) {

  body.style-recruit #fv #page-header-info .page-info .page-subtitle,
  body.page-recruit #fv #page-header-info .page-info .page-subtitle {
    margin-bottom: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv #page-header-info .page-info .page-subtitle,
  body.page-recruit #fv #page-header-info .page-info .page-subtitle {
    font-size: 3.0769230769vw;
    margin-bottom: 3.3333333333vw
  }
}

body.style-recruit #fv #page-header-info .page-info .page-subtitle:before,
body.page-recruit #fv #page-header-info .page-info .page-subtitle:before {
  border-radius: 50%;
  --circle-size: .625vw;
  width: var(--circle-size);
  height: var(--circle-size)
}

body.style-recruit #fv #page-header-info .page-info .page-subtitle:before,
body.page-recruit #fv #page-header-info .page-info .page-subtitle:before {
  content: "";
  display: inline-block;
  position: relative;
  top: -.1388888889vw;
  margin-right: .5em;
  background: var(--theme-color-accent)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv #page-header-info .page-info .page-subtitle:before,
  body.page-recruit #fv #page-header-info .page-info .page-subtitle:before {
    --circle-size: 1.7948717949vw
  }
}

body.style-recruit #fv #page-header-info .page-info .page-title,
body.page-recruit #fv #page-header-info .page-info .page-title {
  font-size: 6.9444444444vw;
  font-weight: 500;
  line-height: 1.05
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv #page-header-info .page-info .page-title,
  body.page-recruit #fv #page-header-info .page-info .page-title {
    font-size: 8.2051282051vw
  }
}

body.style-recruit #fv .main-contents,
body.page-recruit #fv .main-contents {
  position: relative;
  z-index: 1;
  text-align: center;
  margin-top: 7.1527777778vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv .main-contents,
  body.page-recruit #fv .main-contents {
    margin-top: 34.358974359vw
  }
}

body.style-recruit #fv .main-contents .sec-title,
body.page-recruit #fv .main-contents .sec-title {
  font-size: 5.5555555556vw;
  padding-inline: var(--theme-wrapper-side-space)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv .main-contents .sec-title,
  body.page-recruit #fv .main-contents .sec-title {
    font-size: 12.3076923077vw;
    line-height: 1.25
  }
}

body.style-recruit #fv .main-contents .description,
body.page-recruit #fv .main-contents .description {
  --my-p-gap: 2.3em;
  font-weight: 700;
  margin-top: 8.4027777778vw;
  line-height: 2.3
}

@media screen and (min-width: 769px) {

  body.style-recruit #fv .main-contents .description,
  body.page-recruit #fv .main-contents .description {
    padding-inline: 0;
    max-width: 41.6666666667vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #fv .main-contents .description,
  body.page-recruit #fv .main-contents .description {
    --my-p-gap: 1.9em;
    font-size: 3.8461538462vw;
    text-align: left;
    margin-top: 15.8974358974vw;
    line-height: 1.8
  }
}

body.style-recruit #culture,
body.page-recruit #culture {
  padding: 0
}

body.style-recruit #culture>header,
body.page-recruit #culture>header {
  text-align: center;
  margin-block: 4.1666666667vw;
  padding-bottom: 8.0555555556vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture>header,
  body.page-recruit #culture>header {
    padding-bottom: 11.7948717949vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .wrapper,
  body.page-recruit #culture .wrapper {
    padding-inline: 8.2051282051vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .sec-title,
  body.page-recruit #culture .sec-title {
    letter-spacing: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .main-contents .main-contents-inner,
  body.page-recruit #culture .main-contents .main-contents-inner {
    display: flex;
    flex-direction: column;
    gap: 25.1282051282vw;
    padding-bottom: 16.6666666667vw
  }
}

body.style-recruit #culture .culture-item,
body.page-recruit #culture .culture-item {
  background: var(--theme-color-white)
}

@media screen and (min-width: 769px) {

  body.style-recruit #culture .culture-item,
  body.page-recruit #culture .culture-item {
    height: 100dvh
  }
}

body.style-recruit #culture .culture-item .item-inner,
body.page-recruit #culture .culture-item .item-inner {
  height: 100%
}

@media screen and (min-width: 769px) {

  body.style-recruit #culture .culture-item .wrapper,
  body.page-recruit #culture .culture-item .wrapper {
    margin-inline: calc(var(--theme-wrapper-side-space) * -1)
  }

  body.style-recruit #culture .culture-item .wrapper,
  body.page-recruit #culture .culture-item .wrapper {
    margin-inline: 0;
    padding-inline: 0;
    max-width: unset;
    width: 100%
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit #culture .culture-item .grid,
  body.page-recruit #culture .culture-item .grid {
    display: flex;
    gap: 8.5%;
    height: 100%
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid,
  body.page-recruit #culture .culture-item .grid {
    gap: 10.2564102564vw
  }
}

body.style-recruit #culture .culture-item .grid .text-area,
body.page-recruit #culture .culture-item .grid .text-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  flex-grow: 1;
  gap: 4.3055555556vw;
  padding: 2.0833333333vw 9.7222222222vw 2.0833333333vw 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid .text-area,
  body.page-recruit #culture .culture-item .grid .text-area {
    padding: 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid .text-area .item-header,
  body.page-recruit #culture .culture-item .grid .text-area .item-header {
    text-align: center;
    gap: 7.6923076923vw;
    width: 100%
  }
}

body.style-recruit #culture .culture-item .grid .text-area .item-title,
body.page-recruit #culture .culture-item .grid .text-area .item-title {
  font-size: 3.3333333333vw;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid .text-area .item-title,
  body.page-recruit #culture .culture-item .grid .text-area .item-title {
    font-size: 9.2307692308vw
  }
}

body.style-recruit #culture .culture-item .grid .text-area .item-subtitle,
body.page-recruit #culture .culture-item .grid .text-area .item-subtitle {
  font-size: 1.6666666667vw;
  font-weight: 700;
  line-height: 1.5;
  color: var(--theme-color-accent)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid .text-area .item-subtitle,
  body.page-recruit #culture .culture-item .grid .text-area .item-subtitle {
    font-size: 4.6153846154vw
  }
}

body.style-recruit #culture .culture-item .grid .text-area .description,
body.page-recruit #culture .culture-item .grid .text-area .description {
  font-weight: 500;
  line-height: 2
}

@media screen and (min-width: 769px) {

  body.style-recruit #culture .culture-item .grid .text-area .description,
  body.page-recruit #culture .culture-item .grid .text-area .description {
    font-size: 1.0416666667vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid .text-area .description,
  body.page-recruit #culture .culture-item .grid .text-area .description {
    font-size: 3.5897435897vw
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit #culture .culture-item .grid .image-area,
  body.page-recruit #culture .culture-item .grid .image-area {
    flex-shrink: 0;
    width: 43.1%
  }
}

body.style-recruit #culture .culture-item .grid .image-area img,
body.page-recruit #culture .culture-item .grid .image-area img {
  object-fit: cover;
  height: 100%;
  width: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #culture .culture-item .grid .image-area img,
  body.page-recruit #culture .culture-item .grid .image-area img {
    border-radius: 2.0512820513vw
  }
}

body.style-recruit #culture .plx-slide-nav,
body.page-recruit #culture .plx-slide-nav {
  --my-item-color: var(--theme-color-gray);
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 2.8472222222vw;
  color: var(--my-item-color)
}

body.style-recruit #culture .plx-slide-nav .num-area,
body.page-recruit #culture .plx-slide-nav .num-area {
  font-size: .6944444444vw;
  font-weight: 500
}

body.style-recruit #culture .plx-slide-nav .bar-area,
body.page-recruit #culture .plx-slide-nav .bar-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 22.2222222222vw
}

body.style-recruit #culture .plx-slide-nav .bar-area .bg-bar,
body.style-recruit #culture .plx-slide-nav .bar-area .progress-bar,
body.page-recruit #culture .plx-slide-nav .bar-area .bg-bar,
body.page-recruit #culture .plx-slide-nav .bar-area .progress-bar {
  display: block;
  position: absolute;
  top: 0;
  width: .0694444444vw;
  height: 100%;
  background: var(--my-item-color)
}

body.style-recruit #culture .plx-slide-nav .bar-area .progress-bar,
body.page-recruit #culture .plx-slide-nav .bar-area .progress-bar {
  transform-origin: top center;
  width: .2083333333vw
}

body.style-recruit #result,
body.page-recruit #result {
  --my-sec-bg-color-top-h: 18rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result,
  body.page-recruit #result {
    --my-sec-bg-color-top-h: 19.2857142857rem
  }
}

body.style-recruit #result,
body.page-recruit #result {
  padding-top: 21.7333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result,
  body.page-recruit #result {
    padding-top: var(--my-sec-bg-color-top-h);
    padding-bottom: 7.1428571429rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result>header,
  body.page-recruit #result>header {
    margin-bottom: 11.0256410256vw
  }
}

body.style-recruit #result .bg-noise-cover-1,
body.page-recruit #result .bg-noise-cover-1 {
  height: var(--my-sec-bg-color-top-h)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .sec-title,
  body.page-recruit #result .sec-title {
    font-size: 2rem
  }
}

body.style-recruit #result .result-list,
body.page-recruit #result .result-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 5.3333333333rem;
  gap: 1.0666666667rem .6666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list,
  body.page-recruit #result .result-list {
    grid-template-columns: 1fr;
    gap: .7142857143rem;
    margin-top: 2.8571428571rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner,
body.page-recruit #result .result-list .list-item .list-inner {
  display: flex;
  flex-direction: column;
  gap: .2666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner,
  body.page-recruit #result .result-list .list-item .list-inner {
    gap: .5714285714rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner aside,
body.page-recruit #result .result-list .list-item .list-inner aside {
  font-size: .8rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner aside,
  body.page-recruit #result .result-list .list-item .list-inner aside {
    font-size: .8571428571rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner aside,
body.page-recruit #result .result-list .list-item .list-inner aside {
  font-weight: 500;
  line-height: 1.3
}

body.style-recruit #result .result-list .list-item .list-inner aside,
body.page-recruit #result .result-list .list-item .list-inner aside {
  color: var(--theme-color-gray)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner aside,
  body.page-recruit #result .result-list .list-item .list-inner aside {
    letter-spacing: 0
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main,
body.page-recruit #result .result-list .list-item .list-inner .list-main {
  border-radius: .5333333333rem;
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main,
  body.page-recruit #result .result-list .list-item .list-inner .list-main {
    border-radius: .5714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main,
  body.page-recruit #result .result-list .list-item .list-inner .list-main {
    border-width: .0714285714rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main,
body.page-recruit #result .result-list .list-item .list-inner .list-main {
  display: flex;
  flex-direction: column;
  gap: 1.2666666667rem;
  padding: 1.0666666667rem 1.2rem;
  border-style: solid;
  border-color: var(--theme-color-lightgray);
  background: var(--theme-color-white)
}

@media screen and (min-width: 769px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main,
  body.page-recruit #result .result-list .list-item .list-inner .list-main {
    min-height: 14.7333333333rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main,
  body.page-recruit #result .result-list .list-item .list-inner .list-main {
    gap: .5714285714rem;
    padding: 1.0714285714rem 1.2857142857rem 1.5714285714rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .title-area,
body.page-recruit #result .result-list .list-item .list-inner .list-main .title-area {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .8rem
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-icon,
body.page-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-icon {
  --box-size: 3.7333333333rem;
  width: var(--box-size);
  height: var(--box-size)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-icon,
  body.page-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-icon {
    --box-size: 3.4285714286rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-title,
body.page-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-title {
  font-size: 1.3333333333rem;
  font-weight: 700;
  letter-spacing: .04em
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-title,
  body.page-recruit #result .result-list .list-item .list-inner .list-main .title-area .item-title {
    font-size: 1.2857142857rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main,
body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main {
  display: flex;
  justify-content: center;
  align-items: baseline
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main,
  body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main {
    gap: .1428571429rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .catch,
body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .catch {
  font-size: 6rem;
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.03em;
  color: var(--theme-color-accent)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .catch,
  body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .catch {
    font-size: 5.1428571429rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .rate-sep,
body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .unit,
body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .rate-sep,
body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .unit {
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.05;
  position: relative;
  bottom: .1em
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .rate-sep,
  body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .unit,
  body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .rate-sep,
  body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .unit {
    font-size: 2rem
  }
}

body.style-recruit #result .result-list .list-item .list-inner .list-main .catch-main .rate-sep,
body.page-recruit #result .result-list .list-item .list-inner .list-main .catch-main .rate-sep {
  display: flex;
  align-items: center;
  padding-bottom: .6rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item.age .item-icon,
  body.page-recruit #result .result-list .list-item.age .item-icon {
    --box-size: 3.1428571429rem
  }
}

body.style-recruit #result .result-list .list-item.gender-ratio .flex,
body.page-recruit #result .result-list .list-item.gender-ratio .flex {
  gap: .7333333333rem
}

body.style-recruit #result .result-list .list-item.gender-ratio .grid,
body.page-recruit #result .result-list .list-item.gender-ratio .grid {
  grid-template-columns: auto auto;
  align-items: baseline;
  justify-content: center;
  text-align: center;
  line-height: 1.05
}

body.style-recruit #result .result-list .list-item.gender-ratio .memo,
body.page-recruit #result .result-list .list-item.gender-ratio .memo {
  color: var(--theme-color-gray)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item.gender-ratio .item-icon,
  body.page-recruit #result .result-list .list-item.gender-ratio .item-icon {
    --box-size: 10vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #result .result-list .list-item.holidays .item-icon,
  body.page-recruit #result .result-list .list-item.holidays .item-icon {
    --box-size: 2.3571428571rem
  }
}

body.style-recruit #candidate,
body.page-recruit #candidate {
  padding-block: 0;
  --theme-wrapper-side-space: 4rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .first-image,
  body.page-recruit #candidate .first-image {
    height: 36.8571428571rem
  }
}

body.style-recruit #candidate .main-contents,
body.page-recruit #candidate .main-contents {
  --my-wrapper-side-space: 5.3333333333rem;
  margin-inline: auto;
  margin-top: -3.7333333333rem;
  padding-block: 10.6666666667rem 2.6666666667rem;
  max-width: calc(var(--theme-wrapper) + var(--my-wrapper-side-space));
  background: var(--theme-color-white)
}

@media screen and (min-width: 769px) {

  body.style-recruit #candidate .main-contents,
  body.page-recruit #candidate .main-contents {
    border-radius: 1.3333333333rem 1.3333333333rem 0 0
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents,
  body.page-recruit #candidate .main-contents {
    margin-top: -1.4285714286rem;
    padding-block: 5.7142857143rem 1.4285714286rem;
    max-width: 26.7142857143rem
  }

  body.style-recruit #candidate .main-contents .wrapper,
  body.page-recruit #candidate .main-contents .wrapper {
    padding-inline: 1.7142857143rem
  }
}

body.style-recruit #candidate .main-contents .grid-2,
body.page-recruit #candidate .main-contents .grid-2 {
  grid-template-columns: 1fr 58.6%;
  gap: 7.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .grid-2,
  body.page-recruit #candidate .main-contents .grid-2 {
    grid-template-columns: 1fr;
    gap: 2.8571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .sec-title,
  body.page-recruit #candidate .main-contents .sec-title {
    text-align: center
  }
}

body.style-recruit #candidate .main-contents .sec-subtitle,
body.page-recruit #candidate .main-contents .sec-subtitle {
  margin-block: 1.7333333333rem 0;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .sec-subtitle,
  body.page-recruit #candidate .main-contents .sec-subtitle {
    font-size: 1rem;
    text-align: center;
    line-height: 1.6;
    margin-top: 1.0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .title-area,
  body.page-recruit #candidate .main-contents .title-area {
    margin-bottom: 0
  }
}

body.style-recruit #candidate .main-contents .text-list .list-item,
body.page-recruit #candidate .main-contents .text-list .list-item {
  border-top-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .text-list .list-item,
  body.page-recruit #candidate .main-contents .text-list .list-item {
    border-top-width: .0714285714rem
  }
}

body.style-recruit #candidate .main-contents .text-list .list-item,
body.page-recruit #candidate .main-contents .text-list .list-item {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
  padding-block: 4rem 3.8666666667rem;
  border-color: var(--theme-color-lightgray);
  border-style: solid
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .text-list .list-item,
  body.page-recruit #candidate .main-contents .text-list .list-item {
    gap: 5.1282051282vw;
    padding-block: 3.2857142857rem
  }
}

body.style-recruit #candidate .main-contents .text-list .list-item .item-title,
body.page-recruit #candidate .main-contents .text-list .list-item .item-title {
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.4
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #candidate .main-contents .text-list .list-item .item-title,
  body.page-recruit #candidate .main-contents .text-list .list-item .item-title {
    font-size: 1.5714285714rem
  }
}

body.style-recruit #candidate .main-contents .text-list .list-item .item-title,
body.page-recruit #candidate .main-contents .text-list .list-item .item-title {
  color: var(--theme-color-accent)
}

body.style-recruit #candidate .main-contents .text-list .list-item .list-description,
body.page-recruit #candidate .main-contents .text-list .list-item .list-description {
  font-weight: 500;
  line-height: 1.8
}

body.style-recruit #work-style,
body.page-recruit #work-style {
  overflow: hidden;
  padding-bottom: 8.3333333333vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style,
  body.page-recruit #work-style {
    padding-top: 28.2051282051vw;
    padding-bottom: 20.5128205128vw
  }
}

body.style-recruit #work-style>header,
body.page-recruit #work-style>header {
  padding-inline: var(--theme-wrapper-side-space)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style>header,
  body.page-recruit #work-style>header {
    margin-bottom: 17.1794871795vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .sec-title,
  body.page-recruit #work-style .sec-title {
    font-size: 2rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .sec-title,
  body.page-recruit #work-style .sec-title {
    text-align: center
  }
}

body.style-recruit #work-style .sec-subtitle,
body.page-recruit #work-style .sec-subtitle {
  margin-block: 1.7333333333rem 0;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .sec-subtitle,
  body.page-recruit #work-style .sec-subtitle {
    font-size: 1rem;
    text-align: center;
    line-height: 1.6;
    margin-top: 1.0714285714rem
  }
}

body.style-recruit #work-style .sec-subtitle,
body.page-recruit #work-style .sec-subtitle {
  text-align: center
}

body.style-recruit #work-style .divisions-area,
body.page-recruit #work-style .divisions-area {
  display: grid
}

@media screen and (min-width: 769px) {

  body.style-recruit #work-style .divisions-area,
  body.page-recruit #work-style .divisions-area {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .divisions-area,
  body.page-recruit #work-style .divisions-area {
    gap: 1.0714285714rem;
    padding-inline: 8.2051282051vw
  }
}

body.style-recruit #work-style .divisions-area .div-item,
body.page-recruit #work-style .divisions-area .div-item {
  display: flex
}

@media screen and (min-width: 769px) {

  body.style-recruit #work-style .divisions-area .div-item,
  body.page-recruit #work-style .divisions-area .div-item {
    padding-inline: 1.3888888889vw
  }
}

body.style-recruit #work-style .divisions-area .div-item .item-inner,
body.page-recruit #work-style .divisions-area .div-item .item-inner {
  --my-border-radius: 1.3888888889vw;
  position: relative;
  overflow: hidden;
  border-radius: var(--my-border-radius)
}

@media screen and (min-width: 769px) {

  body.style-recruit #work-style .divisions-area .div-item .item-inner,
  body.page-recruit #work-style .divisions-area .div-item .item-inner {
    height: 47.4305555556vw;
    width: 40.2777777778vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .divisions-area .div-item .item-inner,
  body.page-recruit #work-style .divisions-area .div-item .item-inner {
    --my-border-radius: 2.8205128205vw;
    height: 98.4615384615vw
  }
}

body.style-recruit #work-style .divisions-area .div-item .div-image,
body.page-recruit #work-style .divisions-area .div-item .div-image {
  display: block;
  height: 100%
}

body.style-recruit #work-style .divisions-area .div-item .div-image .image-inner,
body.page-recruit #work-style .divisions-area .div-item .div-image .image-inner {
  height: 100%
}

body.style-recruit #work-style .divisions-area .div-item .div-image img,
body.page-recruit #work-style .divisions-area .div-item .div-image img {
  object-fit: cover;
  height: 100%;
  width: 100%
}

body.style-recruit #work-style .divisions-area .div-item .bg,
body.page-recruit #work-style .divisions-area .div-item .bg {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-recruit #work-style .divisions-area .div-item .bg,
body.page-recruit #work-style .divisions-area .div-item .bg {
  top: 50%;
  background: linear-gradient(180deg, #d9d9d900, #353535 86.34%)
}

body.style-recruit #work-style .divisions-area .div-item .text-area,
body.page-recruit #work-style .divisions-area .div-item .text-area {
  position: absolute;
  bottom: 0;
  padding: 0 2.4305555556vw 2.3611111111vw 2.7777777778vw;
  width: 100%;
  color: var(--theme-color-white)
}

body.style-recruit #work-style .divisions-area .div-item .text-area:active,
body.style-recruit #work-style .divisions-area .div-item .text-area:focus,
body.style-recruit #work-style .divisions-area .div-item .text-area:hover,
body.page-recruit #work-style .divisions-area .div-item .text-area:active,
body.page-recruit #work-style .divisions-area .div-item .text-area:focus,
body.page-recruit #work-style .divisions-area .div-item .text-area:hover {
  -webkit-tap-highlight-color: transparent;
  background: transparent
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .divisions-area .div-item .text-area,
  body.page-recruit #work-style .divisions-area .div-item .text-area {
    padding: 0 4.358974359vw 4.1025641026vw
  }
}

body.style-recruit #work-style .divisions-area .div-item .text-area .flex,
body.page-recruit #work-style .divisions-area .div-item .text-area .flex {
  align-items: flex-end;
  justify-content: space-between;
  position: relative
}

body.style-recruit #work-style .divisions-area .div-item .text-area .title-area,
body.page-recruit #work-style .divisions-area .div-item .text-area .title-area {
  display: flex;
  flex-direction: column;
  gap: 1.6666666667vw;
  padding-bottom: .9027777778vw
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .divisions-area .div-item .text-area .title-area,
  body.page-recruit #work-style .divisions-area .div-item .text-area .title-area {
    gap: 3.3333333333vw;
    padding: 0 0 2.3076923077vw
  }
}

body.style-recruit #work-style .divisions-area .div-item .text-area .title-area .item-title,
body.page-recruit #work-style .divisions-area .div-item .text-area .title-area .item-title {
  font-size: 3.3333333333vw;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.05
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .divisions-area .div-item .text-area .title-area .item-title,
  body.page-recruit #work-style .divisions-area .div-item .text-area .title-area .item-title {
    font-size: 6.9230769231vw
  }
}

body.style-recruit #work-style .divisions-area .div-item .text-area .title-area .item-subtitle,
body.page-recruit #work-style .divisions-area .div-item .text-area .title-area .item-subtitle {
  font-size: 1.1805555556vw;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work-style .divisions-area .div-item .text-area .title-area .item-subtitle,
  body.page-recruit #work-style .divisions-area .div-item .text-area .title-area .item-subtitle {
    font-size: 3.3333333333vw
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit #work-style .divisions-area .div-item:first-child,
  body.page-recruit #work-style .divisions-area .div-item:first-child {
    justify-content: flex-end
  }
}

@media screen and (min-width: 769px) {

  body.style-recruit #work-style .divisions-area .div-item:last-child,
  body.page-recruit #work-style .divisions-area .div-item:last-child {
    justify-content: flex-start
  }
}

body.style-recruit #work-style .divisions-area .div-item.div-plan .image-area img,
body.page-recruit #work-style .divisions-area .div-item.div-plan .image-area img {
  object-position: 90%
}

body.style-recruit #work-style .divisions-area .div-item.div-management .image-area img,
body.page-recruit #work-style .divisions-area .div-item.div-management .image-area img {
  object-position: 10%
}

body.style-recruit #work,
body.page-recruit #work {
  margin-top: 8rem;
  padding-block: 6.6666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work,
  body.page-recruit #work {
    margin-top: 2.1428571429rem;
    padding-block: 8.2142857143rem 10rem
  }
}

body.style-recruit #work .bg-image,
body.page-recruit #work .bg-image {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-recruit #work .bg-image img,
body.page-recruit #work .bg-image img {
  object-fit: cover;
  height: 100%;
  width: 100%
}

@media screen and (min-width: 769px) {

  body.style-recruit #work .main-contents,
  body.page-recruit #work .main-contents {
    grid-template-columns: 1fr 60.1%;
    gap: 9.9%
  }
}

body.style-recruit #work .main-contents header,
body.page-recruit #work .main-contents header {
  color: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents header,
  body.page-recruit #work .main-contents header {
    margin-bottom: 3.3571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents header .sec-title,
  body.page-recruit #work .main-contents header .sec-title {
    text-align: center
  }
}

body.style-recruit #work .main-contents header .sec-subtitle,
body.page-recruit #work .main-contents header .sec-subtitle {
  margin-block: 1.7333333333rem 0;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents header .sec-subtitle,
  body.page-recruit #work .main-contents header .sec-subtitle {
    font-size: 1rem;
    text-align: center;
    line-height: 1.6;
    margin-top: 1.0714285714rem
  }
}

body.style-recruit #work .main-contents header .sec-subtitle,
body.page-recruit #work .main-contents header .sec-subtitle {
  margin-top: 1.7333333333rem;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents header .sec-subtitle,
  body.page-recruit #work .main-contents header .sec-subtitle {
    margin-top: 1.1428571429rem
  }
}

body.style-recruit #work .main-contents .list-area ul,
body.page-recruit #work .main-contents .list-area ul {
  gap: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul,
  body.page-recruit #work .main-contents .list-area ul {
    gap: .5714285714rem
  }
}

body.style-recruit #work .main-contents .list-area ul,
body.page-recruit #work .main-contents .list-area ul {
  display: flex;
  flex-direction: column
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-inner,
body.page-recruit #work .main-contents .list-area ul .list-item .item-inner {
  border-radius: .8rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-inner,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-inner {
    border-radius: .8571428571rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-inner,
body.page-recruit #work .main-contents .list-area ul .list-item .item-inner {
  display: flex;
  flex-direction: column;
  gap: 1.2666666667rem;
  padding: 2.1333333333rem 3.1333333333rem;
  background: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-inner,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-inner {
    gap: .4285714286rem;
    padding: 2.2857142857rem 2.2857142857rem 2.0714285714rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area,
body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1.8rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area {
    gap: .5rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .item-title,
body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .item-title {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .item-title,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .item-title {
    font-size: 1.5714285714rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge,
body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge {
  font-size: .8666666667rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.05;
  border-radius: .2666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge {
    font-size: .8571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge {
    border-radius: .2857142857rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge,
body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge {
  padding: .6rem .7333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge {
    padding: .4285714286rem .5714285714rem .5rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge.badge-accent,
body.page-recruit #work .main-contents .list-area ul .list-item .item-title-area .badge.badge-accent {
  color: var(--theme-color-white);
  background: var(--theme-color-accent)
}

body.style-recruit #work .main-contents .list-area ul .list-item .link-area,
body.page-recruit #work .main-contents .list-area ul .list-item .link-area {
  flex-grow: 1;
  text-align: right;
  color: var(--theme-color-accent)
}

body.style-recruit #work .main-contents .list-area ul .list-item .link-area a,
body.page-recruit #work .main-contents .list-area ul .list-item .link-area a {
  font-size: .8666666667rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.05
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .link-area a,
  body.page-recruit #work .main-contents .list-area ul .list-item .link-area a {
    font-size: .8571428571rem
  }
}

body.style-recruit #work .main-contents .list-area ul .list-item .link-area a,
body.page-recruit #work .main-contents .list-area ul .list-item .link-area a {
  text-decoration: underline
}

body.style-recruit #work .main-contents .list-area ul .list-item .link-area a .icon,
body.page-recruit #work .main-contents .list-area ul .list-item .link-area a .icon {
  font-size: .7333333333rem;
  margin-left: .3333333333rem
}

body.style-recruit #work .main-contents .list-area ul .list-item .item-description,
body.page-recruit #work .main-contents .list-area ul .list-item .item-description {
  font-size: .9333333333rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-description,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-description {
    font-size: .9285714286rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #work .main-contents .list-area ul .list-item .item-description,
  body.page-recruit #work .main-contents .list-area ul .list-item .item-description {
    padding-top: 1rem
  }
}

body.style-recruit #benefits,
body.page-recruit #benefits {
  padding-bottom: 13.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits,
  body.page-recruit #benefits {
    padding-block: 7.1428571429rem 8.2142857143rem
  }
}

body.style-recruit #benefits>header,
body.page-recruit #benefits>header {
  padding-inline: var(--theme-wrapper-side-space)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits>header,
  body.page-recruit #benefits>header {
    margin-bottom: 2.8571428571rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .sec-title,
  body.page-recruit #benefits .sec-title {
    font-size: 2rem
  }
}

body.style-recruit #benefits .sec-subtitle,
body.page-recruit #benefits .sec-subtitle {
  margin-block: 1.7333333333rem 0;
  font-size: 1.0666666667rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .sec-subtitle,
  body.page-recruit #benefits .sec-subtitle {
    font-size: 1rem;
    text-align: center;
    line-height: 1.6;
    margin-top: 1.0714285714rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .sec-subtitle,
  body.page-recruit #benefits .sec-subtitle {
    font-size: 1rem;
    line-height: 1.6
  }
}

body.style-recruit #benefits .sec-subtitle,
body.page-recruit #benefits .sec-subtitle {
  text-align: center
}

@media screen and (min-width: 769px) {

  body.style-recruit #benefits .sec-subtitle,
  body.page-recruit #benefits .sec-subtitle {
    margin-top: 2.6666666667rem
  }
}

body.style-recruit #benefits .benefits-list,
body.page-recruit #benefits .benefits-list {
  display: grid;
  gap: 1.3333333333rem
}

@media screen and (min-width: 769px) {

  body.style-recruit #benefits .benefits-list,
  body.page-recruit #benefits .benefits-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.4285714286rem
  }
}

body.style-recruit #benefits .benefits-list .list-item .item-inner,
body.page-recruit #benefits .benefits-list .list-item .item-inner {
  background: url(../images/page/recruit/img-bg-noise-1-pc.webp) repeat center;
  border-radius: .5333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .item-inner,
  body.page-recruit #benefits .benefits-list .list-item .item-inner {
    background-image: url(../images/page/recruit/img-bg-noise-1-sp.webp)
  }
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .item-inner,
  body.page-recruit #benefits .benefits-list .list-item .item-inner {
    border-radius: .5714285714rem
  }
}

body.style-recruit #benefits .benefits-list .list-item .item-inner,
body.page-recruit #benefits .benefits-list .list-item .item-inner {
  display: flex;
  flex-direction: column;
  gap: 2.1333333333rem;
  flex-grow: 1;
  height: 100%;
  padding: 2.2rem 2.1333333333rem 3.4666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .item-inner,
  body.page-recruit #benefits .benefits-list .list-item .item-inner {
    flex-direction: row;
    gap: 2.2857142857rem;
    padding: 1.7857142857rem 2.2142857143rem 2.4285714286rem
  }
}

body.style-recruit #benefits .benefits-list .list-item .icon-area,
body.page-recruit #benefits .benefits-list .list-item .icon-area {
  --box-size: 4rem;
  width: var(--box-size);
  height: var(--box-size)
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .icon-area,
  body.page-recruit #benefits .benefits-list .list-item .icon-area {
    --box-size: 2.5714285714rem;
    flex-shrink: 0
  }
}

body.style-recruit #benefits .benefits-list .list-item .text-area,
body.page-recruit #benefits .benefits-list .list-item .text-area {
  display: flex;
  flex-direction: column;
  gap: 1.6rem
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .text-area,
  body.page-recruit #benefits .benefits-list .list-item .text-area {
    padding-top: .5714285714rem;
    gap: 1rem
  }
}

body.style-recruit #benefits .benefits-list .list-item .item-title,
body.page-recruit #benefits .benefits-list .list-item .item-title {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .item-title,
  body.page-recruit #benefits .benefits-list .list-item .item-title {
    font-size: 1.5714285714rem
  }
}

body.style-recruit #benefits .benefits-list .list-item .item-title,
body.page-recruit #benefits .benefits-list .list-item .item-title {
  line-height: 1.2
}

body.style-recruit #benefits .benefits-list .list-item .item-description,
body.page-recruit #benefits .benefits-list .list-item .item-description {
  font-size: .9333333333rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5
}

@media screen and (max-width: 768.98px) {

  body.style-recruit #benefits .benefits-list .list-item .item-description,
  body.page-recruit #benefits .benefits-list .list-item .item-description {
    font-size: .9285714286rem
  }
}

@media screen and (min-width: 769px) {

  body.style-management #career .career-list ul,
  body.page-management #career .career-list ul {
    grid-template-columns: repeat(3, 1fr)
  }

  body.style-management #career .career-list ul .list-item .list-inner,
  body.page-management #career .career-list ul .list-item .list-inner {
    padding: 1.4666666667rem
  }

  body.style-management #career .career-list ul .list-item .flow,
  body.page-management #career .career-list ul .list-item .flow {
    width: 2.6666666667rem
  }

  body.style-management #career .career-list ul .list-item.step-1 .flow,
  body.page-management #career .career-list ul .list-item.step-1 .flow {
    top: 6.6666666667rem
  }

  body.style-management #career .career-list ul .list-item.step-2 .flow,
  body.page-management #career .career-list ul .list-item.step-2 .flow {
    top: -3rem;
    height: 14rem
  }
}

@media screen and (max-width: 768.98px) {

  body.style-management #career .career-list ul .step-1 .flow,
  body.page-management #career .career-list ul .step-1 .flow,
  body.style-management #career .career-list ul .step-2 .flow,
  body.page-management #career .career-list ul .step-2 .flow {
    right: 0
  }
}

body.style-service *,
body.page-service * {
  backface-visibility: hidden
}

@media screen and (max-width: 768.98px) {

  body.style-service,
  body.page-service {
    --theme-section-padding: 4.2857142857rem
  }

  body.style-service section header,
  body.page-service section header {
    margin-bottom: 1.9rem
  }

  body.style-service .sec-title,
  body.page-service .sec-title {
    font-size: 1.7142857143rem
  }
}

body.style-service .sec-description,
body.page-service .sec-description {
  line-height: 1.5
}

@media screen and (min-width: 769px) {

  body.style-service .grid-text-image,
  body.page-service .grid-text-image {
    grid-template-columns: 45% 1fr;
    gap: 16.5%
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service .grid-text-image,
  body.page-service .grid-text-image {
    gap: 1.8571428571rem
  }
}

body.style-service .grid-text-image .image-area,
body.page-service .grid-text-image .image-area {
  display: flex;
  align-items: flex-end
}

body.style-service .grid-text-image .image-area img,
body.page-service .grid-text-image .image-area img {
  width: 100%
}

body.style-service .main-slider,
body.page-service .main-slider {
  --my-slide-side-space: 10.1388888889vw;
  margin-top: 5.3333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider,
  body.page-service .main-slider {
    --my-slide-side-space: 8.2051282051vw
  }
}

body.style-service .main-slider .slider-main-area,
body.page-service .main-slider .slider-main-area {
  position: relative;
  min-height: 35.3472222222vw
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area,
  body.page-service .main-slider .slider-main-area {
    height: auto
  }
}

body.style-service .main-slider .slider-main-area .slider-area,
body.page-service .main-slider .slider-main-area .slider-area {
  height: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .slider-area,
  body.page-service .main-slider .slider-main-area .slider-area {
    height: auto
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide,
body.page-service .main-slider .slider-main-area .swiper-slide {
  --my-slide-space: 2.2222222222vw;
  padding-inline: var(--my-slide-space);
  backface-visibility: hidden;
  transform: translateZ(0);
  perspective: 1000
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide,
  body.page-service .main-slider .slider-main-area .swiper-slide {
    --my-slide-space: 2.6923076923vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents {
  position: relative;
  overflow: hidden;
  height: 100%;
  background: #fff
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents {
    height: auto;
    min-height: 139.7435897436vw;
    padding-bottom: 14.1025641026vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg:after,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg:after {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg:after,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg:after {
  content: "";
  display: block;
  opacity: .5;
  background: #fff
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg img,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg img.bg-effect,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-bg img.bg-effect {
  transform: scale(1.05) translateZ(0);
  filter: blur(64px)
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main {
  --my-side-space: 4.1025641026vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  padding-inline: 5.4861111111vw;
  padding-block: 2.7777777778vw;
  height: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main {
    --my-side-space: 4.1025641026vw;
    padding-inline: var(--my-side-space);
    padding-block: 5.1282051282vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .grid,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .grid {
  grid-template-columns: 48.4% 1fr;
  align-items: center;
  gap: 5.2083333333vw;
  flex-grow: 1;
  margin-block: 1.5972222222vw 2.7777777778vw;
  width: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .grid,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .grid {
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    margin-block: 4.1025641026vw;
    gap: 4.1025641026vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area {
  --my-border-radius: 2.7777777778vw;
  padding: 1.1111111111vw 2.1527777778vw 1.3888888889vw;
  border-radius: 0 0 var(--my-border-radius) var(--my-border-radius);
  background: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area {
    --my-border-radius: 5.1282051282vw;
    position: relative;
    left: calc(var(--my-side-space) * -1);
    padding: 1.7948717949vw 4.1025641026vw 2.8205128205vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title {
  font-size: 2.2222222222vw;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.05
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title {
    font-size: 4.6153846154vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle {
  font-size: 1.1111111111vw;
  font-weight: 700;
  letter-spacing: .04em
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle {
    font-size: 3.0769230769vw;
    color: var(--theme-color-gray)
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description,
body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn {
  font-size: .9722222222vw
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description,
  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn {
    font-size: 1rem
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description {
  line-height: 1.6;
  letter-spacing: 0
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .description {
    display: flex;
    flex-direction: column;
    align-items: center
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .view-toggle-area,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .view-toggle-area {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    transition: all .25s ease
  }

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .view-toggle-area,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .view-toggle-area {
    transition-property: max-height;
    line-height: 1.6;
    overflow: hidden;
    max-height: 4.6em;
    width: 100%
  }

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .view-toggle-area.is-open,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .view-toggle-area.is-open {
    display: block;
    -webkit-line-clamp: none;
    max-height: 1000px
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle {
  font-size: 3.5897435897vw;
  font-weight: 700;
  margin-top: 3.0769230769vw;
  transition: all .25s ease;
  transition-property: opacity
}

@media screen and (min-width: 769px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle {
    display: none
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle .icon,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle .icon {
  transition: all .25s ease
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle .icon,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle .icon {
  transition-property: transform;
  font-size: 2.3076923077vw;
  margin-left: 2.5641025641vw
}

@media (hover: hover) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:hover,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:hover {
    opacity: .5
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:active,
body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:focus,
body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:focus-within,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:active,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:focus,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle:focus-within {
  opacity: .5
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle.is-open .icon,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .text-contents-main .btn-view-toggle.is-open .icon {
  transform: rotate(-180deg)
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area {
  display: flex;
  justify-content: flex-start;
  margin-top: 1.5277777778vw
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area {
    justify-content: center;
    margin-top: 4.6153846154vw
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn {
  min-width: 17.2rem
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn {
    min-width: 18.4285714286rem
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn {
  letter-spacing: 0;
  gap: 1.3em;
  width: auto
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .text,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .text {
  text-align: center
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .icon,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .icon {
  font-size: .9333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .icon,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .icon {
    font-size: 1rem
  }
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .icon.icon-pos-after,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .text-area .btn-area .btn .icon.icon-pos-after {
  padding-right: .6944444444vw
}

body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .image-area img,
body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .image-area img {
  height: 100%;
  width: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .image-area,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .image-area {
    width: 100%;
    height: 50.2564102564vw
  }

  body.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .image-area figure,
  body.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .image-area figure {
    height: 100%
  }
}

body.style-service .main-slider .slider-main-area .slider-control-navi,
body.page-service .main-slider .slider-main-area .slider-control-navi {
  position: absolute;
  inset: 0;
  margin: auto
}

body.style-service .main-slider .slider-main-area .slider-control-navi,
body.page-service .main-slider .slider-main-area .slider-control-navi {
  --my-slider-navi-btn-size: 5.5555555556vw;
  --my-btn-side-pos: 7.2916666667vw;
  pointer-events: none;
  z-index: 1
}

body.style-service .main-slider .slider-main-area .slider-control-navi .btn,
body.page-service .main-slider .slider-main-area .slider-control-navi .btn {
  --circle-size: var(--my-slider-navi-btn-size);
  pointer-events: auto;
  position: absolute;
  top: -.2083333333vw;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {

  body.style-service .main-slider .slider-main-area .slider-control-navi .btn:hover,
  body.page-service .main-slider .slider-main-area .slider-control-navi .btn:hover {
    opacity: .5
  }
}

body.style-service .main-slider .slider-main-area .slider-control-navi .btn:active,
body.style-service .main-slider .slider-main-area .slider-control-navi .btn:focus,
body.style-service .main-slider .slider-main-area .slider-control-navi .btn:focus-within,
body.page-service .main-slider .slider-main-area .slider-control-navi .btn:active,
body.page-service .main-slider .slider-main-area .slider-control-navi .btn:focus,
body.page-service .main-slider .slider-main-area .slider-control-navi .btn:focus-within {
  opacity: .5
}

body.style-service .main-slider .slider-main-area .slider-control-navi .slider-next,
body.page-service .main-slider .slider-main-area .slider-control-navi .slider-next {
  left: auto;
  right: var(--my-btn-side-pos)
}

body.style-service .main-slider .slider-main-area .slider-control-navi .slider-prev,
body.page-service .main-slider .slider-main-area .slider-control-navi .slider-prev {
  left: var(--my-btn-side-pos);
  right: auto
}

body.style-service .main-slider .slider-thum-navi,
body.page-service .main-slider .slider-thum-navi {
  padding-inline: var(--my-slide-side-space)
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi,
  body.page-service .main-slider .slider-thum-navi {
    padding-inline: 0
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main {
  position: relative;
  z-index: 1;
  background: var(--theme-color-white)
}

@media screen and (min-width: 769px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main {
    margin-top: -2.7777777778vw
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title-area,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title-area {
  position: relative
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title-area,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title-area {
    position: absolute;
    margin-top: -6.1538461538vw;
    left: var(--my-slide-side-space);
    right: var(--my-slide-side-space);
    background: var(--theme-color-white)
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title {
  display: flex;
  font-weight: 700;
  align-items: flex-start;
  justify-content: center;
  position: absolute;
  top: -2.2222222222vw;
  left: 0;
  right: 0;
  margin: auto;
  padding-top: .6944444444vw;
  width: 27.5vw;
  height: 4.5138888889vw;
  background: var(--theme-color-white);
  border-radius: 3em
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .navi-title {
    width: 75.3846153846vw;
    height: 25.641025641vw;
    top: -7.1794871795vw;
    padding-top: 3.8461538462vw
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi {
  padding: 0 2.6388888889vw
}

@media screen and (min-width: 769px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi {
    padding-top: 1.5972222222vw
  }

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide-duplicate,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide-duplicate {
    display: none
  }

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-wrapper,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-wrapper {
    transform: none !important;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5277777778vw 2.5694444444vw;
    width: 100% !important
  }

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide {
    margin: 0 !important;
    height: auto !important;
    width: 100% !important
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide {
    padding-inline: .3214285714rem
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn {
  cursor: pointer;
  transition: all .25s ease;
  transition-property: opacity
}

@media (hover: hover) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:hover,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:hover {
    opacity: .5
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:active,
body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:focus,
body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:focus-within,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:active,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:focus,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .btn:focus-within {
  opacity: .5
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum {
  border-radius: var(--theme-border-radius-large);
  border-width: .0666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum {
    border-width: .0714285714rem
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum {
  overflow: hidden;
  height: 8.5416666667vw;
  border-style: solid;
  border-color: var(--theme-color-lightgray)
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum {
    height: 17.9487179487vw
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum img,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .thum img {
  object-fit: cover;
  height: 100%;
  width: 100%
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area {
  display: flex;
  flex-direction: column;
  text-align: center;
  margin-top: .8333333333vw;
  gap: .1388888889vw
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area {
    display: none
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title {
  font-size: 1.1111111111vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle {
  font-size: .8333333333vw;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0;
  color: var(--theme-color-gray-semidark)
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide.swiper-slide-thumb-active .thum,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide.swiper-slide-thumb-active .thum {
  border-width: .1333333333rem
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide.swiper-slide-thumb-active .thum,
  body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide.swiper-slide-thumb-active .thum {
    border-width: .1428571429rem
  }
}

body.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide.swiper-slide-thumb-active .thum,
body.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide.swiper-slide-thumb-active .thum {
  border-color: var(--theme-color-accent)
}

body.style-service .main-slider>.btn-area,
body.page-service .main-slider>.btn-area {
  margin-top: 3.6111111111vw
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider>.btn-area,
  body.page-service .main-slider>.btn-area {
    margin-top: 11.2820512821vw
  }
}

body.style-service .main-slider>.btn-area .btn,
body.page-service .main-slider>.btn-area .btn {
  line-height: 1.5;
  padding-block: .625vw .9027777778vw;
  padding-left: 1.5972222222vw;
  min-width: 25vw
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider>.btn-area .btn,
  body.page-service .main-slider>.btn-area .btn {
    padding-block: 1.2820512821vw;
    padding-left: 5.8974358974vw;
    min-width: 66.1538461538vw
  }
}

body.style-service .main-slider>.btn-area .btn .text,
body.page-service .main-slider>.btn-area .btn .text {
  text-align: center
}

body.style-service .main-slider>.btn-area .btn .icon,
body.page-service .main-slider>.btn-area .btn .icon {
  font-size: .8666666667rem
}

@media screen and (max-width: 768.98px) {

  body.style-service .main-slider>.btn-area .btn .icon,
  body.page-service .main-slider>.btn-area .btn .icon {
    font-size: .9285714286rem
  }
}

body.style-service .main-slider.inc-thum-navi .slider-main-area .slider-area .swiper-slide .slider-contents-main,
body.page-service .main-slider.inc-thum-navi .slider-main-area .slider-area .swiper-slide .slider-contents-main {
  padding-block: 0;
  padding-bottom: 4.0277777778vw
}

body.style-service .slider-main.is-resizing .swiper-slide,
body.page-service .slider-main.is-resizing .swiper-slide {
  display: none !important;
  pointer-events: none
}

body.style-service #contact-lens .contact-lens-brands .slider-contents .text-contents-main .item-title,
body.page-service #contact-lens .contact-lens-brands .slider-contents .text-contents-main .item-title {
  display: none
}

@media screen and (max-width: 768.98px) {

  body.style-service #contact-lens .contact-lens-brands .slider-control-navi,
  body.page-service #contact-lens .contact-lens-brands .slider-control-navi {
    display: none
  }
}

body.style-service #contact-lens .contact-lens-brands .slider-control-navi .swiper-pagination-bullets,
body.page-service #contact-lens .contact-lens-brands .slider-control-navi .swiper-pagination-bullets {
  display: none
}

body.style-service #ecommerce .sec-description,
body.style-service #cosmetics .sec-description,
body.page-service #ecommerce .sec-description,
body.page-service #cosmetics .sec-description {
  --my-p-gap: 2em
}

body.style-service #ecommerce .sec-description p,
body.style-service #cosmetics .sec-description p,
body.page-service #ecommerce .sec-description p,
body.page-service #cosmetics .sec-description p {
  line-height: 2
}

@media screen and (min-width: 769px) {

  body.style-service #ecommerce .main-slider,
  body.style-service #cosmetics .main-slider,
  body.page-service #ecommerce .main-slider,
  body.page-service #cosmetics .main-slider {
    margin-top: 8.75vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider,
  body.style-service #cosmetics .main-slider,
  body.page-service #ecommerce .main-slider,
  body.page-service #cosmetics .main-slider {
    margin-top: 15.3846153846vw
  }
}

@media screen and (min-width: 769px) {

  body.style-service #ecommerce .main-slider .slider-main-area,
  body.style-service #cosmetics .main-slider .slider-main-area,
  body.page-service #ecommerce .main-slider .slider-main-area,
  body.page-service #cosmetics .main-slider .slider-main-area {
    min-height: 32.0138888889vw
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .swiper-slide,
body.style-service #cosmetics .main-slider .slider-main-area .swiper-slide,
body.page-service #ecommerce .main-slider .slider-main-area .swiper-slide,
body.page-service #cosmetics .main-slider .slider-main-area .swiper-slide {
  --my-slide-space: 2.9166666667vw
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .swiper-slide .slider-contents,
  body.style-service #cosmetics .main-slider .slider-main-area .swiper-slide .slider-contents,
  body.page-service #ecommerce .main-slider .slider-main-area .swiper-slide .slider-contents,
  body.page-service #cosmetics .main-slider .slider-main-area .swiper-slide .slider-contents {
    min-height: 161.7948717949vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .swiper-slide .slider-contents-main,
  body.style-service #cosmetics .main-slider .slider-main-area .swiper-slide .slider-contents-main,
  body.page-service #ecommerce .main-slider .slider-main-area .swiper-slide .slider-contents-main,
  body.page-service #cosmetics .main-slider .slider-main-area .swiper-slide .slider-contents-main {
    padding-block: 14.8717948718vw 16.9230769231vw
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .tab-title-area,
body.style-service #cosmetics .main-slider .slider-main-area .tab-title-area,
body.page-service #ecommerce .main-slider .slider-main-area .tab-title-area,
body.page-service #cosmetics .main-slider .slider-main-area .tab-title-area {
  display: none
}

body.style-service #ecommerce .main-slider .slider-main-area .grid,
body.style-service #cosmetics .main-slider .slider-main-area .grid,
body.page-service #ecommerce .main-slider .slider-main-area .grid,
body.page-service #cosmetics .main-slider .slider-main-area .grid {
  margin-block: auto
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .grid,
  body.style-service #cosmetics .main-slider .slider-main-area .grid,
  body.page-service #ecommerce .main-slider .slider-main-area .grid,
  body.page-service #cosmetics .main-slider .slider-main-area .grid {
    gap: 5.1282051282vw
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main,
body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main,
body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main,
body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main {
  display: flex;
  flex-direction: column;
  gap: 1.3888888889vw
}

body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main .item-title,
body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main .item-title,
body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main .item-title,
body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main .item-title {
  font-size: 1.6666666667vw;
  font-weight: 700;
  letter-spacing: .04em
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main .item-title,
  body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main .item-title,
  body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main .item-title,
  body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main .item-title {
    font-size: 4.6153846154vw;
    margin-bottom: 5.3846153846vw
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main .description,
body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main .description,
body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main .description,
body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main .description {
  font-size: 1.0416666667vw
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main .description,
  body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main .description,
  body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main .description,
  body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main .description {
    font-size: 1.0714285714rem
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main .description,
body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main .description,
body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main .description,
body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main .description {
  letter-spacing: .04em;
  line-height: 1.6
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .text-contents-main .description .btn,
  body.style-service #cosmetics .main-slider .slider-main-area .text-contents-main .description .btn,
  body.page-service #ecommerce .main-slider .slider-main-area .text-contents-main .description .btn,
  body.page-service #cosmetics .main-slider .slider-main-area .text-contents-main .description .btn {
    margin-top: 7.1794871795vw
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .btn-area,
  body.style-service #cosmetics .main-slider .slider-main-area .btn-area,
  body.page-service #ecommerce .main-slider .slider-main-area .btn-area,
  body.page-service #cosmetics .main-slider .slider-main-area .btn-area {
    margin-top: 6.4102564103vw
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .image-area,
body.style-service #cosmetics .main-slider .slider-main-area .image-area,
body.page-service #ecommerce .main-slider .slider-main-area .image-area,
body.page-service #cosmetics .main-slider .slider-main-area .image-area {
  height: 20.1388888889vw;
  width: 30.2083333333vw;
  background: var(--theme-color-white)
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-main-area .image-area,
  body.style-service #cosmetics .main-slider .slider-main-area .image-area,
  body.page-service #ecommerce .main-slider .slider-main-area .image-area,
  body.page-service #cosmetics .main-slider .slider-main-area .image-area {
    height: 46.4102564103vw;
    width: 100%
  }
}

body.style-service #ecommerce .main-slider .slider-main-area .image-area figure,
body.style-service #cosmetics .main-slider .slider-main-area .image-area figure,
body.page-service #ecommerce .main-slider .slider-main-area .image-area figure,
body.page-service #cosmetics .main-slider .slider-main-area .image-area figure {
  height: 100%
}

body.style-service #ecommerce .main-slider .slider-main-area .image-area figure img,
body.style-service #cosmetics .main-slider .slider-main-area .image-area figure img,
body.page-service #ecommerce .main-slider .slider-main-area .image-area figure img,
body.page-service #cosmetics .main-slider .slider-main-area .image-area figure img {
  object-fit: contain;
  height: 100%;
  width: 100%
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-control-navi,
  body.style-service #cosmetics .main-slider .slider-control-navi,
  body.page-service #ecommerce .main-slider .slider-control-navi,
  body.page-service #cosmetics .main-slider .slider-control-navi {
    display: flex;
    justify-content: center;
    top: auto;
    bottom: 16.4102564103vw;
    margin-inline: 8.4615384615vw
  }

  body.style-service #ecommerce .main-slider .slider-control-navi .btn,
  body.style-service #cosmetics .main-slider .slider-control-navi .btn,
  body.page-service #ecommerce .main-slider .slider-control-navi .btn,
  body.page-service #cosmetics .main-slider .slider-control-navi .btn {
    --circle-size: 8.2051282051vw;
    position: relative;
    inset: auto;
    margin: 0
  }
}

@media screen and (min-width: 769px) {

  body.style-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets,
  body.style-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets,
  body.page-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets,
  body.page-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets {
    display: none
  }
}

@media screen and (max-width: 768.98px) {

  body.style-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets,
  body.style-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets,
  body.page-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets,
  body.page-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets {
    min-width: 41.0256410256vw
  }
}

body.style-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet,
body.style-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet,
body.page-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet,
body.page-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet {
  --circle-size: 1.5384615385vw;
  background: var(--theme-color-white)
}

body.style-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
body.style-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
body.page-service #ecommerce .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
body.page-service #cosmetics .main-slider .slider-control-navi .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--theme-color-black)
}

:root:lang(en) {
  --theme-form-optional-text: "Optional";
  --theme-form-required-text: "Required"
}

body.lang-en section .sec-title {
  letter-spacing: 0
}

body.lang-en #site-header .header-menu .sub-navigation .nav-menu .menu-item.recruit a {
  width: 12rem
}

body.lang-en #footer-link-box .link-item .item-inner .text-area .item-subtitle {
  display: none
}

body.lang-en.home #mainvisual .text-area .title-area .text-1 img {
  width: 39.375vw
}

@media screen and (max-width: 768.98px) {
  body.lang-en.home #mainvisual .text-area .title-area .text-1 img {
    width: 89.7435897436vw
  }
}

body.lang-en.home #mainvisual .text-area .title-area .text-2 img {
  width: 29.2361111111vw
}

@media screen and (max-width: 768.98px) {
  body.lang-en.home #mainvisual .text-area .title-area .text-2 img {
    width: 66.6666666667vw
  }
}

body.lang-en.page-about-en #about .sec-gray-text,
body.lang-en.page-about #about .sec-gray-text {
  display: none
}

@media screen and (max-width: 768.98px) {

  body.lang-en.page-about-en #about .sec-title,
  body.lang-en.page-about #about .sec-title {
    letter-spacing: 0
  }
}

@media screen and (min-width: 769px) {

  body.lang-en.page-company-en #company .title-area .btn-area .btn,
  body.lang-en.page-company #company .title-area .btn-area .btn {
    width: 15.3333333333rem
  }
}

body.lang-en.page-service-en .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
body.lang-en.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
body.lang-en.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title {
  display: flex;
  align-items: center;
  min-height: 1.8em
}

@media screen and (max-width: 768.98px) {

  body.lang-en.page-service-en .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
  body.lang-en.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
  body.lang-en.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title {
    min-height: 2em
  }
}

body.lang-en.page-service-en .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle,
body.lang-en.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle,
body.lang-en.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle {
  display: none
}

body.lang-en.page-service-en .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title,
body.lang-en.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title,
body.lang-en.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 1.7em
}

body.lang-en.page-service-en .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle,
body.lang-en.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle,
body.lang-en.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle {
  display: none
}

body.lang-en.page-recruit-en #fv .main-contents .sec-title,
body.lang-en.page-recruit #fv .main-contents .sec-title,
body.lang-en.style-recruit #fv .main-contents .sec-title {
  font-size: 5.2777777778vw
}

@media screen and (max-width: 768.98px) {

  body.lang-en.page-recruit-en #fv .main-contents .sec-title,
  body.lang-en.page-recruit #fv .main-contents .sec-title,
  body.lang-en.style-recruit #fv .main-contents .sec-title {
    font-size: 10vw
  }
}

:root:lang(cn),
:root:lang(zh) {
  --theme-form-optional-text: "选填";
  --theme-form-required-text: "必填"
}

body.lang-cn.home #mainvisual .text-area .title-area .text-1 img {
  width: 13.1944444444vw
}

@media screen and (max-width: 768.98px) {
  body.lang-cn.home #mainvisual .text-area .title-area .text-1 img {
    width: 31.7948717949vw
  }
}

body.lang-cn.home #mainvisual .text-area .title-area .text-2 img {
  width: 37.3611111111vw
}

@media screen and (max-width: 768.98px) {
  body.lang-cn.home #mainvisual .text-area .title-area .text-2 img {
    width: 89.7435897436vw
  }
}

body.lang-cn.page-about-cn #about .text-area .sec-gray-text,
body.lang-cn.page-about #about .text-area .sec-gray-text,
body.lang-cn.style-about #about .text-area .sec-gray-text {
  bottom: auto
}

@media screen and (min-width: 769px) {

  body.lang-cn.page-about-cn #about .text-area .sec-gray-text,
  body.lang-cn.page-about #about .text-area .sec-gray-text,
  body.lang-cn.style-about #about .text-area .sec-gray-text {
    top: 4.8rem;
    left: 11.1333333333rem
  }
}

@media screen and (max-width: 768.98px) {

  body.lang-cn.page-about-cn #about .text-area .sec-gray-text,
  body.lang-cn.page-about #about .text-area .sec-gray-text,
  body.lang-cn.style-about #about .text-area .sec-gray-text {
    top: 3.8571428571rem;
    left: 7rem
  }
}

body.lang-cn.page-service-cn .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
body.lang-cn.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
body.lang-cn.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title {
  display: flex;
  align-items: center;
  min-height: 1.8em
}

@media screen and (max-width: 768.98px) {

  body.lang-cn.page-service-cn .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
  body.lang-cn.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title,
  body.lang-cn.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-title {
    min-height: 2em
  }
}

body.lang-cn.page-service-cn .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle,
body.lang-cn.page-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle,
body.lang-cn.style-service .main-slider .slider-main-area .swiper-slide .slider-contents .slider-contents-main .tab-title-area .item-subtitle {
  display: none
}

body.lang-cn.page-service-cn .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title,
body.lang-cn.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title,
body.lang-cn.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-title {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 1.7em
}

body.lang-cn.page-service-cn .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle,
body.lang-cn.page-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle,
body.lang-cn.style-service .main-slider .slider-thum-navi .slider-thum-navi-main .swiper-thumbs-navi .swiper-slide .item-inner .text-area .item-subtitle {
  display: none
}

@font-face {
  font-family: swiper-icons;
  src: url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);
  font-weight: 400;
  font-style: normal
}

:root {
  --swiper-theme-color: #007aff
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1
}

.swiper-vertical>.swiper-wrapper {
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translateZ(0)
}

.swiper-pointer-events {
  touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-3d .swiper-slide-shadow {
  background: #00000026
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, #00000080, #0000)
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
  scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
  scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper:before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
