@charset "UTF-8";
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
html {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
caption,
td,
th {
  font-weight: inherit;
  text-align: left;
  vertical-align: middle;
}
blockquote,
q {
  quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}
a img {
  border: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
button {
  -webkit-appearance: none;
  appearance: none;
  background: 0;
  border: 0;
  margin: 0;
  outline: none;
  padding: 0;
}
html {
  box-sizing: border-box;
  font-size: 62.5%;
}
*,
:after,
:before {
  box-sizing: inherit;
}
img {
  box-sizing: content-box;
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}
a {
  transition-duration: 0.5s;
}
b,
strong {
  font-weight: 700;
}
sup {
  font-size: 0.7em;
  vertical-align: super;
}
table {
  max-width: 100%;
  width: 100%;
}
table p:not([class], :last-child) {
  margin-bottom: 1em;
}
td,
th {
  word-wrap: break-word;
  min-height: 1em;
  word-break: break-all;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #c1c1c1;
}
input::placeholder,
textarea::placeholder {
  color: #c1c1c1;
}
[type="email"],
[type="password"],
[type="search"],
[type="tel"],
[type="text"],
[type="url"],
button,
select,
textarea {
  background: 0;
  border: 0;
  outline: none;
}
[type="checkbox"],
[type="radio"],
[type="submit"],
a,
area,
button,
label,
select {
  cursor: pointer;
}
.body-in {
  overflow-x: hidden;
}
.anime {
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}
.anime:not(.key) {
  transition-duration: 0.5s;
}
.anime.quick {
  animation-duration: 0s;
  transition-duration: 0s;
}
.anime.flip-x {
  transform: rotateX(90deg);
}
.anime.flip-y {
  transform: rotateY(90deg);
}
.anime.zoom-in {
  transform: scale(0);
}
.anime.top-in {
  transform: translateY(-50px);
  transform-origin: 0 0;
}
.anime.bottom-in {
  transform: translateY(50px);
}
.anime.left-in {
  transform: translateX(-50px);
}
.anime.right-in {
  transform: translateX(50px);
}
@keyframes transform-purge {
  to {
    opacity: 1;
    transform: none;
  }
}
.anime.bottom-in,
.anime.fade-in,
.anime.flip-x,
.anime.flip-y,
.anime.left-in,
.anime.right-in,
.anime.top-in,
.anime.zoom-in {
  opacity: 0;
  transition-property: opacity, transform;
}
.anime.active .anime.bottom-in.chain:not(.key),
.anime.active .anime.fade-in.chain:not(.key),
.anime.active .anime.flip-x.chain:not(.key),
.anime.active .anime.flip-y.chain:not(.key),
.anime.active .anime.left-in.chain:not(.key),
.anime.active .anime.right-in.chain:not(.key),
.anime.active .anime.top-in.chain:not(.key),
.anime.active .anime.zoom-in.chain:not(.key),
.anime.bottom-in.active:not(.key),
.anime.bottom-in.lock:not(.key),
.anime.fade-in.active:not(.key),
.anime.fade-in.lock:not(.key),
.anime.flip-x.active:not(.key),
.anime.flip-x.lock:not(.key),
.anime.flip-y.active:not(.key),
.anime.flip-y.lock:not(.key),
.anime.left-in.active:not(.key),
.anime.left-in.lock:not(.key),
.anime.right-in.active:not(.key),
.anime.right-in.lock:not(.key),
.anime.top-in.active:not(.key),
.anime.top-in.lock:not(.key),
.anime.zoom-in.active:not(.key),
.anime.zoom-in.lock:not(.key),
.swiper-slide-active .anime.bottom-in:not(.key),
.swiper-slide-active .anime.fade-in:not(.key),
.swiper-slide-active .anime.flip-x:not(.key),
.swiper-slide-active .anime.flip-y:not(.key),
.swiper-slide-active .anime.left-in:not(.key),
.swiper-slide-active .anime.right-in:not(.key),
.swiper-slide-active .anime.top-in:not(.key),
.swiper-slide-active .anime.zoom-in:not(.key) {
  opacity: 1;
  transform: none;
}
.anime.active .anime.bottom-in.chain.key,
.anime.active .anime.fade-in.chain.key,
.anime.active .anime.flip-x.chain.key,
.anime.active .anime.flip-y.chain.key,
.anime.active .anime.left-in.chain.key,
.anime.active .anime.right-in.chain.key,
.anime.active .anime.top-in.chain.key,
.anime.active .anime.zoom-in.chain.key,
.anime.bottom-in.active.key,
.anime.bottom-in.lock.key,
.anime.fade-in.active.key,
.anime.fade-in.lock.key,
.anime.flip-x.active.key,
.anime.flip-x.lock.key,
.anime.flip-y.active.key,
.anime.flip-y.lock.key,
.anime.left-in.active.key,
.anime.left-in.lock.key,
.anime.right-in.active.key,
.anime.right-in.lock.key,
.anime.top-in.active.key,
.anime.top-in.lock.key,
.anime.zoom-in.active.key,
.anime.zoom-in.lock.key,
.swiper-slide-active .anime.bottom-in.key,
.swiper-slide-active .anime.fade-in.key,
.swiper-slide-active .anime.flip-x.key,
.swiper-slide-active .anime.flip-y.key,
.swiper-slide-active .anime.left-in.key,
.swiper-slide-active .anime.right-in.key,
.swiper-slide-active .anime.top-in.key,
.swiper-slide-active .anime.zoom-in.key {
  animation-name: transform-purge;
}
@keyframes expand-x {
  to {
    max-width: 100%;
    opacity: 1;
    white-space: normal;
  }
}
@keyframes expand-y {
  to {
    max-height: 100%;
    white-space: normal;
  }
}
.anime.expand-x {
  max-width: 0;
}
.anime.active .anime.expand-x.chain:not(.key),
.anime.expand-x.active:not(.key),
.anime.expand-x.lock:not(.key),
.swiper-slide-active .anime.expand-x:not(.key) {
  max-width: 100%;
  white-space: normal;
}
.anime.active .anime.expand-x.chain.key,
.anime.expand-x.active.key,
.anime.expand-x.lock.key,
.swiper-slide-active .anime.expand-x.key {
  animation-name: expand-x;
}
.anime.expand-y {
  max-height: 0;
}
.anime.active .anime.expand-y.chain:not(.key),
.anime.expand-y.active:not(.key),
.anime.expand-y.lock:not(.key),
.swiper-slide-active .anime.expand-y:not(.key) {
  max-height: 100%;
  white-space: normal;
}
.anime.active .anime.expand-y.chain.key,
.anime.expand-y.active.key,
.anime.expand-y.lock.key,
.swiper-slide-active .anime.expand-y.key {
  animation-name: expand-y;
}
.anime.expand-x,
.anime.expand-y {
  overflow: hidden;
  white-space: nowrap;
}
@keyframes focus-in {
  to {
    filter: blur(0);
    opacity: 1;
  }
}
.anime.blur {
  opacity: 0;
}
.anime.active .anime.blur.chain:not(.key),
.anime.blur.active:not(.key),
.anime.blur.lock:not(.key),
.swiper-slide-active .anime.blur:not(.key) {
  opacity: 1;
}
.anime.active .anime.blur.chain.key,
.anime.blur.active.key,
.anime.blur.lock.key,
.swiper-slide-active .anime.blur.key {
  animation-name: transform-purge;
}
@supports (filter: blur(12px)) {
  .anime.blur {
    filter: blur(12px);
  }
  .anime.active .anime.blur.chain:not(.key),
  .anime.blur.active:not(.key),
  .anime.blur.lock:not(.key),
  .swiper-slide-active .anime.blur:not(.key) {
    filter: blur(0);
  }
  .anime.active .anime.blur.chain.key,
  .anime.blur.active.key,
  .anime.blur.lock.key,
  .swiper-slide-active .anime.blur.key {
    animation-name: focus-in;
  }
}
body .didact,
button.didact,
input.didact,
select.didact,
textarea.didact {
  font-family:
    Didact Gothic,
    游ゴシック Medium,
    Yu Gothic Medium,
    游ゴシック体,
    YuGothic,
    Hiragino Kaku Gothic ProN,
    メイリオ,
    Meiryo,
    sans-serif;
}
.o-list > li,
.u-list > li {
  margin: 0 0 0 2%;
  width: 98%;
}
.u-list > li {
  list-style-type: disc;
}
.o-list > li {
  list-style-type: decimal;
}
.flex {
  display: flex;
}
.flex.bet,
.pc-flex.bet,
.sp-flex.bet {
  justify-content: space-between;
}
.flex.aro,
.pc-flex.aro,
.sp-flex.aro {
  justify-content: space-around;
}
.flex.vstart,
.pc-flex.vstart,
.sp-flex.vstart {
  align-items: flex-start;
}
.flex.vend,
.pc-flex.vend,
.sp-flex.vend {
  align-items: flex-end;
}
.flex.vcenter,
.pc-flex.vcenter,
.sp-flex.vcenter {
  align-items: center;
}
.flex.hstart,
.pc-flex.hstart,
.sp-flex.hstart {
  justify-content: flex-start;
}
.flex.hcenter,
.pc-flex.hcenter,
.sp-flex.hcenter {
  justify-content: center;
}
.flex.hend,
.pc-flex.hend,
.sp-flex.hend {
  justify-content: flex-end;
}
.flex.str,
.pc-flex.str,
.sp-flex.str {
  align-items: stretch;
}
.flex.vert,
.pc-flex.vert,
.sp-flex.vert {
  flex-direction: column;
}
.flex.break,
.pc-flex.break,
.sp-flex.break {
  flex-wrap: wrap;
}
.youtube-wrap {
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}
.youtube-wrap iframe {
  height: 100% !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 100% !important;
}
.youtubeCrop {
  overflow: hidden;
  padding-bottom: 56%;
  position: relative;
  z-index: 1;
}
.youtubeCrop__img {
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}
.grayscale {
  filter: grayscale(100%);
}
.activeToggle.active .activeToggle__off,
.activeToggle:not(.active) .activeToggle__on {
  display: none;
}
body.lock {
  overflow: hidden;
}
.serif {
  font-family:
    "Noto Serif JP",
    Yu Mincho,
    YuMincho,
    Hiragino Mincho ProN,
    "NotoSerifCJKjp",
    HGS明朝E,
    HG明朝E,
    serif;
}
.is-none {
  display: none !important;
}
.js-hide {
  display: none;
}
.ta-center {
  text-align: center;
}
.ta-right {
  text-align: right;
}
.ta-left {
  text-align: left;
}
.fw-700 {
  font-weight: 700;
}
.fw-900 {
  font-weight: 900;
}
.fz-e7 {
  font-size: 0.7em;
}
.fz-e8 {
  font-size: 0.8em;
}
.fz-e9 {
  font-size: 0.9em;
}
.is-false {
  pointer-events: none;
}
.is-screenReader {
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.wp-post h2 {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1em;
}
.wp-post h3 {
  font-size: 2rem;
}
.wp-post h3,
.wp-post h4,
.wp-post h5 {
  font-weight: 700;
  line-height: 2;
  margin-bottom: 0.5em;
}
.wp-post h4,
.wp-post h5 {
  font-size: 1.8rem;
}
.wp-post div + h2,
.wp-post div + h3,
.wp-post div + h4,
.wp-post div + h5,
.wp-post p + h2,
.wp-post p + h3,
.wp-post p + h4,
.wp-post p + h5 {
  margin-top: 5rem;
}
.wp-post p,
.wp-post > div {
  line-height: 1.8;
  margin: 0.8em 0 1.5em;
}
.wp-post p:last-child,
.wp-post > div:last-child {
  margin-bottom: 0;
}
.wp-post b,
.wp-post strong {
  font-weight: 700;
}
.wp-post em {
  font-style: italic;
}
.wp-post table {
  border-left: 1px solid #b9beb3;
  border-top: 1px solid #b9beb3;
  margin: 2rem auto;
}
.wp-post table td,
.wp-post table th {
  border-bottom: 1px solid #b9beb3;
  border-left: 0;
  border-right: 1px solid #b9beb3;
  border-top: 0;
  padding: 1rem;
  text-align: center;
}
.wp-post table th {
  background: #eff3f1;
}
.wp-post .aligncenter {
  display: block;
  margin: 0 auto;
}
.wp-post .alignright {
  float: right;
  padding-left: 3em !important;
  padding-right: 0 !important;
}
.wp-post .alignleft {
  float: left;
  padding-left: 0 !important;
  padding-right: 3em !important;
}
.wp-post .wp-caption {
  border: 2px solid #cfcfcf;
  border-radius: 5px;
  max-width: 100% !important;
  padding: 0.5em;
}
.wp-post .wp-caption .wp-caption-text {
  text-align: center;
}
.wp-post ol,
.wp-post ul {
  margin: 0 0 0 3rem;
}
.wp-post ol li,
.wp-post ul li {
  margin: 0 0 0.5em;
}
.wp-post ul li {
  list-style-type: disc;
}
.wp-post ol li {
  list-style-type: decimal;
}
.wp-post img[class*="attachment-"],
.wp-post img[class*="wp-image-"] {
  height: auto;
  max-width: 100%;
}
.wp-post img.alignleft,
.wp-post img.alignright {
  padding: 0 1em 2em;
}
.wp-post blockquote {
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px;
  background: rgba(0, 0, 0, 0.1);
  display: block;
  padding: 0.5rem;
}
.wp-post blockquote p {
  margin-top: 0;
}
body.mceContentBody {
  font-family:
    游ゴシック Medium,
    Yu Gothic Medium,
    游ゴシック体,
    YuGothic,
    Hiragino Kaku Gothic ProN,
    メイリオ,
    Meiryo,
    sans-serif;
}
.visual-editor {
  background: #fff;
}
.visual-editor div,
.visual-editor p {
  border: 1px dashed #dadada;
  display: block;
  line-height: 1.5;
  margin: 0.8em 0;
}
.mw_wp_form:not(.mw_wp_form_confirm) .conf-content,
.mw_wp_form:not(.mw_wp_form_input) .input-content {
  display: none !important;
}
@font-face {
  font-family: swiper-icons;
  font-style: normal;
  font-weight: 400;
  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")
    format("woff");
}
:root {
  --swiper-theme-color: #007aff;
}
:host {
  display: block;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}
.swiper {
  display: block;
  list-style: none;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  padding: 0;
  position: relative;
  z-index: 1;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  box-sizing: content-box;
  display: flex;
  height: 100%;
  position: relative;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  width: 100%;
  z-index: 1;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translateZ(0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  display: block;
  flex-shrink: 0;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%;
}
.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 {
  backface-visibility: hidden;
  transform: translateZ(0);
}
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}
.swiper-css-mode > .swiper-wrapper {
  -ms-overflow-style: none;
  overflow: auto;
  scrollbar-width: none;
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  -ms-scroll-snap-type: none;
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper:before {
  height: var(--swiper-centered-offset-after);
  min-width: 1px;
  width: 100%;
}
.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 {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-lazy-preloader {
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top: 4px solid transparent;
  box-sizing: border-box;
  height: 42px;
  left: 50%;
  margin-left: -21px;
  margin-top: -21px;
  position: absolute;
  top: 50%;
  transform-origin: 50%;
  width: 42px;
  z-index: 10;
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s linear infinite;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
#luxy,
.luxy-el {
  will-change: transform;
}
.md-uline {
  position: relative;
  text-decoration: none;
}
.md-uline:before {
  background: #0251b6;
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  transform: rotateY(90deg);
  transform-origin: 50%;
  transition-duration: 0.5s;
  width: 100%;
  z-index: 5;
}
.md-uline.uline-block {
  display: block;
}
.md-uline.uline-left:before {
  transform-origin: 0;
}
.md-uline.uline-right:before {
  transform-origin: 100%;
}
.md-uline.active,
.md-uline:hover,
a.active .md-uline,
a:hover .md-uline {
  text-decoration: none;
}
.md-uline.active:before,
.md-uline:hover:before,
a.active .md-uline:before,
a:hover .md-uline:before {
  transform: rotateY(0deg);
}
.md-overlay {
  background: hsla(0, 0%, 100%, 0.5);
  cursor: pointer;
  height: 100%;
  position: fixed;
  right: 0;
  top: 0;
  transition-duration: 0.5s;
  width: 100%;
  z-index: 1000;
}
.md-overlay:not(.active) {
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}
.md-overlay--modal {
  z-index: 10000;
}
.md-overlay--ripple {
  border-radius: 50%;
  height: 300vh;
  transform: translate(50%, -50%);
  width: 300vh;
}
.md-overlay--ripple:not(.active) {
  height: 0;
  width: 0;
}
.md-overlay--shutter {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5) 50%, hsla(0, 0%, 100%, 0));
  height: 200vh;
}
.md-overlay--shutter:not(.active) {
  transform: translateY(-100%);
}
.md-loading {
  max-height: 60vh;
  min-height: 9rem;
  position: relative;
}
.md-loading:before {
  animation-duration: 0.5s;
  animation-iteration-count: infinite;
  animation-name: mdLoading;
  animation-timing-function: linear;
  border: 3px solid #0251b6;
  border-bottom-color: rgba(2, 81, 182, 0.5);
  border-radius: 50%;
  content: "";
  display: block;
  height: 4rem;
  left: 50%;
  margin: -2rem 0 0 -2rem;
  position: absolute;
  top: 50%;
  width: 4rem;
  z-index: 2;
}
.md-loading:not(.active) {
  opacity: 0;
  visibility: hidden;
}
@keyframes mdLoading {
  to {
    transform: rotate(1turn);
  }
}
.md-lay {
  display: inline-block;
  transform: perspective(0) translateZ(0);
  vertical-align: middle;
  z-index: 1;
}
.md-lay,
.md-lay .lay-bg {
  position: relative;
  transition-duration: 0.5s;
}
.md-lay .lay-bg {
  z-index: 2;
}
.md-lay .lay-bg img {
  vertical-align: middle;
  width: 100%;
}
.md-lay .lay-bg .on {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition-duration: 0.5s;
}
.md-lay .lay-bg .off {
  position: relative;
  transition-duration: 0.5s;
}
.md-lay:after,
.md-lay:before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transform: perspective(0) translateZ(0);
  transition-duration: 0.5s;
  width: 100%;
}
.md-lay:before {
  background: rgba(0, 0, 0, 0.5);
  z-index: 3;
}
.md-lay:after {
  z-index: 4;
}
.md-lay.zoom {
  overflow: hidden;
}
.md-lay.block,
.md-lay.over {
  display: block;
}
.md-lay.over .lay-bg img {
  margin-left: 50%;
  max-width: none;
  transform: translate(-50%);
  width: auto;
}
.md-lay.through {
  display: inline-block;
  overflow: visible;
}
.md-lay.through .lay-bg img {
  max-width: none;
  width: auto;
}
.md-lay.no-cover:after,
.md-lay.no-cover:before {
  display: none;
}
.md-lay .lay-content {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 5;
}
a.active .md-lay .lay-bg .on {
  opacity: 1;
}
a.active .md-lay .lay-bg .off {
  opacity: 0;
}
a.active .md-lay.zoom .lay-bg {
  transform: scale(1.05);
}
a.active .md-lay.bright:before {
  opacity: 1;
}
a.active .md-lay.border:after {
  box-shadow: inset 0 0 0 10px hsla(0, 0%, 100%, 0.5);
  opacity: 1;
}
@font-face {
  font-display: swap;
  font-family: iconfont;
  src:
    url(font/icon/iconfont.eot?95e9fbfb1a7d1c6ec4ba7648a10f0c4e?#iefix) format("embedded-opentype"),
    url(font/icon/iconfont.woff2?95e9fbfb1a7d1c6ec4ba7648a10f0c4e) format("woff2"),
    url(font/icon/iconfont.woff?95e9fbfb1a7d1c6ec4ba7648a10f0c4e) format("woff");
}
.iconfont,
i[class*="icon-"]:before {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: iconfont !important;
  font-style: normal;
  font-variant: normal;
  font-weight: 400 !important;
  text-decoration: none;
  text-transform: none;
}
i[class*="icon-"] {
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
}
i[class*="icon-"]:before {
  display: inline-block;
  vertical-align: bottom;
}
.icon-arrow:before {
  content: "\f101";
}
.icon-double-down:before {
  content: "\f102";
}
.icon-down:before {
  content: "\f103";
}
.icon-facebook:before {
  content: "\f104";
}
.icon-instagram:before {
  content: "\f105";
}
.icon-left:before {
  content: "\f106";
}
.icon-line:before {
  content: "\f107";
}
.icon-mail:before {
  content: "\f108";
}
.icon-right-arrow:before {
  content: "\f109";
}
.icon-right:before {
  content: "\f10a";
}
.icon-twitter:before {
  content: "\f10b";
}
.icon-up-arrow:before {
  content: "\f10c";
}
.icon-up:before {
  content: "\f10d";
}
.md-btn {
  align-items: center;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  overflow: hidden;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition-duration: 0.5s;
  vertical-align: middle;
  width: 100%;
  z-index: 1;
}
.md-btn.left-text {
  justify-content: flex-start;
  text-align: left;
}
.md-btn.mat {
  padding: 0;
}
.md-btn.mat a,
.md-btn.mat button,
.md-btn.mat input[type="button"],
.md-btn.mat input[type="submit"] {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  display: inline-flex;
  font-size: inherit;
  font-weight: inherit;
  height: 100%;
  justify-content: center;
  line-height: 1;
  outline: none;
  transition: color 0s;
  width: 100%;
}
.md-btn:before {
  background: none;
  content: "";
  display: inline-block;
  height: 100%;
  pointer-events: none;
  position: absolute;
  top: 0;
  transition-duration: 0.5s;
  width: 100%;
  z-index: -1;
}
.md-btn:not(.reverse):before {
  left: -100%;
}
.md-btn.reverse:before {
  right: -100%;
}
.md-btn.stay:before {
  display: none;
}
.md-btn .head-icon {
  margin-left: -1em;
  margin-right: 0.5em;
}
.md-btn .left-icon,
.md-btn .right-icon {
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: color 0s;
  z-index: 10;
}
.md-btn .right-icon {
  right: 0.8em;
  transition: right 0.5s;
}
.md-btn .left-icon {
  left: 0.8em;
  transition: left 0.5s;
}
.md-btn:hover,
a:hover .md-btn {
  text-decoration: none;
}
.md-btn:hover:not(.reverse):before,
a:hover .md-btn:not(.reverse):before {
  left: 0;
}
.md-btn:hover.reverse:before,
a:hover .md-btn.reverse:before {
  right: 0;
}
.md-btn:hover .right-icon:not(.stay),
a:hover .md-btn .right-icon:not(.stay) {
  right: 0.5em;
}
.md-btn:hover .left-icon:not(.stay),
a:hover .md-btn .left-icon:not(.stay) {
  left: 0.5em;
}
.md-btn.black {
  background-color: #000;
  border: 1px solid #000;
  color: #fff;
}
.md-btn.black:before,
.md-btn.black:hover,
a:hover .md-btn.black {
  background-color: #fff;
  color: #000;
}
.md-btn.disable {
  filter: grayscale(100%);
  opacity: 0.5;
  pointer-events: none;
}
.md-acc .acc-btn {
  cursor: pointer;
}
.md-acc .acc-check {
  display: none;
}
.md-acc .acc-body {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transform-origin: 0 0;
  transition-duration: 0.5s;
}
.md-acc .acc-body .acc-body:not(.active) {
  transition-duration: 0s;
}
.md-acc .acc-body:not(.active) .acc-on,
.md-acc .acc-check:not(:checked) ~ .acc-body .acc-on,
.md-acc .acc-check:not(:checked) ~ .acc-btn .acc-on {
  display: none;
}
.md-acc .acc-body.active,
.md-acc .acc-check:checked ~ .acc-body,
.md-acc .acc-check:checked ~ .acc-btn,
.md-acc .acc-check:checked ~ .acc-btn .acc-body {
  max-height: none;
  opacity: 1;
}
.md-acc .acc-body.active .acc-off,
.md-acc .acc-check:checked ~ .acc-body .acc-off,
.md-acc .acc-check:checked ~ .acc-btn .acc-body .acc-off,
.md-acc .acc-check:checked ~ .acc-btn .acc-off,
.sp-md-acc .acc-check {
  display: none;
}
body {
  width: 100%;
}
body,
button,
input,
select,
textarea {
  word-wrap: break-word;
  color: #333;
  font-family:
    游ゴシック Medium,
    Yu Gothic Medium,
    游ゴシック体,
    YuGothic,
    Hiragino Kaku Gothic ProN,
    メイリオ,
    Meiryo,
    sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
}
body {
  line-height: 1.8;
}
a {
  color: #0251b6;
  text-decoration: none;
}
p:not([class], :last-child) {
  margin-bottom: 1em;
}
::selection {
  background-color: #02469d;
  color: #fff;
}
.header {
  left: 0;
  position: fixed;
  top: 0;
  white-space: nowrap;
  width: 100%;
  z-index: 1001;
}
.header__contact {
  background: #fff;
  box-shadow: 0 1rem 2rem rgba(20, 20, 25, 0.05);
  padding: 0 1rem 0 4rem;
}
.header__contact + * .headerPad {
  height: 8rem;
}
.header__frame {
  margin: 1rem 2rem;
  padding: 0 1rem 0 4rem;
  transition: 0.5s;
}
.fixed .header__frame {
  background: #fff;
  border-radius: 4rem;
  box-shadow: 1rem 1rem 2rem rgba(51, 51, 51, 0.03);
}
.header__base {
  height: 8rem;
}
#luxy.menuOpen {
  filter: blur(5px);
}
.headerLogo {
  color: #333;
  font-size: 3rem;
}
.headerLogo__img {
  line-height: 1;
  width: 20rem;
}
.headerLogo__text {
  font-size: 1.8rem;
  margin-left: 2rem;
}
.headerNav__link {
  color: #333;
  font-size: 1.8rem;
  padding: 0 2.5rem;
  position: relative;
}
.headerNav__link .off,
.headerNav__link .on {
  transition: 0.3s;
}
.headerNav__link .off {
  position: relative;
}
.headerNav__link .on {
  font-size: 1.6rem;
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, calc(-50% + 1em));
  z-index: 2;
}
.headerNav__link:hover .off {
  opacity: 0;
  transform: translateY(-1em);
}
.headerNav__link:hover .on {
  opacity: 1;
  transform: translate(-50%, -50%);
}
.headerNav__btn {
  background: linear-gradient(90deg, #333, #364e57);
  border-radius: 2.5rem;
  color: #fff;
  font-size: 2.6rem;
  height: 5rem;
  letter-spacing: 0.03em;
  margin-left: 1rem;
  position: relative;
  width: 20rem;
}
.headerNav__btn:before,
.headerNav__btn:hover,
a:hover .headerNav__btn {
  background: linear-gradient(90deg, #b9b9b9, #789caa);
}
.headerPulldown__head {
  color: #fff;
  font-weight: 500;
  height: 8rem;
  line-height: 1;
  padding: 1rem 2.5rem;
  transition-duration: 0.2s;
}
.headerPulldown__head:not(a) {
  cursor: default;
}
.headerPulldown__body {
  background: red;
  left: 0;
  opacity: 0;
  padding: 3.5rem 0;
  position: absolute;
  top: 100%;
  transform: rotateX(90deg);
  transform-origin: 0 0;
  transition-duration: 0.3s;
  width: 100%;
  z-index: 2;
}
.headerPulldown:hover .headerPulldown__head:before {
  transform: none;
}
.headerPulldown:hover .headerPulldown__body {
  opacity: 1;
  transform: rotateX(0);
}
.gNavBtn {
  border: 0;
  cursor: pointer;
  display: inline-block;
  height: 4.2rem;
  position: relative;
  vertical-align: middle;
  width: 4.2rem;
}
.gNavBtn__box {
  border: 1px solid #333;
  border-radius: 50%;
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}
.gNavBtn__bar {
  background: #333;
  border-radius: 0;
  display: block;
  height: 1px;
  position: absolute;
  transform-origin: 50% 50%;
  transition-duration: 0.3s;
  width: calc(100% - 1.6rem);
  z-index: 2;
}
.gNavBtn__bar:first-of-type {
  left: 0.6rem;
  top: 1.6rem;
}
.gNavBtn__bar:nth-of-type(2) {
  left: 1rem;
  margin-top: -0.5px;
  top: 50%;
}
.gNavBtn__bar:nth-of-type(3) {
  bottom: 1.6rem;
  left: 0.6rem;
}
.gNavBtn.active .gNavBtn__box {
  border-color: #fff;
}
.gNavBtn.active .gNavBtn__bar {
  background: #fff;
}
.gNavBtn.active .gNavBtn__bar:first-of-type {
  left: 0.8rem;
  margin-top: -0.5px;
  top: 50%;
  transform: rotate(-45deg);
  transition:
    top 0.3s,
    margin 0.3s,
    transform 0.3s ease 0.3s;
}
.gNavBtn.active .gNavBtn__bar:nth-of-type(2) {
  opacity: 0;
  transform: rotateY(90deg);
}
.gNavBtn.active .gNavBtn__bar:nth-of-type(3) {
  bottom: 50%;
  left: 0.8rem;
  margin-bottom: -0.5px;
  transform: rotate(45deg);
  transition:
    bottom 0.3s,
    margin 0.3s,
    transform 0.3s ease 0.3s;
}
.gNav {
  background: linear-gradient(180deg, #65828d, #d7e1e2);
  border-radius: 0 0 5rem 5rem;
  left: 0;
  max-height: 100%;
  mix-blend-mode: multiply;
  overflow-y: auto;
  padding-top: 6rem;
  position: fixed;
  top: 0;
  transform-origin: 0 0;
  transition-duration: 0.5s;
  width: 100%;
  z-index: 1000;
}
.gNav:after {
  content: "";
  display: block;
  height: 0;
}
.gNav:not(.active) {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-100%);
  visibility: hidden;
}
.gNav__menu {
  margin: 2rem 0 0;
}
.gNav__item {
  color: #fff;
  font-size: 2rem;
  padding: 1rem 1.3rem;
  position: relative;
}
.gNav__icon {
  font-size: 1rem;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  transition-duration: 0.3s;
  z-index: 2;
}
.acc-check:checked ~ .acc-btn .gNav__icon {
  transform: translateY(-50%) rotate(180deg);
}
.gNav__contact {
  padding: 1.3rem 0 6rem;
  text-align: center;
}
.gNav__btn {
  background: linear-gradient(90deg, #333, #364e57);
  border-radius: 3rem;
  color: #fff;
  font-size: 2.6rem;
  height: 6rem;
  letter-spacing: 0.03em;
  width: 24rem;
}
.mouseStalker {
  background: url(../img/mail_cursor.png) no-repeat 50% / cover;
  border-radius: 50%;
  height: 12.6rem;
  left: -6.3rem;
  pointer-events: none;
  position: fixed;
  top: -6.3rem;
  transform: translate(0);
  width: 12.6rem;
  z-index: 2000;
}
.mouseStalker:not(.hover) {
  display: none;
}
.footerCta__link {
  color: #fff;
  height: 80rem;
  line-height: 1;
  position: relative;
  transition: 0.5s;
  width: 50%;
}
.footerCta__link--company {
  background: no-repeat 50% / cover;
  background-blend-mode: multiply, normal;
  background-image: linear-gradient(90deg, rgba(51, 51, 51, 0.9), rgba(101, 130, 141, 0.9)),
    url(../img/footer_cta_company_bg.png);
}
.footerCta__link--recruit {
  background: no-repeat 50% / cover;
  background-blend-mode: multiply, normal;
  background-image: linear-gradient(90deg, rgba(51, 51, 51, 0.9), rgba(101, 130, 141, 0.9)),
    url(../img/footer_cta_recruit_bg.png);
}
.footerCta__link--en {
  font-size: 8rem;
  letter-spacing: 0.04em;
}
.footerCta__link--ja {
  font-size: 2rem;
  margin: 2rem 0 0;
}
.footerCta__link:hover.footerCta__link--company {
  background-image: linear-gradient(90deg, hsla(0, 0%, 73%, 0.84), rgba(120, 156, 170, 0.84)),
    url(../img/footer_cta_company_bg.png);
}
.footerCta__link:hover.footerCta__link--recruit {
  background-image: linear-gradient(90deg, hsla(0, 0%, 73%, 0.84), rgba(120, 156, 170, 0.84)),
    url(../img/footer_cta_recruit_bg.png);
}
.footer__frame {
  padding: 7rem 0;
}
.footer__data--catchcopy {
  font-size: 1.6rem;
  line-height: 1.5;
}
.footer__data--name {
  color: #333;
  font-size: 6rem;
}
.footer__data--address {
  font-size: 1.6rem;
  line-height: 2;
  margin: 4rem 0 0;
}
.footer__contact {
  background:
    linear-gradient(90deg, rgba(51, 51, 51, 0.9), rgba(54, 78, 87, 0.9)) no-repeat 50% / cover,
    url(../img/footer_link_contact_bg.png) no-repeat 50% / cover;
  background-blend-mode: multiply, normal;
  color: #fff;
  font-size: 5rem;
  height: 20.6rem;
  letter-spacing: 0.04em;
  margin: 0 0 4rem;
  position: relative;
  width: 60rem;
}
.footer__contact:hover {
  background:
    linear-gradient(90deg, hsla(0, 0%, 73%, 0.9), rgba(120, 156, 170, 0.9)) no-repeat 50% / cover,
    url(../img/footer_link_contact_bg.png) no-repeat 50% / cover;
  cursor: none;
}
.footer__contact--icon {
  bottom: 1rem;
  height: 9.4rem;
  position: absolute;
  right: 4rem;
  width: 9.4rem;
}
.footer__contact .icon,
.footer__contact .outline {
  color: #333;
  position: absolute;
  transition: 0.2s;
}
.footer__contact .icon {
  align-items: center;
  display: flex;
  font-size: 4rem;
  height: 9.4rem;
  justify-content: center;
  width: 9.4rem;
}
.footer__contact .icon:before {
  margin-bottom: 0.8rem;
}
.footer__contact .icon {
  background: #fff;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
}
.footer__contact .outline {
  left: 0.6rem;
  padding-bottom: 8.2rem;
  top: 0.6rem;
  width: 8.2rem;
}
.footer__contact .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.footer__contact .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.footer__contact:hover .icon {
  color: #fff;
}
.footer__contact:hover .outline {
  transform: rotate(1turn);
}
.footer__policy {
  color: #333;
  display: inline-block;
  font-size: 1.6rem;
  margin: auto 0 0;
}
.footer__policy:hover {
  text-decoration: underline;
}
.footerCopy {
  border-top: 1px solid rgba(51, 51, 51, 0.3);
  font-size: 1.2rem;
  padding: 1rem 0 1.3rem;
}
.topHead {
  animation-duration: 0.8s;
  animation-fill-mode: both;
  opacity: 0;
  transition: transform 0.5s linear;
}
.topHead__en {
  font-size: 8rem;
  letter-spacing: 0.04em;
  line-height: 1.14;
}
.topHead__ja {
  font-size: 2rem;
  line-height: 4;
}
.topHead.active {
  animation-name: imageBlur;
  opacity: 1;
  transition: 0.5s;
}
@keyframes imageBlur {
  0% {
    filter: blur(15px);
  }
  to {
    filter: blur(0);
    opacity: 1;
  }
}
.topMore {
  align-items: center;
  color: #333;
  display: flex;
  font-size: 2.6rem;
  height: 9.4rem;
  justify-content: center;
  padding-right: 9.4rem;
  position: relative;
  width: 17.7rem;
}
.topMore .icon,
.topMore .outline,
.topMore .text {
  transition: 0.2s;
}
.topMore .text {
  margin-right: 1.5rem;
}
.topMore .icon {
  align-items: center;
  background: #fff;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 9.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 9.4rem;
}
.topMore .icon:before {
  margin-bottom: 0.8rem;
}
.topMore .outline {
  padding-bottom: 8.2rem;
  position: absolute;
  right: 0.6rem;
  width: 8.2rem;
}
.topMore .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.topMore .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.topMore:hover .text {
  transform: translateX(1rem);
}
.topMore:hover .icon:before {
  animation: arrow 0.2s;
}
.topMore:hover .outline {
  transform: rotate(1turn);
}
.topMv {
  height: 104.8rem;
  line-height: 1.1;
  position: relative;
}
.topMv__bg {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.topMv__bg .hide {
  opacity: 0;
  transition: 0.5s;
}
.topMv__bg:after {
  background: #f6f5f5;
  bottom: -1px;
  content: "";
  display: block;
  height: 1rem;
  left: 0;
  position: absolute;
  width: 100%;
}
.topMv__title {
  font-size: 19rem;
}
.topMv__desc {
  font-size: 5rem;
  letter-spacing: 0.08em;
}
.topNews__container {
  background: #c4cbce;
  border-radius: 1.5rem;
  padding: 4rem;
}
.topNews__head {
  border-right: 1px solid #b4b4b4;
  padding: 0 4.8rem 0 1rem;
}
.topNews__item {
  color: #333;
  padding: 0 6rem;
}
.topNews__item--category {
  background: #fff;
  border-radius: 0.5rem;
  font-size: 1.4rem;
  line-height: 1.1;
  margin-left: 2rem;
  padding: 0.7rem 1.4rem;
}
.topNews__item--title {
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  margin: 2rem 0 0;
  overflow: hidden;
}
.topService {
  padding: 20rem 0;
  position: relative;
}
.topService__bg {
  bottom: -20rem;
  position: absolute;
  right: 0;
  z-index: -1;
}
.topService__container {
  width: 82%;
}
.topService__subhead {
  font-size: 6rem;
  line-height: 1.5;
  margin: 6rem 0 0;
}
.topService__desc {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2;
  margin: 8rem 0 0;
}
.topService__more {
  margin: 7.4rem 0 0;
}
.topReason {
  padding: 16.5rem 0;
  position: relative;
  z-index: 1;
}
.topReason:before {
  background: linear-gradient(270deg, #364e57, #333);
  border-radius: 15rem 0 0 15rem;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 95.3%;
  z-index: -1;
}
.topReason__head--head {
  color: #fff;
  mix-blend-mode: difference;
}
.topReason__more {
  color: #fff;
}
.topReason__list {
  margin: 6rem 0 0;
}
.topReason__item {
  background: #fff;
  border-radius: 4rem;
  box-shadow:
    4rem 4rem 3rem hsla(0, 0%, 62%, 0.05),
    inset 2rem 2rem 2rem hsla(0, 0%, 73%, 0.05);
  color: #141419;
  padding: 5rem 4rem;
  width: calc(33.33333% - 2.66667rem);
}
.topReason__item--title {
  font-size: 3.6rem;
  text-align: center;
}
.topReason__item--subtitle {
  font-size: 2.2rem;
  font-weight: 300;
}
.topReason__item--icon {
  margin: 3rem 0 0;
}
.topReason__item--desc {
  font-size: 1.6rem;
  line-height: 2;
  margin: 4rem 0 0;
}
.topAchievement {
  padding: 22.8rem 0 21.5rem;
  position: relative;
  z-index: 1;
}
.topAchievement__bg {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.topAchievement__bg--video {
  height: 100%;
  width: auto;
}
.topAchievement__bg:after {
  background: #f6f5f5;
  bottom: -1px;
  content: "";
  display: block;
  height: 1rem;
  left: 0;
  position: absolute;
  width: 100%;
}
.topAchievement__logo {
  margin: 3rem 0 0;
}
.topAchievement__logo--item {
  border-radius: 1.5rem;
  box-shadow: 2rem 2rem 2rem rgba(51, 51, 51, 0.05);
  margin: 5rem 0 0;
  overflow: hidden;
  width: calc(33.33333% - 4rem);
}
.topAchievement__logo--item:not(:nth-child(3n + 1)) {
  margin-left: 4rem;
}
.topAchievement__case {
  margin: 8rem 0 0;
}
.topAchievement__caseItem {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 3rem 2rem rgba(51, 51, 51, 0.05);
  overflow: hidden;
  width: calc(50% - 2rem);
}
.topAchievement__caseItem--head {
  background: linear-gradient(90deg, #65828d, #333);
  color: #fff;
  font-size: 3rem;
  font-weight: 300;
  height: 7rem;
  padding: 0 3rem;
}
.topAchievement__caseItem--container {
  padding: 2rem 3rem 3.5rem;
}
.topAchievement__caseItem--img {
  width: 13rem;
}
.topAchievement__caseItem--data {
  padding-left: 2.9rem;
  width: calc(100% - 13rem);
}
.topAchievement__caseItem--spec {
  border-bottom: 1px solid #b4b4b4;
  padding-bottom: 1.9rem;
}
.topAchievement__caseItem--beforeafter {
  border-bottom: 1px solid #b4b4b4;
  font-weight: 300;
  line-height: 1.65;
  padding: 1.5rem 0;
}
.topAchievement__caseItem--text {
  font-weight: 300;
  line-height: 1.75;
  margin: 2rem 0 0;
  width: 100%;
}
.topConsultant {
  padding: 14rem 0;
}
.topConsultant__body {
  margin: 9.6rem 0 0;
  overflow: hidden;
  width: 100%;
}
.topConsultant__list {
  transition-timing-function: linear;
}
.topConsultant__item {
  margin: 5rem 0 0;
  overflow: hidden;
  padding: 3rem 3rem 16rem 0;
  width: 28rem;
}
.topConsultant__item--link {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #333;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.topConsultant__item--link:hover .icon {
  animation: arrow 0.2s;
}
.topConsultant__item--link:hover .outline {
  transform: rotate(1turn);
}
.topConsultant__item--img {
  border-radius: 1.5rem 1.5rem 0 0;
  flex: none;
  height: 28rem;
  overflow: hidden;
}
.topConsultant__item--img img {
  width: 100%;
}
.topConsultant__item--text {
  flex: auto;
  padding: 2rem;
}
.topConsultant__item--post {
  font-size: 1.6rem;
}
.topConsultant__item--post.blank {
  height: 2.88rem;
}
.topConsultant__item--name {
  font-size: 2.2rem;
}
.topConsultant__item--name .en {
  color: #b4b4b4;
  font-size: 1.6rem;
}
.topConsultant__item--arrow {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  display: flex;
  height: 7.4rem;
  justify-content: center;
  position: relative;
  width: 7.4rem;
}
.topConsultant__item--arrow .icon,
.topConsultant__item--arrow .outline {
  transition: 0.2s;
}
.topConsultant__item--arrow .icon {
  align-items: center;
  color: #333;
  display: flex;
  height: 7.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 7.4rem;
}
.topConsultant__item--arrow .icon:before {
  margin-bottom: 0.8rem;
}
.topConsultant__item--arrow .outline {
  padding-bottom: 6.4rem;
  position: absolute;
  right: 0.6rem;
  width: 6.4rem;
}
.topConsultant__item--arrow .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.topConsultant__item--arrow .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.topColumn {
  padding: 23rem 0;
}
.topColumn__body {
  margin: 8rem 0 0;
}
.topColumn__item {
  width: calc(33.33333% - 2.66667rem);
}
.topColumn__item:not(:first-child) {
  margin-left: 4rem;
}
.topColumn__item--link {
  color: #333;
  display: block;
}
.topColumn__item--img {
  border-radius: 1.5rem;
  overflow: hidden;
}
.topColumn__item--date {
  font-size: 1.6rem;
  margin: 1.2rem 0 0;
}
.topColumn__item--title {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  font-size: 2rem;
  line-height: 1.6;
  overflow: hidden;
}
.topColumn__item--term {
  color: #65828d;
  font-size: 1.6rem;
  font-weight: 300;
  margin: 1.5rem 2rem 0 0;
}
.service {
  padding: 20rem 0;
}
.service__head--en {
  font-size: 5rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.service__head--ja {
  border-left: 1px solid #cfcfcf;
  font-size: 3rem;
  margin-left: 2rem;
  padding-left: 2rem;
}
.service__sec {
  padding: 8rem 0;
}
.serviceNav__item {
  margin-right: 5rem;
}
.serviceNav__link {
  color: #333;
  font-size: 2.2rem;
}
.serviceNav__link .icon {
  font-size: 1.6rem;
  margin-left: 1rem;
  transform: rotate(180deg);
}
.serviceAbout__problem {
  position: relative;
  z-index: 1;
}
.serviceAbout__problem--head {
  background: linear-gradient(90deg, #488faa, #65828d);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 5rem;
  line-height: 1;
  margin: 6rem 0 0;
}
.serviceAbout__problem--list {
  margin: 5rem 0 0;
  padding: 8rem 0 6.5rem 29.7rem;
}
.serviceAbout__problem--item {
  font-size: 1.4rem;
  line-height: 2;
  position: relative;
  text-align: center;
}
.serviceAbout__problem--item:before {
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.serviceAbout__problem--item:first-child {
  width: 9.8rem;
}
.serviceAbout__problem--item:first-child:before {
  background:
    url(../img/service_about_problem_baloon_top_01.png) no-repeat 100% 0/80% auto,
    url(../img/service_about_problem_baloon_bottom_01.png) no-repeat 0 100%/80% auto;
  height: 221.62%;
  top: 60%;
  width: 191.36%;
}
.serviceAbout__problem--item:nth-child(2) {
  margin-top: 18rem;
  width: 9.6rem;
}
.serviceAbout__problem--item:nth-child(2):before {
  background:
    url(../img/service_about_problem_baloon_top_04.png) no-repeat 100% 0 / auto,
    url(../img/service_about_problem_baloon_bottom_04.png) no-repeat 0 100% / auto;
  height: 300%;
  width: 218.75%;
}
.serviceAbout__problem--item:nth-child(3) {
  margin-top: 1rem;
  width: 19.2rem;
}
.serviceAbout__problem--item:nth-child(3):before {
  background:
    url(../img/service_about_problem_baloon_top_02.png) no-repeat top/87.3% auto,
    url(../img/service_about_problem_baloon_bottom_02.png) no-repeat 0 100%/80% auto;
  height: 272.73%;
  width: 133.85%;
}
.serviceAbout__problem--item:nth-child(4) {
  margin-top: 18rem;
  width: 14rem;
}
.serviceAbout__problem--item:nth-child(4):before {
  background:
    url(../img/service_about_problem_baloon_top_01.png) no-repeat 100% 0/68.26% auto,
    url(../img/service_about_problem_baloon_bottom_01.png) no-repeat 0 100%/74.85% auto;
  height: 264.28%;
  width: 128.46%;
}
.serviceAbout__problem--item:nth-child(5) {
  width: 17.4rem;
}
.serviceAbout__problem--item:nth-child(5):before {
  background:
    url(../img/service_about_problem_baloon_top_03.png) no-repeat 100% 0 / auto,
    url(../img/service_about_problem_baloon_bottom_03.png) no-repeat 0 100% / auto;
  height: 369.64%;
  width: 141.38%;
}
.serviceAbout__problem--item:nth-child(6) {
  margin-top: 13.5rem;
  width: 16rem;
}
.serviceAbout__problem--item:nth-child(6):before {
  background:
    url(../img/service_about_problem_baloon_top_04.png) no-repeat 100% 0/55% auto,
    url(../img/service_about_problem_baloon_bottom_04.png) no-repeat 0 100%/32.32% auto;
  height: 246.43%;
  width: 163.75%;
}
.serviceAbout__problem--img {
  bottom: 0;
  position: absolute;
  right: 0;
  z-index: -1;
}
.serviceAbout__support {
  padding-bottom: 8rem;
  position: relative;
  z-index: 1;
}
.serviceAbout__support--head {
  font-size: 5rem;
  line-height: 1.5;
  margin: 8rem 0 0;
}
.serviceAbout__support--note {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}
.serviceAbout__support--container {
  margin: 6rem 0 0;
}
.serviceAbout__support--text {
  max-width: 80rem;
}
.serviceAbout__support--desc {
  font-size: 1.6rem;
  line-height: 2;
}
.serviceAbout__support--link {
  color: #333;
  font-size: 2.2rem;
  height: 9.4rem;
  justify-content: flex-end;
  margin: 6rem 0 0;
  padding-right: 9.4rem;
  position: relative;
}
.serviceAbout__support--link .icon,
.serviceAbout__support--link .outline,
.serviceAbout__support--link .text {
  transition: 0.2s;
}
.serviceAbout__support--link .text {
  margin-right: 2rem;
}
.serviceAbout__support--link .icon {
  align-items: center;
  background: #fff;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 9.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 9.4rem;
}
.serviceAbout__support--link .icon:before {
  margin-bottom: 0.8rem;
}
.serviceAbout__support--link .outline {
  padding-bottom: 8.2rem;
  position: absolute;
  right: 0.6rem;
  width: 8.2rem;
}
.serviceAbout__support--link .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.serviceAbout__support--link .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.serviceAbout__support--link:hover .text {
  transform: translateX(1rem);
}
.serviceAbout__support--link:hover .icon:before {
  animation: arrow 0.2s;
}
.serviceAbout__support--link:hover .outline {
  transform: rotate(1turn);
}
.serviceAbout__support--img {
  bottom: 0;
  position: absolute;
  right: 0;
  z-index: -1;
}
.serviceFlow__list {
  margin: 6rem 0 0;
}
.serviceFlow__item {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 2rem 2rem 2rem rgba(51, 51, 51, 0.05);
  margin-right: 4.2rem;
  max-width: 34rem;
  padding: 2rem;
  position: relative;
  width: calc(25% - 3.15rem);
}
.serviceFlow__item:after {
  border-color: transparent transparent transparent #65828d;
  border-style: solid;
  border-width: 1.5rem 1.8rem;
  content: "";
  display: block;
  left: calc(100% + 1.2rem);
  position: absolute;
  top: calc(50% - 1.5rem);
}
.serviceFlow__item:last-child,
.serviceFlow__item:nth-child(4) {
  margin-right: 0;
}
.serviceFlow__item:last-child:after,
.serviceFlow__item:nth-child(4):after {
  content: none;
}
.serviceFlow__item:nth-child(n + 5) {
  margin-top: 9rem;
}
.serviceFlow__item--title {
  text-align: center;
}
.serviceFlow__item--num {
  background: linear-gradient(90deg, #488faa, #65828d);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 2rem;
  letter-spacing: 0.05em;
}
.serviceFlow__item--head {
  font-size: 2.2rem;
  line-height: 1.45;
}
.serviceFlow__item--img {
  height: 6rem;
  margin: 2rem 0 0;
}
.serviceFlow__item--desc {
  font-size: 1.4rem;
  line-height: 2;
  margin: 2rem 0 0;
}
.serviceFaq__faq {
  border-bottom: 1px solid #b4b4b4;
  margin: 6rem 0 0;
}
.serviceFaq__mark {
  font-size: 2.4rem;
  margin-right: 1.8rem;
}
.serviceFaq__Q {
  border-top: 1px solid #b4b4b4;
  cursor: pointer;
  font-size: 2rem;
  padding: 2.5rem 3rem 1rem 0;
  position: relative;
}
.serviceFaq__Q--text {
  margin-top: 0.5rem;
}
.serviceFaq__Q:after,
.serviceFaq__Q:before {
  background: #707070;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  right: 0;
  top: 4.3rem;
  transition: 0.5s;
  width: 2.7rem;
}
.serviceFaq__Q:after {
  transform: rotate(90deg);
}
.serviceFaq__Q.open {
  padding-bottom: 2rem;
}
.serviceFaq__Q.open:before {
  transform: rotate(45deg);
}
.serviceFaq__Q.open:after {
  transform: rotate(135deg);
}
.serviceFaq__A {
  font-size: 1.6rem;
  height: 0;
  line-height: 2;
  margin: 0 0 2rem;
  overflow: hidden;
  transition: height 0.5s;
}
.serviceFaq__A--text {
  margin-top: 0.75rem;
}
.serviceFaq__list {
  margin: 15rem 0 0;
}
.serviceFaq__item {
  width: calc(33.33333% - 2.66667rem);
}
.serviceFaq__arrow {
  align-items: center;
  color: #333;
  display: flex;
  font-size: 2.2rem;
  height: 7.4rem;
  justify-content: center;
  position: relative;
  width: 7.4rem;
}
.serviceFaq__arrow .icon,
.serviceFaq__arrow .outline {
  transition: 0.2s;
}
.serviceFaq__arrow .icon {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 100%;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 100%;
}
.serviceFaq__arrow .icon:before {
  margin-bottom: 0.8rem;
}
.serviceFaq__arrow .outline {
  padding-bottom: 6.4rem;
  position: absolute;
  right: 0.6rem;
  width: 6.4rem;
}
.serviceFaq__arrow .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.serviceFaq__arrow .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.serviceFaq__link {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #333;
  padding: 2rem 3rem 3rem;
}
.serviceFaq__link:hover .serviceFaq__arrow .outline {
  transform: rotate(1turn);
}
.serviceFaq__link:hover .serviceFaq__arrow .icon:before {
  animation: arrow 0.2s;
}
.serviceFaq__head {
  border-bottom: 1px solid #b4b4b4;
  font-size: 2.2rem;
  padding-bottom: 2rem;
}
.serviceFaq__body {
  margin: 2rem 0 0;
}
.serviceFaq__desc {
  font-size: 1.4rem;
  line-height: 2;
}
.recruit {
  padding: 20rem 0;
}
.recruit__container {
  position: relative;
}
.recruit__side {
  position: sticky;
  top: 16rem;
  width: 25%;
  z-index: 1;
}
.recruitSide__list {
  padding-left: 3rem;
}
.recruitSide__item {
  padding: 1.25rem 0;
}
.recruitSide__link {
  color: #333;
  font-size: 1.8rem;
}
.recruitSide__link .icon {
  font-size: 1.4rem;
  margin-left: 1rem;
  transform: rotate(180deg);
}
.recruitMain__sec:not(:first-child) {
  margin: 15rem auto 0;
}
.recruitMain__head--en {
  font-size: 5rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.recruitMain__head--en.ls0 {
  letter-spacing: 0;
}
.recruitMain__head--ja {
  border-left: 1px solid #cfcfcf;
  font-size: 3rem;
  margin-left: 2rem;
  padding-left: 2rem;
}
.recruitMessage__head {
  background: linear-gradient(90deg, #488faa, #65828d);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
.recruitMessage__sec {
  margin: 8rem 0 0;
}
.recruitMessage__sec:first-of-type {
  margin-top: 6rem;
}
.recruitMessage__sec:nth-child(2n) .recruitMessage__img {
  order: 1;
}
.recruitMessage__img {
  border-radius: 1.5rem;
  overflow: hidden;
  width: 35rem;
}
.recruitMessage__text {
  font-size: 1.6rem;
  line-height: 2;
  width: calc(100% - 40rem);
}
.recruitWorks__text {
  font-size: 1.6rem;
  line-height: 2;
  margin: 3.2rem 0 0;
}
.recruitWorks__text:first-child {
  margin-top: 6rem;
}
.recruitWorks__subhead {
  font-size: 2.6rem;
  line-height: 2;
  margin: 5.2rem 0 0;
}
.recruitWorks__item {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  height: 9rem;
  margin: 3.5rem 0 0;
  width: 47.62%;
}
.recruitWorks__item:nth-child(n + 3) {
  margin-top: 5rem;
}
.recruitWorks__item--text {
  background: linear-gradient(90deg, #488faa, #65828d);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 2.6rem;
}
.recruitSkills__text {
  font-size: 1.6rem;
  line-height: 2;
  margin: 3.2rem 0 0;
}
.recruitSkills__text:first-child {
  margin-top: 6rem;
}
.recruitSkills__list {
  margin: 6rem 0 0;
}
.recruitSkills__item {
  background: linear-gradient(180deg, #0f0c29 0%, #24243e 50%, #537895 100%);
  border-radius: 50%;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #fff;
  font-size: 2rem;
  height: 19rem;
  line-height: 2.2;
  text-align: center;
  width: 19rem;
}
.recruitPersonality__subhead {
  background: linear-gradient(180deg, #0f0c29 0%, #24243e 50%, #537895 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  line-height: 3.07;
}
.recruitPersonality__text {
  font-size: 1.6rem;
  line-height: 2;
  margin: 3.2rem 0 0;
}
.recruitPersonality__text:first-child {
  margin-top: 6rem;
}
.recruitPersonality__list {
  margin: 5rem 0 0;
}
.recruitPersonality__item {
  background: linear-gradient(180deg, #0f0c29 0%, #24243e 50%, #537895 100%);
  border-radius: 50%;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #fff;
  font-size: 2rem;
  height: 28rem;
  line-height: 1.6;
  text-align: center;
  width: 28rem;
}
.recruitPortfolio__slide {
  background: #fff;
  height: 59.3rem;
  margin: 6rem 0 0;
}
.recruitPortfolio__comingsoon {
  font-size: 2rem;
}
.recruitAttractive__list {
  margin: 7rem 0 0;
}
.recruitAttractive__item {
  margin: 5rem 0 0;
}
.recruitAttractive__item--num {
  background: linear-gradient(180deg, #0f0c29 0%, #24243e 50%, #537895 100%);
  border-radius: 50%;
  color: #fff;
  flex: none;
  font-size: 2rem;
  height: 8rem;
  line-height: 1.6;
  text-align: center;
  width: 8rem;
}
.recruitAttractive__item--text {
  margin-left: 2rem;
}
.recruitAttractive__item--head {
  font-size: 2.6rem;
  padding: 2rem 0;
}
.recruitAttractive__item--desc {
  font-size: 1.6rem;
  line-height: 2;
}
.recruitWelfare__list {
  margin: 1rem 0 0;
}
.recruitWelfare__item {
  border-radius: 1.5rem;
  margin: 6rem 0 0;
  width: 20%;
}
.recruitWelfare__item--icon {
  background: #fff;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(51, 51, 51, 0.05);
  height: 16rem;
  width: 16rem;
}
.recruitWelfare__item--text {
  font-size: 1.8rem;
  margin: 2rem 0 0;
}
.recruitDescription__list {
  background: #fff;
  border-radius: 1.5rem;
  margin: 6rem 0 0;
  padding: 3rem 5rem;
}
.recruitDescription__desc,
.recruitDescription__head {
  padding: 2rem 0;
}
.recruitDescription__desc:not(:first-of-type),
.recruitDescription__head:not(:first-of-type) {
  border-top: 1px solid #b4b4b4;
}
.recruitDescription__head {
  font-size: 2rem;
  width: 19%;
}
.recruitDescription__desc {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2;
  padding-left: 3rem;
  width: calc(81% - 3rem);
}
.recruitFlow__list {
  margin: 6rem 0 0;
}
.recruitFlow__item {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 2rem 2rem 2rem rgba(51, 51, 51, 0.05);
  padding: 2rem 1.5rem;
  position: relative;
  width: calc(16.66667% - 1.5rem);
}
.recruitFlow__item:not(:first-child) {
  margin-left: 1.8rem;
}
.recruitFlow__item:not(:first-child):before {
  border-color: transparent transparent transparent #65828d;
  border-style: solid;
  border-width: 1rem 1.2rem;
  content: "";
  display: block;
  left: -1.4rem;
  position: absolute;
  top: calc(50% - 1.5rem);
}
.recruitFlow__item--head {
  font-size: 1.7rem;
  text-align: center;
}
.recruitFlow__item--icon {
  margin: 3rem 0 0;
}
.recruitFlow__item--desc {
  font-size: 1.4rem;
  line-height: 2;
  margin: 3rem 0 0;
}
.recruitFaq__list {
  border-bottom: 1px solid #b4b4b4;
  margin: 6rem 0 0;
}
.recruitFaq__Q {
  border-top: 1px solid #b4b4b4;
  cursor: pointer;
  font-size: 2rem;
  line-height: 1.6;
  padding: 3rem 6rem 1rem 0;
  position: relative;
  transition: 0.5s;
}
.recruitFaq__Q:after,
.recruitFaq__Q:before {
  background: #333;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  right: 0;
  top: 4.25rem;
  transition: 0.5s;
  width: 2.5rem;
}
.recruitFaq__Q:after {
  transform: rotate(90deg);
}
.recruitFaq__Q.open {
  padding-bottom: 2rem;
}
.recruitFaq__Q.open:before {
  transform: rotate(45deg);
}
.recruitFaq__Q.open:after {
  transform: rotate(135deg);
}
.recruitFaq__A {
  font-size: 1.6rem;
  height: 0;
  line-height: 2;
  margin: 0 0 2rem;
  overflow: hidden;
  transform-origin: top;
  transition: height 0.5s;
}
.recruitFaq__head {
  flex: none;
  font-size: 2.4rem;
  line-height: 1.33;
  width: 3.6rem;
}
.recruitEntry {
  background: #fff;
  border-radius: 1.5rem;
  max-width: 44rem;
  padding: 2rem 3rem 3rem;
}
.recruitEntry__text {
  border-bottom: 1px solid #b4b4b4;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
}
.recruitEntry__link {
  color: #333;
  font-size: 2.6rem;
  height: 9.4rem;
  padding-right: 9.4rem;
  position: relative;
}
.recruitEntry__link .banner,
.recruitEntry__link .icon,
.recruitEntry__link .outline {
  transition: 0.2s;
}
.recruitEntry__link .icon {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 9.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 9.4rem;
}
.recruitEntry__link .icon:before {
  margin-bottom: 0.8rem;
}
.recruitEntry__link .outline {
  padding-bottom: 8.2rem;
  position: absolute;
  right: 0.6rem;
  width: 8.2rem;
}
.recruitEntry__link .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.recruitEntry__link .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.recruitEntry__link:hover .banner {
  transform: translateX(1rem);
}
.recruitEntry__link:hover .icon:before {
  animation: arrow 0.2s;
}
.recruitEntry__link:hover .outline {
  transform: rotate(1turn);
}
.reason {
  padding: 20rem 0;
}
.reason__head {
  font-size: 5rem;
  line-height: 1.6;
  margin: 10rem 0 0;
}
.reason__intro {
  font-size: 1.6rem;
  line-height: 2;
  margin: 4rem 0 0;
}
.reason__sec {
  border-bottom: 1px solid #cfcfcf;
  padding: 15rem 0;
}
.reason__sec:first-of-type .reason__img svg {
  max-height: none;
}
.reason__img {
  background: #fff;
  border-radius: 1.5rem;
  height: 35rem;
  overflow: hidden;
  padding: 2rem;
  width: calc(50% - 5rem);
}
.reason__img svg {
  max-height: 100%;
}
.reason__text {
  width: 50%;
}
.reason__subhead--num {
  background: linear-gradient(90deg, #488faa, #65828d);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 10rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
.reason__subhead--text {
  font-size: 3rem;
  line-height: 1.5;
  margin-left: 4rem;
}
.reason__detail {
  font-size: 1.6rem;
  line-height: 2;
  margin: 1.6rem 0 0;
}
.reason__detail:first-of-type {
  margin-top: 5rem;
}
.reasonNav__list {
  margin: 15rem 0 0;
}
.reasonNav__item {
  width: calc(33.33333% - 2.66667rem);
}
.reasonNav__arrow {
  align-items: center;
  color: #333;
  display: flex;
  font-size: 2.2rem;
  height: 7.4rem;
  justify-content: center;
  position: relative;
  width: 7.4rem;
}
.reasonNav__arrow .icon,
.reasonNav__arrow .outline {
  transition: 0.2s;
}
.reasonNav__arrow .icon {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 100%;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 100%;
}
.reasonNav__arrow .icon:before {
  margin-bottom: 0.8rem;
}
.reasonNav__arrow .outline {
  padding-bottom: 6.4rem;
  position: absolute;
  right: 0.6rem;
  width: 6.4rem;
}
.reasonNav__arrow .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.reasonNav__arrow .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.reasonNav__link {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #333;
  padding: 2rem 3rem 3rem;
}
.reasonNav__link:hover .reasonNav__arrow .outline {
  transform: rotate(1turn);
}
.reasonNav__link:hover .reasonNav__arrow .icon:before {
  animation: arrow 0.2s;
}
.reasonNav__head {
  border-bottom: 1px solid #b4b4b4;
  font-size: 2.2rem;
  padding-bottom: 2rem;
}
.reasonNav__body {
  margin: 2rem 0 0;
}
.reasonNav__desc {
  font-size: 1.4rem;
  line-height: 2;
}
.privacypolicy {
  padding: 20rem 0;
}
.privacypolicy__head {
  font-size: 4.2rem;
}
.privacypolicy__section {
  background: #fff;
  border-radius: 1.5rem;
  margin: 6rem 0 0;
  padding: 6rem 10rem;
}
.privacypolicy__subhead {
  font-size: 3rem;
  line-height: 1.1;
  margin: 6rem 0 0;
}
.privacypolicy__text {
  font-size: 1.6rem;
  line-height: 2;
}
.privacypolicy__text:not(:first-child) {
  margin-top: 3rem;
}
.privacypolicy__list {
  font-size: 1.6rem;
  line-height: 2;
  list-style: disc;
  padding-left: 2rem;
}
.privacypolicy__list:not(:first-child) {
  margin-top: 3rem;
}
.error404 {
  background: #f6f5f5;
  padding: 15rem 0 12rem;
  text-align: center;
}
.error404 + .footer {
  background: #fff;
}
.error404__head--en {
  font-size: 8rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
.error404__head--ja {
  font-size: 4rem;
  line-height: 2;
}
.error404__text {
  font-size: 1.6rem;
  line-height: 2.25;
  margin: 6rem 0 0;
}
.error404__back {
  margin: 6rem 0 0;
}
.contact {
  padding: 6rem 0 12rem;
}
.contact__thanks {
  padding-top: 20rem;
}
.contact__head {
  font-size: 4.2rem;
  text-align: center;
}
.contact__desc {
  font-size: 1.8rem;
  margin: 6rem 0 0;
  text-align: center;
}
.contactStep {
  margin: 4rem 0 0;
  position: relative;
  z-index: 1;
}
.contactStep:before {
  background: #cfcfcf;
  content: "";
  display: block;
  height: 1px;
  left: calc(50% - 24rem);
  position: absolute;
  top: 50%;
  width: 48rem;
  z-index: -1;
}
.contactStep__item {
  background: #fff;
  border-radius: 50%;
  box-shadow: 2rem 2rem 3rem rgba(51, 51, 51, 0.05);
  height: 12rem;
  width: 12rem;
}
.contactStep__item:not(:first-child) {
  margin-left: 6rem;
}
.contactStep__item.current {
  background: linear-gradient(90deg, #488faa, #65828d);
  color: #fff;
}
.contactStep__item--num {
  font-size: 2.2rem;
  letter-spacing: 0.05em;
}
.contactStep__item--text {
  font-size: 2rem;
}
.contactForm {
  margin: 3rem 0 0;
}
.contactForm div.contactForm__tab {
  background: #fff;
  border-radius: 5rem;
  font-size: 2rem;
  height: 10rem;
  padding: 1rem;
}
.contactForm div.contactForm__tab .mwform-radio-field {
  width: calc(50% - 1rem);
}
.contactForm div.contactForm__tab label {
  align-items: center;
  background: #fff;
  border-radius: 4rem;
  display: flex;
  height: 100%;
  justify-content: center;
  padding-left: 0;
}
.contactForm div.contactForm__tab label.checked {
  background: #c4cbce;
}
.contactForm div.contactForm__tab label.checked:after,
.contactForm div.contactForm__tab label:before {
  content: none;
}
.contactForm div.contactForm__tab input {
  display: none;
}
.contactForm__container {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 2rem 2rem 3rem rgba(91, 91, 91, 0.05);
  margin: 3rem 0 0;
  padding: 3rem 9rem 6rem;
}
.contactForm__list:not(.show) {
  display: none;
}
.contactForm__ttl {
  color: #141419;
  font-size: 1.6rem;
  margin: 3rem 0 0;
}
.contactForm__ttl .note,
.contactForm__ttl .required {
  font-size: 1.4rem;
  margin-left: 1rem;
}
.contactForm__ttl .required {
  background: #333;
  border-radius: 0.5rem;
  color: #fff;
  line-height: 2.5rem;
  padding: 0 1rem;
}
.contactForm__dtl {
  margin: 1rem 0 0;
}
.contactForm__dtl--industry {
  white-space: nowrap;
  width: calc(50% - 0.7rem);
}
.contactForm__dtl--radio {
  font-size: 1.6rem;
}
.contactForm__dtl--radio .mwform-radio-field {
  display: block;
  margin: 0 3rem 0 0;
}
.contactForm .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0;
}
.contactForm__input,
.contactForm__select,
.contactForm__textarea {
  background: #fff;
  border: 1px solid #b4b4b4;
  border-radius: 0.4rem;
  padding: 1.5rem 2rem;
}
.contactForm__input:-ms-input-placeholder,
.contactForm__select:-ms-input-placeholder,
.contactForm__textarea:-ms-input-placeholder {
  color: rgba(20, 20, 25, 0.3);
}
.contactForm__input::placeholder,
.contactForm__select::placeholder,
.contactForm__textarea::placeholder {
  color: rgba(20, 20, 25, 0.3);
}
.contactForm__input {
  width: 100%;
}
.contactForm__select {
  -webkit-appearance: none;
  appearance: none;
  background: url(../img/icon/down.svg) no-repeat center right 1rem/1.1rem auto;
  width: 40%;
}
.contactForm__select--birth {
  margin-right: 1rem;
  width: 8.3rem;
}
.contactForm__select--birth[name="birthYear"] {
  width: 14.3rem;
}
.contactForm__select--industry {
  flex: auto;
}
.contactForm .mwform-radio-field label {
  align-items: center;
  display: flex;
  padding-left: 3.3rem;
  position: relative;
}
.contactForm .mwform-radio-field label:before {
  border: 1px solid #ccc;
  border-radius: 50%;
  content: "";
  display: block;
  height: 2.5rem;
  left: 0;
  position: absolute;
  width: 2.5rem;
}
.contactForm .mwform-radio-field label.checked:after {
  background: #333;
  border-radius: 50%;
  content: "";
  display: block;
  height: 1.25rem;
  left: 0.625rem;
  position: absolute;
  width: 1.25rem;
}
.contactForm .mwform-radio-field input {
  display: none;
}
.contactForm__textarea {
  width: 100%;
}
.contactForm__btn {
  margin: 5rem auto 0;
}
.contactForm__submit {
  align-items: center;
  background: linear-gradient(90deg, #364e57, #333);
  border: none;
  border-radius: 4rem;
  color: #fff;
  display: flex;
  font-size: 1.8rem;
  height: 7rem;
  justify-content: center;
  transition: 0.5s;
  width: 32rem;
}
.contactForm__submit:hover {
  opacity: 0.7;
}
.contactFormConfirm .contactForm__tab,
.contactFormConfirm .contactForm__ttl .required {
  display: none;
}
.contactFormConfirm .contactForm__dtl {
  margin: 0;
}
.contactFormConfirm .contactForm__btn {
  margin: 8rem auto 0;
  position: relative;
}
.contactFormConfirm .contactForm__back {
  background: transparent url(../img/icon/arrow.svg) no-repeat 0/2rem auto;
  border: none;
  font-size: 1.6rem;
  left: 0;
  padding-left: 3rem;
  position: absolute;
  transition: 0.5s;
}
.contactFormConfirm .contactForm__back:hover {
  opacity: 0.7;
  transform: translateX(-1rem);
}
.contactComplete {
  background: #fff;
  border-radius: 1.5rem;
  margin: 6rem 0 0;
  padding: 6rem 0;
  text-align: center;
}
.contactComplete__head {
  font-size: 3rem;
}
.contactComplete__text {
  font-size: 1.6rem;
  line-height: 2;
  margin: 5rem 0 0;
}
.consultant {
  padding: 20rem 0 12rem;
}
.consultant__intro {
  line-height: 2;
}
.consultant__intro--head {
  font-size: 2.6rem;
}
.consultant__intro--desc {
  font-size: 1.6rem;
  margin: 4rem 0 0;
}
.consultant__list {
  margin: 2rem 0 0;
}
.consultant__item {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  margin: 8rem 0 0;
  overflow: hidden;
  width: 40rem;
}
.consultant__item--link {
  color: #333;
  height: 100%;
  position: relative;
}
.consultant__item--link:hover .icon {
  animation: arrow 0.2s;
}
.consultant__item--link:hover .outline {
  transform: rotate(1turn);
}
.consultant__item--img {
  border-radius: 1.5rem 1.5rem 0 0;
  flex: none;
  height: 40rem;
  overflow: hidden;
}
.consultant__item--img img {
  width: 100%;
}
.consultant__item--text {
  flex: auto;
  padding: 2rem;
}
.consultant__item--post {
  font-size: 1.6rem;
}
.consultant__item--name {
  font-size: 2.2rem;
}
.consultant__item--name .en {
  color: #b4b4b4;
  font-size: 1.6rem;
}
.consultant__item--arrow {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  display: flex;
  height: 7.4rem;
  justify-content: center;
  position: relative;
  width: 7.4rem;
}
.consultant__item--arrow .icon,
.consultant__item--arrow .outline {
  transition: 0.2s;
}
.consultant__item--arrow .icon {
  align-items: center;
  color: #333;
  display: flex;
  height: 7.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 7.4rem;
}
.consultant__item--arrow .icon:before {
  margin-bottom: 0.8rem;
}
.consultant__item--arrow .outline {
  padding-bottom: 6.4rem;
  position: absolute;
  right: 0.6rem;
  width: 6.4rem;
}
.consultant__item--arrow .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.consultant__item--arrow .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.consultantSingle__catchcopy {
  font-size: 4rem;
}
.consultantSingle__profile {
  margin: 6rem 0 0;
}
.consultantSingle__profile--img {
  border-radius: 1.5rem;
  flex: none;
  height: 35.7rem;
  overflow: hidden;
  width: 35.7rem;
}
.consultantSingle__profile--img img {
  width: 100%;
}
.consultantSingle__profile--text {
  padding: 0 5rem;
}
.consultantSingle__profile--post {
  font-size: 2rem;
}
.consultantSingle__profile--data {
  margin: 4rem 0 0;
}
.consultantSingle__profile--name {
  font-size: 3rem;
}
.consultantSingle__profile--en {
  color: #b4b4b4;
  font-size: 1.6rem;
  margin-left: 3rem;
}
.consultantSingle__introduce {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  margin: 6.2rem 0 0;
  overflow: hidden;
  padding: 3rem 4rem;
}
.consultantSingle__introduce--head {
  font-size: 3rem;
}
.consultantSingle__introduce--text {
  border-top: 1px solid hsla(0, 0%, 71%, 0.5);
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2;
  margin-top: 2rem;
  padding-top: 2rem;
}
.consultantSingle__interview {
  border-bottom: 1px solid #b4b4b4;
  margin: 15rem 0 0;
  padding: 0 0 15rem;
}
.consultantSingle__interview:nth-child(2n) .consultantSingle__interview--img {
  margin-left: 5rem;
  margin-right: 0;
  order: 2;
}
.consultantSingle__interview:nth-child(2n) .consultantSingle__interview--text {
  order: 1;
}
.consultantSingle__interview--img {
  flex: none;
  margin-right: 5rem;
  width: 58rem;
}
.consultantSingle__interview--text {
  flex: auto;
}
.consultantSingle__interview--head {
  background: linear-gradient(90deg, #488faa, #65828d);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 3rem;
  letter-spacing: 0.05em;
}
.consultantSingle__interview--head .num {
  font-size: 2rem;
}
.consultantSingle__interview--desc {
  font-size: 1.6rem;
  line-height: 2;
  margin: 5rem 0 0;
}
.consultantSingle__contact {
  border-bottom: 1px solid #b4b4b4;
  margin: 15rem 0 0;
  padding: 0 0 15rem;
}
.consultantSingle__contact--link {
  background: url(../img/consultant_contact_bg.png) no-repeat 50% / cover;
  border-radius: 1.5rem;
  color: #fff;
  font-size: 5rem;
  letter-spacing: 0.04em;
  overflow: hidden;
  padding: 5rem 0 5.2rem;
}
.consultantSingle__contact--link .note {
  font-size: 1.6rem;
  letter-spacing: 0;
}
.consultantOther {
  margin: 15rem 0 0;
}
.consultantOther__head--en {
  font-size: 5rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.consultantOther__head--ja {
  border-left: 1px solid #cfcfcf;
  font-size: 3rem;
  margin-left: 2rem;
  padding-left: 2rem;
}
.consultantOther__container {
  margin: 10rem 0 0;
}
.consultantOther__list {
  transition-timing-function: linear;
}
.consultantOther__item {
  padding: 0 4.8rem 16rem;
  width: 28rem;
}
.consultantOther__item--link {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2.1rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #333;
  display: block;
  overflow: hidden;
}
.consultantOther__item--img {
  border-radius: 1.5rem 1.5rem 0 0;
  height: 28rem;
  overflow: hidden;
}
.consultantOther__item--img img {
  width: 100%;
}
.consultantOther__item--text {
  padding: 1rem 2rem;
}
.consultantOther__item--post {
  font-size: 1.6rem;
}
.consultantOther__item--post.blank {
  height: 2.88rem;
}
.consultantOther__item--name .ja {
  font-size: 2.2rem;
}
.consultantOther__item--name .en {
  color: #b4b4b4;
}
.company {
  padding: 20rem 0;
}
.company__head--en {
  font-size: 5rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.company__head--ja {
  border-left: 1px solid #cfcfcf;
  font-size: 3rem;
  margin-left: 2rem;
  padding-left: 2rem;
}
.company__sec {
  padding: 15rem 0;
}
.company__sec:not(:last-of-type) {
  border-bottom: 1px solid #cfcfcf;
}
.companyNav__item {
  margin-right: 5rem;
}
.companyNav__link {
  color: #333;
  font-size: 2.2rem;
}
.companyNav__link .icon {
  font-size: 1.6rem;
  margin-left: 1rem;
  transform: rotate(180deg);
}
.companyIntro {
  color: #fff;
  margin: 10rem 0 0;
  padding: 10rem 0 16rem 5%;
  position: relative;
  z-index: 1;
}
.companyIntro:before {
  background: url(../img/company_intro_bg.png) no-repeat 50% / cover;
  border-radius: 15rem 0 0 15rem;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 95%;
  z-index: -1;
}
.companyIntro__head {
  font-size: 11rem;
}
.companyIntro__subhead {
  font-size: 6rem;
  margin: 6rem 0 0;
}
.companyIntro__text {
  font-size: 1.6rem;
  line-height: 2;
  margin: 6rem 0 0;
}
.companyMessage__sec {
  margin: 6rem 0 0;
}
.companyMessage__img {
  border-radius: 1.5rem;
  box-shadow: 2rem 2rem 3rem rgba(51, 51, 51, 0.05);
  flex: none;
  overflow: hidden;
  width: 45rem;
}
.companyMessage__text {
  line-height: 2;
  margin-left: 5rem;
}
.companyMessage__catchcopy {
  font-size: 2.4rem;
}
.companyMessage__desc {
  font-size: 1.6rem;
  margin: 3.2rem 0 0;
}
.companyMessage__desc:first-of-type {
  margin-top: 6rem;
}
.companyMission#mission {
  border-bottom: none;
  padding-bottom: 0;
}
.companyMission__catchcopy {
  font-size: 5rem;
  margin: 6rem 0 0;
}
.companyMission__container {
  background:
    linear-gradient(90deg, hsla(0, 0%, 100%, 0.97), hsla(0, 0%, 100%, 0.53)),
    url(../img/company_purpose_bg.png) no-repeat 100% 100% / cover;
  border-radius: 1.5rem;
  margin: 6rem 0 0;
  padding: 5rem;
}
.companyMission__subhead {
  background: linear-gradient(15deg, rgba(72, 143, 170, 0.34), rgba(101, 130, 141, 0.34));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 7rem;
  margin: 3.4rem 0 0;
}
.companyMission__list {
  margin: 4.3rem 0 0;
}
.companyMission__item {
  background: linear-gradient(180deg, #0f0c29 0%, #24243e 50%, #537895 100%);
  border-radius: 50%;
  color: #fff;
  flex: none;
  font-size: 2rem;
  height: 23rem;
  line-height: 2.2;
  text-align: center;
  width: 23rem;
}
.companyMission__item:nth-child(2n) {
  margin: 18.5rem -3.5rem 0;
}
.companyCompany__sec {
  margin: 5.6rem 0 0;
}
.companyCompany__img {
  border-radius: 1.5rem;
  flex: none;
  overflow: hidden;
  width: 50%;
}
.companyCompany__item:not(:first-of-type),
.companyCompany__val:not(:first-of-type) {
  margin-top: 3rem;
}
.companyCompany__item {
  font-size: 2rem;
  width: 50%;
}
.companyCompany__item:before {
  background: #65828d;
  border-radius: 50%;
  content: "";
  display: block;
  height: 1.2rem;
  margin-right: 2rem;
  margin-top: 1.4rem;
  width: 1.2rem;
}
.companyCompany__val {
  font-size: 1.6rem;
  line-height: 2;
  width: 50%;
}
.companyFooter {
  margin: 8rem 0 0;
}
.companyFooter__item {
  margin: 0 8rem;
}
.companyFooter__link {
  align-items: center;
  color: #333;
  display: flex;
  font-size: 2.2rem;
  height: 9.4rem;
  justify-content: center;
  padding-right: 9.4rem;
  position: relative;
  width: 17.7rem;
}
.companyFooter__link .hoverIcon,
.companyFooter__link .icon,
.companyFooter__link .outline,
.companyFooter__link .text {
  transition: 0.2s;
}
.companyFooter__link .hoverIcon {
  margin-bottom: 0.8rem;
  opacity: 0;
}
.companyFooter__link .icon {
  align-items: center;
  background: #fff;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 9.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 9.4rem;
}
.companyFooter__link .icon:before {
  margin-bottom: 0.8rem;
}
.companyFooter__link .outline {
  padding-bottom: 8.2rem;
  position: absolute;
  right: 0.6rem;
  width: 8.2rem;
}
.companyFooter__link .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.companyFooter__link .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.companyFooter__link:hover .text {
  transform: translateX(1rem);
}
.companyFooter__link:hover .hoverIcon {
  color: #333;
  opacity: 1;
  transform: translateX(6rem);
}
.companyFooter__link:hover .icon {
  color: #fff;
}
.companyFooter__link:hover .outline {
  transform: rotate(1turn);
}
.column {
  padding: 20rem 0 12rem;
}
.column__main {
  width: 74.3%;
}
.column__side {
  width: 17.14%;
}
.column__category--head {
  border-right: 1px solid #cfcfcf;
  font-size: 3rem;
  margin-right: 2.5rem;
  padding-right: 2.5rem;
}
.column__category--current {
  font-size: 2rem;
}
.column__item--link {
  color: #333;
}
.column__item--img {
  border-radius: 1.5rem;
  flex: none;
  height: 21.9rem;
  margin-right: 4rem;
  overflow: hidden;
  width: 35rem;
}
.column__item--date {
  font-size: 1.6rem;
}
.column__item--category {
  background: #fff;
  border: 1px solid #b4b4b4;
  border-radius: 0.5rem;
  color: #333;
  font-size: 1.4rem;
  margin-left: 2rem;
  padding: 0.7rem 1.4rem;
}
.column__item--title {
  font-size: 2.2rem;
  line-height: 1.6;
  margin: 2rem 0 0;
}
.column__item--tags {
  margin: 0.5rem 0 0;
}
.column__item--tag {
  color: #65828d;
  font-size: 1.6rem;
  font-weight: 300;
  margin: 1.5rem 2rem 0 0;
}
.columnPager {
  margin: 8rem 0 0;
}
.columnPager__item {
  background: #fff;
  border: 1px solid #b4b4b4;
  border-radius: 50%;
  color: #b4b4b4;
  font-size: 1.8rem;
  height: 5rem;
  margin: 0 0.5rem;
  width: 5rem;
}
.columnPager__item.current {
  background: #333;
  border-color: #333;
  color: #fff;
}
.columnPager__item.prev .icon {
  margin-top: 0.6rem;
  transform: rotate(180deg);
}
.columnSide__block:not(:first-child) {
  margin-top: 6rem;
}
.columnSide__head {
  border-bottom: 1px solid #cfcfcf;
  font-size: 3rem;
  padding-bottom: 1.3rem;
}
.columnSide__category--item {
  margin: 1rem 0 0;
}
.columnSide__category--link {
  color: #333;
  font-size: 1.6rem;
}
.columnSide__category--link .icon {
  font-size: 0.5rem;
  margin-right: 1rem;
}
.columnSide__tag--list {
  margin: 2rem 0 0;
}
.columnSide__tag--item {
  margin: 1rem 0 0;
}
.columnSide__tag--link {
  color: #65828d;
  font-size: 1.6rem;
  font-weight: 300;
}
.columnSingle__date {
  font-size: 1.6rem;
}
.columnSingle__category {
  background: #fff;
  border: 1px solid #b4b4b4;
  border-radius: 0.5rem;
  color: #333;
  font-size: 1.4rem;
  margin-left: 2rem;
  padding: 0.7rem 1.4rem;
}
.columnSingle__title {
  font-size: 3rem;
  line-height: 2;
  margin: 2rem 0 0;
}
.columnSingle__tag {
  color: #65828d;
  font-size: 1.6rem;
  font-weight: 300;
  margin: 2rem 2rem 0 0;
}
.columnSingle__content {
  margin: 8rem 0 0;
}
.columnSingle__content :first-child {
  margin-top: 0;
}
.columnSingle__content h2.wp-block-heading {
  font-size: 3rem;
  line-height: 1.1;
  margin: 4rem 0 0;
}
.columnSingle__content h3.wp-block-heading {
  font-size: 2.6rem;
  line-height: 1.23;
  margin: 8rem 0 0;
}
.columnSingle__content h4.wp-block-heading {
  font-size: 2.2rem;
  line-height: 1.45;
  margin: 8rem 0 0;
}
.columnSingle__content p {
  font-size: 1.6rem;
  line-height: 2;
  margin: 4rem 0 0;
}
.columnSingle__content img {
  display: block;
}
.columnSingle__content img.aligncenter {
  margin: 0 auto;
}
.columnSingle__content img.alignright {
  float: right;
  margin-left: 2rem;
}
.columnSingle__content img.alignleft {
  float: left;
  margin-right: 2rem;
}
.columnSingle__content ol,
.columnSingle__content ul {
  margin: 4rem 0 0;
}
.columnSingle__content ul {
  list-style: disc;
}
.columnSingle__content ol {
  list-style: decimal;
}
.columnSingle__content blockquote {
  border: 1px solid #ccc;
  margin: 4rem 0 0;
  padding: 1.5rem;
}
.achievement {
  padding: 20rem 0;
}
.achievement__head {
  font-size: 2.6rem;
  line-height: 1.6;
  margin: 10rem 0 0;
}
.achievement__intro {
  font-size: 1.6rem;
  line-height: 2;
  margin: 4rem 0 0;
}
.achievement__subhead {
  margin: 10rem 0 0;
}
.achievement__subhead--en {
  font-size: 5rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.achievement__subhead--ja {
  border-left: 1px solid #cfcfcf;
  font-size: 3rem;
  margin-left: 2rem;
  padding-left: 2rem;
}
.achievement__list {
  margin: 5rem 0 0;
}
.achievement__item {
  background: #fff;
  border-radius: 1.5rem;
  overflow: hidden;
}
.achievement__item:not(:first-child) {
  margin: 10rem 0 0;
}
.achievement__num {
  background: linear-gradient(90deg, #65828d, #333);
  color: #fff;
  font-size: 3rem;
  padding: 1.5rem 3rem;
}
.achievement__body {
  padding: 3rem;
}
.achievement__icon {
  flex: none;
  margin-right: 3rem;
}
.achievement__attr {
  font-size: 2.2rem;
}
.achievement__beforeafter {
  border-bottom: 1px solid #b4b4b4;
  border-top: 1px solid #b4b4b4;
  font-size: 1.6rem;
  font-weight: 300;
  margin: 3rem 0 0;
  padding: 2rem 0;
}
.achievement__arrow {
  margin: 0 3rem;
}
.achievement__ttl {
  font-size: 2.2rem;
  line-height: 1.27;
  margin: 3rem 0 0;
}
.achievement__dtl {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.75;
  margin: 2rem 0 0;
}
.achievementNav__list {
  margin: 15rem 0 0;
}
.achievementNav__item {
  width: calc(33.33333% - 2.66667rem);
}
.achievementNav__arrow {
  align-items: center;
  color: #333;
  display: flex;
  font-size: 2.2rem;
  height: 7.4rem;
  justify-content: center;
  position: relative;
  width: 7.4rem;
}
.achievementNav__arrow .icon,
.achievementNav__arrow .outline {
  transition: 0.2s;
}
.achievementNav__arrow .icon {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 100%;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 100%;
}
.achievementNav__arrow .icon:before {
  margin-bottom: 0.8rem;
}
.achievementNav__arrow .outline {
  padding-bottom: 6.4rem;
  position: absolute;
  right: 0.6rem;
  width: 6.4rem;
}
.achievementNav__arrow .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.achievementNav__arrow .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.achievementNav__link {
  background: #fff;
  border-radius: 1.5rem;
  box-shadow: 3rem 2rem 4rem hsla(0, 0%, 62%, 0.15);
  color: #333;
  padding: 2rem 3rem 3rem;
}
.achievementNav__link:hover .achievementNav__arrow .outline {
  transform: rotate(1turn);
}
.achievementNav__link:hover .achievementNav__arrow .icon:before {
  animation: arrow 0.2s;
}
.achievementNav__head {
  border-bottom: 1px solid #b4b4b4;
  font-size: 2.2rem;
  padding-bottom: 2rem;
}
.achievementNav__body {
  margin: 2rem 0 0;
}
.achievementNav__desc {
  font-size: 1.4rem;
  line-height: 2;
}
.archive,
.page {
  background: #f6f5f5;
}
.pageHead {
  margin-bottom: 10rem;
}
.pageHead__en {
  font-size: 8rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
.pageHead__ja {
  font-size: 2rem;
}
.pageBg {
  max-width: 66%;
  position: fixed;
  right: 0;
  top: -4.4rem;
  z-index: -1;
}
.backBtn {
  color: #333;
  font-size: 2.6rem;
  margin: 5rem auto 0;
}
.backBtn,
.backBtn__icon {
  height: 9.4rem;
  position: relative;
}
.backBtn__icon {
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  flex: none;
  width: 9.4rem;
}
.backBtn .icon,
.backBtn .outline,
.backBtn .text {
  transition: 0.2s;
}
.backBtn .text {
  margin-left: 3rem;
}
.backBtn .icon {
  align-items: center;
  color: #333;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  position: absolute;
  transform: rotate(180deg);
  width: 100%;
}
.backBtn .icon:before {
  margin-bottom: 0.8rem;
}
.backBtn .outline {
  left: 0.6rem;
  padding-bottom: 8.2rem;
  position: absolute;
  top: 0.6rem;
  width: 8.2rem;
}
.backBtn .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.backBtn .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
.backBtn:hover .text {
  transform: translateX(-1rem);
}
.backBtn:hover .icon {
  animation: backArrow 0.2s;
}
.backBtn:hover .outline {
  transform: rotate(1turn);
}
@keyframes backArrow {
  0% {
    transform: rotate(180deg) translateX(-4.7rem);
  }
  to {
    transform: rotate(180deg);
  }
}
.ctaContact__link {
  background:
    no-repeat 50% / cover,
    no-repeat 50% / cover;
  background-blend-mode: multiply, normal;
  background-image: linear-gradient(90deg, rgba(51, 51, 51, 0.9), rgba(54, 78, 87, 0.9)), url(../img/top_contact_bg.png);
  display: block;
  padding: 17.5rem 0;
  transition: 0.5s;
}
.ctaContact__link:hover {
  background-image: linear-gradient(90deg, hsla(0, 0%, 73%, 0.9), rgba(120, 156, 170, 0.9)),
    url(../img/top_contact_bg.png);
  cursor: none;
}
.ctaContact__head {
  color: #fff;
}
.ctaContact__text {
  color: #fff;
  font-size: 1.6rem;
  line-height: 2;
  margin: 6rem 0 0;
}
.pageFooterNav {
  border-top: 1px solid #cfcfcf;
  padding: 8rem 0 0;
}
.pageFooterNav__item {
  margin: 0 8rem;
}
.pageFooterNav__link {
  align-items: center;
  color: #333;
  display: flex;
  font-size: 2.2rem;
  height: 9.4rem;
  justify-content: center;
  padding-right: 9.4rem;
  position: relative;
}
.pageFooterNav__link .icon,
.pageFooterNav__link .outline,
.pageFooterNav__link .text {
  transition: 0.2s;
}
.pageFooterNav__link .text {
  margin-right: 2rem;
}
.pageFooterNav__link .icon {
  align-items: center;
  background: #f6f5f5;
  border-radius: 50%;
  box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
  color: #333;
  display: flex;
  height: 9.4rem;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 9.4rem;
}
.pageFooterNav__link .icon:before {
  margin-bottom: 0.8rem;
}
.pageFooterNav__link .outline {
  padding-bottom: 8.2rem;
  position: absolute;
  right: 0.6rem;
  width: 8.2rem;
}
.pageFooterNav__link .outline__svg {
  display: block;
  height: 100%;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}
.pageFooterNav__link .outline__circle {
  fill: transparent;
  stroke: #333;
  stroke-dasharray: 1, 5, 195, 0;
  stroke-dashoffset: 45;
  stroke-width: 1;
}
@keyframes arrow {
  0% {
    transform: translateX(-4.7rem);
  }
  to {
    transform: none;
  }
}
.pageFooterNav__link:hover .text {
  transform: translateX(1rem);
}
.pageFooterNav__link:hover .icon:before {
  animation: arrow 0.2s;
}
.pageFooterNav__link:hover .outline {
  transform: rotate(1turn);
}
@media screen and (min-width: 769px) {
  .recruit #luxy {
    left: 33.333%;
    max-width: 99rem;
    width: 75% !important;
  }
  .pc-flex {
    display: flex;
  }
  .flex.pc-bet,
  .pc-flex.pc-bet {
    justify-content: space-between;
  }
  .flex.aro,
  .flex.pc-aro,
  .pc-flex.aro,
  .pc-flex.pc-aro {
    justify-content: space-around;
  }
  .flex.pc-vstart,
  .pc-flex.pc-vstart {
    align-items: flex-start;
  }
  .flex.pc-vend,
  .pc-flex.pc-vend {
    align-items: flex-end;
  }
  .flex.pc-vcenter,
  .pc-flex.pc-vcenter {
    align-items: center;
  }
  .flex.pc-hstart,
  .pc-flex.pc-hstart {
    justify-content: flex-start;
  }
  .flex.pc-hcenter,
  .pc-flex.pc-hcenter {
    justify-content: center;
  }
  .flex.pc-hend,
  .pc-flex.pc-hend {
    justify-content: flex-end;
  }
  .flex.pc-str,
  .pc-flex.pc-str {
    align-items: stretch;
  }
  .flex.pc-vert,
  .pc-flex.pc-vert {
    flex-direction: column;
  }
  .flex.pc-break,
  .pc-flex.pc-break {
    flex-wrap: wrap;
  }
  .flex > .pc-1,
  .pc-flex > .pc-1 {
    order: 1;
  }
  .flex > .pc-2,
  .pc-flex > .pc-2 {
    order: 2;
  }
  .flex > .pc-3,
  .pc-flex > .pc-3 {
    order: 3;
  }
  .op:hover {
    opacity: 0.7;
  }
  .hoverToggle:hover .hoverToggle__off,
  .hoverToggle:not(:hover) .hoverToggle__on {
    display: none;
  }
  .sp {
    display: none !important;
  }
  .pc-hide {
    display: none;
  }
  .pc-ta-center {
    text-align: center;
  }
  .pc-ta-right {
    text-align: right;
  }
  .pc-ta-left {
    text-align: left;
  }
  body:not(.wp-admin) #wpadminbar {
    height: 10px !important;
    opacity: 0.5;
    overflow: hidden !important;
    transition-duration: 0.5s;
  }
  body:not(.wp-admin) #wpadminbar:hover {
    height: auto !important;
    opacity: 1;
    overflow: visible !important;
  }
  .md-lay.pc-over {
    display: block;
  }
  .md-lay.pc-over .lay-bg img {
    margin-left: 50%;
    max-width: none;
    transform: translate(-50%);
    width: auto;
  }
  .md-lay.pc-through {
    display: inline-block;
    overflow: visible;
  }
  .md-lay.pc-through .lay-bg img {
    max-width: none;
    width: auto;
  }
  a:hover .md-lay .lay-bg .on {
    opacity: 1;
  }
  a:hover .md-lay .lay-bg .off {
    opacity: 0;
  }
  a:hover .md-lay.zoom .lay-bg {
    transform: scale(1.05);
  }
  a:hover .md-lay.bright:before {
    opacity: 1;
  }
  a:hover .md-lay.border:after {
    box-shadow: inset 0 0 0 10px hsla(0, 0%, 100%, 0.5);
    opacity: 1;
  }
  a:not(:hover) .md-lay.hide .lay-content {
    opacity: 0;
  }
  .sp-md-acc .acc-btn {
    cursor: auto;
  }
  .wrap {
    margin: 0 auto;
    padding-left: 5rem;
    padding-right: 5rem;
  }
  .wrap.w1400 {
    max-width: 150rem;
  }
  .wrap.w1200 {
    max-width: 130rem;
  }
  .wrap.w980 {
    max-width: 108rem;
  }
  .wrap.w900 {
    max-width: 100rem;
  }
  .gNav {
    top: 8rem;
  }
  .gNav,
  .topMv__bg--img {
    display: none;
  }
}
@media screen and (min-width: 1400px) {
  .recruit #luxy {
    left: calc(50vw - 37rem);
  }
}
@media screen and (max-width: 1500px) {
  .topReason {
    padding-left: 4.7%;
  }
}
@media screen and (max-width: 1460px) {
  .topReason__item--title {
    font-size: 3rem;
  }
}
@media screen and (max-width: 1400px) {
  .topConsultant__item--link:hover .icon {
    animation: arrow 0.2s;
  }
  .topConsultant__item--arrow,
  .topConsultant__item--arrow .icon {
    height: 5.5rem;
    width: 5.5rem;
  }
  .topConsultant__item--arrow .icon:before {
    margin: 0 0.4rem 0.6rem 0;
  }
  .topConsultant__item--arrow .outline {
    padding-bottom: 4.8rem;
    right: 0.6rem;
    width: 4.8rem;
  }
  .serviceAbout__support--text {
    max-width: 100%;
    position: relative;
  }
  .serviceAbout__support--link {
    left: 0;
    position: absolute;
    top: 100%;
  }
  .serviceAbout__support--img {
    bottom: auto;
    position: relative;
    right: auto;
    z-index: -1;
  }
  .consultant__item--link:hover .icon {
    animation: arrow 0.2s;
  }
  @keyframes arrow {
    0% {
      transform: translateX(-2.75rem);
    }
    to {
      transform: none;
    }
  }
  .consultant__item--arrow,
  .consultant__item--arrow .icon {
    height: 5.5rem;
    width: 5.5rem;
  }
  .consultant__item--arrow .icon:before {
    margin: 0 0.4rem 0.6rem 0;
  }
  .consultant__item--arrow .outline {
    padding-bottom: 4.8rem;
    right: 0.6rem;
    width: 4.8rem;
  }
  .companyIntro__subhead {
    font-size: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .sp-flex {
    display: flex;
  }
  .flex.sp-bet,
  .sp-flex.sp-bet {
    justify-content: space-between;
  }
  .flex.aro,
  .flex.sp-aro,
  .sp-flex.aro,
  .sp-flex.sp-aro {
    justify-content: space-around;
  }
  .flex.sp-vstart,
  .sp-flex.sp-vstart {
    align-items: flex-start;
  }
  .flex.sp-vend,
  .sp-flex.sp-vend {
    align-items: flex-end;
  }
  .flex.sp-vcenter,
  .sp-flex.sp-vcenter {
    align-items: center;
  }
  .flex.sp-hstart,
  .sp-flex.sp-hstart {
    justify-content: flex-start;
  }
  .flex.sp-hcenter,
  .sp-flex.sp-hcenter {
    justify-content: center;
  }
  .flex.sp-hend,
  .sp-flex.sp-hend {
    justify-content: flex-end;
  }
  .flex.sp-str,
  .sp-flex.sp-str {
    align-items: stretch;
  }
  .flex.sp-vert,
  .sp-flex.sp-vert {
    flex-direction: column;
  }
  .flex.sp-break,
  .sp-flex.sp-break {
    flex-wrap: wrap;
  }
  .flex > .sp-1,
  .sp-flex > .sp-1 {
    order: 1;
  }
  .flex > .sp-2,
  .sp-flex > .sp-2 {
    order: 2;
  }
  .flex > .sp-3,
  .sp-flex > .sp-3 {
    order: 3;
  }
  .sp-table-break td,
  .sp-table-break th,
  .sp-table-break tr {
    display: inline-block;
    width: 100%;
  }
  .sp-table-over {
    overflow-x: auto;
  }
  .sp-table-over th {
    white-space: nowrap;
  }
  .hoverToggle__on {
    display: none;
  }
  .pc {
    display: none !important;
  }
  .sp-hide {
    display: none;
  }
  .sp-ta-center {
    text-align: center;
  }
  .sp-ta-right {
    text-align: right;
  }
  .sp-ta-left {
    text-align: left;
  }
  body:not(.wp-admin) #wpadminbar {
    min-width: 0 !important;
    opacity: 0.8;
    overflow: hidden;
    position: absolute !important;
  }
  .wp-post h2 {
    font-size: 1.8rem;
  }
  .wp-post h3 {
    font-size: 1.6rem;
  }
  .wp-post h4,
  .wp-post h5 {
    font-size: 1.4rem;
  }
  .wp-post div + h2,
  .wp-post div + h3,
  .wp-post div + h4,
  .wp-post div + h5,
  .wp-post p + h2,
  .wp-post p + h3,
  .wp-post p + h4,
  .wp-post p + h5 {
    margin-top: 2.5rem;
  }
  .wp-post table {
    margin: 1rem auto;
  }
  .wp-post table td,
  .wp-post table th {
    padding: 0.5rem;
  }
  .wp-post .alignleft,
  .wp-post .alignright {
    float: none;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .wp-post img[class*="attachment-"],
  .wp-post img[class*="wp-image-"] {
    padding: 0 0 2em;
    width: 100%;
  }
  .md-lay.sp-over {
    display: block;
  }
  .md-lay.sp-over .lay-bg img {
    margin-left: 50%;
    max-width: none;
    transform: translate(-50%);
    width: auto;
  }
  .md-lay.sp-through {
    display: inline-block;
    overflow: visible;
  }
  .md-lay.sp-through .lay-bg img {
    max-width: none;
    width: auto;
  }
  .sp-md-acc .acc-body {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transform-origin: 0 0;
    transition-duration: 0.5s;
  }
  .sp-md-acc .acc-body .acc-body:not(.active) {
    transition-duration: 0s;
  }
  .sp-md-acc .acc-body:not(.active) .acc-on,
  .sp-md-acc .acc-check:not(:checked) ~ .acc-body .acc-on,
  .sp-md-acc .acc-check:not(:checked) ~ .acc-btn .acc-on {
    display: none;
  }
  .sp-md-acc .acc-body.active,
  .sp-md-acc .acc-check:checked ~ .acc-body,
  .sp-md-acc .acc-check:checked ~ .acc-btn {
    max-height: none;
    opacity: 1;
  }
  .sp-md-acc .acc-body.active .acc-off,
  .sp-md-acc .acc-check:checked ~ .acc-body .acc-off,
  .sp-md-acc .acc-check:checked ~ .acc-btn .acc-off {
    display: none;
  }
  .sp-wrap {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .header {
    max-height: 100%;
    overflow: auto;
  }
  .header__contact {
    background: #fff;
    box-shadow: 0 1rem 2rem rgba(20, 20, 25, 0.05);
    padding: 0 1rem 0 2.5rem;
  }
  .header__contact + * .headerPad {
    height: 5.7rem;
  }
  .header__frame {
    margin: 1.2rem 1rem;
    padding: 0 1rem 0 2.5rem;
  }
  .fixed .header__frame {
    border-radius: 2.5rem;
    box-shadow: 0.5rem 0.5rem 1rem rgba(51, 51, 51, 0.03);
  }
  .menuOpen .header__frame {
    background: transparent;
  }
  .header__base {
    height: 5.7rem;
  }
  .headerLogo {
    font-size: 2.5rem;
  }
  .menuOpen .headerLogo {
    color: #fff;
  }
  .headerLogo__text {
    font-size: 1.6rem;
    margin-left: 1.5rem;
  }
  .footerCta__link {
    height: 17rem;
  }
  .footerCta__link--en {
    font-size: 2.6rem;
  }
  .footerCta__link--ja {
    font-size: 1.4rem;
    margin: 0.5rem 0 0;
  }
  .footer__frame {
    padding: 4rem 0 4.6rem;
  }
  .footer__data--catchcopy {
    font-size: 1.4rem;
    line-height: 2;
  }
  .footer__data--name {
    font-size: 4.8rem;
  }
  .footer__data--address {
    font-size: 1.4rem;
    margin: 1.7rem 0 0;
  }
  .footer__link {
    margin: 4rem 0 0;
    text-align: center;
    width: 100%;
  }
  .footer__contact {
    font-size: 2.8rem;
    height: 11.5rem;
    width: 100%;
  }
  .footer__policy {
    font-size: 1.3rem;
    margin: 0;
  }
  .footerCopy {
    font-size: 1rem;
    padding: 0.9rem 0;
  }
  .topHead__en {
    font-size: 4rem;
  }
  .topHead__ja {
    font-size: 1.5rem;
    line-height: 1.533;
  }
  .topMore {
    font-size: 1.5rem;
    height: 6.6rem;
    padding-right: 6.6rem;
    width: 11.4rem;
  }
  .topMore .hoverIcon {
    margin-bottom: 0.8rem;
    opacity: 0;
  }
  .topMore .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
    height: 6.6rem;
    width: 6.6rem;
  }
  .topMore .icon:before {
    margin-bottom: 0.8rem;
  }
  .topMore .outline {
    padding-bottom: 5.8rem;
    position: absolute;
    right: 0.4rem;
    width: 5.8rem;
  }
  .topMv {
    height: 100vh;
    overflow: hidden;
  }
  .topMv__bg--img,
  .topMv__bg--video {
    height: 100%;
    width: auto;
  }
  .topMv__bg--img {
    left: 0;
    position: absolute;
    top: 0;
  }
  .topMv__title {
    font-size: 5.8rem;
  }
  .topMv__desc {
    font-size: 2rem;
    line-height: 1.7;
  }
  .topNews__container {
    border-radius: 0.8rem;
    padding: 1.4rem 1.5rem 2.8rem;
  }
  .topNews__head {
    border-bottom: 1px solid #b4b4b4;
    border-right: none;
    padding: 0 0 2rem;
  }
  .topNews__item {
    font-size: 1.4rem;
    line-height: 2;
    margin: 2rem 0 0;
    padding: 0;
  }
  .topNews__item--category {
    font-size: 1.3rem;
    margin-left: 1rem;
    padding: 0.4rem 1.4rem;
  }
  .topNews__item--title {
    margin: 1rem 0 0;
  }
  .topNews__more {
    margin: 2.8rem 0 0 auto;
  }
  .topService {
    overflow: hidden;
    padding: 8rem 0;
  }
  .topService__bg {
    bottom: auto;
    right: -6%;
    top: 2rem;
    width: 80%;
  }
  .topService__container {
    max-width: none;
    width: 100%;
  }
  .topService__subhead {
    font-size: 2.4rem;
    line-height: 2;
    margin: 3rem 0 0;
  }
  .topService__desc {
    font-size: 1.4rem;
    line-height: 2.3;
    margin: 4rem 0 0;
  }
  .topService__more {
    margin: 4rem 0 0 auto;
  }
  .topReason {
    padding: 4.8rem 0;
  }
  .topReason:before {
    border-radius: 5rem;
    width: 100%;
  }
  .topReason__more {
    margin: 3rem 0 0 auto;
  }
  .topReason__list {
    margin: 1rem 0 0;
  }
  .topReason__item {
    border-radius: 3rem;
    box-shadow:
      2rem 2rem 1.5rem hsla(0, 0%, 62%, 0.05),
      inset 1rem 1rem 1rem hsla(0, 0%, 73%, 0.05);
    margin: 2rem 0 0;
    padding: 3.8rem 1.5rem;
    width: 100%;
  }
  .topReason__item--title {
    font-size: 2.2rem;
  }
  .topReason__item--subtitle {
    font-size: 1.6rem;
    font-weight: 300;
  }
  .topReason__item--icon {
    margin: 2rem 0 0;
    width: 7.5rem;
  }
  .topReason__item--desc {
    font-size: 1.4rem;
    line-height: 2;
    margin: 2rem 0 0;
  }
  .topAchievement {
    padding: 8rem 0;
  }
  .topAchievement__more {
    margin: 3rem 0 0 auto;
  }
  .topAchievement__logo {
    margin: 1rem 0 0;
  }
  .topAchievement__logo--item {
    margin: 2rem 0 0;
    width: calc(50% - 0.4rem);
  }
  .topAchievement__logo--item:not(:nth-child(3n + 1)) {
    margin-left: 0;
  }
  .topAchievement__logo--item:not(:nth-child(odd)) {
    margin-left: 0.8rem;
  }
  .topAchievement__case {
    margin: 2rem 0 0;
  }
  .topAchievement__caseItem {
    border-radius: 0.8rem;
    box-shadow: 1.5rem 1.5rem 1rem rgba(51, 51, 51, 0.05);
    font-size: 1.4rem;
    margin: 2rem 0 0;
    width: 100%;
  }
  .topAchievement__caseItem--head {
    font-size: 2.4rem;
    height: 5.8rem;
    padding: 0 2rem;
  }
  .topAchievement__caseItem--container {
    padding: 1.5rem 1.5rem 2rem;
  }
  .topAchievement__caseItem--img {
    width: 5rem;
  }
  .topAchievement__caseItem--data {
    padding-left: 0;
    width: 100%;
  }
  .topAchievement__caseItem--spec {
    border-bottom: none;
    margin-left: 1.5rem;
    padding-bottom: 0;
  }
  .topAchievement__caseItem--beforeafter {
    border-top: 1px solid #b4b4b4;
    margin: 1.5rem 0 0;
    width: 100%;
  }
  .topAchievement__caseItem--text {
    line-height: 1.85;
    margin: 1.5rem 0 0;
  }
  .topConsultant {
    background: linear-gradient(180deg, hsla(0, 5%, 96%, 0), #f6f5f5 5%, #f6f5f5);
    padding: 0 0 8rem;
  }
  .topConsultant__more {
    margin: 3rem 0 0 auto;
  }
  .topConsultant__body,
  .topConsultant__container {
    margin: 3rem 0 0;
  }
  .topConsultant__item {
    margin: 0;
    padding: 3rem 2rem 3rem 0;
    width: 18rem;
  }
  .topConsultant__item--link {
    border-radius: 0.8rem;
    box-shadow:
      1rem 0.6rem 2rem #9e9e9e,
      0.1;
  }
  .topConsultant__item--img {
    border-radius: 0.8rem 0.8rem 0 0;
    height: 18rem;
  }
  .topConsultant__item--text {
    padding: 1.1rem 1rem;
  }
  .topConsultant__item--post {
    font-size: 1.1rem;
  }
  .topConsultant__item--post.blank {
    height: 1.98rem;
  }
  .topConsultant__item--name {
    font-size: 1.5rem;
  }
  .topConsultant__item--name .en {
    font-size: 1.1rem;
  }
  .topConsultant__item--arrow {
    font-size: 1rem;
    height: 3rem;
    width: 3rem;
  }
  .topConsultant__item--arrow .icon {
    height: 3rem;
    width: 3rem;
  }
  .topConsultant__item--arrow .icon:before {
    margin: 0 0.2rem 0.3rem 0;
  }
  .topConsultant__item--arrow .outline {
    padding-bottom: 2.6rem;
    right: 0.3rem;
    width: 2.6rem;
  }
  .topColumn {
    padding: 8rem 0;
  }
  .topColumn__more {
    margin: 1.5rem 0 0 auto;
  }
  .topColumn__body {
    margin: 3rem -2rem 0;
  }
  .topColumn__list {
    -ms-overflow-style: none;
    overflow: auto;
    scrollbar-width: none;
  }
  .topColumn__list::-webkit-scrollbar {
    display: none;
  }
  .topColumn__item {
    flex: none;
    margin-left: 2rem;
    padding: 0 0 1.5rem;
    width: 28.5rem;
  }
  .topColumn__item:not(:first-child) {
    margin-left: 2rem;
  }
  .topColumn__item:last-child {
    margin-right: 2rem;
  }
  .topColumn__item--img {
    border-radius: 0.8rem;
  }
  .topColumn__item--date {
    font-size: 1.4rem;
    margin: 0.8rem 0 0;
  }
  .topColumn__item--title {
    font-size: 1.8rem;
    margin: 0.8rem 0 0;
  }
  .topColumn__item--term {
    font-size: 1.4rem;
    margin: 1rem 1.5rem 0 0;
  }
  .service {
    padding: 10rem 0;
  }
  .service__head--en {
    font-size: 3rem;
    line-height: 1.3;
  }
  .service__head--ja {
    font-size: 1.8rem;
  }
  .service__sec {
    padding: 8rem 0;
  }
  .serviceNav {
    overflow: auto;
  }
  .serviceNav__item {
    flex: none;
    margin-right: 2.5rem;
    padding: 0.5rem 0;
  }
  .serviceNav__link {
    font-size: 1.6rem;
  }
  .serviceNav__link .icon {
    font-size: 1rem;
    margin-left: 0.8rem;
  }
  .serviceAbout {
    padding-bottom: 8rem;
  }
  .serviceAbout__problem--head {
    background: linear-gradient(90deg, #488faa, #65828d);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: 2.6rem;
    line-height: 1.5;
    margin: 3.2rem 0 0;
  }
  .serviceAbout__problem--list {
    margin: 6rem 0 0;
    padding: 0;
  }
  .serviceAbout__problem--item {
    font-size: 1.3rem;
  }
  .serviceAbout__problem--item:first-child {
    margin-left: auto;
    margin-right: 4.3rem;
    width: 9.3rem;
  }
  .serviceAbout__problem--item:nth-child(2) {
    margin-left: 3rem;
    margin-top: -2.7rem;
    width: 8rem;
  }
  .serviceAbout__problem--item:nth-child(2):before {
    background:
      url(../img/service_about_problem_baloon_top_02.png) no-repeat 100% 0/87.88% auto,
      url(../img/service_about_problem_baloon_bottom_02.png) no-repeat 0 100%/87.88% auto;
    height: 230.48%;
    width: 165%;
  }
  .serviceAbout__problem--item:nth-child(3) {
    margin-left: auto;
    margin-right: auto;
    margin-top: 7.5rem;
    width: 15.6rem;
  }
  .serviceAbout__problem--item:nth-child(3):before {
    background:
      url(../img/service_about_problem_baloon_top_03.png) no-repeat 100% 0/52.52% auto,
      url(../img/service_about_problem_baloon_bottom_03.png) no-repeat 0 100%/57.58% auto;
    height: 211.54%;
    width: 128.76%;
  }
  .serviceAbout__problem--item:nth-child(4) {
    font-size: 1.1rem;
    margin-left: 1.4rem;
    margin-top: 7.8rem;
    width: 11rem;
  }
  .serviceAbout__problem--item:nth-child(4):before {
    background:
      url(../img/service_about_problem_baloon_top_04.png) no-repeat 100% 0/54.35% auto,
      url(../img/service_about_problem_baloon_bottom_04.png) no-repeat 0 100%/30.43% auto;
    height: 246.81%;
    transform: scaleX(-1) translate(50%, -50%);
    width: 125.45%;
  }
  .serviceAbout__problem--item:nth-child(5) {
    font-size: 1.1rem;
    margin-left: auto;
    margin-right: 1.5rem;
    margin-top: -2rem;
    width: 9.8rem;
  }
  .serviceAbout__problem--item:nth-child(5):before {
    background:
      url(../img/service_about_problem_baloon_top_02.png) no-repeat 100% 0/86.8% auto,
      url(../img/service_about_problem_baloon_bottom_02.png) no-repeat 0 100%/86.8% auto;
    height: 225%;
    width: 146.94%;
  }
  .serviceAbout__problem--item:nth-child(6) {
    margin-left: 4rem;
    margin-top: 4.5rem;
    width: 13rem;
  }
  .serviceAbout__problem--item:nth-child(6):before {
    background:
      url(../img/service_about_problem_baloon_top_01.png) no-repeat 100% 0/67.46% auto,
      url(../img/service_about_problem_baloon_bottom_01.png) no-repeat 0 100%/72.83% auto;
    height: 211.27%;
    width: 128.85%;
  }
  .serviceAbout__problem--img {
    bottom: auto;
    margin: 6.6rem 0 0;
    position: relative;
    right: auto;
  }
  .serviceAbout__support--head {
    font-size: 2.4rem;
    line-height: 1.9;
    margin: 5rem 0 0;
  }
  .serviceAbout__support--note {
    font-size: 1.6rem;
    margin-bottom: 0.5rem;
  }
  .serviceAbout__support--container {
    margin: 4rem 0 0;
  }
  .serviceAbout__support--desc {
    font-size: 1.4rem;
  }
  .serviceAbout__support--link {
    font-size: 1.5rem;
    height: 6.6rem;
    left: auto;
    margin: 4rem 0 0;
    padding-right: 6.6rem;
    position: relative;
    top: auto;
  }
  .serviceAbout__support--link .text {
    margin-right: 1.6rem;
  }
  .serviceAbout__support--link .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
    height: 6.6rem;
    width: 6.6rem;
  }
  .serviceAbout__support--link .icon:before {
    margin-bottom: 0.8rem;
  }
  .serviceAbout__support--link .outline {
    padding-bottom: 5.5rem;
    right: 0.6rem;
    width: 5.5rem;
  }
  .serviceAbout__support--img {
    margin: 3rem 0 0;
  }
  .serviceFlow__list {
    margin: 6rem 0 0;
  }
  .serviceFlow__item {
    border-radius: 0.8rem;
    box-shadow: 1rem 1rem 1rem rgba(51, 51, 51, 0.05);
    margin: 3.2rem 0 0;
    max-width: 100%;
    padding: 2rem 1.5rem;
    width: 100%;
  }
  .serviceFlow__item:not(:last-child) {
    margin-right: 0;
  }
  .serviceFlow__item:not(:last-child):after {
    border-color: #65828d transparent transparent;
    border-style: solid;
    border-width: 1.2rem 1rem;
    left: calc(50% - 1rem);
    top: calc(100% + 1rem);
  }
  .serviceFlow__item:nth-child(n + 5) {
    margin-top: 3.2rem;
  }
  .serviceFlow__item:nth-child(4):after {
    content: "";
  }
  .serviceFlow__item--title {
    text-align: left;
  }
  .serviceFlow__item--num {
    font-size: 1.6rem;
  }
  .serviceFlow__item--head {
    font-size: 1.8rem;
    line-height: 1.2;
  }
  .serviceFlow__item--img {
    height: auto;
    margin: 0 1.5rem 0 0;
    text-align: center;
    width: 5.5rem;
  }
  .serviceFlow__item--img img {
    height: 4.2rem;
    width: auto;
  }
  .serviceFlow__item--desc {
    font-size: 1.2rem;
  }
  .serviceFaq__faq {
    margin: 4rem 0 0;
  }
  .serviceFaq__mark {
    font-size: 2rem;
    margin-right: 1.2rem;
  }
  .serviceFaq__Q {
    font-size: 1.6rem;
    padding: 2.4rem 4rem 0 0;
  }
  .serviceFaq__Q--text {
    margin-top: 0.5rem;
  }
  .serviceFaq__Q:after,
  .serviceFaq__Q:before {
    top: 4.3rem;
    width: 1.9rem;
  }
  .serviceFaq__Q.open {
    padding-bottom: 1.7rem;
  }
  .serviceFaq__A {
    font-size: 1.46rem;
    line-height: 1.857;
    margin: 0 0 2rem;
  }
  .serviceFaq__A--text {
    margin-top: 0.4rem;
  }
  .serviceFaq__list {
    margin: 8rem 0 0;
  }
  .serviceFaq__item {
    margin: 2rem 0 0;
    width: 100%;
  }
  .serviceFaq__arrow {
    flex: none;
    font-size: 1.4rem;
    height: 4.6rem;
    width: 4.6rem;
  }
  .serviceFaq__arrow .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
  }
  .serviceFaq__arrow .icon:before {
    margin-bottom: 0.3rem;
    margin-right: 0.3rem;
  }
  .serviceFaq__arrow .outline {
    padding-bottom: 4rem;
    right: 0.6rem;
    width: 4rem;
  }
  .serviceFaq__head {
    border-bottom: 1px solid #b4b4b4;
    font-size: 1.8rem;
    padding-bottom: 1rem;
  }
  .serviceFaq__body {
    margin: 1.5rem 0 0;
  }
  .serviceFaq__desc {
    font-size: 1.2rem;
    line-height: 1.66;
  }
  .recruit {
    padding: 10rem 0;
  }
  .recruit__side {
    position: relative;
    top: auto;
    width: 100%;
  }
  .recruit__main {
    width: 100%;
  }
  .recruitSide {
    overflow: auto;
  }
  .recruitSide__list {
    padding-left: 0;
  }
  .recruitSide__item {
    flex: none;
    font-size: 1.6rem;
    margin-right: 2.5rem;
    padding: 0.5rem 0;
  }
  .recruitSide__item .icon {
    font-size: 1rem;
    margin-left: 0.8rem;
  }
  .recruitMain {
    margin: 5rem auto 0;
  }
  .recruitMain__sec:not(:first-child) {
    margin: 8rem auto 0;
  }
  .recruitMain__head--en {
    font-size: 3rem;
  }
  .recruitMain__head--ja {
    font-size: 1.8rem;
  }
  .recruitMessage__head {
    font-size: 2.2rem;
    line-height: 1.81;
  }
  .recruitMessage__sec {
    margin: 4rem 0 0;
  }
  .recruitMessage__sec:first-of-type {
    margin-top: 4rem;
  }
  .recruitMessage__img {
    border-radius: 0.8rem;
    width: 100%;
  }
  .recruitMessage__text {
    font-size: 1.4rem;
    margin: 3rem 0 0;
    width: 100%;
  }
  .recruitWorks__text {
    font-size: 1.4rem;
    margin: 2.8rem 0 0;
  }
  .recruitWorks__text:first-child {
    margin-top: 4rem;
  }
  .recruitWorks__subhead {
    font-size: 1.8rem;
    margin: 2.8rem 0 0;
  }
  .recruitWorks__item {
    border-radius: 0.8rem;
    box-shadow: 1.5rem 1rem 2rem hsla(0, 0%, 62%, 0.15);
    height: 5.6rem;
    margin: 2rem 0 0;
    width: 100%;
  }
  .recruitWorks__item:nth-child(n + 3) {
    margin-top: 2rem;
  }
  .recruitWorks__item--text {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
  }
  .recruitSkills__text {
    font-size: 1.6rem;
    line-height: 2;
    margin: 3.2rem 0 0;
  }
  .recruitSkills__text:first-child {
    margin-top: 6rem;
  }
  .recruitSkills__list {
    margin: 2rem 0 0;
  }
  .recruitSkills__item {
    box-shadow: 1.5rem 1rem 2rem hsla(0, 0%, 62%, 0.15);
    font-size: 1.6rem;
    height: 15.4rem;
    letter-spacing: 0.05em;
    line-height: 2;
    margin: 2rem 0 0;
    width: 15.4rem;
  }
  .recruitPersonality__subhead {
    font-size: 1.8rem;
    line-height: 1.77;
  }
  .recruitPersonality__text {
    font-size: 1.4rem;
    margin: 2.8rem 0 0;
  }
  .recruitPersonality__text:first-child {
    margin-top: 3rem;
  }
  .recruitPersonality__list {
    margin: 2rem 0 0;
  }
  .recruitPersonality__item {
    font-size: 1.3rem;
    height: 13.4rem;
    line-height: 1.77;
    margin: 11.2rem 0 0;
    width: 13.4rem;
  }
  .recruitPersonality__item:nth-child(2) {
    margin: 0 -3rem;
  }
  .recruitPortfolio__slide {
    height: 19rem;
    margin: 4rem 0 0;
  }
  .recruitAttractive__list {
    margin: 4rem 0 0;
  }
  .recruitAttractive__item {
    margin: 2.5rem 0 0;
  }
  .recruitAttractive__item--num {
    font-size: 1.6rem;
    height: 5rem;
    width: 5rem;
  }
  .recruitAttractive__item--text {
    margin-left: 1.5rem;
  }
  .recruitAttractive__item--head {
    font-size: 2rem;
    padding: 1rem 0;
  }
  .recruitAttractive__item--desc {
    font-size: 1.4rem;
  }
  .recruitWelfare__list {
    margin: 2rem 0 0;
  }
  .recruitWelfare__item {
    margin: 2rem 0 0;
    width: calc(33.33333% - 0.96667rem);
  }
  .recruitWelfare__item:not(:nth-child(3n + 1)) {
    margin-left: 1.45rem;
  }
  .recruitWelfare__item--icon {
    box-shadow: 1rem 1rem 1rem rgba(51, 51, 51, 0.05);
    height: 10.2rem;
    padding: 0 3rem;
    width: 10.2rem;
  }
  .recruitWelfare__item--text {
    font-size: 1.1rem;
    margin: 1rem 0 0;
  }
  .recruitDescription__list {
    border-radius: 0.8rem;
    margin: 4rem 0 0;
    padding: 0.6rem 1.5rem;
  }
  .recruitDescription__desc:not(:first-of-type),
  .recruitDescription__head:not(:first-of-type) {
    border-top: none;
  }
  .recruitDescription__head {
    font-size: 1.6rem;
    padding: 2.4rem 0 0;
    width: 100%;
  }
  .recruitDescription__head:not(:first-of-type) {
    border-top: 1px solid #b4b4b4;
  }
  .recruitDescription__desc {
    font-size: 1.4rem;
    margin: 1rem 0 0;
    padding: 0 0 2.4rem;
    width: 100%;
  }
  .recruitFlow__list {
    margin: 0.8rem 0 0;
  }
  .recruitFlow__item {
    border-radius: 0.8rem;
    box-shadow: 1rem 1rem 1rem rgba(51, 51, 51, 0.05);
    margin: 3.2rem 0 0;
    padding: 2.8rem 1.5rem;
    width: 100%;
  }
  .recruitFlow__item:not(:first-child) {
    margin-left: 0;
  }
  .recruitFlow__item:not(:first-child):before {
    border-color: #65828d transparent transparent;
    border-style: solid;
    border-width: 1.2rem 1rem;
    left: calc(50% - 1rem);
    top: -2.2rem;
  }
  .recruitFlow__item--head {
    font-size: 1.6rem;
    text-align: left;
  }
  .recruitFlow__item--icon {
    margin: 0 1.5rem 0 0;
    max-width: 5.5rem;
  }
  .recruitFlow__item--desc {
    font-size: 1.2rem;
    margin: 1.5rem 0 0;
    width: 100%;
  }
  .recruitFaq__list {
    margin: 4rem 0 0;
  }
  .recruitFaq__Q {
    font-size: 1.6rem;
    line-height: 1.75;
    padding: 2.4rem 4rem 0 0;
    position: relative;
  }
  .recruitFaq__Q:after,
  .recruitFaq__Q:before {
    top: 3.6rem;
    width: 2rem;
  }
  .recruitFaq__Q.open {
    padding-bottom: 1.8rem;
  }
  .recruitFaq__A {
    line-height: 1.85;
    margin: 0 0 2.4rem;
  }
  .recruitFaq__head {
    font-size: 2rem;
    width: 2.7rem;
  }
  .recruitEntry {
    border-radius: 0.8rem;
    padding: 1.6rem 1.5rem 2.8rem;
  }
  .recruitEntry__text {
    font-size: 1.6rem;
    padding-bottom: 1.5rem;
  }
  .recruitEntry__link {
    font-size: 1.5rem;
    height: 6.6rem;
    padding-right: 6.6rem;
  }
  .recruitEntry__link .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
    height: 6.6rem;
    width: 6.6rem;
  }
  .recruitEntry__link .icon:before {
    margin-bottom: 0.8rem;
  }
  .recruitEntry__link .outline {
    padding-bottom: 5.8rem;
    position: absolute;
    right: 0.4rem;
    width: 5.8rem;
  }
  .reason {
    padding: 10rem 0;
  }
  .reason__head {
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 1.69;
    margin: 5rem 0 0;
  }
  .reason__intro {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .reason__sec {
    padding: 6rem 0;
  }
  .reason__img {
    border-radius: 0.8rem;
    margin: 2rem 0 0;
    min-height: 60vw;
    width: 100%;
  }
  .reason__text {
    width: 100%;
  }
  .reason__subhead--num {
    font-size: 6.7rem;
  }
  .reason__subhead--text {
    font-size: 1.8rem;
    margin-left: 2rem;
  }
  .reason__detail {
    font-size: 1.4rem;
    margin: 1.4rem 0 0;
  }
  .reason__detail:first-of-type {
    margin-top: 2rem;
  }
  .reasonNav__list {
    margin: 8rem 0 0;
  }
  .reasonNav__item {
    margin: 2rem 0 0;
    width: 100%;
  }
  .reasonNav__arrow {
    flex: none;
    font-size: 1.4rem;
    height: 4.6rem;
    width: 4.6rem;
  }
  .reasonNav__arrow .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
  }
  .reasonNav__arrow .icon:before {
    margin-bottom: 0.3rem;
    margin-right: 0.3rem;
  }
  .reasonNav__arrow .outline {
    padding-bottom: 4rem;
    right: 0.6rem;
    width: 4rem;
  }
  .reasonNav__head {
    border-bottom: 1px solid #b4b4b4;
    font-size: 1.8rem;
    padding-bottom: 1rem;
  }
  .reasonNav__body {
    margin: 1.5rem 0 0;
  }
  .reasonNav__desc {
    font-size: 1.2rem;
    line-height: 1.66;
  }
  .privacypolicy {
    padding: 10rem 0;
  }
  .privacypolicy__head {
    font-size: 2.4rem;
  }
  .privacypolicy__section {
    border-radius: 0.8rem;
    margin: 4rem 0 0;
    padding: 4.5rem 1.5rem;
  }
  .privacypolicy__subhead {
    font-size: 2rem;
    line-height: 1.8;
    margin: 4rem 0 0;
  }
  .privacypolicy__text {
    font-size: 1.4rem;
  }
  .privacypolicy__text:not(:first-child) {
    margin-top: 2rem;
  }
  .privacypolicy__list {
    font-size: 1.4rem;
  }
  .privacypolicy__list:not(:first-child) {
    margin-top: 2rem;
  }
  .error404 {
    padding: 10rem 0 8rem;
  }
  .error404__head--en {
    font-size: 4rem;
    line-height: 1;
  }
  .error404__head--ja {
    font-size: 2rem;
    line-height: 1.8;
    margin-top: 2rem;
  }
  .error404__text {
    font-size: 1.4rem;
    line-height: 2;
    margin: 4rem 0 0;
  }
  .error404__back {
    margin: 4rem 0 0;
  }
  .contact {
    padding: 5rem 0 6rem;
  }
  .contact__thanks {
    padding-top: 10rem;
  }
  .contact__head {
    font-size: 2.4rem;
  }
  .contact__desc {
    font-size: 1.3rem;
    line-height: 2;
  }
  .contactStep,
  .contact__desc {
    margin: 4rem 0 0;
  }
  .contactStep:before {
    left: 0;
    width: 100%;
  }
  .contactStep__item {
    box-shadow: 1rem 1rem 1.5rem rgba(51, 51, 51, 0.05);
    height: 8.6rem;
    width: 8.6rem;
  }
  .contactStep__item:not(:first-child) {
    margin-left: auto;
  }
  .contactStep__item--num {
    font-size: 1.7rem;
  }
  .contactStep__item--text {
    font-size: 1.5rem;
  }
  .contactForm {
    margin: 2.5rem 0 0;
  }
  .contactForm div.contactForm__tab {
    border-radius: 3rem;
    font-size: 1.5rem;
    height: 6rem;
    padding: 0.6rem;
  }
  .contactForm div.contactForm__tab .mwform-radio-field {
    width: calc(50% - 0.3rem);
  }
  .contactForm div.contactForm__tab label {
    border-radius: 2.4rem;
  }
  .contactForm__container {
    border-radius: 0.8rem;
    box-shadow: 1.5rem 1.5rem 2rem rgba(91, 91, 91, 0.05);
    margin: 2.5rem 0 0;
    padding: 2.5rem 1.5rem 4.5rem;
  }
  .contactForm__ttl {
    color: #141419;
    font-size: 1.4rem;
    margin: 2rem 0 0;
  }
  .contactForm__ttl .note {
    font-size: 1.2rem;
    font-weight: 300;
    margin-left: 1rem;
  }
  .contactForm__ttl .required {
    font-size: 1.2rem;
    line-height: 2.2rem;
  }
  .contactForm__dtl--industry {
    white-space: nowrap;
    width: 100%;
  }
  .contactForm__dtl--industry:not(:first-child) {
    margin: 1rem 0 0;
  }
  .contactForm__dtl--radio {
    font-size: 1.4rem;
  }
  .contactForm__dtl--radio .mwform-radio-field {
    display: block;
    margin: 0.7rem 1.5rem 0.7rem 0;
  }
  .contactForm__input,
  .contactForm__select,
  .contactForm__textarea {
    padding: 1.2rem 2rem;
  }
  .contactForm__input {
    width: 100%;
  }
  .contactForm__select {
    background-size: 0.7rem auto;
    width: 65.5%;
  }
  .contactForm__select--birth {
    width: 7rem;
  }
  .contactForm__select--birth[name="birthYear"] {
    width: 11rem;
  }
  .contactForm__select--industry {
    width: 100%;
  }
  .contactForm .mwform-radio-field label {
    padding-left: 3rem;
  }
  .contactForm .mwform-radio-field label:before {
    height: 2.2rem;
    width: 2.2rem;
  }
  .contactForm .mwform-radio-field label.checked:after {
    height: 1.1rem;
    left: 0.55rem;
    width: 1.1rem;
  }
  .contactForm__btn {
    margin: 4rem auto 0;
  }
  .contactForm__submit {
    border-radius: 3rem;
    font-size: 1.6rem;
    height: 6rem;
    width: 28rem;
  }
  .contactFormConfirm .contactForm__back {
    left: auto;
    margin: 2rem 0 0;
    position: relative;
    text-align: left;
    width: 28rem;
  }
  .contactComplete {
    border-radius: 0.8rem;
    margin: 4rem 0 0;
    padding: 4.5rem 1.5rem;
    text-align: left;
  }
  .contactComplete__head {
    font-size: 2rem;
    line-height: 1.8;
  }
  .contactComplete__text {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .consultant {
    padding: 10rem 0 8rem;
  }
  .consultant__intro--head {
    font-size: 1.8rem;
  }
  .consultant__intro--desc {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .consultant__list {
    margin: 5rem 0 0;
  }
  .consultant__item {
    border-radius: 0.8rem;
    box-shadow:
      1rem 0.6rem 2rem #9e9e9e,
      0.1;
    margin: 2rem 0 0;
    width: 16rem;
  }
  .consultant__item:nth-child(2n) {
    margin-left: 0;
  }
  .consultant__item--img {
    border-radius: 0.8rem 0.8rem 0 0;
    height: 16rem;
  }
  .consultant__item--text {
    padding: 1.1rem 1rem;
  }
  .consultant__item--post {
    font-size: 1.1rem;
  }
  .consultant__item--name {
    font-size: 1.5rem;
  }
  .consultant__item--name .en {
    font-size: 1.1rem;
  }
  .consultant__item--arrow {
    font-size: 1rem;
    height: 3rem;
    width: 3rem;
  }
  .consultant__item--arrow .icon {
    height: 3rem;
    width: 3rem;
  }
  .consultant__item--arrow .icon:before {
    margin: 0 0.2rem 0.3rem 0;
  }
  .consultant__item--arrow .outline {
    padding-bottom: 2.6rem;
    right: 0.3rem;
    width: 2.6rem;
  }
  .consultantSingle {
    overflow: hidden;
  }
  .consultantSingle__catchcopy {
    font-size: 2.6rem;
    line-height: 1.84;
  }
  .consultantSingle__profile {
    border-radius: 0.8rem;
    margin: 4rem 0 0;
  }
  .consultantSingle__profile--img {
    border-radius: 0.8rem;
    height: 14rem;
    overflow: hidden;
    width: 14rem;
  }
  .consultantSingle__profile--text {
    padding: 1.5rem;
  }
  .consultantSingle__profile--post {
    font-size: 1.6rem;
  }
  .consultantSingle__profile--data {
    border-bottom: none;
    line-height: 1.2;
    margin: 0.8rem 0 0;
    padding-bottom: 0;
  }
  .consultantSingle__profile--name {
    font-size: 2.2rem;
  }
  .consultantSingle__profile--en {
    font-size: 1.5rem;
    margin-left: 0;
  }
  .consultantSingle__profile--introduce {
    border-top: 1px solid #b4b4b4;
    font-size: 1.4rem;
    line-height: 1.57;
    margin: 1.5rem 0 0;
    padding: 1.5rem 0 0;
    width: 100%;
  }
  .consultantSingle__interview {
    margin: 6rem 0 0;
    padding: 0 0 6rem;
  }
  .consultantSingle__interview--img {
    margin: 3rem 0 0;
    width: 100%;
  }
  .consultantSingle__interview--text {
    width: 100%;
  }
  .consultantSingle__interview--head {
    font-size: 2.2rem;
    line-height: 1.81;
  }
  .consultantSingle__interview--head .num {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
  .consultantSingle__interview--desc {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .consultantSingle__contact {
    margin: 6rem 0 0;
    padding: 0 0 6rem;
  }
  .consultantSingle__contact--link {
    background: url(../img/consultant_contact_bg.png) no-repeat 50% / cover;
    border-radius: 0.8rem;
    font-size: 2.8rem;
    padding: 2.4rem 0 2.8rem;
  }
  .consultantSingle__contact--link .note {
    font-size: 1.4rem;
  }
  .consultantOther {
    margin: 6rem 0 0;
  }
  .consultantOther__head--en {
    font-size: 2.4rem;
    line-height: 1;
  }
  .consultantOther__head--ja {
    font-size: 1.8rem;
    margin-left: 2rem;
    padding-left: 2rem;
  }
  .consultantOther__container {
    margin: 4rem 0 0;
  }
  .consultantOther__item {
    margin: 2rem 0 0;
    padding: 0 1em 4rem;
    width: 18rem;
  }
  .consultantOther__item--link {
    border-radius: 0.8rem;
    box-shadow: 1rem 0.6rem 2rem hsla(0, 0%, 62%, 0.15);
  }
  .consultantOther__item--img {
    border-radius: 0.8rem 0.8rem 0 0;
    height: 18rem;
  }
  .consultantOther__item--text {
    padding: 1rem 1.5rem;
  }
  .consultantOther__item--post {
    font-size: 1.1rem;
  }
  .consultantOther__item--post.blank {
    height: 1.98rem;
  }
  .consultantOther__item--name .ja {
    font-size: 1.6rem;
  }
  .consultantOther__item--name .en {
    font-size: 1.1rem;
  }
  .company {
    padding: 10rem 0;
  }
  .company__head--en {
    font-size: 3rem;
  }
  .company__head--ja {
    font-size: 1.8rem;
  }
  .company__sec {
    padding: 8rem 0;
  }
  .companyNav__item {
    margin-right: 0;
  }
  .companyNav__link {
    font-size: 1.6rem;
  }
  .companyNav__link .icon {
    font-size: 1rem;
    margin-left: 0.8rem;
  }
  .companyIntro {
    margin: 5rem 0 0;
    padding: 4.5rem 0 4.8rem;
  }
  .companyIntro:before {
    border-radius: 5rem;
    width: 100%;
  }
  .companyIntro__head {
    font-size: 4.8rem;
  }
  .companyIntro__subhead {
    font-size: 2.8rem;
    line-height: 1.85;
    margin: 3.6rem 0 0;
  }
  .companyIntro__text {
    font-size: 1.4rem;
    margin: 3.5rem 0 0;
  }
  .companyMessage__sec {
    margin: 4rem 0 0;
  }
  .companyMessage__img {
    border-radius: 0.8rem;
    box-shadow: 1rem 1rem 1.5rem rgba(51, 51, 51, 0.05);
    width: 100%;
  }
  .companyMessage__text {
    margin: 3rem 0 0;
  }
  .companyMessage__catchcopy {
    font-size: 2rem;
  }
  .companyMessage__desc {
    font-size: 1.4rem;
    margin: 2.4rem 0 0;
  }
  .companyMessage__desc:first-of-type {
    margin-top: 2.4rem;
  }
  .companyMission__catchcopy {
    font-size: 2.4rem;
    margin: 4rem 0 0;
  }
  .companyMission__container {
    background: #fff url(../img/company_purpose_bg_sp.png) no-repeat 100% 100%/100% auto;
    border-radius: 0.8rem;
    margin: 4.5rem 0 0;
    padding: 2rem 1.5rem;
  }
  .companyMission__subhead {
    font-size: 4.7rem;
    margin: 2.3rem 0 0;
  }
  .companyMission__list {
    margin: 0.2rem 0 0;
  }
  .companyMission__item {
    font-size: 1.4rem;
    height: 12rem;
    line-height: 1.7;
    width: 12rem;
  }
  .companyMission__item:nth-child(2n) {
    margin: 0;
  }
  .companyMission__item:first-child {
    margin: 0 calc(50% - 6rem);
  }
  .companyMission__item:nth-child(2),
  .companyMission__item:nth-child(3),
  .companyMission__item:nth-child(4),
  .companyMission__item:nth-child(6) {
    margin: -4rem 0 0;
  }
  .companyMission__item:nth-child(5),
  .companyMission__item:nth-child(7) {
    margin: -4rem calc(50% - 6rem) 0;
  }
  .companyMission__item:nth-child(4) {
    order: 5;
  }
  .companyMission__item:nth-child(5) {
    order: 4;
    padding: 0 1.5rem;
  }
  .companyMission__item:nth-child(6) {
    order: 6;
  }
  .companyMission__item:nth-child(7) {
    order: 7;
  }
  .companyCompany__sec {
    margin: 4rem 0 0;
  }
  .companyCompany__img {
    border-radius: 0.8rem;
    width: 100%;
  }
  .companyCompany__list {
    margin: 4rem 0 0;
  }
  .companyCompany__item {
    font-size: 1.8rem;
    margin: 2rem 0 0;
    width: 100%;
  }
  .companyCompany__item:not(:first-of-type) {
    margin: 2rem 0 0;
  }
  .companyCompany__item:before {
    height: 0.8rem;
    margin-right: 1rem;
    margin-top: 0;
    width: 0.8rem;
  }
  .companyCompany__val {
    font-size: 1.4rem;
    margin: 0.8rem 0 0;
    padding-left: 1.8rem;
    width: 100%;
  }
  .companyCompany__val:not(:first-of-type) {
    margin: 0.8rem 0 0;
  }
  .companyFooter {
    margin: 0;
  }
  .companyFooter__item {
    width: 13rem;
  }
  .companyFooter__item:not(:first-child) {
    margin: 2.5rem 0 0;
  }
  .companyFooter__link {
    font-size: 1.5rem;
    height: 6.6rem;
    justify-content: flex-end;
    padding-right: 6.6rem;
    width: 11.4rem;
  }
  .companyFooter__link .hoverIcon {
    margin-bottom: 0.8rem;
    opacity: 0;
  }
  .companyFooter__link .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
    height: 6.6rem;
    width: 6.6rem;
  }
  .companyFooter__link .icon:before {
    margin-bottom: 0.8rem;
  }
  .companyFooter__link .outline {
    padding-bottom: 5.8rem;
    position: absolute;
    right: 0.4rem;
    width: 5.8rem;
  }
  .column {
    padding: 10rem 0 8rem;
  }
  .column__main {
    order: 2;
    width: 100%;
  }
  .column__side {
    order: 1;
    width: 100%;
  }
  .column__category {
    margin: 4rem 0 0;
  }
  .column__category--current {
    font-size: 2.2rem;
  }
  .column__list {
    margin: 0;
    display: grid;
    gap: 2.4rem;
  }
  .column__item--img {
    border-radius: 0.8rem;
    height: auto;
    margin-right: 0;
    width: 100%;
  }
  .column__item--data {
    margin: 0.8rem 0 0;
  }
  .column__item--date {
    font-size: 1.4rem;
  }
  .column__item--category {
    border: 1px solid #b4b4b4;
    font-size: 1.2rem;
    margin-left: 1rem;
    padding: 0.1rem 0.9rem;
  }
  .column__item--title {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    font-size: 1.8rem;
    line-height: 1.66;
    margin: 0.8rem 0 0;
    overflow: hidden;
  }
  .column__item--tags {
    margin: 1rem 0 0;
  }
  .column__item--tag {
    font-size: 1.4rem;
    margin: 1.5rem 1.5rem 0 0;
  }
  .columnPager {
    margin: 6rem 0 0;
  }
  .columnPager__item {
    font-size: 1.5rem;
    height: 4rem;
    width: 4rem;
  }
  .columnPager__item.prev .icon {
    margin-top: 0.4rem;
  }
  .columnSide {
    margin: 5rem 0 0;
  }
  .columnSide__block {
    background: linear-gradient(90deg, #488faa, #65828d);
    border-radius: 0.8rem;
    overflow: hidden;
    padding: 1rem 1.5rem;
    position: relative;
  }
  .columnSide__block:not(:first-child) {
    margin-top: 1rem;
  }
  .columnSide__head {
    border: none;
    color: #fff;
    font-size: 2rem;
    padding: 0;
    position: relative;
  }
  .columnSide__head:after,
  .columnSide__head:before {
    background: #fff;
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    right: 0;
    top: 1.8rem;
    transition: 0.5s;
    width: 1.6rem;
  }
  .columnSide__head:after {
    transform: rotate(90deg);
  }
  .columnSide__head.open {
    margin: 0 0 2rem;
  }
  .columnSide__head.open:before {
    transform: rotate(45deg);
  }
  .columnSide__head.open:after {
    transform: rotate(135deg);
  }
  .columnSide__category--item {
    margin: 0.6rem 0;
  }
  .columnSide__category--link {
    font-size: 1.4rem;
  }
  .columnSide__tag--list {
    height: 0;
    margin: 0;
    overflow: hidden;
    transition: height 0.5s;
  }
  .columnSide__tag--item {
    margin: 0.6rem 0;
  }
  .columnSide__tag--link {
    color: #fff;
    font-size: 1.4rem;
  }
  .columnSingle__data {
    margin: 4rem 0 0;
  }
  .columnSingle__date {
    font-size: 1.4rem;
  }
  .columnSingle__category {
    border: 1px solid #b4b4b4;
    font-size: 1.2rem;
    margin-left: 1rem;
    padding: 0.1rem 0.9rem;
  }
  .columnSingle__title {
    font-size: 2.2rem;
    line-height: 1.54;
    margin: 1rem 0 0;
  }
  .columnSingle__tag {
    font-size: 1.4rem;
    margin: 1rem 1.5rem 0 0;
  }
  .columnSingle__content {
    margin: 4rem 0 0;
  }
  .columnSingle__content :first-child {
    margin-top: 0;
  }
  .columnSingle__content h2 {
    font-size: 2.2rem;
    line-height: 1.54;
    margin: 3rem 0 0;
  }
  .columnSingle__content h3 {
    font-size: 2rem;
    line-height: 1.6;
    margin: 4rem 0 0;
  }
  .columnSingle__content h4 {
    font-size: 1.8rem;
    line-height: 1.66;
    margin: 4rem 0 0;
  }
  .columnSingle__content p {
    font-size: 1.4rem;
    margin: 2.4rem 0 0;
  }
  .columnSingle__content img {
    display: block;
  }
  .columnSingle__content .wp-block-image {
    margin: 2.4rem 0;
  }
  .columnSingle__content img.alignright {
    float: none;
    margin-bottom: 1.5rem;
    margin-left: 0;
  }
  .columnSingle__content img.alignleft {
    float: none;
    margin-bottom: 1.5rem;
    margin-right: 0;
  }
  .columnSingle__content ol,
  .columnSingle__content ul {
    margin: 2.4rem 0 0;
    padding-left: 2rem;
  }
  .columnSingle__content blockquote {
    margin: 2.4rem 0 0;
  }
  .achievement {
    padding: 10rem 0;
  }
  .achievement__head {
    font-size: 2.6rem;
    letter-spacing: 0.05em;
    line-height: 1.69;
    margin: 5rem 0 0;
  }
  .achievement__intro {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .achievement__subhead {
    margin: 5rem 0 0;
  }
  .achievement__subhead--en {
    font-size: 3rem;
  }
  .achievement__subhead--ja {
    font-size: 1.8rem;
  }
  .achievement__list {
    margin: 3rem 0 0;
  }
  .achievement__item {
    border-radius: 0.8rem;
  }
  .achievement__item:not(:first-child) {
    margin: 3rem 0 0;
  }
  .achievement__num {
    font-size: 2.4rem;
    padding: 1.3rem 1.5rem;
  }
  .achievement__body {
    padding: 1.5rem;
  }
  .achievement__icon {
    margin-right: 1.5rem;
    width: 5rem;
  }
  .achievement__attr {
    font-size: 1.6rem;
  }
  .achievement__beforeafter {
    font-size: 1.4rem;
    margin: 1.5rem 0 0;
    padding: 1.5rem 0;
    width: 100%;
  }
  .achievement__after {
    margin: 1rem 0 0;
  }
  .achievement__ttl {
    font-size: 1.6rem;
    line-height: 1.75;
    margin: 1.5rem 0 0;
  }
  .achievement__dtl {
    font-size: 1.4rem;
    line-height: 1.85;
    margin: 1.5rem 0 0;
  }
  .achievementNav__list {
    margin: 8rem 0 0;
  }
  .achievementNav__item {
    margin: 2rem 0 0;
    width: 100%;
  }
  .achievementNav__arrow {
    flex: none;
    font-size: 1.4rem;
    height: 4.6rem;
    width: 4.6rem;
  }
  .achievementNav__arrow .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
  }
  .achievementNav__arrow .icon:before {
    margin-bottom: 0.3rem;
    margin-right: 0.3rem;
  }
  .achievementNav__arrow .outline {
    padding-bottom: 4rem;
    right: 0.6rem;
    width: 4rem;
  }
  .achievementNav__head {
    border-bottom: 1px solid #b4b4b4;
    font-size: 1.8rem;
    padding-bottom: 1rem;
  }
  .achievementNav__body {
    margin: 1.5rem 0 0;
  }
  .achievementNav__desc {
    font-size: 1.2rem;
    line-height: 1.66;
  }
  .pageHead {
    margin-bottom: 5rem;
  }
  .pageHead__en {
    font-size: 4rem;
  }
  .pageHead__ja {
    font-size: 1.6rem;
  }
  .backBtn {
    font-size: 1.5rem;
    height: 6.6rem;
    margin: 4rem auto 0;
  }
  .backBtn .icon,
  .backBtn__icon {
    height: 6.6rem;
    width: 6.6rem;
  }
  .backBtn .icon:before {
    margin-bottom: 0.8rem;
  }
  .backBtn .outline {
    left: 0.4rem;
    padding-bottom: 5.8rem;
    width: 5.8rem;
  }
  .ctaContact__link {
    background:
      linear-gradient(90deg, #333, #364e57) no-repeat 50% / cover,
      url(../img/top_contact_bg.png) no-repeat 50% / cover;
    padding: 4.8rem 0;
  }
  .ctaContact__link:hover {
    cursor: pointer;
  }
  .ctaContact__icon {
    height: 10.4rem;
    margin: 3rem auto 0;
    width: 10.4rem;
  }
  .ctaContact__icon .icon {
    align-items: center;
    background: #fff;
    border-radius: 50%;
    box-shadow: 2rem 2rem 2rem rgba(91, 91, 91, 0.05);
    color: #333;
    display: flex;
    font-size: 4rem;
    height: 10.4rem;
    justify-content: center;
    position: relative;
    width: 10.4rem;
  }
  .ctaContact__icon .icon:before {
    margin-bottom: 0.8rem;
  }
  .ctaContact__icon .icon:after {
    border: 2px solid #333;
    border-radius: 50%;
    content: "";
    display: block;
    height: 9rem;
    left: 0.7rem;
    position: absolute;
    top: 0.7rem;
    width: 9rem;
  }
  .ctaContact__text {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .pageFooterNav {
    padding: 6rem 0 0;
  }
  .pageFooterNav__item:not(:first-child) {
    margin: 2.5rem 0 0;
  }
  .pageFooterNav__link {
    font-size: 1.5rem;
    height: 6.6rem;
    justify-content: flex-end;
    padding-right: 6.6rem;
    width: 11.4rem;
  }
  .pageFooterNav__link .hoverIcon {
    margin-bottom: 0.8rem;
    opacity: 0;
  }
  .pageFooterNav__link .icon {
    box-shadow: 0.5rem 0.5rem 1rem rgba(91, 91, 91, 0.05);
    height: 6.6rem;
    width: 6.6rem;
  }
  .pageFooterNav__link .icon:before {
    margin-bottom: 0.8rem;
  }
  .pageFooterNav__link .outline {
    padding-bottom: 5.8rem;
    position: absolute;
    right: 0.4rem;
    width: 5.8rem;
  }
}
@media screen and (orientation: landscape) {
  .md-overlay--ripple {
    height: 300vw;
    width: 300vw;
  }
} /*# sourceMappingURL=common.css.map */

.c-recommended-posts__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;

  @media screen and (max-width: 768px) {
    grid-template-columns: repeat(1, 1fr);
  }

  .column__item {
  }
  .column__item--img {
    border-radius: 0.8rem;
    height: auto;
    margin-right: 0;
    width: 100%;
  }
  .column__item--data {
    margin: 0.8rem 0 0;
  }
}
