@charset "UTF-8";
:root {
  --color-primary: #00a67f;
  --color-primary-bg: #e8f8f6;
  --color-secondary: #43a9f6;
  --color-secondary-bg: #f2e7dd;
  --color-tertiary: #43a9f6;
  --color-quaternary: #14bfbf;
  --color-other: #ee8523;
  --color-bg: #f5f5f5;
  --color-bg02: #fff;
  --color-gray-light: #e5e5e5;
  --color-slider-arrow: var(--color-white);
  --color-cv-primary: #000;
  --color-cv-secondary: #fb2c36;
  --color-footer-bg: #00a67f;
  --color-border-gray: #0000001a;
  --color-denger: #df1919;
  --color-placeholder: #ccc;
  --color-gradation-01: linear-gradient(90deg, #006cdb 0%, #4fb7ff);
  --color-gradation-02: linear-gradient(
    90deg,
    #203eee 0%,
    #416ae1 47.78%,
    #8356e8
  );
  --color-gradation-03: linear-gradient(
    90deg,
    #1789e1 0%,
    #35c6f1 48%,
    #28d6d1
  );
  --color-gradation-04: linear-gradient(90deg, #2f64da 0%, #5cbef9);
  --primary-gradient: linear-gradient(
    150deg,
    rgba(254, 185, 0, 0.996),
    #f83600
  );
  --color-button-solid: #000;
  --color-button-gradient01: linear-gradient(
    90deg,
    #203eee 0%,
    #416ae1 26%,
    #8356e8 50%,
    #416ae1 74%,
    #203eee
  );
  --color-button-gradient02: linear-gradient(
    90deg,
    #1789e1 0%,
    #35c6f1 28%,
    #28d6d1 50%,
    #35c6f1 72%,
    #1789e1
  );
  --color-button-gradient03: linear-gradient(
    90deg,
    #2940f7 0%,
    #6a84fe 50%,
    #2940f7
  );
  --color-button-gradient04: linear-gradient(
    90deg,
    #006cdb 0%,
    #4fb7ff 50%,
    #006cdb
  );
  --color-button-shadow01: 0 0.3125rem 0.5rem #8498bb80;
  --color-button-shadow02: 0px 0.3125rem 0.5rem #0003;
  --change-color-bg: #fff;
  --change-color-text: #000;
  --change-color-fill: #000;
  --change-color-border: #000;
  --change-translate-x: 0.3125rem;
  --color-black: #000;
  --color-white: #fff;
  --color-gray-25: #252525;
  --color-gray-33: #333;
  --color-gray-5e: #5e5e5e;
  --color-gray-66: #666;
  --color-gray-80: grey;
  --color-gray-99: #999;
  --color-gray-cc: #ccc;
  --color-gray-dd: #ddd;
  --color-gray-ee: #eee;
  --color-gray-e0: #e0e0e0;
  --color-gray-e6: #e6e6e6;
  --color-gray-e5: #e5e5e5;
  --color-gray-f4: #f4f4f4;
  --color-gray-f5: #f5f5f5;
  --color-gray-f7: #f7f7f7;
  --anime-duration: 300ms;
  --anime-function: ease-out;
  --border-radius-s: 0.25rem;
  --border-radius-m: 0.75rem;
  --border-radius-l: 2.5rem;
  --font-size-base: 16;
  --color-text-base: #000;
  --color-text-gray: #999;
  --font-family:
    "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", meiryo,
    sans-serif;
  --font-family-en: "Outfit", sans-serif;
  --line-height-large: 2;
  --line-height-largeish: 1.9;
  --line-height-base: 1.75;
  --line-height-smallish: 1.6;
  --line-height-small: 1.4;
  --line-height-heading-base: 1.5;
  --letter-spacing-none: 0em;
  --letter-spacing-min: 0.01em;
  --letter-spacing-large: 0.04em;
  --letter-spacing-base: 0.03em;
  --letter-spacing-heading-large: 0.06em;
  --letter-spacing-heading-base: 0.04em;
  --letter-spacing-heading-small: 0em;
  --page-wrap-px: 10;
}
@media (min-width: 750px) {
  :root {
    --font-size-base: 16;
    --page-wrap-px: 28;
    --content-width-base: 1200;
  }
}
:root {
  --color-release: #7188d6;
  --color-event: #00ad9a;
  --color-info: #e3a461;
}
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,
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;
  box-sizing: border-box;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: initial;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
section { margin-bottom: 0!important;}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a {
  cursor: pointer;
  text-decoration: none;
}
input,
select {
  vertical-align: middle;
}
strong {
  font-weight: 400;
}
@font-face {
  font-display: swap;
  font-family: Noto Sans JP;
  font-style: normal;
  font-weight: 400;
  src:
    url(/ja/recruit/lp/NotoSansCJKjp-Regular-sub-j1.otf) format("opentype"),
    url(/ja/recruit/lp/NotoSansCJKjp-Regular-sub-j1.woff) format("opentype");
}
@font-face {
  font-display: swap;
  font-family: Noto Sans JP;
  font-style: normal;
  font-weight: 700;
  src:
    url(/ja/recruit/lp/NotoSansCJKjp-Bold-sub-j1.otf) format("opentype"),
    url(/ja/recruit/lp/NotoSansCJKjp-Bold-sub-j1.woff) format("opentype");
}
@font-face {
  font-display: swap;
  font-family: Outfit;
  font-style: normal;
  font-weight: 100 1000;
  src:
    url(/ja/recruit/lp/Outfit-VariableFont_wght.ttf)
      format("truetype supports variations"),
    url(/ja/recruit/lp/Outfit-VariableFont_wght.ttf)
      format("truetype-variations");
}
html {
  font-size: 1rem;
  overflow-y: scroll;
  scrollbar-gutter: stable;
}
@media (min-width: 750px) {
  html {
    font-size: clamp(0.8rem, -0.25rem + 1.3vw, 1rem);
  }
}
body,
html {
  height: auto;
  width: 100%;
}
body {
  color: var(--color-text-base);
  font-family: var(--font-family);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-base);
  line-height: var(--line-height-base);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  background-color: var(--color-bg02);
  font-size: calc(var(--font-size-base) / 16 * 1rem);
}
body.is-fixed {
  left: 0;
  overflow-y: hidden !important;
  position: fixed;
  top: 0;
  width: 100%;
}
img {
  height: auto;
  max-width: 100%;
}
img,
svg {
  vertical-align: bottom;
}
a {
  color: var(--color-text-base);
}
figure {
  line-height: 0;
}
button {
  background: none;
  border: none;
  color: var(--color-text-base);
  cursor: pointer;
  font-family: var(--font-family);
  margin: 0;
  outline: none;
  padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  letter-spacing: var(--letter-spacing-heading-base);
  line-height: var(--line-height-heading-base);
}
h1 .md\:tw-text-8 sup,
h2 .md\:tw-text-8 sup,
h3 .md\:tw-text-8 sup,
h4 .md\:tw-text-8 sup,
h5 .md\:tw-text-8 sup,
h6 .md\:tw-text-8 sup {
  font-size: 0.5em;
}
em {
  font-style: normal;
}
sup {
  font-size: 0.7em;
  vertical-align: super;
}
.is-en {
  font-family: var(--font-family-en);
  letter-spacing: -0.01em;
}
.js-article-more span,
.js-clipboard svg,
.js-select-type span {
  pointer-events: none;
}
.pc-only {
  display: none;
}
@media (min-width: 750px) {
  .pc-only {
    display: block;
  }
}
.sp-only {
  display: block;
}
@media (min-width: 750px) {
  .sp-only {
    display: none;
  }
}
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}
.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}
.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}
.splide--rtl {
  direction: rtl;
}
.splide__track--ttb > .splide__list {
  display: block;
}
.splide__container {
  box-sizing: border-box;
  position: relative;
}
.splide__list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}
.splide__pagination {
  flex-wrap: wrap;
  margin: 0;
  pointer-events: none;
}
.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}
.splide:not(.is-overflow) .splide__pagination {
  display: none;
}
.splide__progress__bar {
  width: 0;
}
.splide {
  position: relative;
  visibility: hidden;
}
.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}
.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}
.splide__slide img {
  vertical-align: bottom;
}
.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: #0000;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
.splide__sr {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
  display: none;
}
.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}
.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.splide.is-shadow .splide__track {
  margin: -1.25rem;
  padding: 1.25rem !important;
}
.splide.is-visible .splide__track {
  overflow: visible;
}
.splide__arrow {
  align-items: center;
  background-color: var(--color-primary);
  border-radius: 50%;
  box-shadow: 0 4px 10px 0 #0003;
  display: flex;
  height: 2.25rem;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition:
    opacity 0.3s ease-out,
    visibility 0.3s ease-out;
  width: 2.25rem;
}
@media (min-width: 750px) {
  .splide__arrow {
    height: 2.8125rem;
    top: 50%;
    width: 2.8125rem;
  }
}
.splide__arrow svg {
  fill: var(--color-slider-arrow);
  height: auto;
  width: 0.625rem;
}
.splide__arrow--next {
  right: -1.25rem;
}
@media (min-width: 750px) {
  .splide__arrow--next {
    right: -3.75rem;
  }
}
.splide__arrow--prev {
  left: -1.25rem;
}
@media (min-width: 750px) {
  .splide__arrow--prev {
    left: -3.75rem;
  }
}
.splide__arrow--prev svg {
  transform: rotate(180deg);
}
.splide__arrow:disabled {
  opacity: 0;
  visibility: hidden;
}
.splide__pagination {
  align-items: center;
  display: flex;
  gap: 0.9375rem;
  justify-content: center;
  margin-top: 0.9375rem;
}
@media (min-width: 750px) {
  .splide__pagination {
    gap: 0.9375rem;
    margin-top: 1.25rem;
  }
}
.splide__pagination__page {
  background-color: #0000004d;
  border: 2px solid var(--color-white);
  border-radius: 50%;
  cursor: pointer;
  height: 0.625rem;
  opacity: 1;
  transition: all 0.3s ease-in-out;
  width: 0.625rem;
}
@media (min-width: 750px) {
  .splide__pagination__page {
    height: 0.625rem;
    width: 0.625rem;
  }
}
.splide__pagination__page.is-active {
  background-color: initial;
  border: 2px solid var(--color-primary);
  opacity: 1;
}
.l-main:has(.o-hero-detail) .o-breadcrumb_section,
.l-main:has(.o-mainvisual) .o-breadcrumb_section,
.l-main:has(.p-mainvisual) .o-breadcrumb_section {
  left: 0;
  position: absolute;
  right: 0;
  top: 3.5rem;
  z-index: 5;
}
@media (min-width: 750px) {
  .l-main:has(.o-hero-detail) .o-breadcrumb_section,
  .l-main:has(.o-mainvisual) .o-breadcrumb_section,
  .l-main:has(.p-mainvisual) .o-breadcrumb_section {
    top: 5rem;
  }
}
.l-main:has(.o-hero-detail)
  .o-breadcrumb_section
  .o-breadcrumb_list
  li:not(:last-child):after,
.l-main:has(.o-mainvisual)
  .o-breadcrumb_section
  .o-breadcrumb_list
  li:not(:last-child):after,
.l-main:has(.p-mainvisual)
  .o-breadcrumb_section
  .o-breadcrumb_list
  li:not(:last-child):after {
  color: var(--color-gray-cc);
}
.l-main:has(.o-hero-detail) .o-breadcrumb_section .o-breadcrumb_link,
.l-main:has(.o-mainvisual) .o-breadcrumb_section .o-breadcrumb_link,
.l-main:has(.p-mainvisual) .o-breadcrumb_section .o-breadcrumb_link {
  color: var(--color-white);
}
.l-section {
  position: relative;
}
.l-section.is-bg-gradient-gray {
  background: var(--color-gradation-02);
  border-top: 1px solid var(--color-gray-e0);
}
.l-section.is-bg-gradient-gray:before {
  background-color: var(--color-bg02);
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.l-section.is-heel-top {
  border-radius: 1.25rem 1.25rem 0 0;
  margin-top: -1.25rem;
}
@media (min-width: 750px) {
  .l-section.is-heel-top {
    border-radius: 2.5rem 2.5rem 0 0;
    margin-top: -2.5rem;
  }
}
.l-section.is-heel-top.o-common-bottom-cta {
  margin-top: 6.25rem;
}
@media (min-width: 750px) {
  .l-section.is-heel-top.o-common-bottom-cta {
    margin-top: 7.5rem;
  }
}
.l-section.is-heel-top.is-shadow {
  box-shadow: 0 -0.5rem 0.5rem #09090a0f;
}
.l-section.is-round-bg {
  background-color: var(--color-bg);
  border-radius: 2.5rem;
  padding: 5rem 0;
}
.l-section.is-border-t-1000:before {
  background-color: var(--color-gray-e5);
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  max-width: 62.5rem;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 94%;
}
@media (min-width: 750px) {
  .l-section.is-border-t-1000:before {
    width: 100%;
  }
}
.l-section.is-border-t-1200:before {
  background-color: var(--color-gray-e5);
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  max-width: 75rem;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 94%;
}
@media (min-width: 750px) {
  .l-section.is-border-t-1200:before {
    width: 100%;
  }
}
.l-section.is-border-t-1400:before {
  background-color: var(--color-gray-e5);
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  max-width: 87.5rem;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 94%;
}
@media (min-width: 750px) {
  .l-section.is-border-t-1400:before {
    width: 100%;
  }
}
.l-wrap {
  padding: 0 0.75rem;
  position: relative;
}
@media (min-width: 750px) {
  .l-wrap {
    padding: 0 1.25rem;
  }
}
.l-content {
  margin: 0 auto;
  position: relative;
  width: 100%;
}
.l-content.is-w-full {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
  width: auto;
}
@media (min-width: 750px) {
  .l-content.is-w-full {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
}
.l-content.is-w-max {
  max-width: none;
}
.l-content.is-w-1820 {
  max-width: 113.75rem;
}
.l-content.is-w-1800 {
  max-width: 112.5rem;
}
.l-content.is-w-1520 {
  max-width: 95rem;
}
.l-content.is-w-1500 {
  max-width: 93.75rem;
}
.l-content.is-w-1440 {
  max-width: 90rem;
}
.l-content.is-w-1400 {
  max-width: 87.5rem;
}
.l-content.is-w-1200 {
  max-width: 75rem;
}
.l-content.is-w-1000 {
  max-width: 62.5rem;
}
.l-content.is-w-940 {
  max-width: 58.75rem;
}
.l-content.is-w-820 {
  max-width: 51.25rem;
}
.l-content.is-w-800 {
  max-width: 50rem;
}
@media (max-width: 749px) {
  .l-content.is-pd-x-double {
    padding: 0 0.75rem;
  }
}
@media (max-width: 749px) {
  .l-content.is-pd-x-triple {
    padding: 0 1.5rem;
  }
}
@media (max-width: 749px) {
  .l-inner.is-pd-x-double {
    padding: 0 0.75rem;
  }
}
@media (max-width: 749px) {
  .l-inner.is-pd-x-triple {
    padding: 0 1.5rem;
  }
}
.l-separate {
  display: grid;
  gap: 5rem;
}
@media (min-width: 750px) {
  .l-separate.is-quarter {
    gap: 4%;
    grid-template-columns: 21% 1fr;
  }
  .l-separate.is-double {
    gap: 7%;
    grid-template-columns: 14% 1fr;
  }
  .l-separate.is-articls {
    gap: 3.75rem;
    grid-template-columns: 1fr 26.6666666667%;
  }
}
.l-separate > div {
  min-width: 0;
}
.l-separate.is-top-news {
  gap: 1.5rem;
}
@media (min-width: 750px) {
  .l-separate.is-top-news {
    gap: 0;
    grid-template-columns: 12.5rem 1fr;
  }
}
.anime-scale .a-image,
.anime-scale.a-image {
  overflow: hidden;
}
.anime-scale .a-image img,
.anime-scale.a-image img {
  transition: scale var(--anime-scale-duration, 0.3s)
    var(--anime-scale-function, ease-out) var(--anime-scale-delay, 0s);
}
@media (any-hover: hover) {
  .anime-scale:hover .a-image img,
  .anime-scale:hover.a-image img {
    scale: 1.1;
  }
}
@media (any-hover: none) {
  .anime-scale:active .a-image img,
  .anime-scale:active.a-image img {
    scale: 1.1;
  }
}
.anime-text-line {
  background-image: linear-gradient(
    to right,
    #0000 50%,
    var(--anime-text-line-color, currentColor) 50% 100%
  );
  background-position: -100% bottom;
  background-repeat: repeat-x;
  background-size: 200% calc(var(--anime-text-line-size, 1) / 16 * 1rem);
  padding-bottom: calc(var(--anime-text-line-pb, 0) / 16 * 1rem);
  transition: background-position var(--anime-text-line-duration, 0.3s)
    var(--anime-text-line-function, ease-out) var(--anime-text-line, 0s);
}
@media (min-width: 750px) {
  .anime-text-line:hover {
    animation: line-gradation var(--anime-text-line-duration, 0.3s)
      var(--anime-text-line-function, ease-out) var(--anime-text-line, 0s);
    background-position: -0.01% bottom;
  }
}
.anime-text-line-reverse {
  background-image: linear-gradient(
    to right,
    #0000 0 1%,
    var(--anime-text-line-color, currentColor) 1% 49%,
    #0000 49% 100%
  );
  background-position: -100% bottom;
  background-repeat: repeat-x;
  background-size: 200% calc(var(--anime-text-line-size, 1) / 16 * 1rem);
  padding-bottom: calc(var(--anime-text-line-pb, 0) / 16 * 1rem);
  transition: background-position var(--anime-text-line-duration, 0.3s)
    var(--anime-text-line-function, ease-out) var(--anime-text-line, 0s);
}
@media (min-width: 750px) {
  .anime-text-line-reverse:hover {
    animation: line-gradation var(--anime-text-line-duration, 0.3s)
      var(--anime-text-line-function, ease-out) var(--anime-text-line, 0s);
    background-image: linear-gradient(
      to right,
      var(--anime-text-line-color, currentColor) 50%,
      #0000 50% 100%
    );
    background-position: 0 bottom;
  }
}
.anime-text-line-parent .anime-text-line,
.anime-text-line-parent .anime-text-line-reverse {
  pointer-events: none;
}
@media (min-width: 750px) {
  .anime-text-line-parent:hover .anime-text-line {
    background-position: -0.01% bottom;
  }
  .anime-text-line-parent:hover .anime-text-line,
  .anime-text-line-parent:hover .anime-text-line-reverse {
    animation: line-gradation var(--anime-text-line-duration, 0.3s)
      var(--anime-text-line-function, ease-out) var(--anime-text-line, 0s);
  }
  .anime-text-line-parent:hover .anime-text-line-reverse {
    background-image: linear-gradient(
      to right,
      var(--anime-text-line-color, currentColor) 50%,
      #0000 50% 100%
    );
    background-position: 0 bottom;
  }
}
@keyframes line-gradation {
  0% {
    background-position: 100% bottom;
  }
  to {
    background-position: 0 bottom;
  }
}
.js-flow-up {
  transition:
    opacity var(--transition-time) var(--transition-ease),
    transform var(--transition-time) var(--transition-ease);
}
.a-text em,
.a-text-note em {
  font-weight: 700;
}
.a-text em a,
.a-text-note em a {
  --anime-text-line-size: 2;
  --anime-text-line-pb: 2;
}
.a-text a[target="_blank"],
.a-text-note a[target="_blank"] {
  margin-right: 0.4em;
  padding-right: 1.6em;
  position: relative;
}
.a-text a[target="_blank"]:after,
.a-text-note a[target="_blank"]:after {
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M2.79 15.69a2.48 2.48 0 0 1-2.48-2.48V4.12a2.48 2.48 0 0 1 2.48-2.48h4.96c.46.02.81.4.8.85-.01.44-.36.78-.8.8H2.79c-.46 0-.83.37-.83.83v9.09c0 .46.37.83.83.83h9.1c.46 0 .83-.37.83-.83V8.25a.83.83 0 0 1 1.66 0v4.96a2.48 2.48 0 0 1-2.48 2.48zm3.87-6.35a.833.833 0 0 1 0-1.17l6.22-6.21H9.91a.814.814 0 0 1-.85-.8c-.02-.46.34-.84.8-.85h5.04c.38 0 .71.28.79.65v.06s.01.1 0 .14v4.93a.83.83 0 0 1-1.66 0V3.13L7.82 9.34c-.32.32-.84.32-1.17 0z' style='fill:%23b7255e'/%3E%3Cpath d='M0 0h16v16H0z' style='fill:none'/%3E%3C/svg%3E")
    no-repeat 50%;
  background-size: contain;
  content: "";
  height: 1em;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1em;
}
.a-text b,
.a-text-note b {
  color: var(--color-primary);
  font-weight: 700;
}
.a-text-note.is-clip-line-2,
.a-text.is-clip-line-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.a-text-note.is-clip-line-3,
.a-text.is-clip-line-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.a-text-note {
  color: var(--color-text-gray);
  display: flex;
}
.a-text-note > * {
  flex: 1;
}
.a-text-note:before {
  content: attr(data-note-head) "";
}
.a-text-note {
  font-size: 0.75rem;
}
.a-text-link {
  color: currentcolor;
  display: inline-block;
}
.a-text-link_inner {
  align-items: center;
  display: flex;
  gap: 0.3125rem;
}
.a-text-link_inner svg {
  fill: currentcolor;
  width: 0.9em;
}
.a-text-link.is-color-blue {
  color: var(--color-primary);
}
.a-text-link.is-color-blue svg {
  fill: var(--color-primary);
}
.a-box-link {
  background-color: #fff;
  border: 0.0625rem solid var(--color-primary);
  display: grid;
  height: 100%;
  place-items: center;
  text-align: center;
  transition:
    color 0.3s ease-out,
    background-color 0.3s ease-out;
  width: 100%;
}
.a-box-link.is-current {
  background-color: var(--color-primary);
  color: #fff;
  pointer-events: none;
}
@media (any-hover: hover) {
  .a-box-link:hover {
    background-color: var(--color-primary);
    color: #fff;
  }
}
@media (any-hover: none) {
  .a-box-link:active {
    background-color: var(--color-primary);
    color: #fff;
  }
}
.a-heading {
  display: grid;
  font-size: 0.9375rem;
  row-gap: 0.5em;
}
.a-heading > * {
  display: block;
}
@media (min-width: 750px) {
  .a-heading {
    font-size: 1.25rem;
  }
}
.a-heading b {
  color: var(--color-primary);
}
.a-heading span.is-bg-grd {
  background: var(--color-gradation-01);
}
@media (max-width: 749px) {
  .a-heading span.is-bg-grd {
    margin: 0 auto;
  }
}
.a-heading_icon {
  line-height: 0;
}
.a-heading.is-clip-line-2 {
  -webkit-line-clamp: 2;
}
.a-heading.is-clip-line-2,
.a-heading.is-clip-line-3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.a-heading.is-clip-line-3 {
  -webkit-line-clamp: 3;
}
.a-heading.is-type-bottom-border {
  padding-bottom: 1.5rem;
  position: relative;
}
.a-heading.is-type-bottom-border:before {
  background: var(--color-gradation-02);
  bottom: 0;
  content: "";
  height: 0.25rem;
  left: 0;
  position: absolute;
  width: 3.75rem;
}
.a-heading.is-type-left-border {
  padding-left: 1.25rem;
  position: relative;
}
.a-heading.is-type-left-border:before {
  background: linear-gradient(180deg, #006cdb 0, #4fb7ff);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 0.25rem;
}
.a-button {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  line-height: 1.6;
  position: relative;
  text-align: center;
  transition:
    background-color var(--anime-duration) var(--anime-function),
    color var(--anime-duration) var(--anime-function),
    border-color var(--anime-duration) var(--anime-function),
    box-shadow var(--anime-duration) var(--anime-function);
  width: 100%;
}
.a-button.is-left {
  justify-content: flex-start;
  min-height: 3.5rem;
  padding: 0.625rem 1.5rem;
  text-align: left;
}
.a-button.is-left .a-button_inner .a-button_text + svg {
  position: absolute;
  right: 1rem;
  top: 50%;
  transition: transform var(--anime-duration) var(--anime-function);
  translate: 0 -50%;
}
@media (min-width: 750px) {
  .a-button.is-left .a-button_inner .a-button_text + svg {
    right: 1rem;
  }
}
.a-button .icon {
  fill: var(--color-primary);
  left: 1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.a-button small {
  align-items: center;
  display: flex;
  font-size: 0.8125rem;
  justify-content: center;
}
.a-button small svg:not(:first-child) {
  transform: scaleX(-1);
}
.a-button.is-content-fit {
  align-items: center;
  gap: 2rem;
  justify-content: center;
  min-height: 3rem;
  padding: 0.75rem 1.875rem;
  text-align: left;
  width: -webkit-fit-content;
  width: fit-content;
}
@media (max-width: 749px) {
  .a-button.is-content-fit {
    min-width: 90%;
  }
}
.a-button.is-content-fit .a-button_inner {
  align-items: center;
  display: flex;
  gap: 0.75rem;
}
.a-button.is-content-fit .a-button_inner svg {
  flex-shrink: 0;
}
.a-button.is-right-arrow {
  padding: 0 2.75rem 0 1.75rem;
}
.a-button.is-right-arrow .a-button_inner svg {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
.a-button.is-shadow {
  box-shadow: 0 3px 2px 0 #7a060933;
}
@media (min-width: 750px) {
  .a-button.md\:is-left {
    justify-content: flex-start;
    text-align: left;
  }
}
.a-button.is-design-square {
  border-radius: 0.3125rem;
}
.a-button.is-design-capsule {
  border-radius: 6.25rem;
}
.a-button.is-design-capsule:has(.a-button_inner svg) {
  padding: 0.75rem 2.25rem 0.75rem 1.5rem;
}
.a-button.is-design-none {
  border-radius: 0;
  gap: 0.5rem;
  line-height: 1.8;
  text-align: left;
  width: -webkit-fit-content;
  width: fit-content;
  --change-color-bg: #0000;
}
.a-button.is-design-none .a-button_inner {
  display: inline-block;
  gap: 0.125rem;
}
@media (min-width: 750px) {
  .a-button.is-design-none .a-button_inner {
    display: inline-block;
    gap: 0.375rem;
  }
}
.a-button.is-design-none .a-button_inner svg {
  display: inline-block;
  fill: var(--color-primary);
  margin: 0 0.2em;
  vertical-align: sub;
}
.a-button.is-type-solid {
  background-color: var(--color-button-solid);
  border: 0.0625rem solid var(--color-button-solid);
  color: var(--color-white);
  --change-color-bg: var(--color-white);
  --change-color-text: var(--color-button-solid);
  --change-color-fill: var(--color-button-solid);
  --change-color-border: var(--color-button-solid);
}
.a-button.is-type-solid svg {
  fill: var(--color-white);
}
.a-button.is-type-solid02 {
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-white);
  color: var(--color-button-solid);
}
.a-button.is-type-solid02 svg {
  fill: var(--color-primary);
}
.a-button.is-type-solid02 {
  --change-color-bg: var(--color-primary);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
  --change-color-border: var(--color-primary);
}
.a-button.is-type-border {
  background-color: initial;
  border: 0.0625rem solid var(--color-primary);
  color: var(--color-primary);
}
.a-button.is-type-border svg {
  fill: var(--color-primary);
}
.a-button.is-type-border {
  --change-color-bg: var(--color-primary);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
  --change-color-border: var(--color-primary);
}
.a-button.is-type-border02 {
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-gray-e5);
  color: var(--color-button-solid);
}
@media (min-width: 750px) {
  .a-button.is-type-border02 .a-button_text {
    transform: translateY(0.0625rem);
  }
}
.a-button.is-type-border02 svg {
  fill: var(--color-primary);
}
.a-button.is-type-border02 {
  --change-color-bg: var(--color-primary);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
  --change-color-border: var(--color-primary);
}
.a-button.is-type-border03 {
  background-color: var(--color-white);
  border: 0.125rem solid var(--color-primary);
  color: var(--color-black);
}
.a-button.is-type-border03 svg {
  fill: var(--color-primary);
}
.a-button.is-type-border03 {
  --change-color-bg: var(--color-primary);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
  --change-color-border: var(--color-primary);
}
.a-button.is-type-border-white {
  background-color: initial;
  border: 0.0625rem solid var(--color-white);
  color: var(--color-white);
}
.a-button.is-type-border-white svg {
  fill: var(--color-white);
}
.a-button.is-type-border-white {
  --change-color-bg: var(--color-primary);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
  --change-color-border: var(--color-primary);
}
.a-button.is-type-gradation01 {
  background-image: var(--color-button-gradient03);
  background-position: 0 0;
  background-size: 200% 100%;
  color: var(--color-white);
  transition: background-position var(--anime-duration) var(--anime-function);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
}
.a-button.is-type-gradation01 svg {
  fill: var(--color-white);
}
@media (any-hover: hover) {
  .a-button.is-type-gradation01:hover {
    background-position: -100% 0;
  }
}
@media (any-hover: none) {
  .a-button.is-type-gradation01:active {
    background-position: -100% 0;
  }
}
.a-button.is-type-gradation02 {
  background-image: var(--color-button-gradient04);
  background-position: 0 0;
  background-size: 200% 100%;
  color: var(--color-white);
  transition: background-position var(--anime-duration) var(--anime-function);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
}
.a-button.is-type-gradation02 svg {
  fill: var(--color-white);
}
@media (any-hover: hover) {
  .a-button.is-type-gradation02:hover {
    background-position: -100% 0;
  }
}
@media (any-hover: none) {
  .a-button.is-type-gradation02:active {
    background-position: -100% 0;
  }
}
.a-button.is-type-flex {
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-white);
  color: var(--color-button-solid);
}
.a-button.is-type-flex svg {
  fill: var(--color-primary);
}
.a-button.is-type-flex {
  --change-color-bg: var(--color-primary);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
  --change-color-border: var(--color-primary);
}
.a-button.is-type-text {
  --change-color-bg: #0000;
}
.a-button.is-type-text svg {
  fill: var(--color-primary);
}
.a-button.is-type-cv-primary {
  background-color: var(--color-cv-primary);
  border: 0.0625rem solid var(--color-cv-primary);
  --change-color-text: var(--color-cv-primary);
  --change-color-fill: var(--color-cv-primary);
  --change-color-border: var(--color-cv-primary);
  --change-color-bg: var(--color-white);
}
.a-button.is-type-cv-secondary {
  background-color: var(--color-cv-secondary);
  border: 0.0625rem solid var(--color-cv-secondary);
  color: var(--color-white);
}
.a-button.is-type-cv-secondary svg {
  fill: var(--color-white);
}
.a-button.is-type-cv-secondary {
  --change-color-text: var(--color-cv-secondary);
  --change-color-fill: var(--color-cv-secondary);
  --change-color-bg: var(--color-white);
  --change-color-border: var(--color-cv-secondary);
}
.a-button.is-type-cv-gradation01 {
  background-image: var(--color-button-gradient01);
  background-position: 0 0;
  background-size: 200% 100%;
  color: var(--color-white);
  transition: background-position var(--anime-duration) var(--anime-function);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
}
.a-button.is-type-cv-gradation01 svg {
  fill: var(--color-white);
}
@media (any-hover: hover) {
  .a-button.is-type-cv-gradation01:hover {
    background-position: -100% 0;
  }
}
@media (any-hover: none) {
  .a-button.is-type-cv-gradation01:active {
    background-position: -100% 0;
  }
}
.a-button.is-type-cv-gradation02 {
  background-image: var(--color-button-gradient02);
  background-position: 0 0;
  background-size: 200% 100%;
  color: var(--color-white);
  transition: background-position var(--anime-duration) var(--anime-function);
  --change-color-text: var(--color-white);
  --change-color-fill: var(--color-white);
}
.a-button.is-type-cv-gradation02 svg {
  fill: var(--color-white);
}
@media (any-hover: hover) {
  .a-button.is-type-cv-gradation02:hover {
    background-position: -100% 0;
  }
}
@media (any-hover: none) {
  .a-button.is-type-cv-gradation02:active {
    background-position: -100% 0;
  }
}
@media (any-hover: hover) {
  .a-button:hover {
    background-color: var(--change-color-bg);
    border-color: var(--change-color-border);
    color: var(--change-color-text);
  }
  .a-button:hover svg {
    fill: var(--change-color-fill);
  }
  .a-button:hover .a-button-text + svg {
    transform: translateX(var(--change-translate-x));
  }
}
@media (any-hover: none) {
  .a-button:active {
    background-color: var(--change-color-bg);
    border-color: var(--change-color-border);
    color: var(--change-color-text);
  }
  .a-button:active svg {
    fill: var(--change-color-fill);
  }
  .a-button:active .a-button-text + svg {
    transform: translateX(var(--change-translate-x));
  }
}
.a-button-text {
  align-items: center;
  display: flex;
  font-weight: 400;
  line-height: 1.5;
}
.a-button-text.is-reverse {
  flex-direction: row-reverse;
}
.a-button-text.is-reverse .a-button-text_arrow {
  margin: 0 0.3em 0 0;
  transform: scaleX(-1);
}
.a-button-text.is-reverse .a-button-text_icon svg {
  transform: scaleX(-1);
}
.a-button-text svg {
  fill: var(--color-primary);
  height: auto;
  margin: 0 0 0 0.3em;
  width: 0.875rem;
}
@media (min-width: 750px) {
  .a-button-text svg {
    width: 1em;
  }
}
.a-button-text.is-small {
  font-size: 0.875rem;
}
.is-mairyo .a-button-text span {
  transform: translateY(1px);
}
.a-arrow-circle {
  align-items: center;
  background-color: var(--color-primary);
  border-radius: 50%;
  display: flex;
  height: 2rem;
  justify-content: center;
  width: 2rem;
}
.a-arrow-circle svg {
  fill: var(--color-white);
  height: auto;
  width: 0.875rem;
}
@media (min-width: 750px) {
  .a-arrow-circle {
    height: 2.25rem;
    width: 2.25rem;
  }
}
.a-image {
  line-height: 0;
  position: relative;
}
.a-image.is-fit {
  inset: 0;
  position: absolute;
}
.a-image.is-fit img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.a-image.is-shadow {
  box-shadow: 0 0.25rem 0.5rem #0000001a;
}
.a-image.is-aspect-4-3 {
  padding-top: 75%;
  width: 100%;
}
.a-image.is-aspect-4-3 img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.a-image.is-aspect-16-9 {
  padding-top: 56.25%;
  width: 100%;
}
.a-image.is-aspect-16-9 img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.a-image.is-aspect-3-2 {
  padding-top: 66.667%;
  width: 100%;
}
.a-image.is-aspect-3-2 img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.a-image.is-aspect-1-1 {
  padding-top: 100%;
  width: 100%;
}
.a-image.is-aspect-1-1 img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
@media (max-width: 749px) {
  .a-image.is-sp-aspect-1-1 {
    padding-top: 100%;
    width: 100%;
  }
  .a-image.is-sp-aspect-1-1 img {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
  }
}
.a-image.is-aspect-original {
  padding-top: 52.631%;
  width: 100%;
}
.a-image.is-aspect-original img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.a-image.is-aspect-relation {
  padding-top: 35.75%;
  width: 100%;
}
.a-image.is-aspect-relation img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.a-articles-category {
  line-height: 1;
  position: relative;
}
.a-articles-category a,
.a-articles-category span {
  align-items: center;
  color: var(--color-primary);
  display: flex;
  font-size: 0.75rem;
  justify-content: center;
  transition:
    color 0.3s ease-out,
    background-color 0.3s ease-out;
}
@media (min-width: 750px) {
  .a-articles-category a,
  .a-articles-category span {
    font-size: 0.875rem;
  }
}
.a-articles-category.is-capsule a,
.a-articles-category.is-capsule span {
  align-items: center;
  background-color: var(--color-bg);
  border-radius: 1.875rem;
  color: var(--color-primary);
  display: flex;
  font-size: 0.75rem;
  justify-content: center;
  padding: 0.4em 1.5em;
}
@media (min-width: 750px) {
  .a-articles-category.is-capsule a,
  .a-articles-category.is-capsule span {
    font-size: 0.875rem;
  }
}
@media (any-hover: hover) {
  .a-articles-category.is-capsule a:hover {
    background-color: var(--color-white);
    color: var(--color-primary);
  }
}
@media (any-hover: none) {
  .a-articles-category.is-capsule a:active {
    background-color: var(--color-white);
    color: var(--color-primary);
  }
}
.a-articles-category.is-square a,
.a-articles-category.is-square span {
  align-items: center;
  background-color: var(--color-primary-bg);
  border-radius: 0.25rem;
  color: var(--color-black);
  display: flex;
  font-size: 0.75rem;
  font-weight: 700;
  justify-content: center;
  padding: 0.4em 0.75rem;
}
@media (min-width: 750px) {
  .a-articles-category.is-square a,
  .a-articles-category.is-square span {
    font-size: 0.875rem;
  }
}
@media (any-hover: hover) {
  .a-articles-category.is-square a:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  .a-articles-category.is-square a:active {
    background-color: var(--color-primary);
    color: var(--color-white);
  }
}
.a-articles-category.is-border a,
.a-articles-category.is-border span {
  align-items: center;
  background-color: initial;
  border: 1px solid var(--color-primary);
  border-radius: 0.25rem;
  color: var(--color-primary);
  display: flex;
  font-size: 0.75rem;
  font-weight: 700;
  justify-content: center;
  padding: 0.25rem 0.5rem;
}
@media (any-hover: hover) {
  .a-articles-category.is-border a:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  .a-articles-category.is-border a:active {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--color-white);
  }
}
.a-articles-date {
  align-items: center;
  color: var(--color-gray-99);
  display: flex;
  font-size: 0.75rem;
  position: relative;
}
@media (min-width: 750px) {
  .a-articles-date {
    font-size: 0.875rem;
  }
}
.a-articles-date.is-detail {
  color: var(--color-black);
  line-height: 1;
}
.a-articles-date.is-detail .a-articles-date_release {
  margin-left: 0.3125rem;
}
.a-articles-date.is-detail .a-articles-date_update {
  border-left: 1px solid var(--color-gray-99);
  margin-left: 0.625rem;
  padding-left: 0.625rem;
}
.a-articles-date svg {
  fill: var(--color-primary);
}
.a-articles-tag {
  font-size: 0.75rem;
  position: relative;
}
.a-articles-tag:not(.is-hash) a,
.a-articles-tag:not(.is-hash) span {
  align-items: center;
  background-color: var(--color-bg);
  border-radius: 3.125rem;
  color: var(--color-primary);
  display: flex;
  justify-content: center;
  padding: 0.1em 0.8em;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out;
}
.a-articles-tag.is-hash a,
.a-articles-tag.is-hash span {
  align-items: center;
  color: var(--color-gray-66);
  display: flex;
  gap: 0.2em;
  justify-content: center;
}
.a-articles-tag.is-hash a:before,
.a-articles-tag.is-hash span:before {
  content: "#";
}
.a-tag {
  align-items: center;
  display: flex;
  font-size: 0.75rem;
  justify-content: center;
  width: -webkit-fit-content;
  width: fit-content;
}
.a-tag.is-solid {
  background-color: var(--color-bg);
  border: 1px solid var(--color-bg);
  border-radius: 3.125rem;
  color: var(--color-black);
  font-weight: 700;
  padding: 0.1em 0.8em;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out,
    border-color 0.3s ease-out;
}
.a-tag.is-hash {
  align-items: center;
  color: var(--color-primary);
  display: flex;
  font-weight: 700;
  gap: 0.2em;
  justify-content: center;
}
.a-tag.is-hash:before {
  content: "#";
}
.a-tag.is-hash.is-color-white {
  color: var(--color-white);
  font-weight: 400;
}
@media (any-hover: hover) {
  a.a-tag.is-solid:hover {
    background-color: var(--color-primary);
    border: 1px solid var(--color-primary);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  a.a-tag.is-solid:active {
    background-color: var(--color-primary);
    border: 1px solid var(--color-primary);
    color: var(--color-white);
  }
}
@media (any-hover: hover) {
  a.a-tag.is-hash:hover span {
    text-decoration: underline;
  }
}
@media (any-hover: none) {
  a.a-tag.is-hash:active span {
    text-decoration: underline;
  }
}
.tw-bg-\[--color-bg\] .a-tag {
  background-color: var(--color-white);
  border: 1px solid var(--color-white);
}
.tw-bg-\[--color-bg\] .p-scene-box .a-tag {
  background-color: var(--color-bg);
  border: 1px solid var(--color-bg);
}
.a-checkbox,
.a-checkbox label {
  height: 100%;
  position: relative;
}
.a-checkbox label {
  display: block;
}
.a-checkbox label input {
  display: none;
}
.a-checkbox label input:checked + span:after {
  opacity: 1;
}
.a-checkbox label span {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 0.875rem;
  height: 100%;
  line-height: 1.5;
  padding: 0 0 0 2.25rem;
  position: relative;
}
@media (max-width: 749px) {
  .a-checkbox label span {
    align-items: center;
    display: flex;
    padding: 0 0 0 1.5rem;
  }
}
@media (any-hover: hover) {
  .a-checkbox label span:hover {
    opacity: 0.8;
  }
}
@media (any-hover: none) {
  .a-checkbox label span:active {
    opacity: 0.8;
  }
}
.a-checkbox label span:before {
  background: var(--color-gray-f5)
    url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15'%3E%3Cpath d='M0 0h15v15H0z' style='fill:none'/%3E%3Cpath d='M6.06 10.86 3.14 7.81a.47.47 0 0 1 0-.66l.64-.66a.44.44 0 0 1 .62-.02l.02.02 1.97 2.06 4.22-4.4a.44.44 0 0 1 .62-.02l.02.02.64.66c.18.19.18.48 0 .66l-5.18 5.4a.44.44 0 0 1-.62.01l-.02-.02Z' style='fill:%23ccc'/%3E%3C/svg%3E")
    no-repeat center/contain;
  border: 0.0625rem solid var(--color-gray-e5);
  border-radius: 0.125rem;
  content: "";
  display: block;
  height: 0.9375rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0.9375rem;
}
@media (min-width: 750px) {
  .a-checkbox label span:before {
    left: 0.625rem;
  }
}
.a-checkbox label span:after {
  background: var(--color-primary)
    url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15'%3E%3Cpath d='M0 0h15v15H0z' style='fill:none'/%3E%3Cpath d='M6.06 10.86 3.14 7.81a.47.47 0 0 1 0-.66l.64-.66a.44.44 0 0 1 .62-.02l.02.02 1.97 2.06 4.22-4.4a.44.44 0 0 1 .62-.02l.02.02.64.66c.18.19.18.48 0 .66l-5.18 5.4a.44.44 0 0 1-.62.01l-.02-.02Z' style='fill:%23fff'/%3E%3C/svg%3E")
    no-repeat center/contain;
  border: 0.0625rem solid var(--color-primary);
  border-radius: 0.125rem;
  content: "";
  display: block;
  height: 0.9375rem;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0.9375rem;
}
@media (min-width: 750px) {
  .a-checkbox label span:after {
    left: 0.625rem;
  }
}
.a-select-wrap {
  position: relative;
  width: -webkit-fit-content;
  width: fit-content;
}
.a-select-wrap:after {
  background-color: var(--color-primary);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  content: "";
  height: 0.4375rem;
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0.5rem;
  z-index: 2;
}
.a-select-wrap select {
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 1px solid var(--color-gray-e5);
  border-radius: 0.5rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  padding: 0.5rem 4rem 0.5rem 1rem;
  position: relative;
  z-index: 1;
}
@media (min-width: 750px) {
  .a-select-wrap select {
    font-size: 1rem;
  }
}
.m-text-wrap > * + * {
  margin-top: 0.625em;
}
.m-text-wrap > .a-text-note + .a-text-note {
  margin-top: 0.5em;
}
.m-table-definition {
  width: 100%;
}
.m-table-definition:not(:first-child) {
  margin-top: 2.5rem;
}
@media (min-width: 750px) {
  .m-table-definition:not(:first-child) {
    margin-top: 2.1875rem;
  }
}
.m-table-definition.is-delimiter {
  border-top: 1px dotted var(--color-gray-e5);
  padding-top: 0;
}
@media (min-width: 750px) {
  .m-table-definition.is-delimiter {
    border-top: none;
    padding-top: 2.1875rem;
  }
}
.m-table-definition_item {
  border-bottom: 0.0625rem solid var(--color-gray-e5);
  border-collapse: collapse;
  width: 100%;
}
.m-table-definition_item th {
  background-color: var(--color-gray-f5);
  border-left: 0.0625rem solid var(--color-gray-e5);
  border-top: 0.0625rem solid var(--color-gray-e5);
  font-weight: 700;
  padding: 1rem 1.25rem;
  text-align: left;
  text-align: center;
  vertical-align: middle;
  width: 20%;
}
@media (min-width: 750px) {
  .m-table-definition_item th {
    width: 24%;
  }
}
.m-table-definition_item td {
  border-left: 0.0625rem solid var(--color-gray-e5);
  border-right: 0.0625rem solid var(--color-gray-e5);
  border-top: 0.0625rem solid var(--color-gray-e5);
  padding: 1rem 1.25rem 1rem 1.875rem;
}
.m-table-separate {
  position: relative;
  width: 100%;
}
.m-table-separate table {
  border: 0.0625rem solid var(--color-border-gray);
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
.m-table-separate table thead th {
  background-color: var(--color-primary);
  border: 0.0625rem solid var(--color-border-gray);
  color: var(--color-white);
  font-weight: 700;
  padding: 0.625rem 1.25rem;
  text-align: center;
}
.m-table-separate table thead th:first-child {
  min-width: 7.5rem;
}
@media (min-width: 750px) {
  .m-table-separate table thead th:first-child {
    min-width: 12.5rem;
  }
}
.m-table-separate table tbody th {
  background-color: var(--color-bg);
  border: 0.0625rem solid var(--color-border-gray);
  font-weight: 700;
  line-height: 1.6;
  padding: 0.625rem 0.75rem;
  text-align: left;
  vertical-align: middle;
}
@media (min-width: 750px) {
  .m-table-separate table tbody th {
    padding: 0.625rem 1.25rem;
  }
}
.m-table-separate table tbody th:first-child {
  min-width: 7.5rem;
}
@media (min-width: 750px) {
  .m-table-separate table tbody th:first-child {
    min-width: 12.5rem;
  }
}
.m-table-separate table tbody td {
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-border-gray);
  font-weight: 400;
  padding: 0.625rem 0.75rem;
}
@media (min-width: 750px) {
  .m-table-separate table tbody td {
    padding: 0.625rem 1.25rem;
  }
}
.m-table-separate.is-style-border table {
  border-bottom: 1px solid var(--color-border-gray);
  border-left: none;
  border-right: none;
}
.m-table-separate.is-style-border th {
  background-color: initial !important;
  border-left: none;
  border-right: none;
  border-top: 1px solid var(--color-border-gray);
  padding: 1.25rem 0.75rem;
  vertical-align: top;
}
@media (min-width: 750px) {
  .m-table-separate.is-style-border th {
    padding: 1.5rem 1.25rem;
  }
}
.m-table-separate.is-style-border td {
  background-color: initial !important;
  border-left: none;
  border-right: none;
  border-top: 1px solid var(--color-border-gray);
  padding: 1.25rem 0.75rem;
}
@media (min-width: 750px) {
  .m-table-separate.is-style-border td {
    padding: 1.5rem 1.25rem;
  }
}
@media (max-width: 749px) {
  .m-table-separate.is-sp-block table {
    border-top: none;
  }
  .m-table-separate.is-sp-block td,
  .m-table-separate.is-sp-block th,
  .m-table-separate.is-sp-block tr {
    display: block;
  }
  .m-table-separate.is-sp-block tr {
    border-top: 1px solid var(--color-border-gray);
    padding: 1.75rem 0.75rem;
  }
  .m-table-separate.is-sp-block th {
    border: none;
    padding: 0;
  }
  .m-table-separate.is-sp-block td {
    border: none;
    padding: 0.875rem 0 0;
  }
}
.o-footer {
  background-color: var(--color-footer-bg);
  color: var(--color-white);
  overflow: hidden;
  position: relative;
}
.o-footer_inner {
  padding-top: 5rem;
  position: relative;
  z-index: 3;
}
@media (min-width: 750px) {
  .o-footer_inner {
    padding-top: 3.125rem;
  }
}
.o-footer_inner:before {
  background-color: #e5e5e533;
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: calc(100vw - 1.5rem);
}
@media (min-width: 750px) {
  .o-footer_inner:before {
    max-width: 92vw;
  }
}
.o-footer_top {
  display: grid;
  grid-template: "info" auto "actions" auto "sitemap" auto "lang" auto/1fr;
  row-gap: 2rem;
}
@media (min-width: 750px) {
  .o-footer_top {
    gap: 1.75rem 3.75rem;
    grid-template: "info lang" auto "info sitemap" auto "actions sitemap" 1fr/20rem 1fr;
  }
}
.o-footer_top-sitemap {
  grid-area: sitemap;
  -ms-grid-column: 1;
  -ms-grid-row: 5;
}
@media (min-width: 750px) {
  .o-footer_top-sitemap {
    flex: 1;
  }
}
@media (max-width: 749px) {
  .o-footer_top-sitemap {
    padding-top: 1.875rem;
    position: relative;
    width: 100%;
  }
}
.o-footer_info {
  grid-area: info;
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  width: 100%;
}
@media (max-width: 749px) {
  .o-footer_info {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 0.75rem;
    text-align: center;
  }
}
.o-footer_info-logo {
  position: relative;
}
.o-footer_info-logo-link {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}
.o-footer_info-logo-link .a-image {
  flex-shrink: 0;
  width: 13.375rem;
}
@media (min-width: 750px) {
  .o-footer_info-logo-link .a-image {
    width: 13.375rem;
  }
}
.o-footer_info-logo-link .a-image img {
  height: auto;
  width: 100%;
}
.o-footer_info-logo-link svg {
  fill: var(--color-white);
  height: auto;
  width: 7.875rem;
}
@media (min-width: 750px) {
  .o-footer_info-logo-link svg {
    width: 7.5rem;
  }
}
.o-footer_info-address {
  font-size: 0.875rem;
  line-height: 2;
  margin-top: 1.25rem;
}
@media (min-width: 750px) {
  .o-footer_info-address {
    font-size: 0.875rem;
    margin-top: 1.75rem;
  }
}
.o-footer_info-address strong {
  font-weight: 700;
}
.o-footer_info-comment {
  font-size: 0.75rem;
  margin-top: 1.2em;
}
.o-footer_lang {
  align-items: center;
  display: flex;
  grid-area: lang;
  -ms-grid-column: 1;
  -ms-grid-row: 7;
  justify-content: center;
}
@media (min-width: 750px) {
  .o-footer_lang {
    justify-content: flex-end;
  }
}
.o-footer_lang-inner {
  align-items: center;
  background-color: var(--color-gray-33);
  border-radius: 6.25rem;
  display: flex;
  gap: 0.5rem;
  padding: 0.1875rem 1rem;
  position: relative;
  width: -webkit-fit-content;
  width: fit-content;
}
.o-footer_lang-icon {
  line-height: 0;
}
.o-footer_lang-icon svg {
  stroke: var(--color-white);
}
.o-footer_lang-list {
  align-items: center;
  display: flex !important;
  gap: 0.5rem;
}
.o-footer_lang-list li {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}
.o-footer_lang-list li:not(:first-child):before {
  background-color: var(--color-white);
  content: "";
  display: block;
  height: 0.75rem;
  width: 0.0625rem;
}
.o-footer_lang-list a,
.o-footer_lang-list button {
  color: var(--color-white);
}
.o-footer_lang-list a.selected,
.o-footer_lang-list button.selected {
  color: var(--color-primary);
}
@media (min-width: 750px) {
  .o-footer_middle {
    border-top: 1px solid var(--color-gray-e5);
    margin-top: 1.875rem;
    padding: 1.875rem 0 0;
  }
}
.o-footer_actions {
  grid-area: actions;
  -ms-grid-column: 1;
  -ms-grid-row: 3;
}
@media (min-width: 750px) {
  .o-footer_top-sitemap {
    -ms-grid-row: 3;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .o-footer_info {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .o-footer_lang {
    -ms-grid-column: 3;
    -ms-grid-row: 1;
  }
  .o-footer_actions {
    -ms-grid-column: 1;
    -ms-grid-row: 5;
  }
}
@media (max-width: 749px) {
  .o-footer_actions {
    padding: 0 0.75rem;
  }
}
.o-footer_actions-list {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
}
.o-footer_actions-list:not(:first-of-type) {
  border-top: 1px solid #e5e5e566;
  margin-top: 1.75rem;
  padding-top: 1.75rem;
}
.o-footer_actions-list li {
  height: 3.25rem;
  width: 80%;
}
@media (max-width: 749px) {
  .o-footer_actions-list li {
    margin: 0 auto;
  }
}
@media (min-width: 750px) {
  .o-footer_actions-list li {
    height: 2.75rem;
    width: 12.875rem;
  }
}
.o-footer_bottom {
  position: relative;
}
@media (min-width: 750px) {
  .o-footer_bottom {
    align-items: center;
    display: flex;
    gap: 2.5rem;
    justify-content: space-between;
    margin-top: 3.75rem;
    padding: 1.25rem 0 3.75rem;
  }
}
@media (max-width: 749px) {
  .o-footer_bottom {
    border-top: none;
    display: block;
    margin-top: 2.5rem;
    padding-bottom: 2rem;
    position: relative;
    width: 100%;
  }
}
@media (max-width: 749px) {
  .o-footer_bottom-right {
    margin-top: 2.5rem;
  }
}
.o-footer_bottom-copyright-item {
  color: var(--color-white);
  font-size: 0.75rem;
  letter-spacing: normal;
  margin-top: 0.75rem;
  text-align: center;
}
@media (min-width: 750px) {
  .o-footer_bottom-copyright-item {
    margin-top: 0.5rem;
  }
}
.o-footer-sitemap {
  display: flex;
  flex-direction: column;
  font-size: 0.875rem;
  font-weight: 700;
  position: relative;
}
@media (max-width: 749px) {
  .o-footer-sitemap {
    border-bottom: 1px solid #e5e5e566;
  }
}
@media (min-width: 750px) {
  .o-footer-sitemap {
    align-items: flex-start;
    display: flex;
    flex-direction: row;
    font-size: 0.875rem;
    gap: 1.5625rem;
    justify-content: flex-end;
  }
}
.o-footer-sitemap_cols {
  display: grid;
  grid-template-columns: auto;
}
@media (min-width: 750px) {
  .o-footer-sitemap_cols {
    gap: 0.625rem;
  }
}
@media (max-width: 749px) {
  .o-footer-sitemap_rows {
    border-top: 1px solid #e5e5e566;
  }
}
@media (max-width: 749px) {
  .o-footer-sitemap_child {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
  }
  .o-footer-sitemap_child.is-opened {
    max-height: 100vh;
  }
  .o-footer-sitemap_child .o-footer-sitemap_link:first-child {
    margin-top: -1.25rem;
  }
}
@media (min-width: 750px) {
  .o-footer-sitemap_child .o-footer-sitemap_link {
    padding-top: 0.625rem;
  }
}
.o-footer-sitemap_child-list {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: auto;
  padding-top: 0.3em;
}
@media (max-width: 749px) {
  .o-footer-sitemap_child-list {
    padding-bottom: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 0.75rem;
  }
  .o-footer-sitemap_child-list + .o-footer-sitemap_link {
    margin-top: -1.25rem;
  }
}
@media (min-width: 750px) {
  .o-footer-sitemap_child-list {
    font-size: 0.92em;
    padding-left: 0.3em;
    padding-top: 0.8em;
  }
}
.o-footer-sitemap_child-list li {
  font-weight: 400;
  padding-left: 1em;
  position: relative;
}
.o-footer-sitemap_child-list li:before {
  color: currentcolor;
  color: var(--color-white);
  content: "-";
  left: 0;
  position: absolute;
}
.o-footer-sitemap_child-list li a {
  color: var(--color-white);
}
@media (max-width: 749px) {
  .o-footer-sitemap_link > a {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath d='M3.33 12.7a.91.91 0 0 1-.12-1.29l.12-.12 4.91-4.31-4.91-4.32a.917.917 0 0 1-.01-1.3c.04-.04.09-.08.14-.12.44-.32 1.04-.32 1.49 0l5.72 5.03c.39.32.45.9.12 1.29-.04.04-.08.09-.12.12l-5.72 5.04c-.47.38-1.15.38-1.61-.02Z' style='fill:%23fff'/%3E%3Cpath d='M0 0h14v14H0z' style='fill:none'/%3E%3C/svg%3E");
    background-position: right 0.75rem center;
    background-repeat: no-repeat;
    background-size: 0.75rem auto;
    display: block;
    padding: 1.25rem 0.75rem;
    position: relative;
  }
}
.o-footer-sitemap_link > a[target="_blank"] {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M2.79 15.69a2.48 2.48 0 0 1-2.48-2.48V4.12a2.48 2.48 0 0 1 2.48-2.48h4.96c.46.02.81.4.8.85-.01.44-.36.78-.8.8H2.79c-.46 0-.83.37-.83.83v9.09c0 .46.37.83.83.83h9.1c.46 0 .83-.37.83-.83V8.25a.83.83 0 0 1 1.66 0v4.96a2.48 2.48 0 0 1-2.48 2.48zm3.87-6.35a.833.833 0 0 1 0-1.17l6.22-6.21H9.91a.814.814 0 0 1-.85-.8c-.02-.46.34-.84.8-.85h5.04c.38 0 .71.28.79.65v.06s.01.1 0 .14v4.93a.83.83 0 0 1-1.66 0V3.13L7.82 9.34c-.32.32-.84.32-1.17 0z' style='fill:%23ccc'/%3E%3Cpath d='M0 0h16v16H0z' style='fill:none'/%3E%3C/svg%3E");
  background-position: right 3px center;
  background-repeat: no-repeat;
  background-size: 0.7em auto;
  margin-right: 0.2em;
  padding-right: 1.6em;
}
@media (max-width: 749px) {
  .o-footer-sitemap_trigger {
    padding: 1.25rem 0.75rem;
    position: relative;
  }
  .o-footer-sitemap_trigger > a {
    display: inline-block;
  }
  .o-footer-sitemap_trigger:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 0 2 1.414.586 6 5.172 10.586.586 12 2z'/%3E%3C/svg%3E");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 0.75rem;
    margin-top: -0.25rem;
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transition: transform 0.3s ease-out;
    width: 0.75rem;
  }
  .o-footer-sitemap_trigger.is-opened:after {
    transform: rotate(180deg);
  }
}
.o-footer-links {
  display: flex;
  font-size: 0.875rem;
  justify-content: center;
  position: relative;
}
@media (min-width: 750px) {
  .o-footer-links {
    font-size: 0.875rem;
    justify-content: flex-start;
  }
  .o-footer-links > div:not(:last-of-type) {
    margin-right: 2.5rem;
  }
}
.o-footer-links_social-list {
  align-items: center;
  display: flex;
}
@media (min-width: 750px) {
  .o-footer-links_social-list {
    justify-content: center;
  }
}
.o-footer-links_social-list li {
  line-height: 0;
}
.o-footer-links_social-list li:not(:last-of-type) {
  margin-right: 20px;
}
@media (min-width: 750px) {
  .o-footer-links_social-list li:not(:last-of-type) {
    margin-right: 1.25rem;
  }
}
.o-footer-links_social-button {
  display: block;
}
.o-footer-links_social-button svg {
  fill: var(--color-black);
  transition: fill 0.3s ease-out;
}
.o-footer-links_other-list {
  align-items: center;
  display: flex;
}
@media (min-width: 750px) {
  .o-footer-links_other-list {
    justify-content: center;
  }
}
.o-footer-links_other-list li:not(:last-of-type) {
  margin-right: 1.5rem;
}
.o-footer-other {
  position: relative;
}
@media (max-width: 749px) {
  .o-footer-other {
    padding: 0 0.75rem;
  }
}
@media (min-width: 750px) {
  .o-footer-other {
    flex: 1;
  }
}
.o-footer-other_list {
  display: flex;
  flex-flow: column wrap;
  gap: 0.5rem 2rem;
}
@media (min-width: 750px) {
  .o-footer-other_list {
    flex-direction: row;
    gap: 0.5rem 2rem;
  }
}
.o-footer-other_list a {
  color: var(--color-white);
  font-size: 0.75rem;
}
.o-footer-company-name {
  text-align: center;
}
@media (min-width: 750px) {
  .o-footer-company-name {
    text-align: right;
  }
}
.o-common-cta + .o-footer {
  margin-top: -7.5rem;
  padding-top: 11rem;
}
@media (min-width: 750px) {
  .o-common-cta + .o-footer {
    margin-top: -14.375rem;
    padding-top: 17.3125rem;
  }
}
.o-header {
  background-color: initial;
  height: auto;
  left: 0;
  padding-top: 0.75rem;
  position: sticky;
  top: 0;
  transition:
    background-color 0.3s ease-out,
    box-shadow 0.3s ease-out,
    transform 0.3s ease-out;
  width: 100%;
  z-index: 110;
}
@media (max-width: 749px) {
  .o-header {
    margin: 0 0.75rem;
    width: auto;
  }
}
@media (min-width: 750px) {
  .o-header {
    padding-top: 1.25rem;
    position: sticky;
  }
}
.o-header_line {
  width: 100%;
}
.o-header_pc {
  display: none;
  height: auto;
  margin: 0 auto;
  padding: 0 45px;
  width: 100%;
}
@media (min-width: 750px) {
  .o-header_pc {
    display: block;
    padding: 0 1.25rem;
  }
}
.o-header_sp {
  display: block;
}
@media (min-width: 750px) {
  .o-header_sp {
    display: none;
    height: auto;
    width: 100%;
  }
  .o-header_sp .o-header_menu button {
    background-color: var(--color-white);
    border-radius: 50%;
    transition: box-shadow 0.3s ease-out;
  }
}
.o-header_inner {
  background-color: var(--color-white);
  border-radius: 0.75rem;
  box-shadow: 0 0.3125rem 0.5rem #00000026;
  display: flex;
  height: 3rem;
  justify-content: space-between;
  margin: 0 auto;
  transition:
    height 0.3s ease-out,
    box-shadow 0.3s ease-out;
  width: 100%;
}
@media (max-width: 749px) {
  .o-header_inner {
    padding: 0 0.75rem;
  }
}
@media (min-width: 750px) {
  .o-header_inner {
    height: 3.875rem;
    max-width: 107.5rem;
  }
}
.o-header_global {
  display: flex;
  position: relative;
  z-index: 3;
}
@media (min-width: 750px) {
  .o-header_global > div:not(:first-child) {
    margin-left: 2rem;
  }
}
.o-header_logo {
  align-items: center;
  display: flex;
  line-height: 0;
  width: auto;
}
@media (max-width: 749px) {
  .o-header_logo svg {
    height: auto;
    width: 6.625rem;
  }
}
@media (min-width: 750px) {
  .o-header_logo {
    margin-left: 1.875rem;
  }
  .o-header_logo svg {
    height: auto;
    width: 7.5rem;
  }
}
.o-header_logo-link .a-image {
  width: 5.625rem;
}
@media (min-width: 750px) {
  .o-header_logo-link .a-image {
    width: 7.5rem;
  }
}
.o-header_logo-link .a-image img {
  height: auto;
  width: 100%;
}
.o-header_nav {
  font-size: 0.875rem;
  margin-left: 35px;
}
.o-header_actions {
  align-items: center;
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}
@media (max-width: 749px) {
  .o-header_actions {
    flex: 1;
  }
}
@media (min-width: 750px) {
  .o-header_actions {
    flex: 1;
    gap: 1.75rem;
    margin-right: 2rem;
  }
}
@media (max-width: 749px) {
  .o-header_tel {
    display: flex;
    flex-grow: 1;
    justify-content: center;
  }
}
@media (min-width: 750px) {
  .o-header_tel {
    display: none;
  }
}
@media (min-width: 1180px) {
  .o-header_tel {
    display: block;
  }
}
.o-header_tel-link {
  position: relative;
}
@media (min-width: 750px) {
  .o-header_tel-link {
    align-items: center;
    display: flex;
    gap: 0.3125rem;
    pointer-events: none;
  }
}
.o-header_tel-icon {
  align-items: center;
  border-radius: 1.375rem;
  display: flex;
  flex-shrink: 0;
  height: 1.375rem;
  justify-content: center;
  width: 1.375rem;
}
@media (max-width: 749px) {
  .o-header_tel-icon {
    left: 0;
    position: absolute;
    top: 0.4375rem;
  }
}
@media (min-width: 750px) {
  .o-header_tel-icon {
    background-color: var(--color-primary);
    border-radius: 2.5rem;
    height: 2.5rem;
    width: 2.5rem;
  }
}
.o-header_tel-icon svg {
  fill: var(--color-primary);
}
@media (max-width: 749px) {
  .o-header_tel-icon svg {
    height: 1rem;
    width: 1rem;
  }
}
@media (min-width: 750px) {
  .o-header_tel-icon svg {
    fill: var(--color-white);
    height: 1.375rem;
    width: 1.375rem;
  }
}
.o-header_tel-num {
  color: var(--color-primary);
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1;
  padding-top: 6px;
}
@media (max-width: 749px) {
  .o-header_tel-num {
    padding-left: 1.5rem;
  }
}
@media (min-width: 750px) {
  .o-header_tel-num {
    font-size: 1.75rem;
  }
}
.o-header_tel-num span {
  letter-spacing: 0.02em;
}
.o-header_tel-time {
  font-size: 0.625rem;
  letter-spacing: normal;
}
@media (min-width: 750px) {
  .o-header_tel-time {
    font-size: 0.6875rem;
  }
}
.o-header_cv {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
@media (min-width: 750px) {
  .o-header_cv {
    display: none;
  }
}
@media (min-width: 910px) {
  .o-header_cv {
    display: flex;
    gap: 0.5rem;
  }
}
.o-header_cv-item {
  font-size: 0.8125rem;
  font-weight: 400;
  height: 1.75rem;
  letter-spacing: normal;
  transition: height 0.3s ease-out;
  width: 6.375rem;
}
@media (min-width: 750px) {
  .o-header_cv-item {
    font-size: 0.875rem;
    height: 2.125rem;
    width: -webkit-fit-content;
    width: fit-content;
  }
}
@media (min-width: 750px) {
  .o-header_cv-item .a-button.is-fit {
    padding: 0 1rem;
  }
}
.o-header_lang {
  align-items: center;
  display: flex;
  gap: 0.5rem;
  position: relative;
}
@media (max-width: 749px) {
  .o-header_lang {
    justify-content: center;
  }
}
@media (min-width: 750px) {
  .o-header_lang {
    display: flex;
  }
}
.o-header_lang-icon {
  line-height: 0;
}
.o-header_lang-list {
  align-items: center;
  display: flex !important;
  gap: 0.5rem;
}
.o-header_lang-list li {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}
.o-header_lang-list li:not(:first-child):before {
  background-color: var(--color-black);
  content: "";
  display: block;
  height: 0.75rem;
  width: 0.0625rem;
}
.o-header_lang-list li a.selected {
  color: var(--color-primary);
}
.o-header_menu {
  align-items: center;
  display: flex;
  height: 100%;
}
.o-header_menu .js-menu-trigger {
  align-items: center;
  -webkit-appearance: none;
  appearance: none;
  background-color: var(--color-bg);
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  height: 1.75rem;
  justify-content: center;
  padding: 0;
  position: relative;
  width: 1.75rem;
}
@media (min-width: 750px) {
  .o-header_menu .js-menu-trigger {
    height: 2.5rem;
    width: 2.5rem;
  }
}
.o-header_menu span {
  pointer-events: none;
}
.o-header_menu-line {
  display: block;
  position: relative;
  transition: all 0 ease-out 0s;
  width: 0.8125rem;
}
.o-header_menu-line,
.o-header_menu-line:after {
  background-color: var(--color-black);
  height: 2px;
}
.o-header_menu-line:after {
  border-radius: 10px;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: -4px;
  transition: all 0.3s ease-out;
}
@media (min-width: 750px) {
  .o-header_menu-line:after {
    height: 2px;
    top: -4px;
  }
}
.o-header_menu-line:before {
  background-color: var(--color-black);
  border-radius: 10px;
  bottom: -4px;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  transition: all 0.3s ease-out;
}
@media (min-width: 750px) {
  .o-header_menu-line:before {
    bottom: -4px;
    height: 2px;
  }
}
.o-header_hamburger-lang {
  display: none;
}
.o-header_hamburger-lang-list {
  align-items: center;
  display: flex;
  margin-right: 1.5rem;
}
.o-header_hamburger-lang-list li:not(:last-of-type):after {
  color: #0006;
  content: "｜";
  margin: 0 0.5rem;
}
.o-header_hamburger-lang-list li button {
  color: currentcolor;
  font-weight: 400;
}
.o-header_hamburger-lang-list li button.is-current {
  font-weight: 700;
  pointer-events: none;
}
.o-header_hamburger-search {
  display: none;
}
.o-header_hamburger-search-item {
  position: relative;
  width: 100%;
}
@media (min-width: 750px) {
  .o-header_hamburger-search-item {
    margin: 0 0.75rem 0 0;
    width: 15rem;
  }
}
.o-header_hamburger-search-item input {
  background-color: var(--color-white);
  border: 0.0625rem solid var(--color-gray-80);
  border-radius: 2.5rem;
  box-sizing: border-box;
  display: block;
  height: 3.75rem;
  padding: 0.4em 3em 0.4em 1.8em;
  width: 100%;
}
@media (min-width: 750px) {
  .o-header_hamburger-search-item input {
    height: 2.5rem;
    padding: 0.4em 2.5em 0.4em 1em;
  }
}
.o-header_hamburger-search-item button {
  display: block;
  line-height: 0;
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
}
.is-scrolled .o-header_sub {
  height: 0;
  opacity: 0;
}
@media (min-width: 750px) {
  .is-hamburger-pc-open .o-global-menu,
  .is-hamburger-pc-open .o-header_cv,
  .is-hamburger-pc-open .o-header_lang {
    display: none;
  }
  .is-hamburger-pc-open .o-header_hamburger-lang,
  .is-hamburger-pc-open .o-header_hamburger-search {
    display: block;
  }
  .is-hamburger-pc-open .o-header_menu-trigger span {
    background-color: initial;
  }
  .is-hamburger-pc-open .o-header_menu-trigger span:before {
    bottom: 0;
    transform: rotate(-45deg);
  }
  .is-hamburger-pc-open .o-header_menu-trigger span:after {
    top: 0;
    transform: rotate(45deg);
  }
  .is-hamburger-pc-open .o-header .o-header_pc .o-header_menu span {
    background-color: initial;
  }
  .is-hamburger-pc-open .o-header .o-header_pc .o-header_menu span:before {
    bottom: 0;
    transform: rotate(-45deg);
  }
  .is-hamburger-pc-open .o-header .o-header_pc .o-header_menu span:after {
    top: 0;
    transform: rotate(45deg);
  }
  .is-hamburger-pc-open .o-hamburger-menu {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
  }
}
@media (max-width: 749px) {
  .is-hamburger-sp-open .o-header .o-header_sp .o-header_menu span {
    background-color: initial;
  }
  .is-hamburger-sp-open .o-header .o-header_sp .o-header_menu span:before {
    bottom: 0;
    transform: rotate(-45deg);
  }
  .is-hamburger-sp-open .o-header .o-header_sp .o-header_menu span:after {
    top: 0;
    transform: rotate(45deg);
  }
  .is-hamburger-sp-open .o-header .o-header_actions,
  .is-hamburger-sp-open .o-header .o-header_logo {
    background-color: var(--color-white);
  }
  .is-hamburger-sp-open .o-hamburger-menu {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
  }
  .is-scrolled .o-header_sub {
    height: 0;
    opacity: 0;
  }
}
.o-global-menu {
  display: none;
}
@media (min-width: 750px) {
  .o-global-menu {
    display: flex;
    font-size: 1rem;
    letter-spacing: var(--letter-spacing-none);
    margin-right: 1rem;
  }
}
.o-global-menu_item {
  height: 100%;
  position: relative;
  transition: opacity 0.2s ease-out;
}
@media (min-width: 750px) {
  .o-global-menu_item:not(:first-of-type) {
    margin-left: 1.25rem;
  }
}
@media (min-width: 1180px) {
  .o-global-menu_item:not(:first-of-type) {
    margin-left: 1.875rem;
  }
}
.o-global-menu_panel {
  left: 0;
  opacity: 0;
  padding-top: 0.625rem;
  position: absolute;
  top: 100%;
  transform: translateY(5px);
  transition:
    opacity 0.2s ease-out,
    visibility 0.2s ease-out,
    transform 0.2s ease-out;
  visibility: hidden;
}
.o-global-menu_panel.is-active {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}
.o-global-menu_panel-list {
  background-color: #fff;
  border-radius: 1.25rem;
  box-shadow: 0 6px 10px #0003;
  padding: 1.875rem;
}
.o-global-menu_panel-list-item:not(:first-of-type) {
  margin-top: 1em;
}
.o-global-menu_panel-list-item .a-text-link {
  align-items: center;
  display: flex;
  font-weight: 400;
  gap: 0.5rem;
  white-space: nowrap;
}
.o-global-menu_panel-list-item .a-text-link svg {
  fill: var(--color-primary);
}
.o-global-menu_link,
.o-global-menu_trigger {
  align-items: center;
  display: flex;
  height: 100%;
}
.o-global-menu_link .a-button-text,
.o-global-menu_trigger .a-button-text {
  align-items: center;
  display: flex;
  position: relative;
}
.o-global-menu_link .a-button-text span,
.o-global-menu_trigger .a-button-text span {
  position: relative;
}
.o-global-menu_link .a-button-text span:before,
.o-global-menu_trigger .a-button-text span:before {
  background-color: var(--color-primary);
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease-out;
  width: 100%;
}
@media (any-hover: hover) {
  .o-global-menu_link .a-button-text span:hover:before,
  .o-global-menu_trigger .a-button-text span:hover:before {
    transform: scaleX(1);
    transform-origin: left;
  }
}
@media (any-hover: none) {
  .o-global-menu_link .a-button-text span:active:before,
  .o-global-menu_trigger .a-button-text span:active:before {
    transform: scaleX(1);
    transform-origin: left;
  }
}
.o-global-menu_link .a-button-text.is-current span:before,
.o-global-menu_trigger .a-button-text.is-current span:before {
  transform: scaleX(1);
  transform-origin: left;
}
.o-global-menu_trigger.is-active .a-icon {
  transform: rotate(180deg);
}
.o-global-menu_trigger.is-active .is-touch-hover .a-icon {
  transform: rotate(180deg) translateX(0);
}
.o-hamburger-menu.is-pc {
  display: none;
}
@media (min-width: 750px) {
  .o-hamburger-menu.is-pc {
    display: block;
  }
}
.o-hamburger-menu.is-sp {
  display: block;
}
@media (min-width: 750px) {
  .o-hamburger-menu.is-sp {
    display: none;
  }
}
.o-hamburger-menu {
  background-color: var(--color-white);
  height: 100vh;
  left: -0.75rem;
  opacity: 0;
  position: absolute;
  right: -0.75rem;
  top: 0;
  transition:
    opacity 0.2s ease-out,
    visibility 0.2s ease-out,
    transform 0.2s ease-out;
  visibility: hidden;
}
@media (min-width: 750px) {
  .o-hamburger-menu {
    left: 0;
    padding: 0 2rem;
    right: 0;
  }
}
.o-hamburger-menu_inner {
  padding: 4.375rem 1.5rem 8.125rem;
}
@media (max-width: 749px) {
  .o-hamburger-menu_inner {
    max-height: calc(100vh - 3.375rem);
    overflow: auto;
  }
}
@media (min-width: 750px) {
  .o-hamburger-menu_inner {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 75rem;
    padding: 7.5rem 0 8.125rem;
    width: 100%;
  }
}
@media (max-width: 749px) {
  .o-hamburger-menu_cta {
    padding: 0 0.75rem;
  }
}
.o-hamburger-menu_cta-list {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
}
.o-hamburger-menu_cta-list li {
  height: 3.25rem;
  width: 100%;
}
@media (min-width: 750px) {
  .o-hamburger-menu_cta-list li {
    height: 2.75rem;
  }
}
@media (max-width: 749px) {
  .o-hamburger-menu-sitemap {
    display: grid;
    gap: 1.875rem;
    grid-template-columns: 1fr;
  }
  .o-hamburger-menu-sitemap_cols {
    min-width: 0;
  }
  .o-hamburger-menu-sitemap_rows {
    padding: 0 0.75rem;
  }
  .o-hamburger-menu-sitemap_rows:not(:last-child) {
    border-bottom: 0.0625rem solid var(--color-gray-e5);
  }
  .o-hamburger-menu-sitemap_rows > .a-text-link span {
    border-left: 3px solid var(--color-primary);
    padding-left: 0.5rem;
  }
  .o-hamburger-menu-sitemap_rows.is-opened
    .o-hamburger-menu-sitemap_trigger-icon:after {
    transform: translate3d(-50%, -50%, 0) rotate(0);
  }
  .o-hamburger-menu-sitemap_rows.is-opened
    .o-hamburger-menu-sitemap_trigger
    svg {
    transform: rotate(180deg);
  }
  .o-hamburger-menu-sitemap_trigger strong {
    font-weight: 700;
  }
  .o-hamburger-menu-sitemap_trigger strong.a-text-link {
    font-size: 1.125rem;
    padding: 1.25rem 0;
  }
  .o-hamburger-menu-sitemap_trigger svg {
    height: 0.875rem;
    margin-top: -0.4375rem;
    pointer-events: none;
    position: absolute;
    right: 0.0625rem;
    top: 50%;
    transition: transform 0.3s ease-out;
    width: 0.875rem;
  }
  .o-hamburger-menu-sitemap_child {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
  }
  .o-hamburger-menu-sitemap_child-list {
    padding-bottom: 1.25rem;
  }
  .o-hamburger-menu-sitemap_child-list li {
    padding-left: 0.8em;
    position: relative;
  }
  .o-hamburger-menu-sitemap_child-list li:before {
    content: "-";
    left: 0;
    position: absolute;
    top: 0.4em;
  }
  .o-hamburger-menu-sitemap_child-list li:not(:first-child) {
    border-top: 1px dotted var(--color-gray-70);
  }
  .o-hamburger-menu-sitemap .a-text-link {
    align-items: center;
    color: var(--color-black);
    display: flex;
    font-size: 0.875rem;
    justify-content: space-between;
    line-height: 1.4;
    padding: 0.75rem 0;
    position: relative;
  }
  .o-hamburger-menu-sitemap .a-text-link span {
    padding-right: 1.5em;
  }
  .o-hamburger-menu-sitemap .a-text-link > svg {
    flex-shrink: 0;
    height: 1rem;
    width: 1rem;
  }
  .o-hamburger-menu-sitemap_link {
    font-weight: 700;
  }
  .o-hamburger-menu-sitemap_link > .a-text-link {
    font-size: 1.125rem;
    padding: 1.25rem 0;
  }
  .o-hamburger-menu-sitemap_buttons {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: 1fr;
  }
  .o-hamburger-menu-sitemap_buttons-item {
    height: 3.25rem;
    min-width: 0;
    width: 100%;
  }
}
.o-hamburger-menu-pc-sitemap {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  font-size: 0.875rem;
  font-weight: 700;
  gap: 2.75rem;
  justify-content: flex-start;
  position: relative;
}
.o-hamburger-menu-pc-sitemap_cols {
  display: grid;
  gap: 1rem;
  grid-template-columns: auto;
}
.o-hamburger-menu-pc-sitemap_link,
.o-hamburger-menu-pc-sitemap_trigger {
  font-size: 1rem;
}
.o-hamburger-menu-pc-sitemap_link a[target="_blank"] {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M2.79 15.69a2.48 2.48 0 0 1-2.48-2.48V4.12a2.48 2.48 0 0 1 2.48-2.48h4.96c.46.02.81.4.8.85-.01.44-.36.78-.8.8H2.79c-.46 0-.83.37-.83.83v9.09c0 .46.37.83.83.83h9.1c.46 0 .83-.37.83-.83V8.25a.83.83 0 0 1 1.66 0v4.96a2.48 2.48 0 0 1-2.48 2.48zm3.87-6.35a.833.833 0 0 1 0-1.17l6.22-6.21H9.91a.814.814 0 0 1-.85-.8c-.02-.46.34-.84.8-.85h5.04c.38 0 .71.28.79.65v.06s.01.1 0 .14v4.93a.83.83 0 0 1-1.66 0V3.13L7.82 9.34c-.32.32-.84.32-1.17 0z' style='fill:%23666'/%3E%3Cpath d='M0 0h16v16H0z' style='fill:none'/%3E%3C/svg%3E");
  background-position: right 3px center;
  background-repeat: no-repeat;
  background-size: 0.7em auto;
  margin-right: 0.2em;
  padding-right: 1.6em;
}
.o-hamburger-menu-pc-sitemap_child .o-hamburger-menu-pc-sitemap_link {
  font-size: 0.875rem;
  padding-top: 1rem;
}
.o-hamburger-menu-pc-sitemap_child-list {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: auto;
  padding-left: 0.3em;
  padding-top: 0.8em;
}
.o-hamburger-menu-pc-sitemap_child-list li {
  font-weight: 400;
  padding-left: 1em;
  position: relative;
}
.o-hamburger-menu-pc-sitemap_child-list li:before {
  color: currentcolor;
  content: "-";
  left: 0;
  position: absolute;
}
.o-hamburger-menu-pc-sitemap_child-list li a[target="_blank"] {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M2.79 15.69a2.48 2.48 0 0 1-2.48-2.48V4.12a2.48 2.48 0 0 1 2.48-2.48h4.96c.46.02.81.4.8.85-.01.44-.36.78-.8.8H2.79c-.46 0-.83.37-.83.83v9.09c0 .46.37.83.83.83h9.1c.46 0 .83-.37.83-.83V8.25a.83.83 0 0 1 1.66 0v4.96a2.48 2.48 0 0 1-2.48 2.48zm3.87-6.35a.833.833 0 0 1 0-1.17l6.22-6.21H9.91a.814.814 0 0 1-.85-.8c-.02-.46.34-.84.8-.85h5.04c.38 0 .71.28.79.65v.06s.01.1 0 .14v4.93a.83.83 0 0 1-1.66 0V3.13L7.82 9.34c-.32.32-.84.32-1.17 0z' style='fill:%23666'/%3E%3Cpath d='M0 0h16v16H0z' style='fill:none'/%3E%3C/svg%3E");
  background-position: right 3px center;
  background-repeat: no-repeat;
  background-size: 0.7em auto;
  margin-right: 0.2em;
  padding-right: 1.6em;
}
.o-hamburger-menu-actions {
  border-top: 0.0625rem solid var(--color-gray-e5);
  margin-top: 2.5rem;
  padding-top: 2.5rem;
}
.o-hamburger-menu-actions_buttons {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}
.o-hamburger-menu-actions_buttons-item {
  height: 3.75rem;
  min-width: 0;
}
.o-hamburger-menu-actions_login,
.o-hamburger-menu-actions_showroom {
  margin-top: 2rem;
}
.o-breadcrumb {
  position: relative;
}
@media (max-width: 749px) {
  .o-breadcrumb {
    margin: 0 -1.5rem;
    overflow: auto;
    padding: 0 1.5rem;
  }
}
.o-breadcrumb_section.is-mainvisual {
  left: 0;
  position: absolute;
  right: 0;
  top: 3.5rem;
  z-index: 5;
}
@media (min-width: 750px) {
  .o-breadcrumb_section.is-mainvisual {
    top: 5rem;
  }
}
.o-breadcrumb_list {
  display: flex;
  font-size: 0.75rem;
  height: auto;
  padding: 0;
  row-gap: 0.25rem;
}
@media (min-width: 750px) {
  .o-breadcrumb_list {
    font-size: 0.75rem;
    padding: 1.125rem 0;
  }
}
.o-breadcrumb_list li {
  align-items: center;
  display: flex;
  line-height: 1.3;
}
@media (max-width: 749px) {
  .o-breadcrumb_list li {
    white-space: nowrap;
  }
}
.o-breadcrumb_list li:not(:last-child):after {
  content: ">";
  display: block;
  margin: 0 0.625rem;
}
.o-breadcrumb_list li:last-child a {
  pointer-events: none;
  text-decoration: none;
}
@media (max-width: 749px) {
  .o-breadcrumb_list li:last-child {
    padding-right: 1.5rem;
  }
}
.o-breadcrumb_link {
  color: var(--color-black);
}
@media (any-hover: hover) {
  .o-breadcrumb_link:hover {
    text-decoration: underline;
  }
}
@media (any-hover: none) {
  .o-breadcrumb_link:active {
    text-decoration: underline;
  }
}
.o-common-cta {
  margin-top: 6.25rem;
  position: relative;
  z-index: 10;
}
@media (min-width: 750px) {
  .o-common-cta {
    margin-top: 7.5rem;
  }
}
.o-common-cta_panel {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 750px) {
  .o-common-cta_panel {
    gap: 0.9375rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
.o-common-cta_panel-link {
  border-radius: 1.25rem;
  box-shadow: 0 0.5rem 1.25rem 0 #0000001a;
  display: block;
  overflow: hidden;
  position: relative;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}
@media (any-hover: hover) {
  .o-common-cta_panel-link:hover {
    box-shadow: 0 0.125rem 0.625rem 0 #0000000d;
    transform: translateY(5px);
  }
  .o-common-cta_panel-link:hover:first-child .o-common-cta_panel-arrow,
  .o-common-cta_panel-link:hover:nth-child(2) .o-common-cta_panel-arrow {
    background-position: -100% 0;
  }
}
@media (any-hover: none) {
  .o-common-cta_panel-link:active {
    box-shadow: 0 0.125rem 0.625rem 0 #0000000d;
    transform: translateY(5px);
  }
  .o-common-cta_panel-link:active:first-child .o-common-cta_panel-arrow,
  .o-common-cta_panel-link:active:nth-child(2) .o-common-cta_panel-arrow {
    background-position: -100% 0;
  }
}
.o-common-cta_panel-link:first-child .o-common-cta_panel-arrow {
  background-image: var(--color-button-gradient02);
  background-position: 0 0;
  background-size: 200% 100%;
  transition: background-position var(--anime-duration) var(--anime-function);
}
.o-common-cta_panel-link:nth-child(2) .o-common-cta_panel-arrow {
  background-image: var(--color-button-gradient01);
  background-position: 0 0;
  background-size: 200% 100%;
  transition: background-position var(--anime-duration) var(--anime-function);
}
.o-common-cta_panel-content {
  inset: 0;
  padding: 3rem 1.5rem 1.5rem;
  position: absolute;
  z-index: 10;
}
@media (min-width: 750px) {
  .o-common-cta_panel-content {
    padding: 5rem 3rem 1.875rem;
  }
}
.o-common-cta_panel-content .a-heading {
  letter-spacing: normal;
}
.o-common-cta_panel-text {
  margin-top: 2rem;
  width: 85%;
}
@media (max-width: 749px) {
  .o-common-cta_panel-text p {
    letter-spacing: -0.05em;
  }
}
@media (min-width: 750px) {
  .o-common-cta_panel-text {
    margin-top: 2.8125rem;
    width: 66%;
  }
}
.o-common-cta_panel-arrow {
  align-items: center;
  border-radius: 50%;
  bottom: 0.5rem;
  box-shadow: 0 8px 8px #889dbf99;
  display: flex;
  height: 3.5rem;
  justify-content: center;
  position: absolute;
  right: 0.5rem;
  width: 3.5rem;
  z-index: 10;
}
@media (min-width: 750px) {
  .o-common-cta_panel-arrow {
    bottom: 1.5rem;
    height: 5rem;
    right: 1.5rem;
    width: 5rem;
  }
}
.o-common-cta_panel-arrow svg {
  fill: var(--color-white);
  height: 1rem;
  width: 0.875rem;
}
@media (min-width: 750px) {
  .o-common-cta_panel-arrow svg {
    height: 1.5rem;
    width: 1.25rem;
  }
}
.o-common-cta_text-link .arrow {
  transition: transform 0.3s ease-out;
}
@media (max-width: 749px) {
  .o-common-cta_text-link .arrow {
    height: 1.375rem;
    width: 1.375rem;
  }
}
@media (any-hover: hover) {
  .o-common-cta_text-link:hover .arrow {
    transform: translateX(0.3125rem);
  }
}
@media (any-hover: none) {
  .o-common-cta_text-link:active .arrow {
    transform: translateX(0.3125rem);
  }
}
.o-common-middle-cta {
  border-radius: 1rem;
  box-shadow: 0 4px 8px #00000029;
  overflow: hidden;
  position: relative;
  transition:
    box-shadow 0.3s ease-out,
    transform 0.3s ease-out;
}
@media (min-width: 750px) {
  .o-common-middle-cta {
    height: 11.75rem;
  }
}
@media (any-hover: hover) {
  .o-common-middle-cta:hover {
    box-shadow: 0 0 0 #0000000f;
    transform: translateY(0.25rem);
  }
  .o-common-middle-cta:hover .o-common-middle-cta_button button.a-button {
    background-position: -100% 0;
  }
}
@media (any-hover: none) {
  .o-common-middle-cta:active {
    box-shadow: 0 0 0 #0000000f;
    transform: translateY(0.25rem);
  }
  .o-common-middle-cta:active .o-common-middle-cta_button button.a-button {
    background-position: -100% 0;
  }
}
.o-common-middle-cta_inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  height: 100%;
  padding: 2.875rem 2rem 3.75rem;
  position: relative;
  width: 100%;
  z-index: 2;
}
@media (min-width: 750px) {
  .o-common-middle-cta_inner {
    flex-direction: row;
    gap: 2rem;
    padding: 2rem 3rem;
  }
}
.o-common-middle-cta_button {
  height: 3.75rem;
  width: 100%;
}
@media (min-width: 750px) {
  .o-common-middle-cta_button {
    width: 13.25rem;
  }
}
.o-common-middle-cta_bg {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.o-float-conversion {
  display: none;
}
@media (min-width: 750px) {
  .o-float-conversion {
    display: block;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 0.3s ease-out;
    z-index: 999;
  }
}
.o-float-conversion_list {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: 1fr;
}
.o-float-conversion_list li {
  min-width: 0;
}
.o-float-conversion_button {
  align-items: center;
  background-color: var(--color-white);
  border-radius: 0.5rem 0 0 0.5rem;
  box-shadow: 0 3px 5px 0 #0000001f;
  color: var(--color-white);
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  justify-content: center;
  letter-spacing: normal;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out;
}
.o-float-conversion_button img {
  transition: opacity 0.3s ease-out;
}
@media (min-width: 750px) {
  .o-float-conversion_button img {
    width: 3.75rem;
  }
}
@media (any-hover: hover) {
  .o-float-conversion_button:hover img {
    opacity: 0.7;
  }
}
@media (any-hover: none) {
  .o-float-conversion_button:active img {
    opacity: 0.7;
  }
}
@media (min-width: 750px) {
  .is-scrolled .o-float-conversion {
    opacity: 1;
  }
}
.o-footer-relation {
  position: relative;
}
.o-footer-relation_list {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
}
@media (min-width: 750px) {
  .o-footer-relation_list {
    gap: 0.3125rem;
    grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr));
  }
}
.o-footer-relation_list li {
  min-width: 0;
}
.o-footer-relation_link {
  align-items: center;
  background-color: var(--color-white);
  border-radius: var(--border-radius-s);
  display: flex;
  gap: 1.125rem;
  padding: 0.375rem 1.125rem 0.375rem 0.375rem;
}
.o-footer-relation_link .a-image {
  border-radius: 0.25rem;
  flex-shrink: 0;
  height: 4.25rem;
  width: 6.25rem;
}
@media (min-width: 750px) {
  .o-footer-relation_link .a-image {
    width: 5.375rem;
  }
}
.o-footer-relation_link .a-image img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}
.o-top-scroll {
  align-items: center;
  background-color: var(--color-primary);
  border: 0.0625rem solid var(--color-primary);
  border-radius: 50%;
  bottom: 0.625rem;
  display: flex;
  height: 1.875rem;
  justify-content: center;
  line-height: 0;
  opacity: 0;
  position: fixed;
  right: 0.625rem;
  transition:
    background-color 0.3s ease-out,
    opacity 0.3s ease-out;
  width: 1.875rem;
  z-index: 99999;
}
@media (min-width: 750px) {
  .o-top-scroll {
    bottom: 1.25rem;
    right: 1.25rem;
  }
}
.o-top-scroll svg {
  fill: var(--color-white);
  transition: fill 0.3s ease-out;
}
@media (any-hover: hover) {
  .o-top-scroll:hover {
    background-color: var(--color-white);
  }
  .o-top-scroll:hover svg {
    fill: var(--color-black);
  }
}
@media (any-hover: none) {
  .o-top-scroll:active {
    background-color: var(--color-white);
  }
  .o-top-scroll:active svg {
    fill: var(--color-black);
  }
}
.is-scrolled .o-top-scroll {
  opacity: 1;
}
.o-relation-buttons {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
}
@media (min-width: 750px) {
  .o-relation-buttons.is-col3 {
    gap: 1.25rem;
    grid-template-columns: repeat(3, 1fr);
  }
  .o-relation-buttons.is-col4 {
    gap: 1.25rem;
    grid-template-columns: repeat(4, 1fr);
  }
}
.o-relation-buttons li {
  height: 4.375rem;
  min-width: 0;
}
.o-relation-buttons li .a-button {
  padding: 0.625rem 1.5rem;
}
.o-relation-buttons li .a-button_inner svg {
  height: 0.75rem;
  width: 0.75rem;
}
.o-card {
  position: relative;
}
.o-card.is-publish {
  cursor: pointer;
}
.o-card.is-publish .o-card_status {
  background-color: var(--color-cv-secondary);
  color: var(--color-white);
}
.o-card.is-disabled {
  pointer-events: none;
}
.o-card.is-disabled .o-card_visual {
  filter: grayscale(100%) brightness(80%);
}
.o-card.is-disabled .o-card_status {
  background-color: var(--color-black);
  color: var(--color-white);
}
.o-card.is-shadow {
  box-shadow: 0 0.3125rem 0.5rem 0 #0000001a;
}
.o-card.is-type-media .o-card_visual {
  border-radius: 0.75rem;
  overflow: hidden;
}
.o-card.is-type-media .o-card_content {
  padding: 1rem 0.75rem;
}
.o-card.is-type-panel .o-card_inner {
  background-color: var(--color-white);
  border-radius: 0.75rem;
  box-shadow: 0 8px 12px 0 #0000001a;
  overflow: hidden;
  transition:
    box-shadow 0.3s ease,
    transform 0.3s ease;
}
@media (any-hover: hover) {
  .o-card.is-type-panel .o-card_inner:hover {
    box-shadow: 0 12px 16px 0 #0003;
    transform: translateY(-0.25rem);
  }
}
@media (any-hover: none) {
  .o-card.is-type-panel .o-card_inner:active {
    box-shadow: 0 12px 16px 0 #0003;
    transform: translateY(-0.25rem);
  }
}
.o-card_inner {
  height: 100%;
  overflow: hidden;
  position: relative;
}
.o-card_new {
  align-items: center;
  background-color: var(--color-black);
  border-radius: 50%;
  box-shadow: 0 4px 6px #0003;
  color: var(--color-white);
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  height: 3.125rem;
  justify-content: center;
  position: absolute;
  right: -0.5rem;
  top: -0.5rem;
  width: 3.125rem;
  z-index: 2;
}
.o-card_link {
  display: block;
}
.o-card_link:before {
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.o-card_visual {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.o-card_status {
  border-radius: 1.25rem;
  display: flex;
  font-size: 0.875rem;
  left: 0.75rem;
  line-height: 1.2;
  padding: 0.25rem 0.875rem;
  position: absolute;
  top: 0.75rem;
  z-index: 2;
}
.o-card_content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.25rem;
}
.o-card_shoulder {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.3;
}
.o-card_heading {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
}
.o-card_info {
  align-items: center;
  display: flex;
  gap: 0.75rem;
}
.o-card_info .a-articles-category {
  position: relative;
  z-index: 5;
}
.o-card_info-date {
  font-size: 0.75rem;
}
.o-card_tag {
  position: relative;
  z-index: 5;
}
.o-card_tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.o-card_text {
  font-size: 0.75rem;
  line-height: 1.5;
}
.o-faq_list {
  border-top: 1px solid var(--color-gray-e5);
  transition:
    box-shadow 0.5s ease-in-out,
    background-color 0.5s ease-in-out;
  width: 100%;
}
.o-faq_list:last-of-type {
  border-bottom: 1px solid var(--color-gray-e5);
}
.o-faq_list.is-opened {
  background-color: var(--color-bg);
  border: none;
  border-radius: 0.625rem;
  box-shadow: 0 3px 15px #0000000d;
}
.o-faq_list.is-opened .o-faq_list-heading-icon {
  background-color: var(--color-black);
  border: 1px solid var(--color-black);
}
.o-faq_list.is-opened .o-faq_list-heading-icon:after {
  transform: translate3d(-50%, -50%, 0) rotate(0);
}
@media (any-hover: hover) {
  .o-faq_list:hover {
    box-shadow: 0 3px 15px #0000000d;
  }
}
@media (any-hover: none) {
  .o-faq_list:active {
    box-shadow: 0 3px 15px #0000000d;
  }
}
.o-faq_list-heading {
  cursor: pointer;
  font-weight: 700;
  line-height: 1.8;
  padding: 1.5625rem 2.75rem 1.5625rem 2.5rem;
  position: relative;
  transition:
    box-shadow 0.5s ease-in-out,
    background-color 0.5s ease-in-out;
  width: 100%;
}
@media (min-width: 750px) {
  .o-faq_list-heading {
    padding: 1.5625rem 3.75rem 1.5625rem 5rem;
  }
}
.o-faq_list-heading:before {
  color: var(--color-black);
  content: "Q";
  display: inline-block;
  font-family: var(--font-famiry-en);
  left: 0.75rem;
  letter-spacing: 0.06em;
  line-height: 1;
  position: absolute;
  top: 1.875rem;
}
@media (min-width: 750px) {
  .o-faq_list-heading:before {
    left: 2.1875rem;
    top: 1.875rem;
  }
}
.o-faq_list-heading-icon {
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
  border-radius: 50%;
  height: 1.125rem;
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  transition: background-color 0.3s ease-out;
  width: 1.125rem;
}
@media (min-width: 750px) {
  .o-faq_list-heading-icon {
    height: 1.625rem;
    right: 1.25rem;
    width: 1.625rem;
  }
}
.o-faq_list-heading-icon:after,
.o-faq_list-heading-icon:before {
  background-color: var(--color-white);
  content: "";
  display: block;
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0) rotate(0);
  transition: transform 0.3s ease-out;
  width: 42%;
}
.o-faq_list-heading-icon:after {
  transform: translate3d(-50%, -50%, 0) rotate(90deg);
}
.o-faq_list-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}
.o-faq_list-content-inner {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
  padding: 0 1.25rem 1.875rem 2.5rem;
  position: relative;
}
@media (min-width: 750px) {
  .o-faq_list-content-inner {
    padding: 0 3.75rem 1.875rem 5rem;
  }
}
.o-faq_list-content-inner p {
  word-break: break-all;
}
.o-faq_list-content-inner:before {
  color: var(--color-primary);
  content: "A";
  display: inline-block;
  font-family: var(--font-famiry-en);
  left: 0.75rem;
  letter-spacing: 0.06em;
  position: absolute;
  top: 0;
}
@media (min-width: 750px) {
  .o-faq_list-content-inner:before {
    left: 2.1875rem;
    top: 0;
  }
}
.o-faq_list-content-inner blockquote {
  background-color: var(--color-white);
  border-radius: 0.3125rem;
  margin: 0;
  padding: 2rem 1.5rem;
  position: relative;
}
@media (min-width: 750px) {
  .o-faq_list-content-inner blockquote {
    padding: 2.25rem 2rem;
  }
}
.o-faq_list-content-inner blockquote:after,
.o-faq_list-content-inner blockquote:before {
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="16" viewBox="0 0 20 16"><path d="M13.08,16c-.61,.01-1.2-.22-1.64-.64-.43-.39-.68-.96-.67-1.54V5.82c0-.78,.16-1.55,.48-2.26,.31-.7,.76-1.33,1.32-1.86,.57-.53,1.24-.96,1.96-1.25C15.29,.15,16.1,0,16.92,0h.77c.2,0,.4,.07,.54,.21,.14,.13,.23,.32,.23,.51v1.46c0,.19-.08,.38-.23,.51-.14,.14-.34,.22-.54,.21h-.77c-.81-.02-1.59,.29-2.17,.85-.58,.53-.91,1.28-.9,2.06v.36c0,.29,.12,.57,.34,.77,.22,.21,.51,.33,.82,.32h2.69c.61-.01,1.19,.21,1.63,.64,.44,.39,.68,.96,.67,1.54v4.36c0,.59-.24,1.15-.68,1.54-.44,.42-1.02,.65-1.63,.64h-4.62Z" fill="%2300c3c1"/><path d="M2.31,16c-.61,.01-1.2-.22-1.64-.64C.24,14.96,0,14.4,0,13.82V5.82c0-.78,.16-1.55,.48-2.26,.31-.7,.76-1.33,1.32-1.86,.57-.53,1.24-.95,1.96-1.25C4.52,.15,5.33,0,6.15,0h.77c.2,0,.4,.07,.54,.21,.15,.13,.23,.32,.23,.51v1.46c0,.2-.08,.38-.23,.51-.15,.14-.34,.22-.54,.21h-.77c-.81-.02-1.59,.29-2.17,.85-.58,.53-.91,1.28-.9,2.06v.36c0,.29,.12,.57,.34,.77,.22,.21,.51,.33,.82,.32h2.69c.61-.01,1.2,.21,1.64,.64,.44,.4,.68,.96,.67,1.55v4.36c0,.59-.24,1.15-.67,1.54-.44,.42-1.03,.65-1.64,.64H2.31Z" fill="%2300c3c1"/></svg>')
    no-repeat;
  background-size: contain;
  content: "";
  height: 1rem;
  position: absolute;
  width: 1.25rem;
}
.o-faq_list-content-inner blockquote:before {
  left: 0.625rem;
  top: 0.625rem;
}
.o-faq_list-content-inner blockquote:after {
  bottom: 0.625rem;
  right: 0.625rem;
  transform: rotate(180deg);
}
.tw-bg-\[--color-bg\] .o-faq_list.is-opened {
  background-color: var(--color-white);
}
.o-accordion_list {
  border-top: 1px solid var(--color-gray-e5);
  transition:
    box-shadow 0.5s ease-in-out,
    background-color 0.5s ease-in-out;
  width: 100%;
}
.o-accordion_list:last-of-type {
  border-bottom: 1px solid var(--color-gray-e5);
}
.o-accordion_list.is-opened {
  background-color: var(--color-bg);
  border: none;
  border-radius: 0.625rem;
  box-shadow: 0 3px 15px #0000000d;
}
.o-accordion_list.is-opened .o-accordion_list-heading-icon {
  background-color: var(--color-black);
  border: 1px solid var(--color-black);
}
.o-accordion_list.is-opened .o-accordion_list-heading-icon:after {
  transform: translate3d(-50%, -50%, 0) rotate(0);
}
.o-accordion_list.is-opened .o-accordion_list-content {
  max-height: none;
}
@media (any-hover: hover) {
  .o-accordion_list.is-closed:hover {
    box-shadow: none;
  }
}
@media (any-hover: none) {
  .o-accordion_list.is-closed:active {
    box-shadow: none;
  }
}
.o-accordion_list.is-closed .o-accordion_list-heading {
  cursor: default;
}
.o-accordion_list.is-closed .o-accordion_list-heading-icon {
  display: none;
}
@media (any-hover: hover) {
  .o-accordion_list:hover {
    box-shadow: 0 3px 15px #0000000d;
  }
}
@media (any-hover: none) {
  .o-accordion_list:active {
    box-shadow: 0 3px 15px #0000000d;
  }
}
.o-accordion_list-heading {
  cursor: pointer;
  font-weight: 700;
  line-height: 1.8;
  padding: 1.5625rem 2.75rem 1.5625rem 1.5rem;
  position: relative;
  transition:
    box-shadow 0.5s ease-in-out,
    background-color 0.5s ease-in-out;
  width: 100%;
}
@media (min-width: 750px) {
  .o-accordion_list-heading {
    padding: 1.5625rem 3.75rem 1.5625rem 2.25rem;
  }
}
.o-accordion_list-heading-icon {
  background-color: var(--color-secondary);
  border: 1px solid var(--color-secondary);
  border-radius: 50%;
  height: 1.125rem;
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  transition: background-color 0.3s ease-out;
  width: 1.125rem;
}
@media (min-width: 750px) {
  .o-accordion_list-heading-icon {
    height: 1.625rem;
    right: 1.25rem;
    width: 1.625rem;
  }
}
.o-accordion_list-heading-icon:after,
.o-accordion_list-heading-icon:before {
  background-color: var(--color-white);
  content: "";
  display: block;
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0) rotate(0);
  transition: transform 0.3s ease-out;
  width: 42%;
}
.o-accordion_list-heading-icon:after {
  transform: translate3d(-50%, -50%, 0) rotate(90deg);
}
.o-accordion_list-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}
.o-accordion_list-content-inner {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
  padding: 0 1.25rem 1.875rem 1.5rem;
  position: relative;
}
@media (min-width: 750px) {
  .o-accordion_list-content-inner {
    padding: 0 3.75rem 1.875rem 2.25rem;
  }
}
.o-accordion_list-content-inner p {
  word-break: break-all;
}
.o-accordion_list-content-inner blockquote {
  background-color: var(--color-white);
  border-radius: 0.3125rem;
  margin: 0;
  padding: 2rem 1.5rem;
  position: relative;
}
@media (min-width: 750px) {
  .o-accordion_list-content-inner blockquote {
    padding: 2.25rem 2rem;
  }
}
.o-accordion_list-content-inner blockquote:after,
.o-accordion_list-content-inner blockquote:before {
  background: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="16" viewBox="0 0 20 16"><path d="M13.08,16c-.61,.01-1.2-.22-1.64-.64-.43-.39-.68-.96-.67-1.54V5.82c0-.78,.16-1.55,.48-2.26,.31-.7,.76-1.33,1.32-1.86,.57-.53,1.24-.96,1.96-1.25C15.29,.15,16.1,0,16.92,0h.77c.2,0,.4,.07,.54,.21,.14,.13,.23,.32,.23,.51v1.46c0,.19-.08,.38-.23,.51-.14,.14-.34,.22-.54,.21h-.77c-.81-.02-1.59,.29-2.17,.85-.58,.53-.91,1.28-.9,2.06v.36c0,.29,.12,.57,.34,.77,.22,.21,.51,.33,.82,.32h2.69c.61-.01,1.19,.21,1.63,.64,.44,.39,.68,.96,.67,1.54v4.36c0,.59-.24,1.15-.68,1.54-.44,.42-1.02,.65-1.63,.64h-4.62Z" fill="%2300c3c1"/><path d="M2.31,16c-.61,.01-1.2-.22-1.64-.64C.24,14.96,0,14.4,0,13.82V5.82c0-.78,.16-1.55,.48-2.26,.31-.7,.76-1.33,1.32-1.86,.57-.53,1.24-.95,1.96-1.25C4.52,.15,5.33,0,6.15,0h.77c.2,0,.4,.07,.54,.21,.15,.13,.23,.32,.23,.51v1.46c0,.2-.08,.38-.23,.51-.15,.14-.34,.22-.54,.21h-.77c-.81-.02-1.59,.29-2.17,.85-.58,.53-.91,1.28-.9,2.06v.36c0,.29,.12,.57,.34,.77,.22,.21,.51,.33,.82,.32h2.69c.61-.01,1.2,.21,1.64,.64,.44,.4,.68,.96,.67,1.55v4.36c0,.59-.24,1.15-.67,1.54-.44,.42-1.03,.65-1.64,.64H2.31Z" fill="%2300c3c1"/></svg>')
    no-repeat;
  background-size: contain;
  content: "";
  height: 1rem;
  position: absolute;
  width: 1.25rem;
}
.o-accordion_list-content-inner blockquote:before {
  left: 0.625rem;
  top: 0.625rem;
}
.o-accordion_list-content-inner blockquote:after {
  bottom: 0.625rem;
  right: 0.625rem;
  transform: rotate(180deg);
}
.tw-bg-\[--color-bg\] .o-accordion_list.is-opened {
  background-color: var(--color-white);
}
.o-information {
  border-bottom: 1px solid #fff3;
  border-top: 1px solid #fff3;
  display: flex;
  padding: 0.875rem 0.75rem;
}
@media (min-width: 750px) {
  .o-information {
    align-items: center;
    gap: 1.25rem;
    justify-content: space-between;
    padding: 1rem 1.25rem;
  }
}
.o-information_content {
  flex: 1;
  min-width: 0;
}
.o-information_list {
  padding: 0 0 0 1.25rem;
  position: relative;
}
.o-information_list:before {
  background-color: var(--color-white);
  border-radius: 0.625rem;
  content: "";
  display: block;
  height: 0.5rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0.5rem;
}
.o-information_list li {
  align-items: flex-start;
  color: var(--color-white);
  display: flex;
  flex-direction: column;
  font-size: 0.875rem;
}
@media (min-width: 750px) {
  .o-information_list li {
    align-items: center;
    flex-direction: row;
    font-size: 0.875rem;
    gap: 1.25rem;
  }
}
.o-information_list li a {
  color: var(--color-white);
}
.o-information_date {
  width: -webkit-fit-content;
  width: fit-content;
}
.o-information_headline {
  flex: 1;
  min-width: 0;
}
@media (max-width: 749px) {
  .o-information_headline {
    width: 100%;
  }
}
.o-information_link {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}
.o-information_more {
  display: none;
}
@media (min-width: 750px) {
  .o-information_more {
    display: block;
    flex-shrink: 0;
  }
  .o-information_more .a-button.is-design-none {
    color: var(--color-white);
  }
  .o-information_more .a-button.is-design-none .a-button_inner svg {
    fill: var(--color-white);
  }
}
.o-list-dot {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 1fr;
  list-style: none;
  padding-left: 1.2em;
}
.o-list-dot li {
  line-height: 1.5;
  position: relative;
}
.o-list-dot li:before {
  background-color: var(--color-primary);
  border-radius: 50%;
  content: "";
  display: block;
  height: 0.375rem;
  left: -1em;
  position: absolute;
  top: 0.6em;
  width: 0.375rem;
}
.o-list-dot.is-color-default li:before {
  background-color: var(--color-black);
}
.o-list-order {
  counter-reset: number;
  display: grid;
  list-style: none;
}
.o-list-order li {
  align-items: flex-start;
  counter-increment: number;
  display: flex;
  gap: 0.25rem;
  line-height: 1.5;
  position: relative;
}
.o-list-order li:before {
  color: var(--color-primary);
  content: counter(number) ".";
  display: block;
  flex-shrink: 0;
  font-weight: 700;
}
dl.o-order-list .o-bullet-list_item .a-text,
dl.o-order-list .o-bullet-list_item .a-text-link,
dl.o-order-list > li .a-text,
dl.o-order-list > li .a-text-link,
ul.o-text-list .o-bullet-list_item .a-text,
ul.o-text-list .o-bullet-list_item .a-text-link,
ul.o-text-list > li .a-text,
ul.o-text-list > li .a-text-link {
  align-items: center;
  display: flex;
}
dl.o-order-list .o-bullet-list_item .a-text-link > :last-child,
dl.o-order-list .o-bullet-list_item .a-text > :last-child,
dl.o-order-list > li .a-text-link > :last-child,
dl.o-order-list > li .a-text > :last-child,
ul.o-text-list .o-bullet-list_item .a-text-link > :last-child,
ul.o-text-list .o-bullet-list_item .a-text > :last-child,
ul.o-text-list > li .a-text-link > :last-child,
ul.o-text-list > li .a-text > :last-child {
  flex: 1;
}
dl.o-order-list .o-bullet-list_item .a-text-link:before,
dl.o-order-list .o-bullet-list_item .a-text:before,
dl.o-order-list > li .a-text-link:before,
dl.o-order-list > li .a-text:before,
ul.o-text-list .o-bullet-list_item .a-text-link:before,
ul.o-text-list .o-bullet-list_item .a-text:before,
ul.o-text-list > li .a-text-link:before,
ul.o-text-list > li .a-text:before {
  content: attr(data-list-style);
}
dl.o-order-list .o-text-list,
ul.o-text-list .o-text-list {
  padding-left: 1.3em;
}
.o-slide-logo-infinite {
  position: relative;
}
.o-slide-logo-infinite_item {
  position: relative;
  width: 100%;
}
.o-slide-logo-infinite_visual {
  align-items: center;
  background-color: var(--color-white);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 #0000001a;
  display: flex;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  width: 100%;
}
.o-media-card {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  height: 100%;
  min-width: 0;
  position: relative;
}
.o-media-card.is-type-panel {
  background-color: var(--color-white);
  border-radius: 0.625rem;
  box-shadow: 0 0.3125rem 0.5rem 0 #0000001a;
  overflow: hidden;
}
.o-media-card.is-type-panel .o-media-card_link:before {
  content: "";
  display: block;
  inset: 0;
  position: absolute;
  z-index: 1;
}
.o-media-card.is-type-panel .o-media-card_content {
  padding: 0 1.5rem 1.5rem;
}
.o-media-card.is-type-panel .o-media-card_tag {
  position: relative;
  z-index: 2;
}
.o-media-card.is-disabled .o-media-card_visual {
  background-color: var(--color-black);
}
.o-media-card.is-disabled .o-media-card_visual img {
  opacity: 0.5;
}
.o-media-card.is-disabled .o-media-card_link {
  cursor: not-allowed;
  pointer-events: none;
}
.o-media-card.is-disabled .a-button {
  opacity: 0.6;
}
.o-media-card.is-disabled .a-button svg {
  fill: var(--color-gray-33);
}
.o-media-card_link:before {
  content: "";
  display: block;
  inset: 0;
  position: absolute;
  z-index: 1;
}
.o-media-card_visual,
.o-media-card_visual-inner {
  position: relative;
  z-index: 1;
}
.o-media-card_visual-logo {
  align-items: center;
  background-color: var(--color-white);
  border-radius: 0.25rem;
  bottom: 0.5rem;
  display: flex;
  height: 3.25rem;
  justify-content: center;
  margin: 0 auto;
  padding: 0.75rem;
  position: absolute;
  right: 0.5rem;
  width: 7.75rem;
  z-index: 2;
}
.o-media-card_visual-logo .a-image img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}
.o-media-card_visual-tag {
  align-items: center;
  display: flex;
  left: 0.625rem;
  position: absolute;
  top: 0.625rem;
  z-index: 2;
}
.o-media-card_visual-tag span {
  border-radius: 1.875rem;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4;
  padding: 0.25rem 0.75rem;
  text-align: center;
  width: -webkit-fit-content;
  width: fit-content;
}
.o-media-card_content-inner {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
}
.o-media-card_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  position: relative;
  z-index: 10;
}
.o-media-card_def dd,
.o-media-card_def dt {
  color: var(--color-gray-66);
  display: inline;
}
.o-media-panel {
  background-color: var(--color-white);
  border-radius: var(--border-radius-m);
  display: flex;
  min-width: 0;
  overflow: hidden;
  position: relative;
}
.o-media-panel.is-horizontal {
  box-shadow: 0 0.25rem 0.5rem #0000001f;
  flex-direction: row;
}
.o-media-panel.is-horizontal.is-icon {
  flex-direction: column;
}
@media (max-width: 749px) {
  .o-media-panel.is-horizontal.is-icon {
    align-items: center;
  }
}
@media (min-width: 750px) {
  .o-media-panel.is-horizontal.is-icon {
    flex-direction: row;
  }
}
.o-media-panel.is-horizontal.is-icon .o-media-panel_visual {
  padding: 1.5rem 0 0;
}
@media (min-width: 750px) {
  .o-media-panel.is-horizontal.is-icon .o-media-panel_visual {
    padding: 2rem 0 2rem 2.125rem;
  }
}
.o-media-panel.is-horizontal.is-icon .o-media-panel_visual .a-image {
  align-items: center;
  background-color: var(--color-bg);
  border-radius: 50%;
  display: flex;
  height: 9.375rem;
  justify-content: center;
  width: 9.375rem;
}
@media (max-width: 749px) {
  .o-media-panel.is-horizontal.is-icon .o-media-panel_visual .a-image {
    margin: 0 auto;
  }
}
@media (min-width: 750px) {
  .o-media-panel.is-horizontal.is-icon .o-media-panel_visual .a-image {
    height: 6.875rem;
    width: 6.875rem;
  }
}
.o-media-panel.is-horizontal.is-icon .o-media-panel_content {
  padding: 1.5rem 1.75rem 2rem;
}
@media (min-width: 750px) {
  .o-media-panel.is-horizontal.is-icon .o-media-panel_content {
    padding: 2.125rem 2.125rem 2.125rem 1.875rem;
  }
}
.o-media-panel.is-vertical {
  box-shadow: 0 0.3125rem 0.5rem 0 #0000001a;
  flex-direction: column;
}
.o-media-panel.is-vertical.is-icon .o-media-panel_visual {
  display: flex;
  justify-content: center;
  padding-top: 1.5rem;
}
@media (min-width: 750px) {
  .o-media-panel.is-vertical.is-icon .o-media-panel_visual {
    padding-top: 2.8125rem;
  }
}
.o-media-panel.is-vertical.is-icon .o-media-panel_visual .a-image {
  align-items: center;
  border-radius: 50%;
  display: flex;
  height: 4rem;
  justify-content: center;
  width: 4rem;
}
@media (min-width: 750px) {
  .o-media-panel.is-vertical.is-icon .o-media-panel_visual .a-image {
    height: 5.625rem;
    width: 5.625rem;
  }
}
.o-media-panel.is-link {
  transition:
    background-color 0.3s ease-out,
    box-shadow 0.3s ease-out;
}
@media (any-hover: hover) {
  .o-media-panel.is-link:hover {
    background-color: var(--color-bg);
    box-shadow: 0 0 0 0 #0000001a;
  }
}
@media (any-hover: none) {
  .o-media-panel.is-link:active {
    background-color: var(--color-bg);
    box-shadow: 0 0 0 0 #0000001a;
  }
}
@media (any-hover: hover) {
  .o-media-panel.is-link.is-icon:hover .o-media-panel_visual .a-image {
    background-color: var(--color-white);
  }
}
@media (any-hover: none) {
  .o-media-panel.is-link.is-icon:active .o-media-panel_visual .a-image {
    background-color: var(--color-white);
  }
}
.o-media-panel_visual {
  flex-shrink: 0;
}
.o-media-panel_content {
  flex: 1;
  min-width: 0;
}
.o-media-seminar {
  position: relative;
}
.o-media-seminar.is-horizontal .o-media-seminar_link {
  background-color: var(--color-white);
  border-radius: 0.3125rem;
  box-shadow: 0 5px 8px 0 #0000001a;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.5rem;
}
@media (min-width: 750px) {
  .o-media-seminar.is-horizontal .o-media-seminar_link {
    flex-direction: row;
    gap: 2rem;
    padding: 2rem 2.5rem;
  }
}
.o-media-seminar.is-horizontal .o-media-seminar_visual {
  width: auto;
}
@media (max-width: 749px) {
  .o-media-seminar.is-horizontal .o-media-seminar_visual {
    margin: -1.5rem -1.5rem 0;
  }
}
@media (min-width: 750px) {
  .o-media-seminar.is-horizontal .o-media-seminar_visual {
    width: 23.75rem;
  }
}
.o-media-seminar.is-horizontal .o-media-seminar_content {
  flex: 1;
}
@media (min-width: 750px) {
  .o-media-seminar.is-horizontal .o-media-seminar_content-inner {
    padding-top: 2rem;
  }
}
@media (max-width: 749px) {
  .o-media-seminar.is-horizontal .o-media-seminar_button {
    display: flex;
    justify-content: flex-end;
    margin: 1.25rem 0 0;
  }
  .o-media-seminar.is-horizontal .o-media-seminar_button button {
    width: -webkit-fit-content;
    width: fit-content;
  }
}
@media (min-width: 750px) {
  .o-media-seminar.is-horizontal .o-media-seminar_button {
    bottom: 0;
    position: absolute;
    right: 0;
  }
}
.o-media-seminar.is-vertical .o-media-seminar_link {
  background-color: var(--color-white);
  border-radius: 0.3125rem;
  box-shadow: 0 5px 8px 0 #0000001a;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  height: 100%;
  overflow: hidden;
  padding: 1.5rem;
}
.o-media-seminar.is-vertical .o-media-seminar_visual {
  margin: -1.5rem -1.5rem 0;
  width: auto;
}
.o-media-seminar.is-vertical .o-media-seminar_badge {
  left: 0.5rem;
  top: 0.5rem;
}
.o-media-seminar.is-vertical .o-media-seminar_content {
  flex: 1;
}
.o-media-seminar.is-vertical .o-media-seminar_button {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.25rem;
}
.o-media-seminar_link.is-disabled {
  pointer-events: none;
}
.o-media-seminar_link.is-disabled .o-media-seminar_visual:before {
  background-color: #0006;
  content: "";
  display: block;
  inset: 0;
  position: absolute;
  z-index: 2;
}
.o-media-seminar_content,
.o-media-seminar_visual {
  position: relative;
}
.o-media-seminar_badge {
  align-items: center;
  border-radius: 0.3125rem;
  color: var(--color-white);
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  gap: 0.625rem;
  justify-content: center;
  left: 0.3125rem;
  line-height: 1;
  min-width: 4.375rem;
  padding: 0.5rem 0.625rem;
  position: absolute;
  top: 0.3125rem;
  z-index: 5;
}
@media (min-width: 750px) {
  .o-media-seminar_badge {
    font-size: 0.875rem;
    left: 0.3125rem;
    top: 0.3125rem;
  }
}
.o-media-column {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
@media (min-width: 750px) {
  .o-media-column {
    flex-direction: row;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-quarter .o-media-column_visual {
    width: 31.2%;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-quarter .o-media-column_content {
    flex: 1;
  }
}
.o-media-column.is-one-third {
  gap: 1.875rem;
}
@media (min-width: 750px) {
  .o-media-column.is-one-third {
    gap: 3.75rem;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-one-third .o-media-column_visual {
    width: 39.5%;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-one-third .o-media-column_content {
    flex: 1;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-half .o-media-column_visual {
    width: 50%;
  }
}
@media (min-width: 750px) {
  .o-media-column.is-half .o-media-column_content {
    flex: 1;
  }
}
.o-media-column_visual-iframe {
  overflow: hidden;
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}
.o-media-column_visual-iframe iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.o-media-grid {
  background-color: var(--color-white);
  border-radius: var(--border-radius-m);
  box-shadow: 0 0.3125rem 0.5rem 0 #0000001a;
  display: grid;
  gap: 1.5rem;
  grid-template-areas: "head" "visual" "content";
  grid-template-columns: 1fr;
  margin: 0 -0.75rem;
  min-width: 0;
  overflow: hidden;
  padding: 2rem 1.5rem;
  position: relative;
}
@media (min-width: 750px) {
  .o-media-grid {
    gap: 1rem 4%;
    grid-template: "visual head" auto "visual content" 1fr/24% 1fr;
    margin: 0;
    padding: 2.5rem;
  }
}
.o-media-grid_head {
  grid-area: head;
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}
.o-media-grid_visual {
  grid-area: visual;
  -ms-grid-column: 1;
  -ms-grid-row: 3;
}
.o-media-grid_content {
  grid-area: content;
  -ms-grid-column: 1;
  -ms-grid-row: 5;
}
@media (min-width: 750px) {
  .o-media-grid_head {
    -ms-grid-column: 3;
    -ms-grid-row: 1;
  }
  .o-media-grid_visual {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .o-media-grid_content {
    -ms-grid-column: 3;
    -ms-grid-row: 3;
  }
}
.o-tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem;
  position: relative;
  z-index: 5;
}
.o-tag-list li > a,
.o-tag-list li > span {
  align-items: center;
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
  border-radius: 0.25rem;
  color: var(--color-white);
  display: inline-flex;
  font-size: 0.8125rem;
  font-weight: 700;
  justify-content: center;
  line-height: 1.3;
  padding: 0.3125rem 0.5rem;
  transition:
    color 0.3s ease-in-out,
    background-color 0.3s ease-in-out;
}
@media (any-hover: hover) {
  .o-tag-list li a:hover {
    background-color: initial;
    color: var(--color-primary);
  }
}
@media (any-hover: none) {
  .o-tag-list li a:active {
    background-color: initial;
    color: var(--color-primary);
  }
}
.o-news-index {
  border-top: 1px solid var(--color-border-gray);
}
.o-news-index li {
  border-bottom: 1px solid var(--color-border-gray);
  padding: 1.25rem 0.75rem;
  position: relative;
  transition: background-color 0.3s ease-out;
}
@media (min-width: 750px) {
  .o-news-index li {
    display: flex;
    padding: 1.5625rem;
  }
}
@media (any-hover: hover) {
  .o-news-index li:hover {
    background-color: var(--color-bg);
  }
}
@media (any-hover: none) {
  .o-news-index li:active {
    background-color: var(--color-bg);
  }
}
.o-news-index_link:before {
  content: "";
  display: block;
  inset: 0;
  position: absolute;
  z-index: 1;
}
.o-news-index_head {
  align-items: center;
  display: flex;
  position: relative;
  z-index: 2;
}
@media (min-width: 750px) {
  .o-news-index_head {
    align-items: flex-start;
    padding-top: 0.1875rem;
  }
}
.o-news-index_head-date {
  font-size: 0.75rem;
  margin-right: 1em;
  white-space: nowrap;
  width: auto;
}
@media (min-width: 750px) {
  .o-news-index_head-date {
    font-size: 0.875rem;
    width: 5rem;
  }
}
.o-news-index_head-category {
  display: flex;
  padding-top: 0.1875rem;
  width: 6.875rem;
}
.o-news-index_head-category a,
.o-news-index_head-category span {
  background-color: var(--color-bg);
  border-radius: 1.25rem;
  color: var(--color-primary);
  cursor: pointer;
  display: flex;
  font-size: 0.6875rem;
  justify-content: center;
  line-height: 1.3;
  padding: 0.2em 0.5em;
  transition:
    color 0.3s ease-out,
    background-color 0.3s ease-out;
  width: 100%;
}
@media (min-width: 750px) {
  .o-news-index_head-category a,
  .o-news-index_head-category span {
    font-size: 0.75rem;
  }
}
@media (any-hover: hover) {
  .o-news-index_head-category a:hover {
    background-color: var(--color-white);
    color: var(--color-primary);
  }
}
@media (any-hover: none) {
  .o-news-index_head-category a:active {
    background-color: var(--color-white);
    color: var(--color-primary);
  }
}
@media (max-width: 749px) {
  .o-news-index_content {
    margin-top: 0.3125rem;
  }
}
@media (min-width: 750px) {
  .o-news-index_content {
    padding-left: 1.25rem;
  }
}
.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
  align-items: center;
  background-color: var(--color-bg);
  border-radius: 0.25rem;
  display: flex;
  font-family: Poppins, sans-serif;
  font-size: 0.875rem;
  height: 2.25rem;
  justify-content: center;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out;
  width: 2.25rem;
}
@media (min-width: 750px) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    font-size: 1rem;
    height: 2.5rem;
    width: 2.5rem;
  }
}
@media (max-width: 749px) {
  .wp-pagenavi a.first,
  .wp-pagenavi a.last,
  .wp-pagenavi span.first,
  .wp-pagenavi span.last {
    font-family: sans-serif;
  }
}
@media (any-hover: hover) {
  .wp-pagenavi a:hover,
  .wp-pagenavi span:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  .wp-pagenavi a:active,
  .wp-pagenavi span:active {
    background-color: var(--color-primary);
    color: var(--color-white);
  }
}
.wp-pagenavi a.current,
.wp-pagenavi span.current {
  background-color: var(--color-black);
  color: var(--color-white);
  pointer-events: none;
}
.o-news-tab {
  position: relative;
}
@media (min-width: 750px) {
  .o-news-tab_head {
    padding-top: 0.375rem;
  }
}
.o-news-tab_list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}
@media (min-width: 750px) {
  .o-news-tab_list {
    gap: 0.5rem;
  }
}
.o-news-tab_trigger {
  background-color: initial;
  border: 0.0625rem solid var(--color-black);
  border-radius: 3.75rem;
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4;
  padding: 0.375rem 0.75rem;
}
@media (min-width: 750px) {
  .o-news-tab_trigger {
    padding: 0.375rem 1.125rem;
  }
}
.o-news-tab_trigger.is-active {
  background-color: var(--color-black);
  color: var(--color-white);
}
.o-news-tab_trigger span {
  pointer-events: none;
}
.o-news-tab_item.is-release .o-news-tab_trigger.is-active {
  background-color: var(--color-release);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .o-news-tab_item.is-release .o-news-tab_trigger:hover {
    background-color: var(--color-release);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  .o-news-tab_item.is-release .o-news-tab_trigger:active {
    background-color: var(--color-release);
    color: var(--color-white);
  }
}
.o-news-tab_item.is-event .o-news-tab_trigger.is-active {
  background-color: var(--color-event);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .o-news-tab_item.is-event .o-news-tab_trigger:hover {
    background-color: var(--color-event);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  .o-news-tab_item.is-event .o-news-tab_trigger:active {
    background-color: var(--color-event);
    color: var(--color-white);
  }
}
.o-news-tab_item.is-info .o-news-tab_trigger.is-active {
  background-color: var(--color-info);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .o-news-tab_item.is-info .o-news-tab_trigger:hover {
    background-color: var(--color-info);
    color: var(--color-white);
  }
}
@media (any-hover: none) {
  .o-news-tab_item.is-info .o-news-tab_trigger:active {
    background-color: var(--color-info);
    color: var(--color-white);
  }
}
.o-news-tab_body {
  margin-top: 1.5rem;
}
@media (min-width: 750px) {
  .o-news-tab_body {
    margin-top: 2rem;
  }
}
.o-news-tab_panel {
  display: none;
}
.o-news-tab_panel.is-active {
  display: block;
}
.o-mainvisual {
  align-items: center;
  color: var(--color-white);
  display: flex;
  height: auto;
  justify-content: center;
  margin-top: -3.75rem;
  padding: 7.8125rem 1.5rem 15.625rem;
  position: relative;
  width: 100%;
}
@media (min-width: 750px) {
  .o-mainvisual {
    margin-top: -5.125rem;
    padding: 8.875rem 2.25rem 6.125rem;
  }
}
.o-mainvisual.is-logo .o-mainvisual_bg-visual .a-image {
  bottom: -0.625rem;
  position: absolute;
  right: -3.125rem;
  width: 25rem;
}
@media (min-width: 750px) {
  .o-mainvisual.is-logo .o-mainvisual_bg-visual .a-image {
    right: -25rem;
    top: 0;
    width: 49.6875rem;
  }
}
.o-mainvisual.is-single {
  padding: 7.8125rem 1.5rem 2.5rem;
}
@media (min-width: 750px) {
  .o-mainvisual.is-single {
    min-height: 17.5rem;
    padding: 8.875rem 2.25rem 3.125rem;
  }
}
@media (max-width: 749px) {
  .o-mainvisual.is-mask {
    padding: 18.75rem 0 0;
  }
  .o-mainvisual.is-mask .o-mainvisual_content {
    background-color: var(--color-white);
    border-radius: 1.25rem 1.25rem 0 0;
    padding: 2.5rem 1.5rem 1.25rem;
  }
  .o-mainvisual.is-mask .o-mainvisual_content-inner {
    border-bottom: 0.0625rem solid var(--color-gray-e5);
    padding-bottom: 3.75rem;
  }
  .o-mainvisual.is-mask:before {
    background: linear-gradient(0deg, #fff0, #ffffffe6);
    content: "";
    display: block;
    height: 8.125rem;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
}
.o-mainvisual.is-mask .o-mainvisual_bg-visual .a-image {
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
@media (max-width: 749px) {
  .o-mainvisual.is-mask .o-mainvisual_bg-visual .a-image {
    height: 20.625rem;
  }
  .o-mainvisual.is-mask .o-mainvisual_bg-visual .a-image img {
    height: 100%;
    object-fit: cover;
    object-position: top;
    width: 100%;
  }
}
@media (min-width: 750px) {
  .o-mainvisual.is-mask .o-mainvisual_bg-visual .a-image {
    right: -25rem;
    top: 0;
    width: 49.6875rem;
  }
  .o-mainvisual.is-mask .o-mainvisual_bg-visual .a-image img {
    clip-path: url(#mv-mask);
  }
}
@media (min-width: 750px) {
  .o-mainvisual.is-simple {
    background: url(/assets/img/common/mv_simple_logo.png) no-repeat top;
  }
}
@media (min-width: 750px) {
  .o-mainvisual.is-simple .o-mainvisual_bg {
    display: none;
  }
}
.o-mainvisual_bg {
  height: 100%;
  isolation: isolate;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.o-mainvisual_bg-inner {
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media (min-width: 750px) {
  .o-mainvisual_bg-inner .a-image.is-fit img {
    object-position: top;
  }
}
@media (max-width: 749px) {
  .o-mainvisual_bg-inner .a-image.is-fit img {
    object-position: top;
  }
}
.o-mainvisual_bg-visual {
  display: flex;
  height: 100%;
  isolation: isolate;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.o-mainvisual_bg-visual-inner,
.o-mainvisual_content {
  max-width: 75rem;
  position: relative;
  width: 100%;
}
.o-mainvisual_content {
  z-index: 2;
}
.o-mainvisual_button {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 750px) {
  .o-mainvisual_button {
    flex-direction: row;
    gap: 0.5rem;
  }
}
.o-mainvisual_button-item {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 1fr;
}
.o-mainvisual_button-item-shoulder {
  align-items: center;
  display: flex;
  gap: 0.375rem;
  justify-content: center;
}
.o-mainvisual_button-item_inner {
  min-height: 3.75rem;
  width: 100%;
}
@media (min-width: 750px) {
  .o-mainvisual_button-item_inner {
    min-width: 15rem;
  }
}
.o-sort-ui {
  font-size: 0.875rem;
  position: relative;
  z-index: 100;
}
.o-sort-ui_item:not(:first-of-type) {
  margin-top: 0;
}
@media (min-width: 750px) {
  .o-sort-ui_item:not(:first-of-type) {
    margin-top: 1em;
  }
}
.o-sort-ui_wrap {
  display: block;
}
@media (min-width: 750px) {
  .o-sort-ui_wrap {
    align-items: center;
    display: flex;
  }
}
.o-sort-ui_head {
  align-items: center;
  display: flex;
  font-weight: 700;
  width: 7.5rem;
}
.o-sort-ui_head span {
  margin-left: 0.3125rem;
  pointer-events: none;
}
.o-sort-ui_content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.25rem;
}
@media (min-width: 750px) {
  .o-sort-ui_content {
    align-items: center;
    flex: 1;
    flex-direction: row;
    gap: 1.875rem;
    margin-top: 0;
  }
}
.o-sort-ui_select {
  align-items: center;
  display: flex;
}
.o-sort-ui_select dt {
  font-weight: 700;
  width: 23%;
}
@media (min-width: 750px) {
  .o-sort-ui_select dt {
    width: auto;
  }
}
.o-sort-ui_select dd {
  flex: 1;
  margin-left: 0.3em;
  position: static;
}
@media (min-width: 750px) {
  .o-sort-ui_select dd {
    position: relative;
  }
}
.o-sort-ui_select-button {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}
@media (max-width: 749px) {
  .o-sort-ui_select-button {
    align-items: center;
    border: 1px solid var(--color-gray-e5);
    border-radius: 0.25rem;
    display: flex;
    font-size: 0.875rem;
    justify-content: space-between;
    padding: 0.6em 1em;
    width: 100%;
  }
}
.o-sort-ui_select-button i {
  margin-left: 0.5em;
  transition: transform 0.3s ease-out;
}
.o-sort-ui_select-button.is-active i {
  transform: rotate(180deg);
}
.o-sort-ui_select-box {
  background-color: var(--color-white);
  border-radius: 0.3125rem;
  box-shadow: 0 5px 12px #0000001a;
  left: 0;
  opacity: 0;
  padding: 1.875rem;
  position: absolute;
  top: 110%;
  transition:
    opacity 0.3s ease-out,
    visibility 0.3s ease-out;
  visibility: hidden;
}
@media (min-width: 750px) {
  .o-sort-ui_select-box {
    padding: 0.875rem;
  }
}
.o-sort-ui_select-box.is-open {
  opacity: 1;
  visibility: visible;
}
.o-sort-ui_select-box input {
  display: none;
}
.o-sort-ui_select-box input[type="radio"]:checked + label {
  background-color: var(--color-black);
  border: 1px solid var(--color-black);
  color: var(--color-white);
}
.o-sort-ui_select-box input[type="radio"]:checked + label:after {
  opacity: 1;
}
.o-sort-ui_select-box label {
  border: 1px solid var(--color-gray-e5);
  border-radius: 0.25rem;
  cursor: pointer;
  display: block;
  padding: 0.5em 1.5em 0.5em 3.5em;
  position: relative;
  transition:
    color 0.3s ease-out,
    background-color 0.3s ease-out,
    border 0.3s ease-out;
  white-space: nowrap;
}
@media (any-hover: hover) {
  .o-sort-ui_select-box label:hover {
    background-color: var(--color-gray-f5);
  }
}
@media (any-hover: none) {
  .o-sort-ui_select-box label:active {
    background-color: var(--color-gray-f5);
  }
}
.o-sort-ui_select-box label:after,
.o-sort-ui_select-box label:before {
  content: "";
  display: block;
  position: absolute;
}
.o-sort-ui_select-box label:before {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 50%;
  height: 1.25rem;
  left: 0.9375rem;
  top: calc(50% - 10px);
  width: 1.25rem;
}
.o-sort-ui_select-box label:after {
  background: var(--color-black);
  border: 1px solid var(--color-black);
  border-radius: 50%;
  display: block;
  height: 0.625rem;
  left: 1.25rem;
  opacity: 0;
  top: calc(50% - 5px);
  transition: opacity 0.3s ease-out;
  width: 0.625rem;
}
.o-sort-ui_select-link {
  border: 1px solid var(--color-gray-e5);
  border-radius: 0.25rem;
  cursor: pointer;
  display: block;
  padding: 0.8em 1.5em 0.8em 3.5em;
  position: relative;
  text-align: left;
  transition:
    color 0.3s ease-out,
    background-color 0.3s ease-out,
    border 0.3s ease-out;
  white-space: nowrap;
  width: 100%;
}
@media (min-width: 750px) {
  .o-sort-ui_select-link {
    padding: 0.5em 1.5em 0.5em 3.5em;
    width: 100%;
  }
}
.o-sort-ui_select-link > * {
  pointer-events: none;
}
.o-sort-ui_select-link.is-current {
  background-color: var(--color-black);
  border: 1px solid var(--color-black);
  color: var(--color-white);
}
.o-sort-ui_select-link.is-current:after {
  opacity: 1;
}
.o-sort-ui_select-link:after,
.o-sort-ui_select-link:before {
  content: "";
  display: block;
  position: absolute;
}
.o-sort-ui_select-link:before {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 50%;
  height: 1.25rem;
  left: 0.625rem;
  top: calc(50% - 10px);
  width: 1.25rem;
}
.o-sort-ui_select-link:after {
  background: var(--color-black);
  border: 1px solid var(--color-black);
  border-radius: 50%;
  display: block;
  height: 0.625rem;
  left: 0.9375rem;
  opacity: 0;
  top: calc(50% - 5px);
  transition: opacity 0.3s ease-out;
  width: 0.625rem;
}
@media (max-width: 749px) {
  .o-sort-ui_select-list {
    margin-top: 0.9375rem;
  }
}
.o-sort-ui_select-list-item:not(:first-of-type) {
  margin-top: 0.3125rem;
}
.o-sort_overlay {
  align-items: flex-end;
  display: flex;
  inset: 0;
  opacity: 0;
  position: fixed;
  transition: none;
  visibility: hidden;
  z-index: 1000;
}
.o-sort_overlay.is-open {
  opacity: 1;
  transition:
    opacity 0.3s ease-out,
    visibility 0.3s ease-out;
  visibility: visible;
}
.o-sort_overlay-bg {
  background-color: #000000b3;
  inset: 0;
  position: absolute;
  z-index: 1;
}
.o-sort_overlay-inner {
  background-color: var(--color-white);
  border-radius: 0.3125rem 0.3125rem 0 0;
  padding: 0.9375rem 1.875rem 3.75rem;
  position: relative;
  width: 100%;
  z-index: 2;
}
.o-sort_overlay-close {
  display: block;
  height: 1.2em;
  margin: 0 0 0 auto;
  width: 1.2em;
}
.o-modal {
  align-items: center;
  display: flex;
  height: 100vh;
  justify-content: center;
  left: 0;
  opacity: 0;
  overflow: auto;
  padding: 1.875rem 0.75rem 6.25rem;
  position: fixed;
  top: 0;
  transition:
    visibility 0.4s ease-out,
    opacity 0.4s ease-out;
  visibility: hidden;
  width: 100%;
  z-index: 100000;
}
@media (min-width: 750px) {
  .o-modal {
    padding: 1.875rem 1.25rem;
  }
}
@media (max-width: 749px) {
  .o-modal.is-block {
    display: block;
  }
}
.o-modal.is-active {
  opacity: 1;
  visibility: visible;
}
.o-modal_bg {
  background-color: #000000b3;
  inset: 0;
  position: fixed;
  touch-action: none;
  z-index: 1;
}
.o-modal_wrap {
  background-color: var(--color-white);
  border-radius: 0.3125rem;
  max-height: 100%;
  max-width: 62.5rem;
  overflow: auto;
  padding: 2.5rem 1.5rem;
  position: relative;
  width: 100%;
  z-index: 2;
}
@media (min-width: 750px) {
  .o-modal_wrap {
    padding: 2.5rem 5rem 3.75rem;
  }
}
.o-modal_inner {
  width: 100%;
}
.o-modal_close {
  align-items: center;
  background-color: var(--color-black);
  border-radius: 50%;
  box-shadow: 0 3px 6px #00000029;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  height: 1.5rem;
  justify-content: center;
  position: absolute;
  right: 0.625rem;
  top: 0.625rem;
  transition: background-color 0.3s ease-out;
  width: 1.5rem;
  z-index: 10;
}
.o-modal_close:after,
.o-modal_close:before {
  background-color: var(--color-white);
  content: "";
  display: block;
  height: 2px;
  width: 50%;
}
.o-modal_close:before {
  transform: rotate(45deg);
}
.o-modal_close:after {
  margin-top: -0.125rem;
  transform: rotate(-45deg);
}
.o-modal_content-head {
  padding: 0 0.625rem;
}
.o-modal_content-body {
  background-color: var(--color-white);
  margin: 1.125rem 0 0;
  padding: 0.625rem 1.25rem;
}
.o-modal_content-foot {
  display: grid;
  gap: 0.9375rem;
  grid-template-columns: 1fr;
  margin-top: 1.875rem;
  padding: 0 1.25rem;
}
.o-modal_select {
  height: 3.75rem;
  min-width: 0;
  width: 100%;
}
.o-modal_select .a-button {
  font-size: 1.125rem;
}
.o-modal_clear,
.o-modal_clear-button {
  display: flex;
  justify-content: center;
}
.o-modal_clear-button {
  align-items: center;
  font-size: 1rem;
  gap: 0.625rem;
}
.o-modal_video {
  position: relative;
}
.o-modal_video-inner {
  overflow: hidden;
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}
.o-modal_video-inner iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.o-malti-anchor.is-link-only {
  display: grid;
  gap: 0.375rem 0.3125rem;
  grid-template-columns: repeat(2, 1fr);
  padding: 0.625rem 0;
}
.o-malti-anchor_item-first {
  font-size: 1.125rem;
  font-weight: 700;
  padding: 1.125rem 0;
}
.o-malti-anchor_item-first:not(:last-child) {
  border-bottom: 1px solid var(--color-gray-70);
}
.o-malti-anchor_item-second {
  border-top: 1px dotted var(--color-gray-70);
  font-size: 1.125rem;
  font-weight: 700;
  padding: 1.125rem 0;
}
.o-malti-anchor_item-second:first-of-type {
  margin-top: 1.125rem;
}
.o-malti-anchor_item-second:last-child {
  padding-bottom: 0;
}
.o-malti-anchor_item-second.is-link {
  border-top: none;
  margin-top: 0.3125rem;
  padding: 0;
}
.o-malti-anchor_item-second.is-link:first-of-type {
  margin-top: 1.125rem;
}
.o-malti-anchor_item-third {
  font-size: 0.9375rem;
  font-weight: 400;
}
.o-malti-anchor_item-third:first-of-type {
  margin-top: 1.125rem;
}
.o-malti-anchor_item-third:not(:first-child) {
  margin-top: 0.3125rem;
}
.o-malti-anchor_item-link {
  justify-content: space-between;
}
.o-malti-anchor_item-link svg {
  height: 1.5rem;
  margin-right: -0.5rem;
  width: 1.5rem;
}
.o-malti-anchor_item-child-link {
  align-items: center;
  background-color: var(--color-primary-light);
  border-radius: 0.3125rem;
  display: flex;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.3;
  min-width: 0;
  padding: 0.5rem;
  width: 100%;
}
.o-malti-anchor_title strong {
  font-weight: 700;
}
.o-malti-anchor_acd {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.o-malti-anchor_acd i {
  flex-shrink: 0;
  line-height: 0;
}
.o-malti-anchor_acd.is-opened i svg {
  transform: rotate(180deg);
}
.o-malti-anchor_acd-content {
  display: none;
  padding: 0 0.625rem;
}
.o-malti-anchor_acd-content.is-second.is-link-only {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 1fr;
  padding: 0;
}
.o-malti-anchor_acd-content.is-third {
  display: none;
  padding: 0;
}
.o-search-modal {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  position: relative;
}
.o-search-modal_inner {
  display: flex;
  justify-content: center;
}
.o-search-modal_button {
  width: 100%;
}
@media (min-width: 750px) {
  .o-search-modal_button {
    width: 18.75rem;
  }
  .o-search-modal_button .a-button.is-content-fit {
    width: 100%;
  }
}
.o-search-modal_content-head {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 750px) {
  .o-search-modal_content-head {
    align-items: flex-end;
    flex-direction: row;
    gap: 1.25rem;
  }
}
.o-search-modal_content-head .a-heading svg {
  height: 1.5rem;
  width: 1.5rem;
}
.o-search-modal_content-head p b {
  color: var(--color-primary);
  font-weight: 700;
}
.o-search-modal_list {
  border-bottom: 1px solid var(--color-gray-e5);
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 1.25rem;
}
@media (min-width: 750px) {
  .o-search-modal_list {
    margin-top: 2rem;
  }
}
.o-search-modal_list-item {
  border-top: 1px solid var(--color-gray-e5);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.25rem 0;
}
@media (min-width: 750px) {
  .o-search-modal_list-item {
    flex-direction: row;
    gap: 1.25rem;
    padding: 1rem 0;
  }
}
.o-search-modal_list-head {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
}
@media (min-width: 750px) {
  .o-search-modal_list-head {
    flex-direction: column;
    width: 7.0625rem;
  }
}
.o-search-modal_list-head h3 {
  letter-spacing: normal;
}
.o-search-modal_list-head-button .a-button {
  border: 1px solid var(--color-gray-66);
  border-radius: 0.3125rem;
  color: var(--color-gray-66);
  font-size: 0.75rem;
}
@media (max-width: 749px) {
  .o-search-modal_list-head-button .a-button {
    padding: 0 0.5rem;
  }
}
.o-search-modal_list-content {
  flex: 1;
}
.o-search-modal_list-checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 0.3125rem;
}
@media (max-width: 749px) {
  .o-search-modal_list-checkboxes {
    gap: 1.125rem;
  }
  .o-search-modal_list-checkboxes li .a-checkbox span {
    font-size: 0.75rem;
  }
}
.o-search-modal_submit {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 1.5rem;
}
@media (min-width: 750px) {
  .o-search-modal_submit {
    flex-direction: row;
    margin-top: 1.875rem;
  }
  .o-search-modal_submit:after {
    content: "";
    display: block;
    flex: 1;
  }
}
.o-search-modal_submit-result {
  flex: 1;
}
.o-search-modal_submit-buttons {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media (max-width: 749px) {
  .o-search-modal_submit-buttons {
    width: 100%;
  }
}
@media (min-width: 750px) {
  .o-search-modal_submit-buttons {
    flex-direction: row;
    gap: 1.25rem;
  }
}
.o-search-modal_submit-buttons-submit {
  height: 3.5rem;
  width: 90%;
}
@media (min-width: 750px) {
  .o-search-modal_submit-buttons-submit {
    width: 13.75rem;
  }
}
.o-hero-detail {
  align-items: center;
  background: var(--color-primary);
  display: flex;
  height: auto;
  justify-content: center;
  margin-top: -3.75rem;
  padding: 7.1875rem 1.5rem 4.75rem;
  position: relative;
  width: 100%;
}
@media (min-width: 750px) {
  .o-hero-detail {
    background: var(--color-primary);
    margin-top: -5rem;
    min-height: 28.125rem;
    padding: 9.625rem 2.25rem 3.125rem;
  }
}
.o-hero-detail_inner {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
  max-width: 62.5rem;
  width: 100%;
}
@media (min-width: 750px) {
  .o-hero-detail_inner {
    display: grid;
    gap: 1.75rem 3.125rem;
    grid-template-columns: 1fr 52%;
  }
}
@media (min-width: 750px) {
  .o-hero-detail_head {
    align-self: center;
  }
}
.o-hero-detail_visual {
  position: relative;
}
.o-hero-detail_visual-inner button {
  position: relative;
  transition: opacity 0.3s ease-in-out;
}
@media (any-hover: hover) {
  .o-hero-detail_visual-inner button:hover {
    opacity: 0.8;
  }
}
@media (any-hover: none) {
  .o-hero-detail_visual-inner button:active {
    opacity: 0.8;
  }
}
.o-hero-detail_visual-inner button:after {
  background: #0009
    url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26.668' height='30.911'%3E%3Cpath fill='%23fff' d='M26.668 15.455 0 30.911V0Z'/%3E%3C/svg%3E")
    no-repeat;
  background-position: 2.125rem;
  border: 0.3125rem solid var(--color-white);
  border-radius: 50%;
  content: "";
  display: block;
  height: 5.625rem;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 5.625rem;
  z-index: 2;
}
.o-hero-detail_visual-logo {
  bottom: 0.75rem;
  position: absolute;
  right: 0.75rem;
  z-index: 2;
}
.o-hero-detail_info {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (min-width: 750px) {
  .o-hero-detail_info {
    flex-direction: row;
    gap: 1.5rem;
    justify-content: space-between;
  }
}
.o-hero-detail_info p {
  flex: 1;
}
@media (min-width: 750px) {
  .o-hero-detail_info-logo {
    flex-shrink: 0;
  }
}
.o-hero-detail_tags {
  margin-top: 2rem;
}
.o-hero-detail_tags .o-tag-list a.is-tag {
  background-color: var(--color-tertiary);
  border-color: var(--color-tertiary);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .o-hero-detail_tags .o-tag-list a.is-tag:hover {
    background-color: initial;
    color: var(--color-tertiary);
  }
}
@media (any-hover: none) {
  .o-hero-detail_tags .o-tag-list a.is-tag:active {
    background-color: initial;
    color: var(--color-tertiary);
  }
}
.o-hero-detail_button {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 750px) {
  .o-hero-detail_button {
    flex-direction: row;
    gap: 0.5rem;
  }
}
.o-hero-detail_button-item {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 1fr;
}
.o-hero-detail_button-item-shoulder {
  align-items: center;
  display: flex;
  gap: 0.375rem;
  justify-content: center;
}
.o-hero-detail_button-item_inner {
  min-height: 3.75rem;
  width: 100%;
}
@media (min-width: 750px) {
  .o-hero-detail_button-item_inner {
    min-width: 15rem;
  }
}
.o-single-image {
  align-items: center;
  border-radius: var(--border-radius-m);
  display: flex;
  justify-content: center;
  margin: 0 -0.75rem;
  overflow: hidden;
  position: relative;
}
@media (min-width: 750px) {
  .o-single-image {
    margin: 0;
  }
}
.o-link-panel {
  position: relative;
}
.o-link-panel_anc {
  align-items: center;
  border: 1px solid var(--color-gray-e5);
  border-radius: var(--border-radius-s);
  box-shadow: 0 3px 5px #0000001f;
  display: flex;
  gap: 1rem;
  overflow: hidden;
  transition: box-shadow 0.3s ease-out;
}
@media (min-width: 750px) {
  .o-link-panel_anc {
    gap: 1.5rem;
  }
}
@media (any-hover: hover) {
  .o-link-panel_anc:hover {
    box-shadow: 0 6px 12px #00000038;
  }
}
@media (any-hover: none) {
  .o-link-panel_anc:active {
    box-shadow: 0 6px 12px #00000038;
  }
}
.o-link-panel_visual {
  width: 7.5rem;
}
.o-link-panel_text {
  flex: 1;
}
.o-link-panel svg {
  fill: var(--color-primary);
  flex-shrink: 0;
  height: 1.0625rem;
  width: 1.0625rem;
}
@media (max-width: 749px) {
  .o-link-panel svg {
    margin-right: 1rem;
  }
}
@media (min-width: 750px) {
  .o-link-panel svg {
    height: auto;
    width: 3.125rem;
  }
}
.o-anchor {
  position: relative;
}
@media (max-width: 749px) {
  .o-anchor {
    padding: 0 0.75rem;
  }
}
@media (min-width: 750px) {
  .o-anchor_list {
    display: flex !important;
    flex-wrap: wrap;
    gap: 1.25rem 2.5rem;
    justify-content: center;
  }
}
@media (any-hover: hover) {
  .o-anchor_list li .a-button.is-design-none:hover {
    color: var(--color-primary);
  }
}
@media (any-hover: none) {
  .o-anchor_list li .a-button.is-design-none:active {
    color: var(--color-primary);
  }
}
.o-anchor_list li .a-button.is-design-none .a-button_inner {
  align-items: center;
  display: flex;
  gap: 0.25rem;
}
@media (min-width: 750px) {
  .o-anchor_list li .a-button.is-design-none .a-button_inner {
    gap: 0.5rem;
  }
}
.o-anchor_list li .a-button.is-design-none .a-button_inner svg {
  fill: var(--color-primary);
  height: 0.75rem;
  width: 0.75rem;
}
.o-anchor.splide .splide__arrow {
  background-color: initial;
  box-shadow: none;
  height: 1.125rem;
  width: 1.125rem;
}
.o-anchor.splide .splide__arrow svg {
  fill: var(--color-black);
  height: 1rem;
  width: 1rem;
}
.o-anchor.splide .splide__arrow[disabled] {
  opacity: 0;
}
.o-anchor.splide .splide__arrow--next {
  right: -1rem;
}
.o-anchor.splide .splide__arrow--prev {
  left: -1rem;
}
.o-anchor-button .a-button {
  line-height: 1.2;
}
.o-anchor-list {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
}
.o-anchor-list li {
  min-width: 0;
}
.o-voice-panel {
  background-color: var(--color-white);
  border-radius: var(--border-radius-m);
  min-width: 0;
  padding: 1.5rem;
}
@media (min-width: 750px) {
  .o-voice-panel {
    padding: 2.5rem;
  }
}
.o-voice-panel_name {
  align-items: center;
  display: flex;
  gap: 1.25rem;
  margin-top: 1.25rem;
}
.o-voice-panel_name-icon {
  flex-shrink: 0;
}
.o-relation {
  position: relative;
}
.o-relation_list {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}
@media (min-width: 750px) {
  .o-relation_list {
    grid-template-columns: repeat(4, 1fr);
  }
}
.o-relation_text {
  align-items: center;
  display: flex;
  font-size: 1rem;
  gap: 1rem;
  justify-content: space-between;
  margin-top: 0.5rem;
}
.o-relation_text svg {
  fill: var(--color-primary);
  flex-shrink: 0;
}
.o-relation.is-button .o-relation_link {
  border-radius: 0.5rem;
  box-shadow: 0 0.3125rem 0.5rem 0 #889dbf66;
  display: block;
  overflow: hidden;
}
.o-relation.is-button .o-relation_text {
  padding: 0 1rem 0.75rem;
}
.o-social-share {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  position: relative;
}
@media (min-width: 750px) {
  .o-social-share {
    flex-direction: row;
    gap: 1.5rem;
    justify-content: center;
  }
}
.o-social-share dt {
  font-weight: 700;
}
.o-social-share_list {
  align-items: center;
  display: flex;
  gap: 0.75rem;
}
.o-social-share_link {
  align-items: center;
  background-color: var(--color-white);
  border-radius: 6.25rem;
  display: flex;
  height: 3rem;
  justify-content: center;
  transition: opacity 0.3s ease-in-out;
  width: 3rem;
}
@media (any-hover: hover) {
  .o-social-share_link:hover {
    opacity: 0.7;
  }
}
@media (any-hover: none) {
  .o-social-share_link:active {
    opacity: 0.7;
  }
}
.o-social-share_link .a-image {
  width: 1.5rem;
}
.o-social-share_link .a-image img {
  width: 100%;
}
.o-copy-ok {
  background-color: var(--color-white);
  border-radius: 50px;
  box-shadow: 0 4px 12px #0000001a;
  display: block;
  left: 50%;
  max-width: 100%;
  padding: 1.25rem;
  position: fixed;
  text-align: center;
  top: 6.25rem;
  transform: translate(-50%);
  transition: 0.5s;
  width: 20rem;
  z-index: 9999;
}
.o-copy-ok.is-delete {
  transform: translate(-50%, -200px);
}
.tw-order-1 {
  order: 1;
}
.tw-order-2 {
  order: 2;
}
.tw-mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.\!tw-mt-2 {
  margin-top: 0.5rem !important;
}
.tw-mb-5 {
  margin-bottom: 1.25rem;
}
.tw-mt-0 {
  margin-top: 0;
}
.tw-mt-1 {
  margin-top: 0.25rem;
}
.tw-mt-10 {
  margin-top: 2.5rem;
}
.tw-mt-12 {
  margin-top: 3rem;
}
.tw-mt-2 {
  margin-top: 0.5rem;
}
.tw-mt-20 {
  margin-top: 5rem;
}
.tw-mt-3 {
  margin-top: 0.75rem;
}
.tw-mt-4 {
  margin-top: 1rem;
}
.tw-mt-5 {
  margin-top: 1.25rem;
}
.tw-mt-6 {
  margin-top: 1.5rem;
}
.tw-mt-7 {
  margin-top: 1.75rem;
}
.tw-mt-8 {
  margin-top: 2rem;
}
.tw-mt-9 {
  margin-top: 2.25rem;
}
.tw-block {
  display: block;
}
.tw-flex {
  display: flex;
}
.tw-grid {
  display: grid;
}
.tw-h-11 {
  height: 2.75rem;
}
.tw-h-15 {
  height: 3.75rem;
}
.tw-min-h-15 {
  min-height: 3.75rem;
}
.tw-w-fit {
  width: -webkit-fit-content;
  width: fit-content;
}
.tw-w-full {
  width: 100%;
}
.tw-min-w-31 {
  min-width: 7.75rem;
}
.tw-min-w-56 {
  min-width: 14rem;
}
.tw-max-w-22 {
  max-width: 5.5rem;
}
.tw-max-w-250 {
  max-width: 62.5rem;
}
.tw-grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.tw-grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.tw-grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.tw-flex-col {
  flex-direction: column;
}
.tw-flex-wrap {
  flex-wrap: wrap;
}
.tw-items-start {
  align-items: flex-start;
}
.tw-items-center {
  align-items: center;
}
.tw-justify-end {
  justify-content: flex-end;
}
.tw-justify-center {
  justify-content: center;
}
.tw-gap-1 {
  gap: 0.25rem;
}
.tw-gap-10 {
  gap: 2.5rem;
}
.tw-gap-12 {
  gap: 3rem;
}
.tw-gap-2 {
  gap: 0.5rem;
}
.tw-gap-3 {
  gap: 0.75rem;
}
.tw-gap-4 {
  gap: 1rem;
}
.tw-gap-5 {
  gap: 1.25rem;
}
.tw-gap-6 {
  gap: 1.5rem;
}
.tw-gap-x-3 {
  column-gap: 0.75rem;
}
.tw-gap-x-6 {
  column-gap: 1.5rem;
}
.tw-gap-y-10 {
  row-gap: 2.5rem;
}
.tw-gap-y-8 {
  row-gap: 2rem;
}
.tw-overflow-hidden {
  overflow: hidden;
}
.tw-rounded-1 {
  border-radius: 0.25rem;
}
.tw-rounded-1\.25 {
  border-radius: 0.3125rem;
}
.tw-rounded-2 {
  border-radius: 0.5rem;
}
.tw-rounded-2\.5 {
  border-radius: 0.625rem;
}
.tw-rounded-5 {
  border-radius: 1.25rem;
}
.tw-rounded-\[--border-radius-m\] {
  border-radius: var(--border-radius-m);
}
.tw-rounded-\[--border-radius-s\] {
  border-radius: var(--border-radius-s);
}
.tw-rounded-\[var\(--border-radius-m\)\] {
  border-radius: var(--border-radius-m);
}
.tw-bg-\[--color-bg\] {
  background-color: var(--color-bg);
}
.tw-bg-\[--color-footer-bg\] {
  background-color: var(--color-footer-bg);
}
.tw-bg-\[--color-gray-99\] {
  background-color: var(--color-gray-99);
}
.tw-bg-\[--color-primary-thin\] {
  background-color: var(--color-primary-thin);
}
.tw-bg-\[--color-primary\] {
  background-color: var(--color-primary);
}
.tw-bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.tw-px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.tw-px-20 {
  padding-left: 5rem;
  padding-right: 5rem;
}
.tw-px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.tw-px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.tw-py-10 {
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
}
.tw-py-2\.5 {
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
}
.tw-py-8 {
  padding-bottom: 2rem;
  padding-top: 2rem;
}
.tw-pt-1 {
  padding-top: 0.25rem;
}
.tw-pt-18 {
  padding-top: 4.5rem;
}
.tw-pt-4 {
  padding-top: 1rem;
}
.tw-text-left {
  text-align: left;
}
.tw-text-center {
  text-align: center;
}
.tw-text-right {
  text-align: right;
}
.tw-text-3 {
  font-size: 0.75rem;
}
.tw-text-3\.25 {
  font-size: 0.8125rem;
}
.tw-text-3\.5 {
  font-size: 0.875rem;
}
.tw-text-4 {
  font-size: 1rem;
}
.tw-text-4\.5 {
  font-size: 1.125rem;
}
.tw-text-5 {
  font-size: 1.25rem;
}
.tw-text-5\.5 {
  font-size: 1.375rem;
}
.tw-text-6 {
  font-size: 1.5rem;
}
.tw-text-6\.5 {
  font-size: 1.625rem;
}
.tw-text-7 {
  font-size: 1.75rem;
}
.tw-text-7\.5 {
  font-size: 1.875rem;
}
.tw-text-8 {
  font-size: 2rem;
}
.\!tw-font-bold {
  font-weight: 700 !important;
}
.tw-font-bold {
  font-weight: 700;
}
.tw-font-medium {
  font-weight: 500;
}
.tw-font-normal {
  font-weight: 400;
}
.tw-uppercase {
  text-transform: uppercase;
}
.tw-leading-\[1\.2\] {
  line-height: 1.2;
}
.tw-leading-\[1\.8\] {
  line-height: 1.8;
}
.tw-leading-loose {
  line-height: 2;
}
.tw-leading-none {
  line-height: 1;
}
.tw-leading-normal {
  line-height: 1.5;
}
.tw-leading-snug {
  line-height: 1.375;
}
.tw-leading-tight {
  line-height: 1.25;
}
.tw-tracking-\[0\.05em\] {
  letter-spacing: 0.05em;
}
.tw-tracking-normal {
  letter-spacing: 0;
}
.tw-tracking-widest {
  letter-spacing: 0.1em;
}
.tw-text-\[--color-gray-66\] {
  color: var(--color-gray-66);
}
.tw-text-\[--color-gray-99\] {
  color: var(--color-gray-99);
}
.tw-text-\[--color-primary\] {
  color: var(--color-primary);
}
.tw-text-\[--color-secondary\] {
  color: var(--color-secondary);
}
.tw-text-\[--color-white\] {
  color: var(--color-white);
}
.tw-text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
footer {
  padding: 5rem 0 0;
}
@media (max-width: 749px) {
  header {
    margin: 0 auto;
  }
  header .logo h1 {
    width: 7.5rem;
  }
}
@media (min-width: 750px) {
  header {
    padding: 0 1.25rem;
  }
}
section p {
  margin-bottom: 0 !important;
}
.a-button.is-content-fit {
  min-width: 90%;
}
@media (min-width: 750px) {
  .a-button.is-content-fit {
    min-width: 13.75rem;
  }
}
.a-button.is-type-cv-primary {
  background-color: #e04040;
  border: 0.0625rem solid #e04040;
  color: var(--color-white);
}
.a-button.is-type-cv-primary svg {
  fill: var(--color-white);
}
@media (any-hover: hover) {
  .a-button.is-type-cv-primary:hover {
    background-color: var(--color-white);
    border-color: #e04040;
    color: #e04040;
  }
  .a-button.is-type-cv-primary:hover svg {
    fill: #e04040;
  }
}
@media (any-hover: none) {
  .a-button.is-type-cv-primary:active {
    background-color: var(--color-white);
    border-color: #e04040;
    color: #e04040;
  }
  .a-button.is-type-cv-primary:active svg {
    fill: #e04040;
  }
}
.p-ai-engineer-lp {
  --color-primary: #0056b3;
  --color-primary-bg: #e6eef8;
  --color-secondary: #35ceff;
  --color-lp-dark: #06091a;
  --color-lp-dark-surface: #0e1428;
  --color-lp-accent: #00c4a4;
  --color-lp-section-bg: var(--color-gray-f5);
}
.p-challenge_label {
  color: var(--color-primary);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
}
.l-main {
  background: url(/ja/recruit/lp/images/content_bg_sp.webp) no-repeat top;
  background-size: contain;
}
@media (min-width: 750px) {
  .l-main {
    background: url(/ja/recruit/lp/images/content_bg.webp) no-repeat top;
    background-size: auto;
  }
}
.p-hero {
  background: url(/ja/recruit/lp/images/hero_bg_sp.webp) no-repeat top;
  background-size: contain;
  color: var(--color-white);
  overflow: hidden;
}
@media (min-width: 750px) {
  .p-hero {
    background: url(/ja/recruit/lp/images/hero_bg.webp) no-repeat top;
    background-size: auto;
  }
}
.p-hero .l-content.is-w-full {
  position: relative;
}
.p-hero_label {
  font-size: 0.875rem;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-align: center;
}
@media (min-width: 750px) {
  .p-hero_label {
    text-align: left;
  }
}
.p-hero .a-heading {
  color: var(--color-white);
  margin-top: 0.75rem;
}
@media (min-width: 750px) {
  .p-hero .a-heading_text-one > span {
    display: inline-block;
    transform: translateX(-25px);
  }
}
.p-hero .a-heading b {
  color: var(--color-white);
  font-weight: 700;
}
.p-hero_inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  height: auto;
}
@media (min-width: 750px) {
  .p-hero_inner {
    align-items: center;
    flex-direction: row;
    gap: 0;
    height: 41.5625rem;
    justify-content: center;
  }
}
.p-hero_content {
  flex: 0 0 auto;
  margin: 0 auto;
  max-width: 78rem;
  padding: 6rem 1.5rem 0.625rem;
  position: relative;
  width: 100%;
  z-index: 2;
}
@media (min-width: 750px) {
  .p-hero_content {
    padding: 5rem 1.5rem 0;
  }
}
.p-hero_content-inner {
  margin-top: 24.125rem;
}
@media (min-width: 750px) {
  .p-hero_content-inner {
    margin-top: 1.25rem;
  }
}
.p-hero_subheading {
  color: var(--color-black);
  font-size: 1rem;
  line-height: 1.4;
}
.p-hero_subheading span {
  background: #76e1ff;
  border-radius: 0.25rem;
  display: inline-block;
  font-weight: 700;
  padding: 0.25rem 0.5rem;
}
.p-hero_subheading span:not(:first-child) {
  margin-top: 0.3125rem;
}
.p-hero_text {
  margin-top: 1rem;
}
.p-hero_buttons {
  margin-top: 1.5rem;
}
.p-hero_buttons .a-button.is-content-fit {
  width: 90%;
}
@media (min-width: 750px) {
  .p-hero_buttons .a-button.is-content-fit {
    width: 15rem;
  }
}
.p-hero_img {
  flex: 1 1 auto;
  position: relative;
  z-index: 1;
}
@media (min-width: 750px) {
  .p-hero_img {
    width: 50%;
  }
}
.p-hero_img .a-image {
  border-radius: 0.75rem 0.75rem 0 0;
  overflow: hidden;
}
@media (min-width: 750px) {
  .p-hero_img .a-image {
    border-radius: 1rem 0 0 1rem;
  }
}
.p-numbers {
  color: var(--color-white);
  padding: 3.75rem 0.75rem 0;
}
@media (min-width: 750px) {
  .p-numbers {
    padding: 5rem 0 0;
  }
}
.p-numbers_list {
  display: flex;
  flex-flow: column wrap;
}
@media (min-width: 750px) {
  .p-numbers_list {
    flex-flow: row nowrap;
  }
}
.p-numbers_item {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center;
}
@media (max-width: 749px) {
  .p-numbers_item {
    border-bottom: 1px solid #fdffff4d;
    flex-direction: row;
    gap: 0.75rem;
    padding: 1rem 0;
  }
}
@media (min-width: 750px) {
  .p-numbers_item {
    border-right: 1px solid #fff3;
    padding: 0 0.5rem;
    width: 20%;
  }
  .p-numbers_item:first-child {
    border-left: 1px solid #fff3;
  }
}
.p-numbers_icon {
  align-items: center;
  display: flex;
  height: 2.5rem;
  justify-content: center;
  width: 2.5rem;
}
@media (min-width: 750px) {
  .p-numbers_icon {
    height: 3.5rem;
    width: 3.5rem;
  }
}
@media (max-width: 749px) {
  .p-numbers_text {
    align-items: baseline;
    display: flex;
    gap: 0.375rem;
  }
}
@media (min-width: 750px) {
  .p-numbers_text {
    margin-top: 0.5rem;
  }
}
.p-numbers_value {
  line-height: 1.2;
}
.p-numbers_value em {
  color: var(--color-white);
  font-family: var(--font-family-en);
  font-size: 2.75rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
}
@media (min-width: 750px) {
  .p-numbers_value em {
    font-size: 3.75rem;
  }
}
.p-numbers_value span {
  color: var(--color-white);
  font-size: 1rem;
  font-weight: 700;
}
@media (min-width: 750px) {
  .p-numbers_value span {
    font-size: 1.25rem;
  }
}
.p-numbers_label {
  line-height: 1;
  margin-top: 0.25rem;
}
@media (max-width: 749px) {
  .p-numbers_label {
    font-size: 0.75rem;
  }
}
.p-message {
  padding: 4rem 0;
}
@media (min-width: 750px) {
  .p-message {
    padding: 6.25rem 0;
  }
}
.p-vision_body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 750px) {
  .p-vision_body {
    align-items: flex-start;
    flex-direction: row;
    gap: 3.75rem;
  }
}
.p-vision_movie {
  flex: 0 0 auto;
  width: 100%;
}
@media (min-width: 750px) {
  .p-vision_movie {
    width: 27.5rem;
  }
}
.p-vision_movie-link {
  display: block;
  position: relative;
}
.p-vision_movie-link:after {
  background: url(/ja/recruit/lp/images/play_icon.svg) no-repeat 50%;
  background-size: contain;
  border-radius: 50%;
  box-shadow: 0 0.25rem 1rem #0003;
  height: 5.25rem;
  width: 5.25rem;
}
.p-vision_movie-link:after,
.p-vision_movie-link:before {
  content: "";
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-vision_movie-link:before {
  animation: rotate-animation 6s linear infinite;
  background: url(/ja/recruit/lp/images/play_icon_sub.svg) no-repeat 50%;
  background-size: contain;
  height: 9.375rem;
  width: 9.375rem;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-vision_movie-link:hover .a-image img {
    transform: scale(1.04);
  }
}
@media (any-hover: none) {
  .p-vision_movie-link:active .a-image img {
    transform: scale(1.04);
  }
}
.p-vision_movie-link .a-image img {
  transition: transform 0.4s ease;
}
.p-vision_text {
  flex: 1 1 auto;
}
@keyframes rotate-animation {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(1turn);
  }
}
.p-challenge_list {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}
@media (min-width: 750px) {
  .p-challenge_list {
    gap: 1.5rem;
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-challenge_item {
  background-color: var(--color-white);
  border-radius: var(--border-radius-m);
  box-shadow: 0 0.125rem 0.75rem #0000000f;
  display: flex;
  flex-direction: column;
  padding: 1.75rem 1.5rem 2rem;
}
.p-challenge_img {
  align-items: center;
  display: flex;
  height: 11.25rem;
  justify-content: center;
  margin-top: auto;
}
.p-challenge_img img {
  max-height: 100%;
  width: auto;
}
.p-challenge_text {
  color: var(--color-gray-66);
}
.p-challenge_buttons {
  gap: 0.75rem;
}
.p-hol {
  background: linear-gradient(180deg, #13253e 0.96%, #0056b3 55.3%, #0056b380);
  color: var(--color-white);
  padding: 4rem 0;
}
@media (min-width: 750px) {
  .p-hol {
    padding: 6.25rem 0;
  }
}
.p-hol .a-heading {
  color: var(--color-white);
}
.p-hol_fig {
  border-radius: var(--border-radius-m);
  margin: 0 auto;
  max-width: 62.5rem;
  width: 100%;
}
.p-hol_fig-caption {
  align-items: center;
  display: flex;
  justify-content: center;
  line-height: 1.8;
}
.p-hol_fig-caption span {
  background: #21252966;
  border-radius: 4px;
  color: var(--color-white);
  display: inline-block;
  font-size: 0.75rem;
  padding: 0.5rem 0.75rem;
}
.p-hol_about {
  background: none;
  border: none;
  margin: 0 auto;
  max-width: 62.5rem;
  padding: 0;
  width: 100%;
}
.p-hol_list {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}
@media (min-width: 750px) {
  .p-hol_list {
    gap: 1.5rem;
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-hol_item {
  background-color: #fdffffd9;
  border: 1px solid var(--color-white);
  border-radius: var(--border-radius-m);
  box-shadow: 0 0.25rem 0.25rem #0000001a;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 1.5rem 0.875rem 0;
}
@media (min-width: 750px) {
  .p-hol_item {
    padding: 1.5rem 1.75rem 0;
  }
}
.p-hol_item .a-heading {
  color: var(--color-lp-dark);
}
.p-hol_step {
  color: var(--color-primary);
  font-size: 1rem;
  letter-spacing: 0.04em;
}
.p-hol_icon {
  align-items: center;
  background: radial-gradient(circle, #0056b31a 0, #0056b305 100%);
  border-radius: 50%;
  display: flex;
  height: 7.5rem;
  justify-content: center;
  margin: 1.25rem auto 0;
  width: 7.5rem;
}
.p-hol_subheading {
  color: var(--color-primary);
  font-weight: 700;
}
.p-hol_text {
  color: var(--color-lp-dark);
  padding-bottom: 1.25rem;
}
.p-hol_badge {
  align-items: center;
  background: linear-gradient(90deg, #063165, #006dff);
  border-radius: 0;
  color: var(--color-white);
  display: flex;
  font-size: 1rem;
  font-weight: 700;
  justify-content: center;
  letter-spacing: 0;
  margin-left: -1.75rem;
  margin-right: -1.75rem;
  margin-top: auto;
  min-height: 3rem;
  padding: 0.75rem;
  text-align: center;
}
.p-hol_inner-cta {
  background: url(/ja/recruit/lp/images/cta_bg_sp.webp) no-repeat top;
  background-size: cover;
  border: 2px solid var(--color-white);
  border-radius: var(--border-radius-m);
  color: var(--color-white);
  margin: 0 auto;
  max-width: 62.5rem;
  padding: 2.875rem 0.875rem;
  width: 100%;
}
@media (min-width: 750px) {
  .p-hol_inner-cta {
    background: url(/ja/recruit/lp/images/cta_bg.webp) no-repeat top;
    background-size: cover;
    padding: 2.5rem 3rem;
  }
}
.p-hol_inner-cta .a-heading {
  color: var(--color-white);
}
.p-jobs {
  background-color: #ebf9ff;
  padding: 4rem 0;
}
@media (min-width: 750px) {
  .p-jobs {
    padding: 6.25rem 0;
  }
}
.p-jobs_item {
  min-width: 0;
}
.p-jobs_list {
  display: grid;
  gap: 5rem;
  grid-template-columns: 1fr;
}
@media (min-width: 750px) {
  .p-jobs_list {
    gap: 6.25rem;
  }
}
.p-jobs_title {
  align-items: flex-start;
  color: var(--color-lp-dark);
  display: flex;
  gap: 0.5rem;
  line-height: 1.5;
}
@media (min-width: 750px) {
  .p-jobs_title {
    align-items: center;
  }
}
.p-jobs_title:before {
  background-color: var(--color-primary);
  border-radius: 50%;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 0.625rem;
  transform: translateY(0.625rem);
  width: 0.625rem;
}
@media (min-width: 750px) {
  .p-jobs_title:before {
    transform: translateY(0);
  }
}
.p-jobs_card {
  background-color: var(--color-white);
  border-radius: var(--border-radius-m);
  padding: 1.5rem;
}
@media (min-width: 750px) {
  .p-jobs_card {
    padding: 2.5rem;
  }
}
.p-jobs_detail-row {
  display: flex;
}
.p-jobs_detail-row:first-child dd,
.p-jobs_detail-row:first-child dt {
  padding-top: 0;
}
.p-jobs_detail-row:last-child dd,
.p-jobs_detail-row:last-child dt {
  border-bottom: none;
}
.p-jobs_detail-row dt {
  border-bottom: 1px solid var(--color-primary);
  color: var(--color-primary);
  flex: 0 0 6.25rem;
  font-size: 0.875rem;
  font-weight: 700;
  padding: 1.25rem 0.75rem 1.25rem 0;
}
@media (min-width: 750px) {
  .p-jobs_detail-row dt {
    flex-basis: 9.375rem;
    font-size: 1rem;
    padding: 1.5rem 1.25rem;
  }
}
.p-jobs_detail-row dd {
  border-bottom: 1px solid var(--color-gray-e5);
  flex: 1 1 auto;
  font-size: 0.875rem;
  padding: 1.25rem 0.75rem;
}
@media (min-width: 750px) {
  .p-jobs_detail-row dd {
    font-size: 1rem;
    padding: 1.5rem 1.75rem;
  }
}
.p-jobs_detail-row dd p:not(:first-child) {
  margin-top: 0.25rem;
}
.p-tech {
  background: linear-gradient(180deg, #13253e, #0056b3 50%, #0056b380);
  padding: 4rem 0;
}
@media (min-width: 750px) {
  .p-tech {
    padding: 6.25rem 0;
  }
}
.p-tech_list {
  gap: 0.75rem;
}
.p-tech_item {
  background-color: var(--color-white);
  border: 1px solid var(--color-white);
  border-radius: var(--border-radius-m);
  flex-direction: column;
  height: 11.25rem;
  overflow: hidden;
  padding: 1.5rem 0.75rem 1rem;
  text-align: center;
}
.p-tech_icon,
.p-tech_item {
  align-items: center;
  display: flex;
}
.p-tech_icon {
  flex-shrink: 0;
  height: 3.75rem;
  justify-content: center;
  width: 3.75rem;
}
.p-tech_icon img {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}
.p-tech_name {
  color: var(--color-lp-dark);
}
.p-tech_description {
  color: #5d7888;
  line-height: 1;
}
.p-benefits {
  background-color: #ebf9ff;
  padding: 5rem 0 0;
}
@media (min-width: 750px) {
  .p-benefits {
    padding: 6.25rem 0 0;
  }
}
.p-benefits_fig {
  align-items: center;
  display: flex;
  height: 10rem;
  justify-content: center;
}
.p-benefits_fig img {
  max-height: 100%;
  width: auto;
}
.p-interview {
  background-color: #ebf9ff;
  overflow: hidden;
  padding: 5rem 0;
}
@media (min-width: 750px) {
  .p-interview {
    padding: 6.25rem 0;
  }
}
.p-interview_link {
  background-color: var(--color-white);
  border-radius: var(--border-radius-m);
  color: inherit;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  text-decoration: none;
}
@media (any-hover: hover) {
  .p-interview_link:hover .p-interview_fig img {
    transform: scale(1.04);
  }
}
@media (any-hover: none) {
  .p-interview_link:active .p-interview_fig img {
    transform: scale(1.04);
  }
}
.p-interview_fig {
  overflow: hidden;
}
@media (min-width: 750px) {
  .p-interview_fig {
    height: 14.125rem;
  }
}
.p-interview_fig img {
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  width: 100%;
}
.p-interview_content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
}
.p-interview_role {
  color: var(--color-lp-dark);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}
.p-interview_year {
  color: var(--color-lp-dark);
  font-size: 0.75rem;
}
.p-interview_more {
  align-items: center;
  display: flex;
  font-size: 1rem;
  gap: 0.5rem;
  justify-content: flex-end;
}
.p-interview_more-inner {
  font-weight: 700;
  text-decoration: underline;
}
@media (max-width: 749px) {
  .p-interview .splide__arrow {
    background-color: var(--color-white);
    top: 24%;
  }
  .p-interview .splide__arrow svg {
    fill: var(--color-lp-dark);
  }
}
.p-flow {
  background: linear-gradient(180deg, #13253e, #0056b3 50%, #0056b380);
  color: var(--color-white);
  padding: 5rem 0;
}
@media (min-width: 750px) {
  .p-flow {
    padding: 6.25rem 0;
  }
}
.p-flow_list {
  display: grid;
  gap: 2rem;
  grid-template-columns: 1fr;
  position: relative;
}
@media (min-width: 750px) {
  .p-flow_list {
    display: flex;
    gap: 3.75rem;
  }
  .p-flow_list:before {
    background-color: #76e1ff;
    content: "";
    height: 0.125rem;
    left: 0;
    position: absolute;
    right: 0;
    top: 6.5625rem;
    z-index: 0;
  }
}
.p-flow_item {
  align-items: center;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}
@media (max-width: 749px) {
  .p-flow_item {
    margin: 0 auto;
    width: 66%;
  }
}
@media (min-width: 750px) {
  .p-flow_item {
    flex: 1 1 0;
  }
}
.p-flow_card {
  align-items: center;
  background-color: var(--color-white);
  border-radius: 1.25rem;
  box-shadow: 0 0 1.25rem #76e1ff80;
  display: flex;
  flex-direction: column;
  height: 10.625rem;
  justify-content: center;
  margin-top: 1.25rem;
  position: relative;
  width: 100%;
}
.p-flow_badge {
  background-color: #76e1ff;
  border-radius: 3.125rem;
  color: var(--color-lp-dark);
  font-family: var(--font-family-en);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
  padding: 0.375rem 0.5625rem;
  position: absolute;
  top: -1.125rem;
}
.p-flow_icon {
  height: 3.5rem;
  width: 3.5rem;
}
.p-flow_icon img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}
.p-flow_title {
  color: var(--color-lp-dark);
  font-size: 1.25rem;
  margin-top: 0.75rem;
}
.p-flow_text,
.p-flow_title {
  font-weight: 700;
  text-align: center;
}
.p-flow_text {
  color: var(--color-white);
  font-size: 1rem;
  line-height: 1.6;
  margin-top: 1rem;
}
.p-faq {
  background-color: #ebf9ff;
  padding: 4rem 0;
}
@media (min-width: 750px) {
  .p-faq {
    padding: 6.25rem 0;
  }
}
.p-faq_body {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media (min-width: 750px) {
  .p-faq_body {
    flex-direction: row;
    gap: 3.75rem;
  }
}
.p-faq_heading-area {
  flex: 0 0 auto;
}
@media (max-width: 749px) {
  .p-faq_heading-area {
    text-align: center;
    width: 100%;
  }
}
@media (min-width: 750px) {
  .p-faq_heading-area {
    padding-top: 0.75rem;
    width: 14.75rem;
  }
}
.p-faq_main {
  flex: 1 1 auto;
}
.p-faq_item {
  border-bottom: 1px solid #cdcdcd;
  transition:
    background-color 0.3s ease,
    border-radius 0.3s ease,
    box-shadow 0.3s ease;
}
.p-faq_item.is-opened {
  background-color: var(--color-white);
  border-bottom-color: #0000;
  border-radius: 1.25rem;
  box-shadow: 0 0.4375rem 0.625rem #2125291a;
}
.p-faq_item.is-opened .p-faq_question-icon {
  background-color: var(--color-lp-dark);
}
.p-faq_item.is-opened .p-faq_question-icon:after {
  transform: translate(-50%, -50%) rotate(0);
}
.p-faq_question {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-weight: 700;
  line-height: 1.8;
  padding: 1.25rem 3.25rem 1.25rem 2.75rem;
  position: relative;
  text-align: left;
  width: 100%;
}
@media (min-width: 750px) {
  .p-faq_question {
    padding: 1.5rem 4rem 1.5rem 3.5rem;
  }
}
.p-faq_question:before {
  color: var(--color-lp-dark);
  content: "Q";
  font-family: var(--font-family-en);
  font-size: 1rem;
  font-weight: 700;
  left: 0.75rem;
  letter-spacing: 0.04em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 750px) {
  .p-faq_question:before {
    left: 1.25rem;
  }
}
.p-faq_question-icon {
  background-color: var(--color-primary);
  border-radius: 50%;
  flex-shrink: 0;
  height: 1.5rem;
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5rem;
}
@media (min-width: 750px) {
  .p-faq_question-icon {
    height: 1.75rem;
    right: 1.25rem;
    width: 1.75rem;
  }
}
.p-faq_question-icon:after,
.p-faq_question-icon:before {
  background-color: var(--color-white);
  content: "";
  display: block;
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease;
  width: 45%;
}
.p-faq_question-icon:after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-faq_answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}
.p-faq_answer-inner {
  color: var(--color-gray-66);
  padding: 0.25rem 1.25rem 1.5rem 2.75rem;
  position: relative;
}
@media (min-width: 750px) {
  .p-faq_answer-inner {
    padding: 0.25rem 4rem 2rem 3.5rem;
  }
}
.p-faq_answer-inner:before {
  color: var(--color-primary);
  content: "A";
  font-family: var(--font-family-en);
  font-size: 1rem;
  font-weight: 700;
  left: 0.75rem;
  position: absolute;
  top: 0.25rem;
}
@media (min-width: 750px) {
  .p-faq_answer-inner:before {
    left: 1.25rem;
  }
}
.p-cta {
  background-color: #ebf9ff;
  padding: 4rem 0;
}
@media (min-width: 750px) {
  .p-cta {
    padding: 6.25rem 0;
  }
}
.p-cta_card {
  background: url(/ja/recruit/lp/images/cta_bg_sp.webp) no-repeat top;
  background-size: cover;
  border: 2px solid var(--color-white);
  border-radius: var(--border-radius-m);
  color: var(--color-white);
  padding: 2.875rem 0.875rem;
}
@media (min-width: 750px) {
  .p-cta_card {
    background: url(/ja/recruit/lp/images/cta_bg.webp) no-repeat top;
    background-size: cover;
    padding: 2.5rem 3rem;
  }
}
.p-cta_card .a-heading,
.p-cta_card p {
  color: var(--color-white);
}
.js-flow-up {
  opacity: 0;
  transform: translateY(2.5rem);
  transition:
    opacity 0.8s cubic-bezier(0.3, 0.36, 0.21, 0.99),
    transform 0.8s cubic-bezier(0.3, 0.36, 0.21, 0.99);
}
.js-flow-up.is-flow-up {
  opacity: 1;
  transform: translateY(0);
}
@media (min-width: 768px) {
  .md\:tw-order-1 {
    order: 1;
  }
  .md\:tw-order-2 {
    order: 2;
  }
  .md\:tw-mt-0 {
    margin-top: 0;
  }
  .md\:tw-mt-10 {
    margin-top: 2.5rem;
  }
  .md\:tw-mt-14 {
    margin-top: 3.5rem;
  }
  .md\:tw-mt-15 {
    margin-top: 3.75rem;
  }
  .md\:tw-mt-16 {
    margin-top: 4rem;
  }
  .md\:tw-mt-2\.5 {
    margin-top: 0.625rem;
  }
  .md\:tw-mt-20 {
    margin-top: 5rem;
  }
  .md\:tw-mt-25 {
    margin-top: 6.25rem;
  }
  .md\:tw-mt-3 {
    margin-top: 0.75rem;
  }
  .md\:tw-mt-3\.5 {
    margin-top: 0.875rem;
  }
  .md\:tw-mt-4 {
    margin-top: 1rem;
  }
  .md\:tw-mt-5 {
    margin-top: 1.25rem;
  }
  .md\:tw-mt-6 {
    margin-top: 1.5rem;
  }
  .md\:tw-mt-7 {
    margin-top: 1.75rem;
  }
  .md\:tw-mt-9 {
    margin-top: 2.25rem;
  }
  .md\:tw-min-h-23 {
    min-height: 5.75rem;
  }
  .md\:tw-min-h-31 {
    min-height: 7.75rem;
  }
  .md\:tw-max-w-none {
    max-width: none;
  }
  .md\:tw-grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:tw-grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:tw-grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .md\:tw-grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .md\:tw-grid-cols-\[60\%_1fr\] {
    grid-template-columns: 60% 1fr;
  }
  .md\:tw-flex-row {
    flex-direction: row;
  }
  .md\:tw-items-center {
    align-items: center;
  }
  .md\:tw-justify-start {
    justify-content: flex-start;
  }
  .md\:tw-gap-10 {
    gap: 2.5rem;
  }
  .md\:tw-gap-15 {
    gap: 3.75rem;
  }
  .md\:tw-gap-2 {
    gap: 0.5rem;
  }
  .md\:tw-gap-20 {
    gap: 5rem;
  }
  .md\:tw-gap-5 {
    gap: 1.25rem;
  }
  .md\:tw-gap-7 {
    gap: 1.75rem;
  }
  .md\:tw-gap-8 {
    gap: 2rem;
  }
  .md\:tw-gap-x-5 {
    column-gap: 1.25rem;
  }
  .md\:tw-gap-y-12 {
    row-gap: 3rem;
  }
  .md\:tw-p-15 {
    padding: 3.75rem;
  }
  .md\:tw-p-8 {
    padding: 2rem;
  }
  .md\:tw-px-0 {
    padding-left: 0;
    padding-right: 0;
  }
  .md\:tw-pt-0 {
    padding-top: 0;
  }
  .md\:tw-pt-0\.5 {
    padding-top: 0.125rem;
  }
  .md\:tw-pt-20 {
    padding-top: 5rem;
  }
  .md\:tw-text-left {
    text-align: left;
  }
  .md\:tw-text-center {
    text-align: center;
  }
  .md\:tw-text-11 {
    font-size: 2.75rem;
  }
  .md\:tw-text-3\.5 {
    font-size: 0.875rem;
  }
  .md\:tw-text-4 {
    font-size: 1rem;
  }
  .md\:tw-text-4\.5 {
    font-size: 1.125rem;
  }
  .md\:tw-text-5 {
    font-size: 1.25rem;
  }
  .md\:tw-text-6 {
    font-size: 1.5rem;
  }
  .md\:tw-text-6\.5 {
    font-size: 1.625rem;
  }
  .md\:tw-text-7 {
    font-size: 1.75rem;
  }
  .md\:tw-text-7\.5 {
    font-size: 1.875rem;
  }
  .md\:tw-text-8 {
    font-size: 2rem;
  }
  .md\:tw-text-9 {
    font-size: 2.25rem;
  }
}

/******     recruit2.css リセット　    *******/
ol { margin-bottom: 0!important}
ol li { padding-left: 0!important;}
