:root {
  --breakpoint-sm: 560px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1366px;
  --inner-slim: 980px;
  --inner-base: 1120px;
  --inner-1220: 1220px;
  --inner-wide: 1200px;
  --tw-gradient-from-position: 0%;
  --tw-gradient-to-position: 100%;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --view-width: 100vw;
  --font-family-base: "Zen Kaku Gothic New", sans-serif;
  --font-size-base: 16px;
  --line-height-base: 1.9;
  --gutter: 20px;
  --header-height: 52px;
  --color-text: #17184b;
  --color-text-rgb: 23 24 75;
  --color-primary: #17184b;
  --color-primary-rgb: 23 24 75;
  --color-black: #222;
  --color-black-rgb: 34 34 34;
  --color-white: #fff;
  --color-white-rgb: 255 255 255;
  --color-gray: #ccc;
  --color-gray-rgb: 204 204 204;
  --color-gray-dark: #666;
  --color-gray-dark-rgb: 102 102 102;
  --color-gray-light: #ececec;
  --color-gray-light-rgb: 236 236 236;
  --color-navy: #17184b;
  --color-navy-rgb: 23 24 75;
  --color-gold: #c6b05f;
  --color-gold-rgb: 198 176 95;
  --color-blue-light: #b2e3ed;
  --color-blue-light-rgb: 178 227 237;
  --color-wave-from: #abdada;
  --color-wave-from-rgb: 171 218 218;
  --color-wave-to: #3bbee2;
  --color-wave-to-rgb: 59 190 226;
  --color-grad01-from: #1476ed;
  --color-grad01-from-rgb: 20 118 237;
  --color-grad01-to: #17184b;
  --color-grad01-to-rgb: 23 24 75;
}
@media (width > 768px) {
  :root {
    --header-height: 90px;
  }
}

/* Jost */
@font-face {
  font-family: Jost;
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/Jost/Jost-Light.ttf") format("truetype");
}
@font-face {
  font-family: Jost;
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/Jost/Jost-LightItalic.ttf") format("truetype");
}
@font-face {
  font-family: Jost;
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Jost/Jost-Regular.ttf") format("truetype");
}
@font-face {
  font-family: Jost;
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Jost/Jost-RegularItalic.ttf") format("truetype");
}
@font-face {
  font-family: Jost;
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Jost/Jost-Bold.ttf") format("truetype");
}
@font-face {
  font-family: Jost;
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/Jost/Jost-BoldItalic.ttf") format("truetype");
}
/* Zen Kaku Gothic New */
@font-face {
  font-family: Zen Kaku Gothic New;
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Regular.ttf") format("truetype");
}
@font-face {
  font-family: Zen Kaku Gothic New;
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Medium.ttf") format("truetype");
}
@font-face {
  font-family: Zen Kaku Gothic New;
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Bold.ttf") format("truetype");
}
/* Zen Old Mincho */
@font-face {
  font-family: Zen Old Mincho;
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Zen_Old_Mincho/ZenOldMincho-Regular.ttf") format("truetype");
}
@font-face {
  font-family: Zen Old Mincho;
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Zen_Old_Mincho/ZenOldMincho-Medium.ttf") format("truetype");
}
@font-face {
  font-family: Zen Old Mincho;
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Zen_Old_Mincho/ZenOldMincho-Bold.ttf") format("truetype");
}
/***
    The new CSS reset - version 1.11.3 (last updated 25.08.2024)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio, svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a,
button {
  cursor: pointer;
}

/* Remove list styles (bullets/numbers) */
ol,
ul,
menu,
summary {
  list-style: none;
}

/* Firefox: solve issue where nested ordered lists continue numbering from parent (https://bugzilla.mozilla.org/show_bug.cgi?id=1881517) */
ol {
  counter-reset: revert;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input,
textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
  box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* fix the feature of 'hidden' attribute.
 display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
 - fix for the content editable attribute will work properly.
 - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element */
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

/* Remove details summary webkit styles */
::-webkit-details-marker {
  display: none;
}

body {
  font: var(--font-size-base)/var(--line-height-base) var(--font-family-base);
  color: var(--color-text);
}
body.is-open {
  overflow: hidden;
}

* {
  border-style: solid;
  border-width: 0;
  outline-color: #17184b;
}

input,
select,
option,
textarea,
button {
  box-sizing: border-box;
  font: var(--font-size-base)/var(--line-height-base) var(--font-family-base);
  color: var(--color-text);
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
  image-rendering: smooth;
}

svg {
  width: 100%;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  padding: 0;
  background: transparent;
  border: none;
  touch-highlights: manipulation;
}

:where(:any-link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]) {
  cursor: pointer;
}

:focus:not(:focus-visible) {
  outline: none;
}

i:has(> svg) {
  line-height: 0;
}

a:not([class]) {
  color: inherit;
}

img[class*=object-],
video[class*=object-] {
  width: 100%;
  height: 100%;
  max-width: none;
}

*:has(> wbr) {
  word-break: keep-all;
}

sup {
  font-size: 0.5em;
  vertical-align: super;
  margin-inline: 0.15em;
}

.l-footer {
  position: relative;
  z-index: 10;
  padding: 24px 20px 22px;
  background: #17184b;
}
.l-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url("../images/shared/bg-footer.svg") center center/cover;
  mix-blend-mode: overlay;
}
.l-footer__container {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin-inline: auto;
}
.l-footer__logo {
  width: 244px;
}
.l-footer__copyright {
  padding-top: 62px;
  font-weight: 500;
  color: var(--color-white);
}
.l-footer__pagetop {
  position: absolute;
  top: -25px;
  right: 15px;
  width: 50px;
}
.l-footer__pagetop .cls-1 {
  transition-duration: 0.3s;
  transition-property: fill;
  fill: #ccc;
}
.l-footer__pagetop .cls-2 {
  transition-duration: 0.3s;
  transition-property: fill;
  fill: #271a49;
}
.l-footer__pagetop .cls-3 {
  transition-duration: 0.3s;
  transition-property: fill;
  fill: #17184b;
}
.l-footer__pagetop .g {
  animation: rotate 10s linear infinite;
  transform-origin: center;
}
@media (any-hover: hover) {
  .l-footer__pagetop:hover .cls-1 {
    fill: #17184b;
  }
  .l-footer__pagetop:hover .cls-2 {
    fill: #fff;
  }
  .l-footer__pagetop:hover .cls-3 {
    fill: #fff;
  }
}
@media (width > 768px) {
  .l-footer {
    padding: 64px 20px 24px;
  }
  .l-footer__copyright {
    padding-top: 38px;
    text-align: right;
  }
  .l-footer__pagetop {
    top: -50px;
    right: 70px;
    width: 100px;
  }
  .l-footer__logo {
    width: 385px;
  }
}

@keyframes rotate {
  0% {
    rotate: 0deg;
  }
  100% {
    rotate: 360deg;
  }
}
.l-header {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  align-items: center;
  width: 100%;
  height: var(--header-height);
  padding: 0 5px 0 0;
  background-color: rgba(255, 255, 255, 0.6);
}
.l-header__toyo {
  flex: 0 0 99px;
  width: 99px;
}
.l-header__logo {
  flex: 0 0 77px;
  width: 77px;
  margin-left: 10px;
}
.l-header__menu {
  display: none;
}
.l-header__lang {
  flex: 0 0 82px;
  margin-left: auto;
}
.l-header__btn {
  flex: 0 0 44px;
}
.l-header.--home {
  position: absolute;
  background-color: transparent;
}
.l-header.--home .l-header__logo {
  color: var(--color-white);
}
.l-header.--duplicated {
  transform: translate(0, -100%);
}
.l-header:is(.l-wrapper.is-nav-open *) {
  background-color: transparent;
}
.l-header:is(.l-wrapper.is-nav-open *) .l-header__toyo, .l-header:is(.l-wrapper.is-nav-open *) .l-header__logo, .l-header:is(.l-wrapper.is-nav-open *) .l-header__menu {
  display: none;
}
.l-header:is(.l-wrapper.is-nav-open *) .l-header__lang {
  margin-left: auto;
}
@media (width > 768px) {
  .l-header {
    padding: 0 30px 0 0;
  }
  .l-header__toyo {
    flex: 0 0 222px;
    width: 222px;
  }
  .l-header__logo {
    flex: 0 0 252px;
    width: 252px;
    margin-left: 25px;
  }
  .l-header__lang {
    flex: 0 0 82px;
  }
  .l-header__btn {
    flex: 0 0 52px;
    margin-left: 20px;
  }
}
@media (width > 1200px) {
  .l-header__menu {
    display: block;
    margin-left: auto;
  }
  .l-header__menu + .l-header__lang {
    margin-left: 20px;
  }
}
@media (width <= 768px) {
  .l-header__logo {
    padding-top: 5px;
  }
}

.l-main {
  position: relative;
  z-index: 1;
}

.l-home-main {
  position: relative;
  background: linear-gradient(to bottom, rgba(22, 249, 255, 0) 0%, #1478ee 25%, #2514c9 50%, #15bafe 75%, #17f2fa 100%);
}

.l-nav {
  position: fixed;
  inset: 0;
  z-index: 98;
  padding: calc(var(--header-height) + 12px) 20px 30px;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  visibility: hidden;
}
.l-nav__container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin-inline: auto;
  opacity: 0;
  visibility: hidden;
}
.l-nav__bg {
  position: fixed;
  inset: 0;
  z-index: 1;
  background-color: rgb(255, 255, 255);
}
.l-nav__layer {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-color: #17184b;
}
.l-nav:is(.l-wrapper.is-nav-open *) {
  overflow: auto;
}
@media (width > 768px) {
  .l-nav {
    padding: var(--header-height) 20px 30px;
  }
}

.l-pc-nav {
  display: grid;
  grid-template-columns: 100%;
  gap: 40px 80px;
}
.l-pc-nav__logo {
  line-height: 0;
}
@media (width > 1024px) {
  .l-pc-nav {
    grid-template-columns: 37fr 19fr;
  }
}

.l-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden visible;
}
.l-wrapper__mv {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  overflow: hidden;
}
.l-wrapper__mv picture {
  display: flex;
  justify-content: center;
  width: 100%;
}
.l-wrapper__mv img {
  display: block;
  width: 775px;
  height: 100%;
  max-width: none;
  object-fit: cover;
  margin-inline: auto;
  object-position: center;
}
@media (width > 768px) {
  .l-wrapper__mv img {
    width: 1400px;
  }
}
.l-wrapper__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: -1;
  height: 100%;
  background-image: linear-gradient(to left, #0453af, #1c0152);
}
.l-wrapper__bg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url("../images/shared/bg-polygon-body.svg") repeat center top/1400px auto;
  mix-blend-mode: overlay;
}
.l-wrapper__bg:is(.l-wrapper.-highlights01 *) {
  height: 100%;
  background-image: linear-gradient(var(--linear-angle, 45deg), #2a7ec9, #44317b);
}
.l-wrapper__bg:is(.l-wrapper.-highlights01 *)::before {
  opacity: 0.3;
}
.l-wrapper__bg:is(.l-wrapper.-highlights02 *) {
  height: 100%;
  background-image: linear-gradient(calc(var(--linear-angle, 45deg) + 90deg), #0156a6, #359a54);
}
.l-wrapper__bg:is(.l-wrapper.-highlights02 *)::before {
  opacity: 0.3;
}
.l-wrapper__bg:is(.l-wrapper.-highlights03 *) {
  height: 100%;
  background-image: linear-gradient(var(--linear-angle, 45deg), #52a47e, #006776);
}
.l-wrapper__bg:is(.l-wrapper.-highlights03 *)::before {
  opacity: 0.3;
}
.l-wrapper__bg:is(.l-wrapper.-data *) {
  height: 100%;
}
@media (width > 768px) {
  .l-wrapper__bg {
    height: 700px;
  }
  .l-wrapper__bg:is(.l-wrapper.-data *) {
    background-image: linear-gradient(calc(var(--linear-angle, 45deg) - 90deg), #0b6fba, #1c0152);
  }
}
@media (width <= 768px) {
  .l-wrapper__bg:is(.l-wrapper.-data *) {
    background: url("../images/digest/bg-mobile-body.jpg") no-repeat center top/cover;
  }
}

body:has(.l-wrapper.is-nav-open) {
  overflow: hidden;
}

.c-anchor-blk {
  display: grid;
  grid-template-columns: 1fr;
  border-left: 1px solid #17184b;
}
.c-anchor-blk__link {
  display: grid;
  grid-template-columns: 67px 1fr;
  min-height: 65px;
}
.c-anchor-blk__link i {
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: 1px solid #17184b;
  border-right: 1px solid #17184b;
  font-size: 18px;
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
.c-anchor-blk__link span {
  display: flex;
  align-items: center;
  min-height: 65px;
  padding: 5px 16px;
  border-bottom: 1px solid #17184b;
  border-right: 1px solid #17184b;
  font-weight: 500;
  line-height: 1.6;
}
@media (any-hover: hover) {
  .c-anchor-blk__link:hover i {
    background-color: #17184b;
    color: var(--color-white);
  }
}
.c-anchor-blk .c-anchor-blk__link:nth-child(1) {
  border-top: 1px solid #17184b;
}
@media (width > 768px) {
  .c-anchor-blk {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-anchor-blk__link {
    grid-template-columns: 68px 1fr;
    min-height: 68px;
  }
  .c-anchor-blk__link span {
    min-height: 68px;
    padding: 5px 16px;
  }
  .c-anchor-blk .c-anchor-blk__link:nth-child(2) {
    border-top: 1px solid #17184b;
  }
}
@media (width > 1024px) {
  .c-anchor-blk {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-anchor-blk .c-anchor-blk__link:nth-child(3) {
    border-top: 1px solid #17184b;
  }
}

.c-related-blk {
  display: grid;
  grid-template-columns: 100%;
  gap: 16px 0;
}
@media (width > 768px) {
  .c-related-blk {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
  }
  .c-related-blk__item {
    flex: 0 0 calc((100% - 24px) / 2);
    width: calc((100% - 24px) / 2);
  }
}
@media (width > 1024px) {
  .c-related-blk {
    gap: 40px;
  }
  .c-related-blk__item {
    flex: 0 0 calc((100% - 80px) / 3);
    width: calc((100% - 80px) / 3);
  }
}

.c-dl1-blk {
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.c-dl1-blk dl div {
  display: grid;
  grid-template-columns: 1fr 59px;
  border-right: 1px solid #ccc;
}
.c-dl1-blk dt,
.c-dl1-blk dd {
  padding: 1.5px 8px;
  border-top: 1px solid #ccc;
  font-weight: 500;
  line-height: 1.6;
}
.c-dl1-blk dd {
  background-color: #ececec;
  border-left: 1px solid #ccc;
  text-align: right;
}
@media (width > 768px) {
  .c-dl1-blk dl {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(var(--column, 8), auto);
  }
}

.c-topmess-bnr {
  display: block;
  position: relative;
}
.c-topmess-bnr img {
  position: relative;
  z-index: 0;
}
.c-topmess-bnr::before {
  content: "";
  position: absolute;
  inset: 8px;
  z-index: 1;
  border: 1px solid var(--color-white);
}
.c-topmess-bnr__icon {
  display: flex;
  position: absolute;
  bottom: 8px;
  right: 8px;
  z-index: 2;
  justify-content: center;
  align-items: center;
  width: 26px;
  height: 26px;
  background-color: var(--color-white);
  font-size: 10px;
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
@media (any-hover: hover) {
  .c-topmess-bnr:hover .c-topmess-bnr__icon {
    background-color: #17184b;
    color: var(--color-white);
  }
}
@media (width > 768px) {
  .c-topmess-bnr::before {
    inset: 16px;
    border: 2px solid var(--color-white);
  }
  .c-topmess-bnr__icon {
    bottom: 16px;
    right: 16px;
    width: 52px;
    height: 52px;
    font-size: 16px;
  }
}

.c-t1-bnr {
  display: block;
  position: relative;
  line-height: 1;
}
.c-t1-bnr > video {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  aspect-ratio: 187/105;
  pointer-events: none;
}
.c-t1-bnr__cont {
  display: flex;
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  justify-content: space-between;
  align-items: flex-end;
  padding: 7px 8px;
}
.c-t1-bnr__txt {
  font-weight: bold;
  color: var(--color-white);
  line-height: 1.6;
}
.c-t1-bnr__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  width: 26px;
  height: 26px;
  background-color: var(--color-white);
  font-size: 10px;
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
.c-t1-bnr[target=_blank] .fa-arrow-right {
  rotate: -45deg;
}
@media (any-hover: hover) {
  .c-t1-bnr:hover .c-t1-bnr__icon {
    background-color: #17184b;
    color: var(--color-white);
  }
}
@media (width > 768px) {
  .c-t1-bnr__icon {
    width: 36px;
    height: 36px;
    font-size: 16px;
  }
  .c-t1-bnr__cont {
    padding: 0 16px 16px 15px;
  }
}

.c-t2-bnr {
  display: block;
  position: relative;
  transition-duration: 0.3s;
  transition-property: color;
}
.c-t2-bnr__img {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.c-t2-bnr__img img {
  transition-duration: 1s;
  transition-property: scale;
}
.c-t2-bnr__cont {
  display: flex;
  position: absolute;
  top: 0;
  right: 9px;
  z-index: 1;
  flex-direction: column;
  align-items: center;
  gap: 7px 0;
  padding: 10px 5px 14px;
  background-color: var(--color-white);
  transition-duration: 0.3s;
  transition-property: background-color;
}
.c-t2-bnr__ja {
  font-family: "Zen Old Mincho",serif;
  font-size: 23px;
  font-weight: bold;
  writing-mode: vertical-rl;
  line-height: 1;
}
.c-t2-bnr__en {
  font-family: "Jost",sans-serif;
  font-size: 12px;
  font-style: italic;
  font-weight: 300;
  writing-mode: vertical-rl;
}
.c-t2-bnr__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
}
@media (any-hover: hover) {
  .c-t2-bnr:hover {
    color: var(--color-white);
  }
  .c-t2-bnr:hover .c-t2-bnr__cont {
    background-color: #17184b;
  }
  .c-t2-bnr:hover .c-t2-bnr__img img {
    scale: 1.1;
  }
}
@media (width > 768px) {
  .c-t2-bnr__cont {
    right: 16px;
    gap: 6px 0;
    padding: 19px 8px 14px;
  }
  .c-t2-bnr__ja {
    font-size: 40px;
  }
  .c-t2-bnr__en {
    font-size: 20px;
  }
  .c-t2-bnr__icon {
    width: 36px;
    height: 36px;
    margin-top: 7px;
    font-size: 20px;
  }
}

.c-t3-bnr {
  display: block;
  transition-duration: 0.3s;
  transition-property: color;
}
.c-t3-bnr__img {
  overflow: hidden;
}
.c-t3-bnr__img img {
  transition-duration: 1s;
  transition-property: scale;
}
.c-t3-bnr__cont {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px 10px 9px;
  background-color: var(--color-white);
  transition-duration: 0.3s;
  transition-property: background-color;
}
.c-t3-bnr__ja {
  font-size: 21.5px;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
}
.c-t3-bnr__en {
  font-family: "Jost",sans-serif;
  font-size: 11px;
  font-style: italic;
  font-weight: 300;
  line-height: 1.1;
}
.c-t3-bnr__icon {
  position: absolute;
  top: 50%;
  right: 20px;
  font-size: 18px;
  line-height: 1;
  translate: 0 -50%;
}
@media (any-hover: hover) {
  .c-t3-bnr:hover {
    color: var(--color-white);
  }
  .c-t3-bnr:hover .c-t3-bnr__cont {
    background-color: #17184b;
  }
  .c-t3-bnr:hover .c-t3-bnr__img img {
    scale: 1.1;
  }
}
@media (width > 768px) {
  .c-t3-bnr__cont {
    padding: 10px 50px 9px;
  }
  .c-t3-bnr__ja {
    font-size: 24px;
  }
  .c-t3-bnr__en {
    padding-top: 4px;
    font-size: 12px;
  }
  .c-t3-bnr__icon {
    right: 25px;
    font-size: 16px;
  }
}

.c-related-bnr {
  transition-duration: 0.3s;
  transition-property: color;
}
.c-related-bnr.is-current {
  position: relative;
  pointer-events: none;
}
.c-related-bnr.is-current::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  background-color: #222;
  opacity: 0.5;
}
.c-related-bnr__img {
  overflow: hidden;
}
.c-related-bnr__img img {
  transition-duration: 1s;
  transition-property: scale;
}
.c-related-bnr__cont {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  padding: 8px 48px 8px 8px;
  background-color: #ececec;
  transition-duration: 0.3s;
  transition-property: background-color;
}
.c-related-bnr__ja {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
}
.c-related-bnr__en {
  font-family: "Jost",sans-serif;
  font-size: 10px;
  font-style: italic;
  font-weight: 300;
  line-height: 1.1;
}
.c-related-bnr__icon {
  display: flex;
  position: absolute;
  top: 50%;
  right: 8px;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  background-color: var(--color-white);
  font-size: 18px;
  color: #17184b;
  line-height: 1;
  translate: 0 -50%;
}
@media (any-hover: hover) {
  .c-related-bnr:hover {
    color: var(--color-white);
  }
  .c-related-bnr:hover .c-related-bnr__cont {
    background-color: #17184b;
  }
  .c-related-bnr:hover .c-related-bnr__img img {
    scale: 1.1;
  }
}
@media (width > 768px) {
  .c-related-bnr {
    display: block;
  }
  .c-related-bnr__cont {
    align-items: center;
    padding: 7px 60px 6px;
  }
  .c-related-bnr__ja {
    font-size: 24px;
  }
  .c-related-bnr__en {
    padding-top: 4px;
    font-size: 12px;
  }
  .c-related-bnr__icon {
    right: 15px;
    width: 36px;
    height: 36px;
    font-size: 16px;
  }
}
@media (width <= 768px) {
  .c-related-bnr {
    display: grid;
    grid-template-columns: 126px 1fr;
  }
  .c-related-bnr__cont {
    gap: 4px 0;
  }
}

.c-nav01-bnr {
  display: block;
  position: relative;
}
.c-nav01-bnr__icon {
  display: flex;
  position: absolute;
  bottom: 16px;
  right: 16px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  background-color: #fff;
  color: var(--color-primary);
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
.c-nav01-bnr__icon .fa-arrow-right {
  rotate: -45deg;
}
@media (any-hover: hover) {
  .c-nav01-bnr:hover .c-nav01-bnr__icon {
    background-color: var(--color-primary);
    color: #fff;
  }
}

.c-breadcrumbs {
  -ms-overflow-style: none;
  scrollbar-width: none;
  display: flex;
  overflow: auto;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  -webkit-overflow-scrolling: touch;
}
.c-breadcrumbs::-webkit-scrollbar {
  display: none;
}
.c-breadcrumbs__item {
  flex: 0 0 auto;
}
@media (width > 768px) {
  .c-breadcrumbs {
    font-size: 14px;
  }
}

.c-small-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 8px;
  width: -webkit-fit-content;
  width: fit-content;
  padding: 8px 16px 8px 24px;
  background-color: #17184b;
  border: 1px solid #17184b;
  color: var(--color-white);
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
.c-small-btn::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
}
.c-small-btn[target=_blank], .c-small-btn.-blank {
  padding: 8px 18px 8px 16px;
}
.c-small-btn[target=_blank]::after, .c-small-btn.-blank::after {
  rotate: -45deg;
  translate: 5px 0;
}
@media (any-hover: hover) {
  .c-small-btn:hover {
    background-color: var(--color-white);
    color: #17184b;
  }
}
@media (width > 768px) {
  .c-small-btn {
    gap: 0 16px;
  }
  .c-small-btn[target=_blank], .c-small-btn.-blank {
    padding: 8px 24px;
  }
}
@media (width <= 768px) {
  .c-small-btn {
    line-height: 1.6;
  }
}

.c-menu-btn {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  background-color: var(--color-white);
  border: 1px solid var(--color-white);
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
.c-menu-btn span {
  display: flex;
  position: relative;
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 1em;
  height: 1em;
  overflow: hidden;
  line-height: 1;
}
.c-menu-btn span::before {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  content: "\f0c9";
  position: absolute;
  z-index: 1;
  translate: 0% 0%;
  transition-duration: 0.7s;
  transition-property: translate;
}
.c-menu-btn span::after {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  content: "\f00d";
  position: absolute;
  z-index: 1;
  translate: -100% 0%;
  transition-duration: 0.7s;
  transition-property: translate;
}
.c-menu-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: #17184b;
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
  transition-duration: 0.7s;
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.c-menu-btn:is(.l-header.--home *) {
  background-color: transparent;
  color: var(--color-white);
}
.c-menu-btn:is(.l-wrapper.is-nav-open *) {
  border-color: #17184b;
  color: var(--color-white);
}
.c-menu-btn:is(.l-wrapper.is-nav-open *)::before {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}
.c-menu-btn:is(.l-wrapper.is-nav-open *) span::before {
  translate: 100% 0%;
}
.c-menu-btn:is(.l-wrapper.is-nav-open *) span::after {
  translate: 0% 0%;
}
@media (width > 768px) {
  .c-menu-btn {
    width: 52px;
    height: 52px;
  }
}

.c-info-btn {
  display: flex;
  position: relative;
  align-items: center;
  gap: 0 8px;
  padding: 11px 16px;
  background-color: var(--color-white);
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
.c-info-btn::before {
  content: "";
  position: absolute;
  inset: 4px;
  border: 1px solid currentcolor;
}
.c-info-btn__icon {
  font-size: 1.25em;
}
.c-info-btn__txt {
  font-family: "Zen Old Mincho",serif;
}
@media (any-hover: hover) {
  .c-info-btn:hover {
    background-color: #17184b;
    color: var(--color-white);
  }
}
@media (width > 768px) {
  .c-info-btn {
    gap: 0 9px;
    padding: 22px 24px;
  }
}

.c-nav01-btn {
  display: flex;
  align-items: center;
  gap: 0 16px;
  width: -webkit-fit-content;
  width: fit-content;
}
.c-nav01-btn__arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  background-color: #fff;
  border: 1px solid currentcolor;
  font-size: 20px;
  transition-duration: 0.3s;
  transition-timing-function: color, background-color;
}
@media (any-hover: hover) {
  .c-nav01-btn:hover .c-nav01-btn__arrow {
    background-color: var(--color-primary);
    color: #fff;
  }
}

.c-nav02-btn {
  display: grid;
  grid-template-columns: 68px 1fr;
  border-bottom: 1px solid var(--color-primary);
  border-right: 1px solid var(--color-primary);
}
.c-nav02-btn__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 66px;
  border-left: 1px solid var(--color-primary);
  border-right: 1px solid var(--color-primary);
  font-size: 18px;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
.c-nav02-btn__txt {
  padding: 11px 0 0 15px;
  line-height: 1.6;
}
@media (any-hover: hover) {
  .c-nav02-btn:hover .c-nav02-btn__icon {
    background-color: var(--color-primary);
    color: #fff;
  }
}

.c-nav03-btn {
  display: grid;
  align-items: center;
  grid-template-columns: 30px 1fr;
  gap: 0 16px;
  padding: 15px 16px;
}
.c-nav03-btn__icon {
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-nav03-btn__txt {
  display: flex;
  align-items: center;
  gap: 0 15px;
  height: 30px;
}

.c-arrow-btn {
  display: flex;
  gap: 0 6px;
  width: -webkit-fit-content;
  width: fit-content;
}
.c-arrow-btn::before {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  content: "\f061";
  transition-duration: 0.3s;
  transition-property: translate;
}
.c-arrow-btn span {
  font-weight: 500;
}
@media (any-hover: hover) {
  .c-arrow-btn:hover::before {
    translate: 4px 0;
  }
}

.c-nav01-acdn-btn {
  display: flex;
  align-items: center;
  gap: 0 20px;
  padding: 10px 20px;
}
.c-nav01-acdn-btn > i {
  font-size: 20px;
}
.c-nav01-acdn-btn > i::before {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  content: "\f067";
}
.c-nav01-acdn-btn.is-open > i::before {
  content: "\f068";
}

.c-map01-btn {
  padding: 0.15em 0.65em;
  background-color: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  font-size: clamp(10.34482758px, var(--view-width) * 0.0137931034, 16px);
  line-height: 1;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
@media (any-hover: hover) {
  .c-map01-btn:hover {
    background-color: #17184b;
    color: #fff;
  }
}

.c-map02-btn {
  padding: 0.15em 0.5em;
  background-color: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  font-size: clamp(10.126582275px, var(--view-width) * 0.0202531646, 16px);
  line-height: 1;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
@media (any-hover: hover) {
  .c-map02-btn:hover {
    background-color: #17184b;
    color: #fff;
  }
}

.c-person-card {
  display: block;
}
.c-person-card__wrapper {
  padding: 16px;
  background-color: #17184b;
}
.c-person-card__hdr {
  display: grid;
  align-items: center;
  grid-template-columns: 80px 1fr;
  gap: 0 24px;
  line-height: 1.5;
}
.c-person-card__ttl {
  margin-bottom: 15px;
  border-bottom: 1px solid #fff;
  font-family: "Jost",sans-serif;
  font-size: 14px;
  font-style: italic;
  font-weight: 300;
  color: #fff;
  line-height: 1.4;
}
.c-person-card__txt {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
}
.c-person-card__link {
  display: grid;
  grid-template-columns: 67px 1fr;
  min-height: 65px;
}
.c-person-card__link i {
  display: flex;
  justify-content: center;
  align-items: center;
  border-left: 1px solid #17184b;
  border-bottom: 1px solid #17184b;
  border-right: 1px solid #17184b;
  font-size: 18px;
  transition-duration: 0.3s;
  transition-property: background-color, color;
}
.c-person-card__link span {
  padding: 20px 16px;
  border-bottom: 1px solid #17184b;
  border-right: 1px solid #17184b;
  font-family: "Jost",sans-serif;
  font-weight: 300;
  line-height: 1.6;
}
.c-person-card__profile {
  padding-top: 17px;
}
@media (any-hover: hover) {
  .c-person-card:hover .c-person-card__link i {
    background-color: #17184b;
    color: var(--color-white);
  }
}
@media (width > 768px) {
  .c-person-card__wrapper {
    padding: 24px 24px 20px;
  }
  .c-person-card__hdr {
    grid-template-columns: 140px 1fr;
    gap: 0 24px;
  }
  .c-person-card__profile {
    padding-top: 17px;
  }
  .c-person-card__txt {
    font-size: 15px;
    line-height: 1.5;
  }
  .c-person-card__link {
    grid-template-columns: 68px 1fr;
    min-height: 68px;
  }
  .c-person-card__link span {
    padding: 21px 16px;
  }
}

.c-case-card {
  background-color: #ececec;
}
.c-case-card__hgrp {
  display: flex;
  align-items: center;
  gap: 0 24px;
}
.c-case-card__hgrp p {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 88px;
  height: 32px;
  background-color: #17184b;
  font-family: "Zen Old Mincho",serif;
  font-weight: bold;
  color: #fff;
}
.c-case-card__hgrp h3 {
  font-family: "Zen Old Mincho",serif;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-case-card {
    display: grid;
    grid-template: "hgrp img" auto "cont img" 1fr/1fr 280px;
    gap: 24px 32px;
    padding: 30px;
  }
  .c-case-card__hgrp {
    grid-area: hgrp;
    gap: 0 40px;
    margin-top: -12px;
    margin-left: -30px;
  }
  .c-case-card__hgrp p {
    flex: 0 0 116px;
    height: 44px;
    font-size: 18px;
  }
  .c-case-card__hgrp h3 {
    font-size: 24px;
  }
  .c-case-card__img {
    grid-area: img;
  }
  .c-case-card__cont {
    grid-area: cont;
  }
}
@media (width > 1024px) {
  .c-case-card {
    grid-template-columns: 1fr 374px;
    gap: 30px 40px;
  }
}
@media (width <= 768px) {
  .c-case-card__hgrp {
    padding: 8px 12px 8px 0;
  }
  .c-case-card__cont {
    padding: 20px;
  }
}

.c-topics-card__ttl {
  width: -webkit-fit-content;
  width: fit-content;
  background: linear-gradient(45deg, #1476ed, #17184b);
  -webkit-background-clip: text;
  background-clip: text;
  font-family: "Jost",sans-serif;
  font-size: 26px;
  font-weight: 300;
  color: transparent;
  line-height: 1;
  -webkit-text-fill-color: transparent;
}
.c-topics-card__contents {
  position: relative;
  padding: 30px;
}
.c-topics-card__contents::before, .c-topics-card__contents::after {
  content: "";
  position: absolute;
}
.c-topics-card__contents::before {
  inset: 0 15px 15px 0;
  z-index: 1;
  padding: 1px;
  background: linear-gradient(45deg, #1476ed, #17184b);
  pointer-events: none;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
}
.c-topics-card__contents::after {
  inset: 15px 0 0 15px;
  z-index: 0;
  background-color: #ececec;
}
.c-topics-card__cont {
  position: relative;
  z-index: 3;
}
.c-topics-card__img {
  position: relative;
  z-index: 2;
}
@media (width > 768px) {
  .c-topics-card__ttl {
    font-size: 36px;
  }
  .c-topics-card__contents {
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 374px;
    gap: 0 40px;
  }
}
@media (width <= 768px) {
  .c-topics-card__img {
    margin-top: 12px;
  }
}

.c-archive-card__img {
  text-align: center;
}
.c-archive-card__name {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 10px;
  width: -webkit-fit-content;
  width: fit-content;
  margin-top: 19px;
  margin-inline: auto;
}
.c-archive-card__name span {
  font-weight: 500;
  line-height: 1.6;
}
.c-archive-card__name i {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  background-color: #17184b;
  border: 1px solid #17184b;
  border-radius: 50%;
  font-size: 15px;
  color: #fff;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
@media (any-hover: hover) {
  .c-archive-card__name:hover span {
    text-decoration: underline;
  }
  .c-archive-card__name:hover i {
    background-color: #fff;
    color: #17184b;
  }
}
.c-archive-card__btns {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto;
  gap: 12px 0;
  padding-top: 19px;
}
.c-archive-card__btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 4px;
  padding: 7px 17px 7px 12px;
  background-color: #17184b;
  border: 1px solid #17184b;
  color: var(--color-white);
  line-height: 1.6;
  transition-duration: 0.3s;
  transition-property: color, background-color;
}
.c-archive-card__btn::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: auto;
}
.c-archive-card__btn[target=_blank]::after {
  rotate: -45deg;
  translate: 5px 0;
}
@media (any-hover: hover) {
  .c-archive-card__btn:hover {
    background-color: var(--color-white);
    color: #17184b;
  }
}
@media (width > 768px) {
  .c-archive-card__btns {
    padding-top: 21px;
  }
  .c-archive-card__btn {
    justify-content: center;
    gap: 0 16px;
    padding: 9px 12px;
  }
}

.c-copy-ttl {
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
}
@media (width > 768px) {
  .c-copy-ttl {
    font-size: 40px;
  }
}

.c-h2 {
  font-family: "Zen Old Mincho",serif;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-h2 {
    font-size: 36px;
  }
}

.c-h3 {
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-h3 {
    font-size: 32px;
  }
}

.c-h4 {
  font-family: "Zen Old Mincho",serif;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-h4 {
    font-size: 24px;
  }
}

.c-h5 {
  font-family: "Zen Old Mincho",serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-h5 {
    font-size: 22px;
  }
}

.c-t1-h2 {
  font-family: "Zen Old Mincho",serif;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
}
.c-t1-h2::before {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  margin-bottom: 16px;
  background-color: currentcolor;
}
@media (width > 768px) {
  .c-t1-h2 {
    font-size: 28px;
  }
  .c-t1-h2::before {
    margin-bottom: 20px;
  }
}

.c-t2-h2 {
  font-family: "Zen Old Mincho",serif;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.6;
}
.c-t2-h2::before {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  margin-bottom: 16px;
  background-color: currentcolor;
}
@media (width > 768px) {
  .c-t2-h2::before {
    margin-bottom: 20px;
  }
}

.c-data-h2 {
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-data-h2 {
    font-size: 32px;
  }
}

.c-num-hgrp__txt {
  padding-bottom: 15px;
  font-family: "Jost",sans-serif;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.1;
}
.c-num-hgrp__ttl {
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-num-hgrp__txt {
    font-size: 16px;
  }
  .c-num-hgrp__ttl {
    font-size: 32px;
  }
}

.c-hgrp01__ja {
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
}
.c-hgrp01__en {
  font-family: "Jost",sans-serif;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-hgrp01__ja {
    font-size: 32px;
  }
  .c-hgrp01__en {
    font-size: 24px;
  }
}

.c-cap-img {
  position: relative;
}
.c-cap-img figcaption {
  position: absolute;
  bottom: 4px;
  right: 4px;
  padding: 0 8px;
  background-color: #fff;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-cap-img figcaption {
    bottom: 8px;
    right: 8px;
    font-size: 14px;
  }
}

.c-wide-inner, .c-1220-inner, .c-inner, .c-slim-inner {
  margin-inline: auto;
  --section-gutter: var(--gutter);
}

.c-slim-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-slim));
}

.c-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-base));
}

.c-1220-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-1220));
}

.c-wide-inner {
  width: min(100% - var(--section-gutter) * 2, var(--inner-wide));
}

.--nogutter:is(*.c-slim-inner, *.c-inner, *.c-1220-inner, *.c-wide-inner) {
  --section-gutter: 0px;
}
@media (width > 768px) {
  .--nogutter-pc:is(*.c-slim-inner, *.c-inner, *.c-1220-inner, *.c-wide-inner) {
    --section-gutter: 0px;
  }
}
@media (width <= 768px) {
  .--nogutter-mobile:is(*.c-slim-inner, *.c-inner, *.c-1220-inner, *.c-wide-inner) {
    --section-gutter: 0px;
  }
}

.c-copy-lh {
  line-height: 2.1;
}
@media (width > 768px) {
  .c-copy-lh {
    line-height: 2.4;
  }
}

.c-hdr-menu {
  display: flex;
  gap: 0 20px;
}
.c-hdr-menu__item {
  padding: 0 8px;
  font-family: "Jost",sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 2;
}
.c-hdr-menu:is(.l-header.--home *) .c-hdr-menu__item {
  color: var(--color-white);
}

.c-lang-menu {
  display: flex;
}
.c-lang-menu__item {
  flex: 0 0 41px;
  font-family: "Jost",sans-serif;
  font-size: 14px;
  color: var(--color-gray-dark);
  text-align: center;
  line-height: 1.5;
}
.c-lang-menu__item.is-active {
  color: var(--color-navy);
}
.c-lang-menu__item + .c-lang-menu__item {
  border-left: 1px solid var(--color-gray-dark);
}
.c-lang-menu:is(.l-header.--home *) .c-lang-menu__item {
  color: var(--color-gray);
}
.c-lang-menu:is(.l-header.--home *) .c-lang-menu__item.is-active {
  color: var(--color-white);
}
.c-lang-menu:is(.l-header.--home *) .c-lang-menu__item + .c-lang-menu__item {
  border-left: 1px solid var(--color-gray);
}
.c-lang-menu:is(.l-wrapper.is-nav-open *) .c-lang-menu__item {
  color: var(--color-gray-dark);
}
.c-lang-menu:is(.l-wrapper.is-nav-open *) .c-lang-menu__item.is-active {
  color: var(--color-primary);
}
.c-lang-menu:is(.l-wrapper.is-nav-open *) .c-lang-menu__item + .c-lang-menu__item {
  border-left: 1px solid var(--color-gray-dark);
}

.g-utility__lang ul {
  display: flex;
}
.g-utility__lang li {
  cursor: pointer;
  flex: 0 0 41px;
  font-family: "Jost",sans-serif;
  font-size: 14px;
  color: var(--color-gray-dark);
  text-align: center;
  line-height: 1.5;
}
.g-utility__lang li + li {
  border-left: 1px solid var(--color-gray-dark);
}
.g-utility__lang li.msta_selected {
  color: var(--color-navy);
}
.g-utility__lang:is(.l-header.--home *) li {
  color: var(--color-gray);
}
.g-utility__lang:is(.l-header.--home *) li.msta_selected {
  color: var(--color-white);
}
.g-utility__lang:is(.l-header.--home *) li + li {
  border-left: 1px solid var(--color-gray);
}
.g-utility__lang:is(.l-wrapper.is-nav-open *) li {
  color: var(--color-gray-dark);
}
.g-utility__lang:is(.l-wrapper.is-nav-open *) li.msta_selected {
  color: var(--color-primary);
}
.g-utility__lang:is(.l-wrapper.is-nav-open *) li + li {
  border-left: 1px solid var(--color-gray-dark);
}
.g-utility__menu {
  display: none;
}

.c-ruby {
  position: relative;
}
.c-ruby::before {
  content: attr(data-ruby);
  position: absolute;
  top: -1em;
  left: 0;
  width: 100%;
  font-size: 0.4em;
  text-align: center;
  letter-spacing: 0;
  white-space: nowrap;
}

.c-hdr-sect {
  position: relative;
  z-index: 1;
  min-height: 280px;
  padding-top: 59px;
  overflow: visible;
}
.c-hdr-sect__bg {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
  height: 100%;
}
.c-hdr-sect__bg img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: top;
}
.c-hdr-sect__container {
  position: relative;
  z-index: 1;
}
.c-hdr-sect__hgrp {
  padding-top: 38px;
  color: #fff;
}
.c-hdr-sect__en {
  width: -webkit-fit-content;
  width: fit-content;
  font-family: "Jost",sans-serif;
  font-size: 18px;
  font-weight: 300;
  text-decoration: underline;
  line-height: 1.1;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
.c-hdr-sect__ja {
  padding-top: 8px;
  font-family: "Zen Old Mincho",serif;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
}
.c-hdr-sect__cont {
  padding-top: 39px;
}
@media (width > 768px) {
  .c-hdr-sect {
    min-height: 402px;
    padding-top: 103px;
  }
  .c-hdr-sect__hgrp {
    padding-top: 80px;
  }
  .c-hdr-sect__en {
    font-size: 24px;
  }
  .c-hdr-sect__ja {
    padding-top: 6px;
    font-size: 48px;
  }
  .c-hdr-sect__cont {
    padding-top: 84px;
  }
  .c-hdr-sect__cont:is(.-history *) {
    padding-top: 94px;
    padding-bottom: 120px;
  }
}
@media (width <= 768px) {
  .c-hdr-sect.-history {
    padding-bottom: 60px;
  }
}

.c-acthdr-sect {
  position: relative;
  z-index: 0;
  padding-top: 59px;
}
.c-acthdr-sect__container {
  position: relative;
  z-index: 1;
}
.c-acthdr-sect__hgrp {
  padding-top: 38px;
  color: #fff;
}
.c-acthdr-sect__en {
  width: -webkit-fit-content;
  width: fit-content;
  font-family: "Jost",sans-serif;
  font-size: 18px;
  font-weight: 300;
  text-decoration: underline;
  line-height: 1.1;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
.c-acthdr-sect__ja {
  padding-top: 8px;
  font-family: "Zen Old Mincho",serif;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
}
.c-acthdr-sect__copy {
  font-family: "Zen Old Mincho",serif;
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  line-height: 1.6;
}
@media (width > 768px) {
  .c-acthdr-sect {
    padding-top: 103px;
    padding-bottom: 63px;
  }
  .c-acthdr-sect__bg {
    height: 700px;
  }
  .c-acthdr-sect__bg:is(.-history *) {
    height: 100%;
  }
  .c-acthdr-sect__hgrp {
    padding-top: 80px;
  }
  .c-acthdr-sect__en {
    font-size: 24px;
  }
  .c-acthdr-sect__ja {
    padding-top: 6px;
    font-size: 48px;
  }
  .c-acthdr-sect__copy {
    padding-top: 94px;
    font-size: 36px;
  }
}
@media (width <= 768px) {
  .c-acthdr-sect.-highlights01 {
    min-height: 399px;
  }
  .c-acthdr-sect.-highlights02 {
    min-height: 518px;
  }
  .c-acthdr-sect.-highlights03 {
    min-height: 520px;
  }
  .c-acthdr-sect__copy:is(.-highlights01 *) {
    padding-top: 44px;
  }
  .c-acthdr-sect__copy:is(.-highlights02 *) {
    padding-top: 41px;
  }
  .c-acthdr-sect__copy:is(.-highlights03 *) {
    padding-top: 44px;
  }
}

.c-datahdr-sect {
  position: relative;
  z-index: 0;
  padding-top: 59px;
}
.c-datahdr-sect__container {
  position: relative;
  z-index: 1;
}
.c-datahdr-sect__hgrp {
  padding-top: 38px;
  color: #fff;
}
.c-datahdr-sect__en {
  width: -webkit-fit-content;
  width: fit-content;
  font-family: "Jost",sans-serif;
  font-size: 18px;
  font-weight: 300;
  text-decoration: underline;
  line-height: 1.1;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
.c-datahdr-sect__ja {
  padding-top: 8px;
  font-family: "Zen Old Mincho",serif;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
}
.c-datahdr-sect__cont {
  padding-top: 42px;
}
.c-datahdr-sect__copy {
  color: #fff;
}
.c-datahdr-sect__img {
  line-height: 0;
}
@media (width > 768px) {
  .c-datahdr-sect {
    padding-top: 103px;
  }
  .c-datahdr-sect__bg {
    height: 700px;
  }
  .c-datahdr-sect__bg:is(.-history *) {
    height: 100%;
  }
  .c-datahdr-sect__hgrp {
    padding-top: 80px;
  }
  .c-datahdr-sect__en {
    font-size: 24px;
  }
  .c-datahdr-sect__ja {
    padding-top: 6px;
    font-size: 48px;
  }
  .c-datahdr-sect__cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 72px;
    padding-top: 79px;
  }
  .c-datahdr-sect__copy {
    padding-top: 5px;
  }
}
@media (width <= 768px) {
  .c-datahdr-sect__img {
    padding: 32px 10px 0;
  }
}

.c-sect01 {
  padding-block: 64px;
}
@media (width > 768px) {
  .c-sect01 {
    padding-block: 80px;
  }
}

.c-sect02 {
  padding-block: 40px;
}
@media (width > 768px) {
  .c-sect02 {
    padding-block: 80px;
  }
}

.c-interview-sect__img {
  container-type: inline-size;
}
.c-interview-sect__img.-type1 {
  position: relative;
}
.c-interview-sect__img.-type1 picture {
  position: relative;
  z-index: 1;
}
.c-interview-sect__img.-type1::before {
  content: "";
  position: absolute;
  inset: 0 0 0 20px;
  background: url("../images/interview/bg-polygon01.svg") no-repeat center center/cover;
}
.c-interview-sect__img.-type2 {
  position: relative;
  padding-top: 43px;
}
.c-interview-sect__cont {
  padding: 40px 20px 0;
}
.c-interview-sect__copy {
  display: flex;
  position: absolute;
  z-index: 3;
  flex-direction: row-reverse;
  align-items: flex-start;
  gap: 0 12px;
}
.c-interview-sect__copy span {
  padding: 0 3px;
  background-color: #fff;
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.08em;
  writing-mode: vertical-rl;
  line-height: 1;
}
.c-interview-sect__copy span + span {
  margin-top: 51px;
}
.c-interview-sect__copy:is(.c-interview-sect__img.-type1 *) {
  top: -27px;
  right: 53px;
}
.c-interview-sect__copy:is(.c-interview-sect__img.-type2 *) {
  top: -7px;
  left: 94px;
}
@media (width > 768px) {
  .c-interview-sect {
    display: flex;
    gap: 0 60px;
    padding: 0 20px;
  }
  .c-interview-sect.-img-right {
    justify-content: flex-end;
  }
  .c-interview-sect__img {
    flex: 0 0 calc(50% - 30px + 20px);
  }
  .c-interview-sect__img:is(.c-interview-sect.-img-right *) {
    order: 2;
    -webkit-margin-end: calc(-1 * 20px);
            margin-inline-end: calc(-1 * 20px);
  }
  .c-interview-sect__img:is(.c-interview-sect.-img-left *) {
    order: 1;
    -webkit-margin-start: calc(-1 * 20px);
            margin-inline-start: calc(-1 * 20px);
    text-align: right;
  }
  .c-interview-sect__img.-type1 {
    padding-top: 137px;
  }
  .c-interview-sect__img.-type1::before {
    inset: 0 0 -73px 60px;
  }
  .c-interview-sect__img.-type2 {
    padding-top: 182px;
  }
  .c-interview-sect__cont {
    flex: 0 0 min(50% - 30px, 530px);
    padding: 0;
  }
  .c-interview-sect__cont:is(.c-interview-sect.-img-right *) {
    order: 1;
  }
  .c-interview-sect__cont:is(.c-interview-sect.-img-left *) {
    order: 2;
  }
  .c-interview-sect__copy {
    gap: 0 16px;
  }
  .c-interview-sect__copy span {
    padding: 0 4px;
    font-size: 36px;
    letter-spacing: 0.1em;
  }
  .c-interview-sect__copy span + span {
    margin-top: 80px;
  }
  .c-interview-sect__copy:is(.c-interview-sect__img.-type1 *) {
    top: -55px;
    right: max(22px, var(--view-width) * 0.5 - 538px);
  }
  .c-interview-sect__copy:is(.c-interview-sect__img.-type2 *) {
    top: 127px;
    left: 180px;
  }
  @container ( width < 540px) {
    .c-interview-sect__copy:is(.c-interview-sect__img.-type2 *) {
      left: 15%;
    }
  }
}
@media (width <= 768px) {
  .c-interview-sect__img.-type1 {
    padding: 64px 36px 80px 0;
  }
}

.c-t1-table {
  width: 100%;
  min-width: 750px;
  background-color: #fff;
}
.c-t1-table th,
.c-t1-table td {
  padding: 2px 13px 2.5px;
  border: 1px solid #ccc;
  font-weight: 500;
  line-height: 1.6;
  vertical-align: middle;
}
.c-t1-table thead th {
  background-color: #17184b;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.c-t1-table tr > *:nth-child(1) {
  width: 62.5%;
}
.c-t1-table tr > *:nth-child(2) {
  width: 37.5%;
}

.c-t23-table, .c-t22-table, .c-t21-table, .c-t20-table, .c-t19-table, .c-t18-table, .c-t17-table, .c-t16-table, .c-t15-table, .c-t14-table, .c-t13-table, .c-t12-table, .c-t11-table, .c-t10-table, .c-t9-table, .c-t8-table, .c-t7-table, .c-t6-table, .c-t5-table, .c-t4-table, .c-t3-table, .c-t2-table, .c-style1-table {
  width: 100%;
  table-layout: fixed;
}
.c-t23-table th, .c-t22-table th, .c-t21-table th, .c-t20-table th, .c-t19-table th, .c-t18-table th, .c-t17-table th, .c-t16-table th, .c-t15-table th, .c-t14-table th, .c-t13-table th, .c-t12-table th, .c-t11-table th, .c-t10-table th, .c-t9-table th, .c-t8-table th, .c-t7-table th, .c-t6-table th, .c-t5-table th, .c-t4-table th, .c-t3-table th, .c-t2-table th, .c-style1-table th,
.c-t23-table td,
.c-t22-table td,
.c-t21-table td,
.c-t20-table td,
.c-t19-table td,
.c-t18-table td,
.c-t17-table td,
.c-t16-table td,
.c-t15-table td,
.c-t14-table td,
.c-t13-table td,
.c-t12-table td,
.c-t11-table td,
.c-t10-table td,
.c-t9-table td,
.c-t8-table td,
.c-t7-table td,
.c-t6-table td,
.c-t5-table td,
.c-t4-table td,
.c-t3-table td,
.c-t2-table td,
.c-style1-table td {
  border: 1px solid #ccc;
  line-height: 1.6;
  vertical-align: middle;
}
.c-t23-table thead th, .c-t22-table thead th, .c-t21-table thead th, .c-t20-table thead th, .c-t19-table thead th, .c-t18-table thead th, .c-t17-table thead th, .c-t16-table thead th, .c-t15-table thead th, .c-t14-table thead th, .c-t13-table thead th, .c-t12-table thead th, .c-t11-table thead th, .c-t10-table thead th, .c-t9-table thead th, .c-t8-table thead th, .c-t7-table thead th, .c-t6-table thead th, .c-t5-table thead th, .c-t4-table thead th, .c-t3-table thead th, .c-t2-table thead th, .c-style1-table thead th {
  padding: 2px 0 2.5px;
  background-color: #17184b;
  font-weight: bold;
  color: #fff;
  text-align: center;
  vertical-align: middle;
}
.c-t23-table tbody th, .c-t22-table tbody th, .c-t21-table tbody th, .c-t20-table tbody th, .c-t19-table tbody th, .c-t18-table tbody th, .c-t17-table tbody th, .c-t16-table tbody th, .c-t15-table tbody th, .c-t14-table tbody th, .c-t13-table tbody th, .c-t12-table tbody th, .c-t11-table tbody th, .c-t10-table tbody th, .c-t9-table tbody th, .c-t8-table tbody th, .c-t7-table tbody th, .c-t6-table tbody th, .c-t5-table tbody th, .c-t4-table tbody th, .c-t3-table tbody th, .c-t2-table tbody th, .c-style1-table tbody th,
.c-t23-table tbody td,
.c-t22-table tbody td,
.c-t21-table tbody td,
.c-t20-table tbody td,
.c-t19-table tbody td,
.c-t18-table tbody td,
.c-t17-table tbody td,
.c-t16-table tbody td,
.c-t15-table tbody td,
.c-t14-table tbody td,
.c-t13-table tbody td,
.c-t12-table tbody td,
.c-t11-table tbody td,
.c-t10-table tbody td,
.c-t9-table tbody td,
.c-t8-table tbody td,
.c-t7-table tbody td,
.c-t6-table tbody td,
.c-t5-table tbody td,
.c-t4-table tbody td,
.c-t3-table tbody td,
.c-t2-table tbody td,
.c-style1-table tbody td {
  padding: 2px 11px 2.5px 14px;
  font-weight: 500;
}
.c-t23-table tbody th.font-bold, .c-t22-table tbody th.font-bold, .c-t21-table tbody th.font-bold, .c-t20-table tbody th.font-bold, .c-t19-table tbody th.font-bold, .c-t18-table tbody th.font-bold, .c-t17-table tbody th.font-bold, .c-t16-table tbody th.font-bold, .c-t15-table tbody th.font-bold, .c-t14-table tbody th.font-bold, .c-t13-table tbody th.font-bold, .c-t12-table tbody th.font-bold, .c-t11-table tbody th.font-bold, .c-t10-table tbody th.font-bold, .c-t9-table tbody th.font-bold, .c-t8-table tbody th.font-bold, .c-t7-table tbody th.font-bold, .c-t6-table tbody th.font-bold, .c-t5-table tbody th.font-bold, .c-t4-table tbody th.font-bold, .c-t3-table tbody th.font-bold, .c-t2-table tbody th.font-bold, .c-style1-table tbody th.font-bold,
.c-t23-table tbody td.font-bold,
.c-t22-table tbody td.font-bold,
.c-t21-table tbody td.font-bold,
.c-t20-table tbody td.font-bold,
.c-t19-table tbody td.font-bold,
.c-t18-table tbody td.font-bold,
.c-t17-table tbody td.font-bold,
.c-t16-table tbody td.font-bold,
.c-t15-table tbody td.font-bold,
.c-t14-table tbody td.font-bold,
.c-t13-table tbody td.font-bold,
.c-t12-table tbody td.font-bold,
.c-t11-table tbody td.font-bold,
.c-t10-table tbody td.font-bold,
.c-t9-table tbody td.font-bold,
.c-t8-table tbody td.font-bold,
.c-t7-table tbody td.font-bold,
.c-t6-table tbody td.font-bold,
.c-t5-table tbody td.font-bold,
.c-t4-table tbody td.font-bold,
.c-t3-table tbody td.font-bold,
.c-t2-table tbody td.font-bold,
.c-style1-table tbody td.font-bold {
  font-weight: bold;
}
.c-t23-table tbody th, .c-t22-table tbody th, .c-t21-table tbody th, .c-t20-table tbody th, .c-t19-table tbody th, .c-t18-table tbody th, .c-t17-table tbody th, .c-t16-table tbody th, .c-t15-table tbody th, .c-t14-table tbody th, .c-t13-table tbody th, .c-t12-table tbody th, .c-t11-table tbody th, .c-t10-table tbody th, .c-t9-table tbody th, .c-t8-table tbody th, .c-t7-table tbody th, .c-t6-table tbody th, .c-t5-table tbody th, .c-t4-table tbody th, .c-t3-table tbody th, .c-t2-table tbody th, .c-style1-table tbody th {
  text-align: left;
}
.c-t23-table tbody td, .c-t22-table tbody td, .c-t21-table tbody td, .c-t20-table tbody td, .c-t19-table tbody td, .c-t18-table tbody td, .c-t17-table tbody td, .c-t16-table tbody td, .c-t15-table tbody td, .c-t14-table tbody td, .c-t13-table tbody td, .c-t12-table tbody td, .c-t11-table tbody td, .c-t10-table tbody td, .c-t9-table tbody td, .c-t8-table tbody td, .c-t7-table tbody td, .c-t6-table tbody td, .c-t5-table tbody td, .c-t4-table tbody td, .c-t3-table tbody td, .c-t2-table tbody td, .c-style1-table tbody td {
  text-align: right;
}
.c-t23-table tfoot th, .c-t22-table tfoot th, .c-t21-table tfoot th, .c-t20-table tfoot th, .c-t19-table tfoot th, .c-t18-table tfoot th, .c-t17-table tfoot th, .c-t16-table tfoot th, .c-t15-table tfoot th, .c-t14-table tfoot th, .c-t13-table tfoot th, .c-t12-table tfoot th, .c-t11-table tfoot th, .c-t10-table tfoot th, .c-t9-table tfoot th, .c-t8-table tfoot th, .c-t7-table tfoot th, .c-t6-table tfoot th, .c-t5-table tfoot th, .c-t4-table tfoot th, .c-t3-table tfoot th, .c-t2-table tfoot th, .c-style1-table tfoot th,
.c-t23-table tfoot td,
.c-t22-table tfoot td,
.c-t21-table tfoot td,
.c-t20-table tfoot td,
.c-t19-table tfoot td,
.c-t18-table tfoot td,
.c-t17-table tfoot td,
.c-t16-table tfoot td,
.c-t15-table tfoot td,
.c-t14-table tfoot td,
.c-t13-table tfoot td,
.c-t12-table tfoot td,
.c-t11-table tfoot td,
.c-t10-table tfoot td,
.c-t9-table tfoot td,
.c-t8-table tfoot td,
.c-t7-table tfoot td,
.c-t6-table tfoot td,
.c-t5-table tfoot td,
.c-t4-table tfoot td,
.c-t3-table tfoot td,
.c-t2-table tfoot td,
.c-style1-table tfoot td {
  padding: 2px 11px 2.5px 14px;
  background-color: #ececec;
  font-weight: bold;
}
.c-t23-table tfoot th, .c-t22-table tfoot th, .c-t21-table tfoot th, .c-t20-table tfoot th, .c-t19-table tfoot th, .c-t18-table tfoot th, .c-t17-table tfoot th, .c-t16-table tfoot th, .c-t15-table tfoot th, .c-t14-table tfoot th, .c-t13-table tfoot th, .c-t12-table tfoot th, .c-t11-table tfoot th, .c-t10-table tfoot th, .c-t9-table tfoot th, .c-t8-table tfoot th, .c-t7-table tfoot th, .c-t6-table tfoot th, .c-t5-table tfoot th, .c-t4-table tfoot th, .c-t3-table tfoot th, .c-t2-table tfoot th, .c-style1-table tfoot th {
  text-align: left;
}
.c-t23-table tfoot td, .c-t22-table tfoot td, .c-t21-table tfoot td, .c-t20-table tfoot td, .c-t19-table tfoot td, .c-t18-table tfoot td, .c-t17-table tfoot td, .c-t16-table tfoot td, .c-t15-table tfoot td, .c-t14-table tfoot td, .c-t13-table tfoot td, .c-t12-table tfoot td, .c-t11-table tfoot td, .c-t10-table tfoot td, .c-t9-table tfoot td, .c-t8-table tfoot td, .c-t7-table tfoot td, .c-t6-table tfoot td, .c-t5-table tfoot td, .c-t4-table tfoot td, .c-t3-table tfoot td, .c-t2-table tfoot td, .c-style1-table tfoot td {
  text-align: right;
}
@media (width <= 768px) {
  .c-t23-table, .c-t22-table, .c-t21-table, .c-t20-table, .c-t19-table, .c-t18-table, .c-t17-table, .c-t16-table, .c-t15-table, .c-t14-table, .c-t13-table, .c-t12-table, .c-t11-table, .c-t10-table, .c-t9-table, .c-t8-table, .c-t7-table, .c-t6-table, .c-t5-table, .c-t4-table, .c-t3-table, .c-t2-table, .c-style1-table {
    font-size: 14px;
  }
  .c-t23-table thead th, .c-t22-table thead th, .c-t21-table thead th, .c-t20-table thead th, .c-t19-table thead th, .c-t18-table thead th, .c-t17-table thead th, .c-t16-table thead th, .c-t15-table thead th, .c-t14-table thead th, .c-t13-table thead th, .c-t12-table thead th, .c-t11-table thead th, .c-t10-table thead th, .c-t9-table thead th, .c-t8-table thead th, .c-t7-table thead th, .c-t6-table thead th, .c-t5-table thead th, .c-t4-table thead th, .c-t3-table thead th, .c-t2-table thead th, .c-style1-table thead th {
    padding: 5px 7px;
  }
  .c-t23-table tbody th, .c-t22-table tbody th, .c-t21-table tbody th, .c-t20-table tbody th, .c-t19-table tbody th, .c-t18-table tbody th, .c-t17-table tbody th, .c-t16-table tbody th, .c-t15-table tbody th, .c-t14-table tbody th, .c-t13-table tbody th, .c-t12-table tbody th, .c-t11-table tbody th, .c-t10-table tbody th, .c-t9-table tbody th, .c-t8-table tbody th, .c-t7-table tbody th, .c-t6-table tbody th, .c-t5-table tbody th, .c-t4-table tbody th, .c-t3-table tbody th, .c-t2-table tbody th, .c-style1-table tbody th,
  .c-t23-table tbody td,
  .c-t22-table tbody td,
  .c-t21-table tbody td,
  .c-t20-table tbody td,
  .c-t19-table tbody td,
  .c-t18-table tbody td,
  .c-t17-table tbody td,
  .c-t16-table tbody td,
  .c-t15-table tbody td,
  .c-t14-table tbody td,
  .c-t13-table tbody td,
  .c-t12-table tbody td,
  .c-t11-table tbody td,
  .c-t10-table tbody td,
  .c-t9-table tbody td,
  .c-t8-table tbody td,
  .c-t7-table tbody td,
  .c-t6-table tbody td,
  .c-t5-table tbody td,
  .c-t4-table tbody td,
  .c-t3-table tbody td,
  .c-t2-table tbody td,
  .c-style1-table tbody td,
  .c-t23-table tfoot th,
  .c-t22-table tfoot th,
  .c-t21-table tfoot th,
  .c-t20-table tfoot th,
  .c-t19-table tfoot th,
  .c-t18-table tfoot th,
  .c-t17-table tfoot th,
  .c-t16-table tfoot th,
  .c-t15-table tfoot th,
  .c-t14-table tfoot th,
  .c-t13-table tfoot th,
  .c-t12-table tfoot th,
  .c-t11-table tfoot th,
  .c-t10-table tfoot th,
  .c-t9-table tfoot th,
  .c-t8-table tfoot th,
  .c-t7-table tfoot th,
  .c-t6-table tfoot th,
  .c-t5-table tfoot th,
  .c-t4-table tfoot th,
  .c-t3-table tfoot th,
  .c-t2-table tfoot th,
  .c-style1-table tfoot th,
  .c-t23-table tfoot td,
  .c-t22-table tfoot td,
  .c-t21-table tfoot td,
  .c-t20-table tfoot td,
  .c-t19-table tfoot td,
  .c-t18-table tfoot td,
  .c-t17-table tfoot td,
  .c-t16-table tfoot td,
  .c-t15-table tfoot td,
  .c-t14-table tfoot td,
  .c-t13-table tfoot td,
  .c-t12-table tfoot td,
  .c-t11-table tfoot td,
  .c-t10-table tfoot td,
  .c-t9-table tfoot td,
  .c-t8-table tfoot td,
  .c-t7-table tfoot td,
  .c-t6-table tfoot td,
  .c-t5-table tfoot td,
  .c-t4-table tfoot td,
  .c-t3-table tfoot td,
  .c-t2-table tfoot td,
  .c-style1-table tfoot td {
    padding: 5px 7px;
  }
}

.c-t2-table tr > * {
  width: 18.3333333333%;
}
.c-t2-table tr > *:nth-child(1) {
  width: 45%;
}

.c-t3-table tr > * {
  width: 9.7321428571%;
}
.c-t3-table tr > *:nth-child(1) {
  width: 31.875%;
}
@media (width <= 768px) {
  .c-t3-table tr > * {
    width: 11.4285714286%;
  }
  .c-t3-table tr > *:nth-child(1) {
    width: 20%;
  }
}

.c-t4-table tr > *:nth-child(1) {
  width: 30%;
}
.c-t4-table tr > *:nth-child(2) {
  width: 13.4%;
}
.c-t4-table tr > *:nth-child(3) {
  width: 17.4%;
}
.c-t4-table tr > *:nth-child(4) {
  width: 13%;
}
.c-t4-table tr > *:nth-child(5) {
  width: 13%;
}
.c-t4-table tr > *:nth-child(6) {
  width: 13.2%;
}

.c-t5-table tr > *:nth-child(1) {
  width: 66.66%;
}
.c-t5-table tr > *:nth-child(2) {
  width: 33.34%;
}

.c-t6-table thead th {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 1.2;
}
.c-t6-table tr > * {
  width: 2.6em;
}
.c-t6-table tr > *:nth-child(1) {
  width: auto;
}

.c-t7-table tr .-col1 {
  width: 28%;
}
.c-t7-table tr .-col2 {
  width: 40%;
}
.c-t7-table tr .-col3 {
  width: 16%;
}
.c-t7-table tr .-colspan1 {
  width: 68%;
}

.c-t8-table {
  table-layout: auto;
}
.c-t8-table thead th {
  line-height: 1.2;
}
.c-t8-table tr .-col1 {
  width: 6%;
}
.c-t8-table tr .-col2 {
  width: 29.4%;
}
.c-t8-table tr .-col3 {
  width: 39.6%;
}
.c-t8-table tr .-col4 {
  width: 12.5%;
}
.c-t8-table tr .-colspan1 {
  width: 35.4%;
}
.c-t8-table tr .-colspan2 {
  width: 75%;
}

.c-t9-table tr .-col1 {
  width: 40%;
}
.c-t9-table tr .-col2 {
  width: 15%;
}
.c-t9-table tr .-col3 {
  width: 30%;
}

.c-t10-table tr .-col1 {
  width: 52.8%;
}
.c-t10-table tr .-col2 {
  width: 23.6%;
}

.c-t11-table thead th {
  line-height: 1.2;
}
.c-t11-table tr > * {
  width: 13.2%;
}
.c-t11-table tr > *:nth-child(1) {
  width: 34%;
}

.c-t12-table th,
.c-t12-table td {
  width: -webkit-fit-content;
  width: fit-content;
  white-space: nowrap;
}

.c-t13-table .-dept {
  width: 25%;
}
.c-t13-table .-min {
  width: calc(1em + 14px);
}
@media (width > 768px) {
  .c-t13-table .-min {
    width: calc(1em + 25px);
  }
}

.c-t14-table tr th,
.c-t14-table tr td {
  width: 21.5%;
}
.c-t14-table tr th:first-child,
.c-t14-table tr td:first-child {
  width: 35.5%;
}

.c-t15-table thead th {
  padding-top: 5px;
  padding-bottom: 5px;
  line-height: 1.2;
}
.c-t15-table .-col1 {
  width: 39.5%;
}
.c-t15-table .-col2 {
  width: 11.75%;
}
.c-t15-table .-col3 {
  width: 13.5%;
}
.c-t15-table .-col4 {
  width: 23.5%;
}
@media (width <= 768px) {
  .c-t15-table .-col1 {
    width: 30%;
  }
  .c-t15-table .-col2 {
    width: 20%;
  }
  .c-t15-table .-col3 {
    width: 15%;
  }
  .c-t15-table .-col4 {
    width: 40%;
  }
}

.c-t16-table .-col1 {
  width: 5%;
}
.c-t16-table .-col2 {
  width: 13%;
}
.c-t16-table .-col3 {
  width: 8%;
}
.c-t16-table .-col4 {
  width: 5.6%;
}
.c-t16-table .-col5 {
  width: 7%;
}
.c-t16-table .-col6 {
  width: 6.6%;
}
.c-t16-table .-col7 {
  width: 5%;
}
.c-t16-table .-colspan1 {
  width: 16.8%;
}
.c-t16-table .-colspan2 {
  width: 44.8%;
}

.c-t17-table .-col1 {
  width: 21.4%;
}
.c-t17-table .-col2 {
  width: 9.6%;
}
.c-t17-table .-col3 {
  width: 6.5%;
}
.c-t17-table .-col4 {
  width: 6.5%;
}
.c-t17-table .-col5 {
  word-wrap: 7.7%;
}
.c-t17-table .-col6 {
  width: 5.8%;
}
.c-t17-table .-col7 {
  width: 9.4%;
}
.c-t17-table .-colspan1 {
  width: 15.2%;
}
.c-t17-table .-colspan3 {
  width: 26.8%;
}
.c-t17-table tfoot th {
  text-align: center;
}

.c-t18-table thead th {
  padding-top: 5px;
  padding-bottom: 5px;
  line-height: 1.2;
}
.c-t18-table th,
.c-t18-table td {
  width: 4.7%;
}
.c-t18-table .-col1 {
  width: 14.3%;
}
.c-t18-table .-colspan1 {
  width: 28.2%;
}
.c-t18-table .-colspan2 {
  width: 37.6%;
}

.c-t19-table .-col1 {
  width: 32%;
}
.c-t19-table .-col2 {
  width: 13.6%;
}

.c-t20-table {
  table-layout: auto;
}
.c-t20-table .-col1 {
  width: 2.6%;
}
.c-t20-table .-col2 {
  width: 35%;
}
.c-t20-table .-col3 {
  width: 12.48%;
}
.c-t20-table .-colspan1 {
  width: 37.6%;
}
.c-t20-table .border-r-white {
  border-right-color: #fff;
}
.c-t20-table .border-b-white {
  border-bottom-color: #fff;
}

.c-t21-table {
  table-layout: auto;
}
.c-t21-table .-col1 {
  width: 5%;
}
.c-t21-table .-col2 {
  width: 2.6%;
}
.c-t21-table .-col3 {
  width: 30%;
}
.c-t21-table .-col4 {
  width: 12.5%;
}

.c-t22-table {
  table-layout: auto;
}
.c-t22-table .-col1 {
  width: 49%;
}
.c-t22-table .-col2 {
  width: 7.5%;
}
.c-t22-table .-col3 {
  width: 13.5%;
}
.c-t22-table .-col3 small {
  font-size: 12px;
}
.c-t22-table thead th {
  padding-top: 6px;
  padding-bottom: 6px;
  line-height: 1.2;
}
@media (width > 768px) {
  .c-t22-table .-col3 small {
    font-size: 14px;
  }
}

.c-t23-table {
  table-layout: auto;
}

.c-link-txt {
  display: flex;
  align-items: center;
  gap: 0 8px;
  width: -webkit-fit-content;
  width: fit-content;
}
.c-link-txt span {
  flex: 0 1 auto;
  font-weight: 500;
  text-decoration: underline;
}
.c-link-txt .fa {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  background-color: var(--color-primary);
  color: #fff;
}
.c-link-txt[target=_blank] .fa::before {
  rotate: -45deg;
}
@media (any-hover: hover) {
  .c-link-txt:hover span {
    text-decoration: none;
  }
}

.data-wrapper {
  position: relative;
}
.data-wrapper::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url("../images/shared/bg-polygon-body.svg") repeat center top/1400px auto;
  opacity: 0.3;
  mix-blend-mode: overlay;
}

.data-mv {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  overflow: hidden;
}
.data-mv picture {
  display: flex;
  justify-content: center;
  width: 100%;
}
.data-mv img {
  display: block;
  width: 750px;
  height: 100%;
  max-width: none;
  object-fit: cover;
  margin-inline: auto;
  object-position: center;
}
@media (width > 768px) {
  .data-mv img {
    width: 1400px;
  }
}

.data-grid {
  display: grid;
  grid-template-columns: 100%;
  gap: 24px 0;
}
@media (width > 768px) {
  .data-grid {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

.data-column {
  padding: 16px 14px;
  border: 2px solid #fff;
}
@media (width > 768px) {
  .data-column {
    padding: 38px;
  }
}

.highlights-mv {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  overflow: hidden;
}
.highlights-mv picture {
  display: flex;
  justify-content: center;
  width: 100%;
}
.highlights-mv img {
  display: block;
  width: 775px;
  height: 100%;
  max-width: none;
  object-fit: cover;
  margin-inline: auto;
  object-position: center;
}
@media (width > 768px) {
  .highlights-mv img {
    width: 1600px;
  }
}
@media (width <= 768px) {
  .highlights-mv.-highlights02 {
    background: url("../images/highlights02/img-mobile-mv02.png") no-repeat center bottom/775px auto;
  }
}

.highlights-container {
  position: relative;
  z-index: 1;
  max-width: min(1200px, var(--view-width) - 20px * 2);
  padding: 40px 20px 16px;
  margin-top: -40px;
  background-color: rgba(255, 255, 255, 0.9);
  margin-inline: auto;
}
.highlights-container__in {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.highlights-container.-highlights01::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 0;
  aspect-ratio: 6/5;
  background: url("../images/highlights01/bg-contents.jpg") no-repeat center center/100% 100%;
  opacity: 0.1;
  mix-blend-mode: multiply;
}
@media (width > 768px) {
  .highlights-container {
    padding: 64px 40px 66px;
    margin-top: -80px;
  }
  .highlights-container.-highlights01::before {
    bottom: 24px;
  }
  .highlights-grid01 {
    display: flex;
    align-items: flex-start;
    gap: 0 80px;
  }
  .highlights-grid01__item {
    position: relative;
    flex: 1 1 100%;
  }
  .highlights-grid01__item + .highlights-grid01__item::before {
    content: "";
    position: absolute;
    top: 0;
    left: -40px;
    width: 1px;
    height: 100%;
    background-color: var(--color-primary);
  }
}
@media (width <= 768px) {
  .highlights-grid01__item + .highlights-grid01__item {
    padding-top: 22px;
    margin-top: 15px;
    border-top: 1px solid var(--color-primary);
  }
}

@media (width > 768px) {
  .highlights-grid02 {
    display: flex;
    align-items: flex-start;
    gap: 0 60px;
  }
  .highlights-grid02__item {
    position: relative;
    flex: 1 1 100%;
  }
  .highlights-grid02__item + .highlights-grid02__item::before {
    content: "";
    position: absolute;
    top: 0;
    left: -30px;
    width: 1px;
    height: 100%;
    background-color: var(--color-primary);
  }
}
@media (width <= 768px) {
  .highlights-grid02__item + .highlights-grid02__item {
    padding-top: 24px;
    margin-top: 29px;
    border-top: 1px solid var(--color-primary);
  }
}

.highlights-list01 {
  display: grid;
  grid-template-columns: 100%;
  gap: 12px 0;
}
.highlights-list01__ttl {
  display: grid;
  align-items: flex-start;
  grid-template-columns: 32px 1fr;
  gap: 0 16px;
}
.highlights-list01__ttl i {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  background-color: var(--color-primary);
  font-family: "Jost",sans-serif;
  font-weight: 300;
  color: #fff;
}
.highlights-list01__ttl span {
  font-weight: bold;
}
.highlights-list01__txt {
  padding-top: 3px;
  padding-left: 48px;
}
@media (width > 768px) {
  .highlights-list01__ttl {
    grid-template-columns: 36px 1fr;
  }
  .highlights-list01__ttl i {
    width: 36px;
    height: 36px;
  }
  .highlights-list01__ttl span {
    font-size: 18px;
  }
  .highlights-list01__txt {
    padding-top: 2px;
    padding-left: 52px;
  }
}

.highlights-bg01 {
  display: block;
  position: absolute;
  inset: 0 20px auto;
  z-index: 0;
  width: calc(100% - 20px * 2);
  background: url("../images/highlights02/bg01.png") no-repeat center center/100% 100%;
  mix-blend-mode: multiply;
  opacity: 0.9;
}
@media (width > 768px) {
  .highlights-bg01 {
    inset: 0 40px auto;
    width: calc(100% - 80px);
  }
}

.highlights-blk01 {
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .highlights-blk01 {
    margin-inline: calc(-1 * 20px - 3px);
  }
}

.highlights-blk02 {
  position: relative;
  padding: 16px 16px 14px;
  background-color: rgba(33, 180, 175, 0.2);
}
.highlights-blk02__in {
  position: relative;
  z-index: 1;
}
.highlights-blk02__num {
  position: absolute;
  bottom: -0.15em;
  right: 0.2em;
  z-index: 0;
  font-family: "Jost",sans-serif;
  font-size: 80px;
  font-style: italic;
  font-weight: 300;
  color: #fff;
  line-height: 1;
}
.highlights-blk02__ttl {
  padding-bottom: 0.35em;
  margin-bottom: 0.95em;
  border-bottom: 1px solid currentcolor;
  font-family: "Zen Old Mincho",serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
}
@media (width > 768px) {
  .highlights-blk02 {
    padding: 24px;
  }
  .highlights-blk02__num {
    bottom: 0.18em;
    right: 0.3em;
  }
  .highlights-blk02__ttl {
    margin-bottom: 1.3em;
  }
}

.highlights-caption01 {
  position: absolute;
  bottom: 48px;
  right: 20px;
  padding: 0 8px;
  background-color: #fff;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}
@media (width > 768px) {
  .highlights-caption01 {
    bottom: 93px;
    right: max(20px, 50% - 562px);
    font-size: 14px;
  }
  .history-inoue {
    display: grid;
    grid-template: "heading img" auto "cont img" 1fr/1fr 250px;
    gap: 40px;
  }
  .history-inoue__heading {
    grid-area: heading;
    margin-top: 10px;
  }
  .history-inoue__img {
    grid-area: img;
  }
  .history-inoue__cont {
    grid-area: cont;
  }
}
@media (width <= 768px) {
  .history-inoue__cont {
    padding-top: 40px;
  }
  .history-inoue__img {
    padding: 20px 18px 0;
  }
}

.history-hdr {
  position: relative;
  padding-bottom: 40px;
}
.history-hdr__img {
  position: absolute;
  top: -62px;
  left: calc(50% - 225px);
  z-index: 0;
  width: 103px;
}
@media (width > 768px) {
  .history-hdr {
    padding-bottom: 64px;
  }
  .history-hdr__img {
    top: -97px;
    left: max(0px, 50% - 673px);
    width: 206px;
  }
  .history-chronology {
    position: relative;
    padding-left: 220px;
  }
  .history-chronology__side {
    position: absolute;
    top: 0;
    width: 210px;
    translate: -220px 0;
  }
  .history-chronology__side.is-fixed {
    position: fixed;
    top: var(--header-height);
  }
  .history-chronology__side.is-fixed.is-end {
    position: absolute;
    top: auto;
    bottom: 0;
  }
  .history-chronology__side a {
    display: grid;
    grid-template-columns: 100%;
  }
  .history-chronology__side span {
    line-height: 1.6;
  }
  .history-chronology__side li {
    position: relative;
    padding-left: 28px;
    padding-bottom: 34px;
    color: #666;
  }
  .history-chronology__side li::before {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    left: 2px;
    z-index: 1;
    width: 17px;
    height: 17px;
    background-color: #ccc;
    -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
            clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  }
  .history-chronology__side li::after {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    bottom: -4px;
    z-index: 0;
    width: 1px;
    height: calc(100% - 16px);
    background-color: #17184b;
  }
  .history-chronology__side li.is-active {
    color: #17184b;
  }
  .history-chronology__side li.is-active::before {
    background-color: #17184b;
  }
  .history-chronology__side li:last-child {
    padding-bottom: 0;
  }
  .history-chronology__side li:last-child::after {
    content: none;
  }
}
@media (width > 1024px) {
  .history-chronology {
    padding-left: 310px;
  }
  .history-chronology__side {
    width: 260px;
    translate: -310px 0;
  }
}
@media (width <= 768px) {
  .history-chronology__side {
    display: grid;
    grid-template-columns: 100%;
    border-top: 1px solid var(--color-primary);
    border-left: 1px solid var(--color-primary);
    border-right: 1px solid var(--color-primary);
  }
  .history-chronology__side li a {
    display: flex;
    position: relative;
    flex-direction: column;
    height: 67px;
    padding-top: 8px;
    padding-left: 83px;
    border-bottom: 1px solid var(--color-primary);
    line-height: 1.65;
  }
  .history-chronology__side li a::before {
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 900;
    font-display: auto;
    content: "\f063";
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    width: 67px;
    height: 67px;
    border-right: 1px solid var(--color-primary);
  }
  .history-chronology__cont {
    padding-top: 64px;
  }
}

.history-section + .history-section {
  margin-top: 16px;
}
@media (width > 768px) {
  .history-section + .history-section {
    margin-top: 40px;
  }
}

.history-secthdr {
  position: relative;
  z-index: 0;
}
.history-secthdr__hgrp {
  position: relative;
  z-index: 1;
  color: #fff;
}
.history-secthdr__hgrp p {
  font-family: "Zen Old Mincho",serif;
  font-size: 16px;
  line-height: 1.6;
}
.history-secthdr__hgrp h2 {
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
}
.history-secthdr__img {
  position: absolute;
  z-index: 0;
}
@media (width > 768px) {
  .history-secthdr {
    padding: 32px 40px 40px;
    margin-left: 30px;
  }
  .history-secthdr__hgrp p {
    font-size: 20px;
  }
  .history-secthdr__hgrp h2 {
    font-size: 32px;
  }
  .history-secthdr__img {
    top: 0;
    left: 0;
    right: min(-1 * 20px, 560px - var(--view-width) * 0.5);
  }
  .history-secthdr__img img {
    width: 100%;
    height: 300px;
    max-width: none;
    object-fit: cover;
  }
}
@media (width <= 768px) {
  .history-secthdr__hgrp {
    padding: 18px 0 46px;
  }
  .history-secthdr__img {
    inset: 0 calc(-1 * 20px);
  }
}

.history-sectbdy {
  position: relative;
  z-index: 1;
  padding: 18px 0;
  background-color: #fff;
}
@media (width > 768px) {
  .history-sectbdy {
    padding: 40px 40px 0;
    -webkit-margin-end: calc(-1 * clamp(0px, var(--view-width) * 0.5 - 560px, 50px));
            margin-inline-end: calc(-1 * clamp(0px, var(--view-width) * 0.5 - 560px, 50px));
  }
}

.history-line__seireki {
  font-family: "Jost",sans-serif;
  font-size: 32px;
  font-weight: 300;
  line-height: 1;
}
.history-line__wareki {
  font-family: "Zen Old Mincho",serif;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.6;
}
.history-line__step {
  position: relative;
  flex: 0 0 20px;
  width: 20px;
}
.history-line__step::before {
  content: "";
  display: block;
  width: 17px;
  height: 17px;
  background-color: #17184b;
  -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
          clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  margin-inline: auto;
}
.history-line__step::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  translate: -50% 0;
  bottom: 0;
  width: 1px;
  background-color: #17184b;
}
.history-line__txt {
  font-size: 14px;
  font-weight: 500;
}
@media (width > 768px) {
  .history-line {
    display: flex;
    gap: 0 20px;
  }
  .history-line__year {
    flex: 0 0 150px;
    width: 150px;
  }
  .history-line__seireki {
    font-size: 60px;
  }
  .history-line__wareki {
    font-size: 16px;
  }
  .history-line__step {
    position: relative;
    flex: 0 0 20px;
    width: 20px;
  }
  .history-line__step::before {
    margin-top: 18px;
  }
  .history-line__step::after {
    height: calc(100% - 34px);
  }
  .history-line__txt {
    font-size: 16px;
  }
  .history-line + .history-line .history-line__step::after {
    height: 100%;
  }
  .history-line__cont {
    min-height: 102px;
    padding-bottom: 25px;
    margin-top: 8px;
  }
  .history-line:is(.history-sectbdy *:last-child) .history-line__cont {
    min-height: 0;
    padding-bottom: 0;
  }
  .history-line:is(.history-sectbdy *:last-child) .history-line__step::after {
    top: 0;
    bottom: auto;
    height: 100%;
  }
}
@media (width > 1024px) {
  .history-line {
    gap: 0 40px;
  }
}
@media (width <= 768px) {
  .history-line {
    display: flex;
    position: relative;
    gap: 0 40px;
  }
  .history-line + .history-line {
    margin-top: 25px;
  }
  .history-line__step {
    position: absolute;
    top: 0;
    left: 95px;
    bottom: 0;
  }
  .history-line__step::before {
    margin-top: 10px;
  }
  .history-line__step::after {
    bottom: -40px;
    height: calc(100% + 26px);
  }
  .history-line__year {
    flex: 0 0 90px;
    width: 90px;
    padding-bottom: 10px;
  }
  .history-line__cont {
    flex: 1 1 auto;
    padding-top: 1px;
  }
  .history-line:is(.history-sectbdy *:last-child) .history-line__step::after {
    bottom: 0;
    height: calc(100% - 16px);
  }
}

.home-mv {
  position: relative;
  height: 550px;
  overflow: hidden;
}
.home-mv__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.home-mv__bg picture {
  display: block;
  width: 100%;
  height: 100%;
}
.home-mv__bg img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: bottom;
}
.home-mv__grad {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(45deg, #1476ed 0%, #17184b 100%);
}
.home-mv__container {
  position: relative;
  z-index: 1;
  height: 100%;
}
.home-mv__logo {
  position: absolute;
  top: calc(var(--header-height) + 40px);
  left: 20px;
  z-index: 2;
  width: 335px;
  opacity: 0;
}
.home-mv__lighthouse {
  position: absolute;
  left: calc(50% - 271px);
  bottom: -8px;
  width: 566px;
}
.home-mv__star {
  position: absolute;
  top: 152px;
  right: -56px;
  width: 250px;
  aspect-ratio: 361/359;
}
.home-mv__star > div {
  position: absolute;
  inset: 0;
}
.home-mv__stars {
  position: absolute;
  top: 193px;
  left: calc(50% - 117px);
  width: 392px;
}
@media (width > 768px) {
  .home-mv {
    height: 1100px;
  }
  .home-mv__logo {
    top: 210px;
    width: 670px;
  }
  .home-mv__lighthouse {
    left: calc(50% - 308px);
    width: 888px;
    height: 216px;
  }
  .home-mv__star {
    top: 0;
    left: calc(50% + 98px);
    width: 500px;
  }
  .home-mv__stars {
    top: 44px;
    left: calc(50% - 242px);
    width: 860px;
  }
}
@media (width > 1024px) {
  .home-mv__logo {
    left: 90px;
    width: 844px;
  }
  .home-mv__star {
    left: calc(50% + 118px);
  }
  .home-mv__stars {
    left: calc(50% - 386px);
    width: 1160px;
  }
}

.home-wrapper {
  position: relative;
  z-index: 2;
  overflow: hidden;
}
.home-wrapper__contents {
  position: relative;
  z-index: 2;
  padding-bottom: 252px;
}
.home-wrapper__yacht {
  position: absolute;
  top: 998px;
  right: 0;
  z-index: 1;
  width: 100%;
  pointer-events: none;
}
.home-wrapper__bgs {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  container-type: inline-size;
  pointer-events: none;
}
@media (width > 768px) {
  .home-wrapper__contents {
    padding-bottom: 394px;
  }
}
@media (width <= 768px) {
  .home-wrapper__yacht {
    display: none;
  }
}

.home-mountain {
  position: absolute;
  z-index: 3;
  width: 1089px;
  max-width: none;
  pointer-events: none;
  mix-blend-mode: multiply;
}
@media (width <= 768px) {
  .home-mountain {
    width: 685px;
  }
}

.home-movie {
  position: absolute;
  z-index: 1;
  width: 100%;
  overflow: hidden;
  pointer-events: none;
  mix-blend-mode: multiply;
  -webkit-mask-image: radial-gradient(ellipse at center, rgb(0, 0, 0) 20%, rgba(0, 0, 0, 0) 70%);
          mask-image: radial-gradient(ellipse at center, rgb(0, 0, 0) 20%, rgba(0, 0, 0, 0) 70%);
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.home-movie video {
  width: 100%;
  height: auto;
}
@media (width <= 768px) {
  .home-movie {
    width: 130%;
  }
}

.home-bg {
  display: flex;
  position: relative;
  z-index: 0;
  justify-content: center;
  width: 100%;
  margin-bottom: -1px;
  line-height: 0;
  pointer-events: none;
}
.home-bg.--t1 {
  background-color: var(--color-white);
  background-image: url("../images/home/bg-contents01.png"), linear-gradient(to left, var(--color-white) 0%, var(--color-white) 5%, #a1deef 95%, #a1deef 100%);
  background-position: center top, left top;
  background-repeat: no-repeat, no-repeat;
  background-size: 100% auto, 100% 100%;
}
.home-bg.--t2 {
  height: 210px;
  margin-top: -110px;
}
.home-bg.--t2 svg {
  width: 100%;
  height: 100%;
}
.home-bg.--t3 {
  background: url("../images/home/bg-contents03.svg") repeat-y center top/100% auto;
}
.home-bg.--t4 {
  height: 360px;
}
.home-bg.--t4 svg {
  width: 100%;
  height: 100%;
}
.home-bg.--t5 {
  background: url("../images/home/bg-contents05.svg") no-repeat center center/100% 100%;
}
.home-bg.--t6 {
  height: 120px;
}
.home-bg.--t6 svg {
  width: 100%;
  height: 100%;
}
.home-bg.--t7 {
  background: url("../images/home/bg-contents07.svg") no-repeat center center/100% 100%;
}
.home-bg.--t8 {
  height: 178px;
}
.home-bg.--t8 svg {
  width: 100%;
  height: 100%;
}
@media (width > 768px) {
  .home-bg.--t1 {
    background-size: 100% auto, 100% 100%;
  }
  .home-bg.--t2 {
    height: 430px;
    margin-top: -225px;
  }
  .home-bg.--t3 {
    background-size: 100% 100%;
  }
  .home-bg.--t4 {
    height: 573px;
  }
  .home-bg.--t5 {
    background-size: 100% 100%;
  }
  .home-bg.--t6 {
    height: 307px;
  }
  .home-bg.--t7 {
    background-size: 100% 100%;
  }
  .home-bg.--t8 {
    height: 318px;
  }
  .home-bg.--t2 svg, .home-bg.--t4 svg, .home-bg.--t5 svg, .home-bg.--t6 svg, .home-bg.--t7 svg, .home-bg.--t8 svg {
    width: 100%;
    height: 100%;
  }
}

.home-catch__container {
  position: relative;
  z-index: 2;
  padding: 80px 20px 0;
}
@media (width > 768px) {
  .home-catch__container {
    padding: 160px 20px 0;
  }
}

.home-highlights01 {
  position: relative;
  padding: 181px 20px 0;
}
.home-highlights01__polar {
  position: relative;
}
.home-highlights01__polar img,
.home-highlights01__polar div {
  position: absolute;
  inset: 0;
}
@media (width > 768px) {
  .home-highlights01 {
    padding: 325px 20px 0;
  }
  .home-highlights01__container {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin-inline: auto;
  }
  .home-highlights01__polar {
    position: absolute;
    top: 251px;
    left: calc(50% - 230px);
    z-index: 0;
    width: 709px;
    height: 579px;
  }
}
@media (width <= 768px) {
  .home-highlights01__polar {
    max-width: 500px;
    aspect-ratio: 375/306;
    margin-top: -10%;
    pointer-events: none;
    margin-inline: -10px -40px;
  }
}

.home-highlights02 {
  position: relative;
  padding: 162px 20px 0;
}
.home-highlights02__stars {
  position: absolute;
}
@media (width > 768px) {
  .home-highlights02 {
    padding: 442px 20px 0;
  }
  .home-highlights02__container {
    position: relative;
    z-index: 2;
    max-width: 708px;
    margin-inline: auto;
  }
  .home-highlights02__stars {
    top: 581px;
    left: calc(50% + 156px);
    z-index: 0;
    width: 531px;
  }
  .home-highlights02__constellation {
    position: absolute;
    top: 478px;
    right: max(50% - 565px, 20px);
    z-index: 1;
    width: 284px;
  }
}
@media (width <= 768px) {
  .home-highlights02__sky {
    position: relative;
    max-width: 276px;
    margin-top: 50px;
    margin-left: auto;
  }
  .home-highlights02__stars {
    bottom: 50%;
    translate: 0 50%;
    right: 0;
    width: 100%;
  }
  .home-highlights02__constellation {
    width: 183px;
    margin-inline: auto 10px;
  }
}

.home-highlights03 {
  position: relative;
  padding: 73px 20px 82px;
}
.home-highlights03__stars {
  position: absolute;
}
.home-highlights03__constellation {
  position: absolute;
}
@media (width > 768px) {
  .home-highlights03 {
    padding: 308px 20px 0;
  }
  .home-highlights03__container {
    position: relative;
    z-index: 2;
    max-width: 1198px;
    margin-inline: auto;
  }
}
@media (width > 768px) and (width <= 1024px) {
  .home-highlights03__sky {
    position: relative;
    width: 375px;
    padding-bottom: 30px;
    margin-top: 20px;
  }
}
@media (width > 1024px) {
  .home-highlights03__stars {
    top: 536px;
    right: calc(50% - 18px);
    z-index: 0;
    width: 708px;
  }
  .home-highlights03__constellation {
    top: 429px;
    left: max(50% - 522px, 20px);
    z-index: 1;
    width: 429px;
  }
}
@media (width <= 768px) {
  .home-highlights03__sky {
    display: flex;
    position: relative;
    align-items: center;
    max-width: 375px;
    aspect-ratio: 375/276;
    margin-top: 45px;
    margin-inline: auto;
  }
  .home-highlights03__stars {
    width: 100%;
  }
  .home-highlights03__constellation {
    top: 0;
    right: 4%;
    width: 73.6%;
  }
}

@keyframes sailRock {
  0% {
    transform: translateY(0) rotate(-2deg);
  }
  50% {
    transform: translateY(-5px) rotate(2deg);
  }
  100% {
    transform: translateY(0) rotate(-2deg);
  }
}
@keyframes yachtMove {
  0% {
    translate: 0 0;
    rotate: 0deg;
  }
  25% {
    rotate: 10deg;
  }
  50% {
    translate: 10px -5px;
  }
  75% {
    rotate: -10deg;
  }
  100% {
    rotate: 0deg;
    translate: 20px -10px;
  }
}
@keyframes yachtMovePc {
  0% {
    translate: 0 0;
    rotate: 0deg;
  }
  25% {
    rotate: 10deg;
  }
  50% {
    translate: 40px -10px;
  }
  75% {
    rotate: -10deg;
  }
  100% {
    rotate: 0deg;
    translate: 80px -20px;
  }
}
.home-future {
  padding: 128px 20px 0;
}
.home-future__ttl {
  padding-bottom: 24px;
  font-family: "Jost",sans-serif;
  font-size: 40px;
  font-weight: 300;
  color: var(--color-white);
  line-height: 1.1;
}
.home-future__container {
  position: relative;
  z-index: 1;
}
.home-future__bg {
  position: relative;
  z-index: 0;
}
.home-future__constellation {
  position: absolute;
}
.home-future__mountain {
  visibility: hidden;
}
.home-future__water {
  line-height: 0;
}
.home-future__yacht {
  position: absolute;
  transform-origin: bottom center;
}
.home-future__yacht.is-inview {
  animation: yachtMove 10s 1 forwards;
}
@media (width > 768px) {
  .home-future {
    padding: 155px 20px 0;
  }
  .home-future__ttl {
    padding-bottom: 30px;
    font-size: 100px;
  }
  .home-future__container {
    width: -webkit-fit-content;
    width: fit-content;
    margin-inline: auto;
    translate: 13px 0;
  }
  .home-future__bg {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 9px;
    margin-top: -44px;
  }
  .home-future__stars {
    translate: -15px 0;
    width: 1226px;
    max-width: none;
  }
  .home-future__mountain {
    translate: -25px -15px;
    width: 1089px;
    max-width: none;
  }
  .home-future__water {
    width: 1400px;
    max-width: none;
    margin-top: -15px;
  }
  .home-future__constellation {
    top: -145px;
    left: 50%;
    z-index: 2;
    width: 715px;
    height: 510px;
    height: auto;
    translate: calc(-50% - 4px) 0;
  }
  .home-future__yacht {
    bottom: 0;
    right: calc(50% + 178px);
  }
  .home-future__yacht.is-inview {
    animation: yachtMovePc 10s 1 forwards;
  }
}
@media (width <= 768px) {
  .home-future__bg {
    height: 428px;
    margin-top: -128px;
  }
  .home-future__constellation {
    top: 0;
    left: calc(50% - 183px);
    width: 450px;
  }
  .home-future__water {
    position: absolute;
    left: calc(50% - 393px);
    bottom: 0;
    width: 881px;
    height: 107px;
    max-width: none;
  }
  .home-future__mountain {
    position: absolute;
    left: calc(50% - 322px);
    bottom: 106px;
    width: 685px;
    max-width: none;
  }
  .home-future__yacht {
    left: calc(50% - 199px);
    bottom: 0;
    width: 153px;
  }
}

.home-about {
  position: relative;
  padding: 90px 20px 0;
}
.home-about__bg {
  position: absolute;
  left: -15%;
  z-index: 0;
  visibility: hidden;
}
.home-about__bg img,
.home-about__bg video,
.home-about__bg iframe {
  width: 100%;
  max-width: none;
}
.home-about__container {
  position: relative;
  z-index: 1;
  max-width: 1196px;
  margin-inline: auto;
}
@media (width > 768px) {
  .home-about {
    padding: 216px 20px 0;
  }
  .home-about__bg {
    top: 220px;
    left: 20%;
    right: -20%;
  }
}

.home-mess__hgrp {
  padding-bottom: 32px;
  color: var(--color-white);
}
.home-mess__cont {
  padding-top: 32px;
}
@media (width > 768px) {
  .home-mess {
    display: grid;
    grid-template: "bnr hgrp" auto "bnr cont" auto/auto 434px;
    gap: 0 32px;
  }
  .home-mess__bnr {
    grid-area: bnr;
  }
  .home-mess__hgrp {
    align-self: flex-end;
    grid-area: hgrp;
    padding-bottom: 16px;
  }
  .home-mess__cont {
    grid-area: cont;
    padding-top: 0;
  }
}

.home-design {
  position: relative;
  padding: 80px 20px 0;
}
.home-design::before {
  content: "";
  position: absolute;
  inset: -15% -20% -10%;
  z-index: 0;
  pointer-events: none;
}
.home-design__container {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin-inline: auto;
}
@media (width > 768px) {
  .home-design {
    padding: 297px 20px 0;
  }
  .home-design::before {
    inset: calc(276px - 15%) -20% -10%;
    background-image: radial-gradient(rgb(255, 255, 255), rgba(255, 255, 255, 0));
    border-radius: 50%;
    filter: blur(50px);
    animation: mesh 10s ease-in infinite;
    rotate: -3deg;
  }
}
@media (width <= 768px) {
  .home-design::before {
    background: url("../images/home/bg-mobile-design.png") no-repeat center center/100% 100%;
  }
}

@keyframes mesh {
  0%, 100% {
    transform: skew(0deg, 0deg);
    rotate: -3deg;
    scale: 1 1;
  }
  25% {
    transform: skew(2deg, 6deg);
  }
  30% {
    scale: 1.1 1.2;
  }
  33% {
    rotate: -15deg;
  }
  50% {
    scale: 0.9 0.8;
  }
  66% {
    rotate: 10deg;
  }
  75% {
    transform: skew(-8deg, -5deg);
  }
  80% {
    scale: 1.2 1.3;
  }
}
.home-impact {
  position: relative;
  z-index: 5;
  padding: 79px 20px 0;
}
.home-impact__container {
  max-width: 1200px;
  margin-inline: auto;
}
@media (width > 768px) {
  .home-impact {
    padding: 158px 20px 0;
  }
}

.home-data {
  position: relative;
  z-index: 0;
  padding: 81px 20px 0;
}
.home-data::before {
  content: "";
  position: absolute;
  inset: calc(80px - 20%) -40% -50%;
  z-index: 0;
  pointer-events: none;
}
.home-data__container {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin-inline: auto;
}
@media (width > 768px) {
  .home-data {
    padding: 161px 20px 0;
  }
  .home-data::before {
    inset: calc(161px - 20%) -40% -80%;
    background-image: radial-gradient(rgb(15, 0, 166) 0%, rgba(15, 0, 166, 0.7) 50%, rgb(15, 0, 166) 100%);
    border-radius: 50%;
    filter: blur(200px);
    rotate: 20deg;
  }
}
@media (width <= 768px) {
  .home-data::before {
    background: url("../images/home/bg-mobile-data.png") no-repeat center center/100% 100%;
  }
}

.home-data-link {
  display: grid;
  grid-template-columns: 66px 1fr;
  height: 100%;
  border-bottom: 1px solid var(--color-white);
  border-right: 1px solid var(--color-white);
  color: var(--color-white);
  transition-duration: 0.3s;
  transition-property: background-color;
}
.home-data-link__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  border-right: 1px solid var(--color-white);
  transition-duration: 0.3s;
  transition-property: background-color;
}
.home-data-link__txt {
  align-self: center;
  padding: 18.5px 15px;
  transition-duration: 0.3s;
  transition-property: color;
}
@media (any-hover: hover) {
  .home-data-link:hover {
    background-color: var(--color-white);
  }
  .home-data-link:hover .home-data-link__icon {
    background-color: #17184b;
  }
  .home-data-link:hover .home-data-link__txt {
    color: #17184b;
  }
}
@media (width > 768px) {
  .home-data-link {
    min-height: 67px;
  }
  .home-data-link__txt {
    padding: 5px 16px;
  }
}

.home-info {
  position: relative;
  z-index: 1;
  padding: 80px 20px 0;
}
.home-info__container {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin-inline: auto;
}
@media (width > 768px) {
  .home-info {
    padding: 161px 20px 0;
  }
}

@keyframes marquee {
  0% {
    translate: 0% 0%;
  }
  100% {
    translate: -100% 0%;
  }
}
.home-marquee {
  display: flex;
  position: absolute;
  bottom: 70px;
  z-index: 5;
  width: 100%;
  overflow: hidden;
  font-family: "Jost",sans-serif;
  font-size: 70px;
  font-weight: bold;
  color: var(--color-white);
  white-space: nowrap;
  line-height: 1;
  mix-blend-mode: overlay;
}
.home-marquee span {
  display: block;
  padding-right: 0.5em;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-name: marquee;
  animation-timing-function: linear;
}
@media (width > 768px) {
  .home-marquee {
    bottom: 116px;
    font-size: 131px;
  }
}

.interview-hdr {
  position: relative;
  z-index: 0;
}
.interview-hdr__bg {
  position: relative;
  z-index: 0;
}
.interview-hdr__bg img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  object-position: top;
}
.interview-hdr__copy {
  position: absolute;
  top: 0;
  right: max(20px, var(--view-width) * 0.5 - 450px);
  z-index: 1;
  padding: 9px 8px;
  background-color: #fff;
  font-family: "Zen Old Mincho",serif;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
  writing-mode: vertical-rl;
  line-height: 1;
}
@media (width > 768px) {
  .interview-hdr__bg img {
    height: 700px;
  }
  .interview-hdr__copy {
    padding: 20px 0 15px;
    font-size: 36px;
    line-height: 1.8;
  }
}

.interview-anchor {
  position: relative;
  z-index: 1;
  padding-bottom: 58px;
  margin-top: -40px;
}
@media (width > 768px) {
  .interview-anchor {
    padding-bottom: 120px;
    margin-top: -60px;
  }
}

.interview-sechdr__sub {
  display: flex;
  position: relative;
  align-items: center;
  height: 1.6;
  padding: 0 0 0 5px;
  font-family: "Jost",sans-serif;
  font-size: 14px;
  font-style: italic;
  font-weight: 300;
}
.interview-sechdr__sub::before {
  content: "";
  position: absolute;
  left: -20px;
  width: 20px;
  height: 1px;
  background-color: currentcolor;
}
.interview-sechdr__name {
  padding-top: 3px;
  font-family: "Jost",sans-serif;
  font-size: 48px;
  font-style: italic;
  font-weight: 300;
  color: #ccc;
  line-height: 1.1;
}
@media (width > 768px) {
  .interview-sechdr {
    position: relative;
  }
  .interview-sechdr__sub {
    position: absolute;
    top: 38px;
    left: -54px;
    gap: 0 8px;
    padding: 0;
    font-size: 20px;
    white-space: nowrap;
    writing-mode: vertical-rl;
  }
  .interview-sechdr__sub::before {
    top: -40px;
    left: 19px;
    width: 1px;
    height: 32px;
  }
  .interview-sechdr__name {
    height: 1.1;
    padding-top: 0;
    font-size: 140px;
  }
}

.interview-insertimg {
  position: relative;
  padding-top: 128px;
  text-align: center;
}
.interview-insertimg picture {
  position: relative;
  z-index: 1;
}
.interview-insertimg::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background: url("../images/interview/bg-polygon02.svg") no-repeat left top/auto auto;
}
@media (width > 768px) {
  .interview-insertimg {
    padding-top: 66px;
    padding-bottom: 80px;
  }
  .interview-insertimg::after {
    position: absolute;
    inset: 146px 0 0;
    background-position: center center;
    background-size: cover;
  }
}
@media (width <= 768px) {
  .interview-insertimg {
    padding-bottom: 64px;
  }
  .interview-insertimg::after {
    top: 64px;
    bottom: 0;
    width: 100%;
  }
}

.js-fadein,
.-js-fadein {
  opacity: 0;
  visibility: hidden;
  translate: 0 50px;
  will-change: translate;
}

.js-txtup {
  overflow: hidden;
  visibility: hidden;
}
.js-txtup > span {
  display: inline-block;
  overflow: hidden;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
  vertical-align: bottom;
}
.js-txtup > span > span {
  display: inline-block;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
  vertical-align: bottom;
  will-change: translate;
}
.js-txtup.is-inview {
  visibility: visible;
}

.-js-txtup {
  overflow: hidden;
  visibility: hidden;
}
.-js-txtup > span {
  display: inline-block;
  overflow: hidden;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
  vertical-align: bottom;
}
.-js-txtup > span > span {
  display: inline-block;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
  vertical-align: bottom;
  will-change: translate;
}
.-js-txtup:is(.js-scroll-trigger.is-inview *) {
  visibility: visible;
}

[class*="hover:"] {
  transition-duration: 0.3s;
  transition-property: all;
}

img.u-img-ofi {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.js-scrollable .scroll-hint-icon {
  top: calc(50% - 35px);
  padding: 10px 5px 5px;
}
.js-scrollable .scroll-hint-icon::before {
  width: 30px;
  height: 30px;
}

.u-txt-ttb {
  writing-mode: vertical-rl;
}

.u-txt-hiv {
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
}

.u-outdent-1em {
  padding-left: 1em;
  text-indent: -1em;
}

#msta_langArea {
  display: none !important;
  visibility: hidden !important;
}

.pswp img {
  max-width: none;
  max-height: none;
}

.pswp__img {
  background-color: #fff;
}

.pointer-events-none {
  pointer-events: none;
}

.visible {
  visibility: visible;
}

.collapse {
  visibility: collapse;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.inset-0 {
  inset: 0px;
}

.bottom-\[17\%\] {
  bottom: 17%;
}

.bottom-\[18\.3\%\] {
  bottom: 18.3%;
}

.bottom-\[20\.3\%\] {
  bottom: 20.3%;
}

.left-\[11\.7\%\] {
  left: 11.7%;
}

.left-\[14\.3\%\] {
  left: 14.3%;
}

.left-\[2\%\] {
  left: 2%;
}

.left-\[20\.4\%\] {
  left: 20.4%;
}

.left-\[23\.5\%\] {
  left: 23.5%;
}

.left-\[32\.4\%\] {
  left: 32.4%;
}

.left-\[32\.5\%\] {
  left: 32.5%;
}

.left-\[40\%\] {
  left: 40%;
}

.right-\[18\.5\%\] {
  right: 18.5%;
}

.right-\[19\.2\%\] {
  right: 19.2%;
}

.right-\[30\.3\%\] {
  right: 30.3%;
}

.right-\[30\.5\%\] {
  right: 30.5%;
}

.right-\[48\.5\%\] {
  right: 48.5%;
}

.right-\[6\.3\%\] {
  right: 6.3%;
}

.top-\[12\%\] {
  top: 12%;
}

.top-\[25\.7\%\] {
  top: 25.7%;
}

.top-\[38\.5\%\] {
  top: 38.5%;
}

.top-\[39\.3\%\] {
  top: 39.3%;
}

.top-\[47\.9\%\] {
  top: 47.9%;
}

.top-\[57\.2\%\] {
  top: 57.2%;
}

.top-\[57\.5\%\] {
  top: 57.5%;
}

.top-\[60\.6\%\] {
  top: 60.6%;
}

.top-\[64\.3\%\] {
  top: 64.3%;
}

.top-\[66\.5\%\] {
  top: 66.5%;
}

.top-\[76\%\] {
  top: 76%;
}

.z-0 {
  z-index: 0;
}

.z-10 {
  z-index: 10;
}

.z-30 {
  z-index: 30;
}

.z-40 {
  z-index: 40;
}

.z-50 {
  z-index: 50;
}

.col-span-2 {
  grid-column: span 2 / span 2;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.-mt-2 {
  margin-top: -8px;
}

.mb-1 {
  margin-bottom: 4px;
}

.mb-10 {
  margin-bottom: 40px;
}

.mb-2 {
  margin-bottom: 8px;
}

.mb-3 {
  margin-bottom: 12px;
}

.mb-4 {
  margin-bottom: 16px;
}

.mb-5 {
  margin-bottom: 20px;
}

.mb-6 {
  margin-bottom: 24px;
}

.mb-7 {
  margin-bottom: 28px;
}

.mb-8 {
  margin-bottom: 32px;
}

.mb-9 {
  margin-bottom: 36px;
}

.mr-\[0\.4em\] {
  margin-right: 0.4em;
}

.mt-1 {
  margin-top: 4px;
}

.mt-10 {
  margin-top: 40px;
}

.mt-11 {
  margin-top: 44px;
}

.mt-12 {
  margin-top: 48px;
}

.mt-14 {
  margin-top: 56px;
}

.mt-15 {
  margin-top: 60px;
}

.mt-16 {
  margin-top: 64px;
}

.mt-19 {
  margin-top: 76px;
}

.mt-2 {
  margin-top: 8px;
}

.mt-20 {
  margin-top: 80px;
}

.mt-3 {
  margin-top: 12px;
}

.mt-4 {
  margin-top: 16px;
}

.mt-5 {
  margin-top: 20px;
}

.mt-6 {
  margin-top: 24px;
}

.mt-8 {
  margin-top: 32px;
}

.mt-9 {
  margin-top: 36px;
}

.mt-\[18px\] {
  margin-top: 18px;
}

.mt-lh-normal {
  margin-top: 1.9em;
}

.mt-lh-snug {
  margin-top: 1.6em;
}

.block {
  display: block;
}

.flex {
  display: flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.aspect-\[130\/113\] {
  aspect-ratio: 130/113;
}

.h-0 {
  height: 0px;
}

.h-\[26px\] {
  height: 26px;
}

.h-full {
  height: 100%;
}

.w-fit {
  width: -webkit-fit-content;
  width: fit-content;
}

.w-full {
  width: 100%;
}

.min-w-100 {
  min-width: 500px;
}

.min-w-120 {
  min-width: 600px;
}

.min-w-150 {
  min-width: 750px;
}

.min-w-200 {
  min-width: 1000px;
}

.min-w-205 {
  min-width: 1025px;
}

.max-w-150 {
  max-width: 750px;
}

.max-w-50 {
  max-width: 250px;
}

.max-w-\[528px\] {
  max-width: 528px;
}

.max-w-\[550px\] {
  max-width: 550px;
}

.max-w-\[570px\] {
  max-width: 570px;
}

.max-w-\[640px\] {
  max-width: 640px;
}

.flex-1 {
  flex: 1 1 0%;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.flex-grow-0 {
  flex-grow: 0;
}

.table-auto {
  table-layout: auto;
}

.border-collapse {
  border-collapse: collapse;
}

.-translate-x-4 {
  --tw-translate-x: -16px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

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

.flex-wrap {
  flex-wrap: wrap;
}

.items-end {
  align-items: flex-end;
}

.items-center {
  align-items: center;
}

.items-baseline {
  align-items: baseline;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.gap-4 {
  gap: 16px;
}

.gap-x-1 {
  column-gap: 4px;
}

.gap-x-15 {
  column-gap: 60px;
}

.gap-x-2 {
  column-gap: 8px;
}

.gap-x-3 {
  column-gap: 12px;
}

.gap-x-4 {
  column-gap: 16px;
}

.gap-x-6 {
  column-gap: 24px;
}

.gap-x-7 {
  column-gap: 28px;
}

.gap-x-\[0\.3em\] {
  column-gap: 0.3em;
}

.gap-y-10 {
  row-gap: 40px;
}

.gap-y-15 {
  row-gap: 60px;
}

.gap-y-4 {
  row-gap: 16px;
}

.gap-y-5 {
  row-gap: 20px;
}

.gap-y-6 {
  row-gap: 24px;
}

.gap-y-7 {
  row-gap: 28px;
}

.gap-y-8 {
  row-gap: 32px;
}

.gap-y-\[6\.5px\] {
  row-gap: 6.5px;
}

.gap-y-\[7px\] {
  row-gap: 7px;
}

.overflow-hidden {
  overflow: hidden;
}

.whitespace-nowrap {
  white-space: nowrap;
}

.text-nowrap {
  text-wrap: nowrap;
}

.border {
  border-width: 1px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-l {
  border-left-width: 1px;
}

.border-t {
  border-top-width: 1px;
}

.border-solid {
  border-style: solid;
}

.border-gray {
  --tw-border-opacity: 1;
  border-color: rgb(204 204 204 / var(--tw-border-opacity, 1));
}

.border-gray-dark {
  --tw-border-opacity: 1;
  border-color: rgb(102 102 102 / var(--tw-border-opacity, 1));
}

.border-navy {
  --tw-border-opacity: 1;
  border-color: rgb(23 24 75 / var(--tw-border-opacity, 1));
}

.border-primary {
  --tw-border-opacity: 1;
  border-color: rgb(23 24 75 / var(--tw-border-opacity, 1));
}

.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.border-b-white {
  --tw-border-opacity: 1;
  border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.border-r-white {
  --tw-border-opacity: 1;
  border-right-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.bg-blue-light {
  --tw-bg-opacity: 1;
  background-color: rgb(178 227 237 / var(--tw-bg-opacity, 1));
}

.bg-dark-navy {
  --tw-bg-opacity: 1;
  background-color: rgb(21 23 71 / var(--tw-bg-opacity, 1));
}

.bg-gray {
  --tw-bg-opacity: 1;
  background-color: rgb(204 204 204 / var(--tw-bg-opacity, 1));
}

.bg-gray-light {
  --tw-bg-opacity: 1;
  background-color: rgb(236 236 236 / var(--tw-bg-opacity, 1));
}

.bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(23 24 75 / var(--tw-bg-opacity, 1));
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-opacity-50 {
  --tw-bg-opacity: 0.5;
}

.bg-opacity-70 {
  --tw-bg-opacity: 0.7;
}

.object-cover {
  object-fit: cover;
}

.p-4 {
  padding: 16px;
}

.px-2 {
  padding-left: 8px;
  padding-right: 8px;
}

.px-3 {
  padding-left: 12px;
  padding-right: 12px;
}

.px-4 {
  padding-left: 16px;
  padding-right: 16px;
}

.px-6 {
  padding-left: 24px;
  padding-right: 24px;
}

.px-9 {
  padding-left: 36px;
  padding-right: 36px;
}

.px-\[0\.71em\] {
  padding-left: 0.71em;
  padding-right: 0.71em;
}

.px-\[10px\] {
  padding-left: 10px;
  padding-right: 10px;
}

.px-gutter {
  padding-left: 20px;
  padding-right: 20px;
}

.py-15 {
  padding-top: 60px;
  padding-bottom: 60px;
}

.py-16 {
  padding-top: 64px;
  padding-bottom: 64px;
}

.py-4 {
  padding-top: 16px;
  padding-bottom: 16px;
}

.py-6 {
  padding-top: 24px;
  padding-bottom: 24px;
}

.py-8 {
  padding-top: 32px;
  padding-bottom: 32px;
}

.pb-1 {
  padding-bottom: 4px;
}

.pb-10 {
  padding-bottom: 40px;
}

.pb-11 {
  padding-bottom: 44px;
}

.pb-12 {
  padding-bottom: 48px;
}

.pb-15 {
  padding-bottom: 60px;
}

.pb-16 {
  padding-bottom: 64px;
}

.pb-17 {
  padding-bottom: 68px;
}

.pb-2 {
  padding-bottom: 8px;
}

.pb-20 {
  padding-bottom: 80px;
}

.pb-3 {
  padding-bottom: 12px;
}

.pb-4 {
  padding-bottom: 16px;
}

.pb-5 {
  padding-bottom: 20px;
}

.pb-6 {
  padding-bottom: 24px;
}

.pb-7 {
  padding-bottom: 28px;
}

.pb-8 {
  padding-bottom: 32px;
}

.pb-9 {
  padding-bottom: 36px;
}

.pb-\[0\.2em\] {
  padding-bottom: 0.2em;
}

.pl-1 {
  padding-left: 4px;
}

.pl-1em {
  padding-left: 1em;
}

.pl-2em {
  padding-left: 2em;
}

.pl-3em {
  padding-left: 3em;
}

.pl-6 {
  padding-left: 24px;
}

.pl-8 {
  padding-left: 32px;
}

.pr-\[1em\] {
  padding-right: 1em;
}

.pt-1 {
  padding-top: 4px;
}

.pt-10 {
  padding-top: 40px;
}

.pt-15 {
  padding-top: 60px;
}

.pt-16 {
  padding-top: 64px;
}

.pt-17 {
  padding-top: 68px;
}

.pt-2 {
  padding-top: 8px;
}

.pt-21 {
  padding-top: 84px;
}

.pt-3 {
  padding-top: 12px;
}

.pt-4 {
  padding-top: 16px;
}

.pt-5 {
  padding-top: 20px;
}

.pt-6 {
  padding-top: 24px;
}

.pt-8 {
  padding-top: 32px;
}

.pt-9 {
  padding-top: 36px;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.font-base {
  font-family: "Zen Kaku Gothic New",sans-serif;
}

.font-jost {
  font-family: "Jost",sans-serif;
}

.font-serif {
  font-family: "Zen Old Mincho",serif;
}

.text-12 {
  font-size: 12px;
}

.text-14 {
  font-size: 14px;
}

.text-16 {
  font-size: 16px;
}

.text-18 {
  font-size: 18px;
}

.text-20 {
  font-size: 20px;
}

.text-22 {
  font-size: 22px;
}

.text-24 {
  font-size: 24px;
}

.text-26 {
  font-size: 26px;
}

.text-32 {
  font-size: 32px;
}

.text-40 {
  font-size: 40px;
}

.text-50 {
  font-size: 50px;
}

.text-72 {
  font-size: 72px;
}

.text-80 {
  font-size: 80px;
}

.text-base {
  font-size: 16px;
  font-weight: 500;
}

.text-caption {
  font-size: 14px;
  font-weight: 500;
}

.text-note {
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
}

.font-bold {
  font-weight: 700;
}

.font-light {
  font-weight: 300;
}

.font-medium {
  font-weight: 500;
}

.italic {
  font-style: italic;
}

.leading-0 {
  line-height: 0;
}

.leading-\[1\.1\] {
  line-height: 1.1;
}

.leading-\[1\.2\] {
  line-height: 1.2;
}

.leading-\[1\.3\] {
  line-height: 1.3;
}

.leading-\[1\.4\] {
  line-height: 1.4;
}

.leading-\[26px\] {
  line-height: 26px;
}

.leading-none {
  line-height: 1;
}

.leading-relaxed {
  line-height: 2.4;
}

.leading-snug {
  line-height: 1.6;
}

.leading-tight {
  line-height: 1.1;
}

.tracking-\[0\.015em\] {
  letter-spacing: 0.015em;
}

.tracking-\[0\.03em\] {
  letter-spacing: 0.03em;
}

.text-gold {
  --tw-text-opacity: 1;
  color: rgb(198 176 95 / var(--tw-text-opacity, 1));
}

.text-gray {
  --tw-text-opacity: 1;
  color: rgb(204 204 204 / var(--tw-text-opacity, 1));
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.underline {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.mix-blend-multiply {
  mix-blend-mode: multiply;
}

.outline {
  outline-style: solid;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition {
  transition-property: color, background-color, border-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.ease-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.hover\:no-underline:hover {
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}

.hover\:opacity-60:hover {
  opacity: 0.6;
}

@media (min-width: 560px) {
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 768px) {
  .md\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .md\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .md\:-mx-\[2px\] {
    margin-left: -2px;
    margin-right: -2px;
  }
  .md\:-mt-1 {
    margin-top: -4px;
  }
  .md\:-mt-32 {
    margin-top: -128px;
  }
  .md\:mb-0 {
    margin-bottom: 0px;
  }
  .md\:mb-10 {
    margin-bottom: 40px;
  }
  .md\:mb-16 {
    margin-bottom: 64px;
  }
  .md\:mb-2 {
    margin-bottom: 8px;
  }
  .md\:mb-6 {
    margin-bottom: 24px;
  }
  .md\:ml-auto {
    margin-left: auto;
  }
  .md\:mt-0 {
    margin-top: 0px;
  }
  .md\:mt-1 {
    margin-top: 4px;
  }
  .md\:mt-10 {
    margin-top: 40px;
  }
  .md\:mt-11 {
    margin-top: 44px;
  }
  .md\:mt-12 {
    margin-top: 48px;
  }
  .md\:mt-16 {
    margin-top: 64px;
  }
  .md\:mt-18 {
    margin-top: 72px;
  }
  .md\:mt-19 {
    margin-top: 76px;
  }
  .md\:mt-20 {
    margin-top: 80px;
  }
  .md\:mt-25 {
    margin-top: 100px;
  }
  .md\:mt-3 {
    margin-top: 12px;
  }
  .md\:mt-30 {
    margin-top: 120px;
  }
  .md\:mt-4 {
    margin-top: 16px;
  }
  .md\:mt-5 {
    margin-top: 20px;
  }
  .md\:mt-6 {
    margin-top: 24px;
  }
  .md\:mt-7 {
    margin-top: 28px;
  }
  .md\:mt-8 {
    margin-top: 32px;
  }
  .md\:mt-9 {
    margin-top: 36px;
  }
  .md\:mt-\[14px\] {
    margin-top: 14px;
  }
  .md\:mt-\[15px\] {
    margin-top: 15px;
  }
  .md\:mt-\[30px\] {
    margin-top: 30px;
  }
  .md\:flex {
    display: flex;
  }
  .md\:grid {
    display: grid;
  }
  .md\:hidden {
    display: none;
  }
  .md\:h-6 {
    height: 30px;
  }
  .md\:h-\[52px\] {
    height: 52px;
  }
  .md\:w-54 {
    width: 270px;
  }
  .md\:w-80 {
    width: 400px;
  }
  .md\:w-\[31\.18\%\] {
    width: 31.18%;
  }
  .md\:w-\[373px\] {
    width: 373px;
  }
  .md\:w-\[52px\] {
    width: 52px;
  }
  .md\:w-\[65\.21\%\] {
    width: 65.21%;
  }
  .md\:w-fit {
    width: -webkit-fit-content;
    width: fit-content;
  }
  .md\:max-w-\[570px\] {
    max-width: 570px;
  }
  .md\:flex-1 {
    flex: 1 1 0%;
  }
  .md\:flex-auto {
    flex: 1 1 auto;
  }
  .md\:flex-shrink {
    flex-shrink: 1;
  }
  .md\:flex-shrink-0 {
    flex-shrink: 0;
  }
  .md\:flex-grow-0 {
    flex-grow: 0;
  }
  .md\:-translate-x-30 {
    --tw-translate-x: -120px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:-translate-x-5 {
    --tw-translate-x: -20px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:translate-x-0 {
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .md\:items-center {
    align-items: center;
  }
  .md\:justify-start {
    justify-content: flex-start;
  }
  .md\:justify-between {
    justify-content: space-between;
  }
  .md\:gap-10 {
    gap: 40px;
  }
  .md\:gap-x-10 {
    column-gap: 40px;
  }
  .md\:gap-x-15 {
    column-gap: 60px;
  }
  .md\:gap-x-20 {
    column-gap: 80px;
  }
  .md\:gap-x-4 {
    column-gap: 16px;
  }
  .md\:gap-x-5 {
    column-gap: 20px;
  }
  .md\:gap-x-6 {
    column-gap: 24px;
  }
  .md\:gap-x-7 {
    column-gap: 28px;
  }
  .md\:gap-x-\[30px\] {
    column-gap: 30px;
  }
  .md\:gap-y-10 {
    row-gap: 40px;
  }
  .md\:gap-y-12 {
    row-gap: 48px;
  }
  .md\:gap-y-16 {
    row-gap: 64px;
  }
  .md\:gap-y-19 {
    row-gap: 76px;
  }
  .md\:gap-y-20 {
    row-gap: 80px;
  }
  .md\:gap-y-21 {
    row-gap: 84px;
  }
  .md\:gap-y-25 {
    row-gap: 100px;
  }
  .md\:gap-y-5 {
    row-gap: 20px;
  }
  .md\:gap-y-6 {
    row-gap: 24px;
  }
  .md\:self-end {
    align-self: flex-end;
  }
  .md\:p-10 {
    padding: 40px;
  }
  .md\:p-8 {
    padding: 32px;
  }
  .md\:px-0 {
    padding-left: 0px;
    padding-right: 0px;
  }
  .md\:px-15 {
    padding-left: 60px;
    padding-right: 60px;
  }
  .md\:px-6 {
    padding-left: 24px;
    padding-right: 24px;
  }
  .md\:px-8 {
    padding-left: 32px;
    padding-right: 32px;
  }
  .md\:pb-0 {
    padding-bottom: 0px;
  }
  .md\:pb-10 {
    padding-bottom: 40px;
  }
  .md\:pb-11 {
    padding-bottom: 44px;
  }
  .md\:pb-12 {
    padding-bottom: 48px;
  }
  .md\:pb-13 {
    padding-bottom: 52px;
  }
  .md\:pb-14 {
    padding-bottom: 56px;
  }
  .md\:pb-15 {
    padding-bottom: 60px;
  }
  .md\:pb-16 {
    padding-bottom: 64px;
  }
  .md\:pb-17 {
    padding-bottom: 68px;
  }
  .md\:pb-18 {
    padding-bottom: 72px;
  }
  .md\:pb-25 {
    padding-bottom: 100px;
  }
  .md\:pb-29 {
    padding-bottom: 116px;
  }
  .md\:pb-30 {
    padding-bottom: 120px;
  }
  .md\:pb-5 {
    padding-bottom: 20px;
  }
  .md\:pb-6 {
    padding-bottom: 24px;
  }
  .md\:pb-7 {
    padding-bottom: 28px;
  }
  .md\:pb-8 {
    padding-bottom: 32px;
  }
  .md\:pb-9 {
    padding-bottom: 36px;
  }
  .md\:pb-\[30px\] {
    padding-bottom: 30px;
  }
  .md\:pl-1 {
    padding-left: 4px;
  }
  .md\:pl-2 {
    padding-left: 8px;
  }
  .md\:pt-0 {
    padding-top: 0px;
  }
  .md\:pt-1 {
    padding-top: 4px;
  }
  .md\:pt-10 {
    padding-top: 40px;
  }
  .md\:pt-12 {
    padding-top: 48px;
  }
  .md\:pt-13 {
    padding-top: 52px;
  }
  .md\:pt-15 {
    padding-top: 60px;
  }
  .md\:pt-16 {
    padding-top: 64px;
  }
  .md\:pt-19 {
    padding-top: 76px;
  }
  .md\:pt-2 {
    padding-top: 8px;
  }
  .md\:pt-25 {
    padding-top: 100px;
  }
  .md\:pt-26 {
    padding-top: 104px;
  }
  .md\:pt-27 {
    padding-top: 108px;
  }
  .md\:pt-30 {
    padding-top: 120px;
  }
  .md\:pt-31 {
    padding-top: 124px;
  }
  .md\:pt-4 {
    padding-top: 16px;
  }
  .md\:pt-5 {
    padding-top: 20px;
  }
  .md\:pt-54 {
    padding-top: 216px;
  }
  .md\:pt-6 {
    padding-top: 24px;
  }
  .md\:pt-8 {
    padding-top: 32px;
  }
  .md\:text-center {
    text-align: center;
  }
  .md\:text-100 {
    font-size: 100px;
  }
  .md\:text-120 {
    font-size: 120px;
  }
  .md\:text-14 {
    font-size: 14px;
  }
  .md\:text-140 {
    font-size: 140px;
  }
  .md\:text-144 {
    font-size: 144px;
  }
  .md\:text-16 {
    font-size: 16px;
  }
  .md\:text-18 {
    font-size: 18px;
  }
  .md\:text-20 {
    font-size: 20px;
  }
  .md\:text-22 {
    font-size: 22px;
  }
  .md\:text-24 {
    font-size: 24px;
  }
  .md\:text-28 {
    font-size: 28px;
  }
  .md\:text-30 {
    font-size: 30px;
  }
  .md\:text-32 {
    font-size: 32px;
  }
  .md\:text-50 {
    font-size: 50px;
  }
  .md\:text-51 {
    font-size: 51px;
  }
  .md\:text-52 {
    font-size: 52px;
  }
  .md\:text-54 {
    font-size: 54px;
  }
  .md\:text-60 {
    font-size: 60px;
  }
  .md\:text-64 {
    font-size: 64px;
  }
  .md\:leading-\[38px\] {
    line-height: 38px;
  }
  .md\:leading-normal {
    line-height: 1.9;
  }
  .md\:leading-snug {
    line-height: 1.6;
  }
  .md\:tracking-\[0\.03em\] {
    letter-spacing: 0.03em;
  }
}

@media (min-width: 1024px) {
  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .lg\:row-span-2 {
    grid-row: span 2 / span 2;
  }
  .lg\:h-42 {
    height: 210px;
  }
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lg\:justify-between {
    justify-content: space-between;
  }
  .lg\:gap-x-0 {
    column-gap: 0px;
  }
  .lg\:gap-x-15 {
    column-gap: 60px;
  }
  .lg\:text-120 {
    font-size: 120px;
  }
}

@media (max-width: 767px) {
  .max-md\:mx-auto {
    margin-left: auto;
    margin-right: auto;
  }
  .max-md\:hidden {
    display: none;
  }
  .max-md\:min-w-110 {
    min-width: 550px;
  }
  .max-md\:min-w-140 {
    min-width: 700px;
  }
  .max-md\:min-w-80 {
    min-width: 400px;
  }
  .max-md\:min-w-90 {
    min-width: 450px;
  }
  .max-md\:max-w-48 {
    max-width: 240px;
  }
  .max-md\:pb-12 {
    padding-bottom: 48px;
  }
  .max-md\:pb-20 {
    padding-bottom: 80px;
  }
  .max-md\:text-14 {
    font-size: 14px;
  }
  .max-md\:text-16 {
    font-size: 16px;
  }
  .max-md\:text-28 {
    font-size: 28px;
  }
  .max-md\:leading-snug {
    line-height: 1.6;
  }
}/*# sourceMappingURL=maps/shared.css.map */