@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+TC:wght@100..900&family=Outfit:wght@100..900&display=swap");
/* ==========
  #CONFIG
  ========== */
:root {
  --font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif,
    Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    Liberation Mono, Courier New, monospace;
  --font-serif: ui-serif, Georgia, Cambria, Times New Roman, Times, serif;
}

body {
  font-family: var(--font-sans);
  line-height: 1.5;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
}

code,
kbd,
samp {
  font-family: var(--font-mono);
}

b,
strong {
  font-weight: bolder;
}

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

* {
  text-rendering: geometricPrecision;
  border: 0 solid;
}

body,
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
button,
optgroup,
select,
textarea,
pre {
  margin: 0;
}

td,
legend,
textarea,
input,
fieldset {
  padding: 0;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

ul {
  list-style: none;
}

hr {
  height: 0;
  color: inherit;
}

small {
  font-size: 80%;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  color: inherit;
  background-color: transparent;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

table {
  text-indent: 0;
  border-color: inherit;
}

button,
select {
  text-transform: none;
}

a,
[type=button],
[role=button],
button {
  cursor: pointer;
}

::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

:-moz-ui-invalid {
  box-shadow: none;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

summary {
  display: list-item;
}

progress {
  vertical-align: baseline;
}

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

img,
video {
  max-width: 100%;
  height: auto;
}

:root {
  --cr-main-1: #54ABC3;
  --cr-main-2: #E8F8FF;
  --cr-1: color-mix(in srgb, var(--cr-main-1), var(--cr-main-2) 20%);
  --cr-2: color-mix(in srgb, var(--cr-main-1), var(--cr-main-2) 35%);
  --cr-3: color-mix(in srgb, var(--cr-main-1), var(--cr-main-2) 50%);
  --cr-4: color-mix(in srgb, var(--cr-main-1), var(--cr-main-2) 65%);
  --cr-5: color-mix(in srgb, var(--cr-main-1), var(--cr-main-2) 80%);
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
}
select::-ms-expand {
  display: none;
}

input.error,
select.error,
textarea.error {
  border-color: #ed6d34;
}

label.error {
  display: inline-block;
  padding: 0.25rem 0.625rem;
  margin: 0.5rem 0 0;
  font-size: 1rem;
  color: #ffffff;
  background-color: #ed6d34;
  border-radius: 0.25rem;
}

@keyframes rotate1 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(30deg);
  }
}
@keyframes rotate2 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(-30deg);
  }
}
@keyframes headerDown {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes upDown {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(1.25rem);
  }
}
@keyframes progress {
  from {
    stroke-dashoffset: 360;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes bounceInLeft {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-187.5rem, 0, 0) scaleX(3);
    transform: translate3d(-187.5rem, 0, 0) scaleX(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(1.5625rem, 0, 0) scaleX(1);
    transform: translate3d(1.5625rem, 0, 0) scaleX(1);
  }
  75% {
    -webkit-transform: translate3d(-0.625rem, 0, 0) scaleX(0.98);
    transform: translate3d(-0.625rem, 0, 0) scaleX(0.98);
  }
  90% {
    -webkit-transform: translate3d(0.3125rem, 0, 0) scaleX(0.995);
    transform: translate3d(0.3125rem, 0, 0) scaleX(0.995);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
@keyframes arrow-right {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(0.625rem, 0, 0);
    transform: translate3d(0.625rem, 0, 0);
  }
}
@keyframes arrow-left {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-0.625rem, 0, 0);
    transform: translate3d(-0.625rem, 0, 0);
  }
}
@keyframes arrow-up {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0, -0.625rem, 0);
    transform: translate3d(0, -0.625rem, 0);
  }
}
@keyframes rotate360 {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, min(20%, 3.125rem), 0);
    transform: translate3d(0, min(20%, 3.125rem), 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, max(-20%, -3.125rem), 0);
    transform: translate3d(0, max(-20%, -3.125rem), 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp-2 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 3.125rem, 0);
    transform: translate3d(0, 3.125rem, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fade {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-left {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(6.25rem, 0, 0);
    transform: translate3d(6.25rem, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-right {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-6.25rem, 0, 0);
    transform: translate3d(-6.25rem, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes call {
  0% {
    transform: translateY(0) rotate(0deg);
  }
  10% {
    transform: translateY(-5px) rotate(0deg);
  }
  20% {
    transform: translateY(-5px) rotate(5deg);
  }
  30% {
    transform: translateY(-5px) rotate(0deg);
  }
  40% {
    transform: translateY(-5px) rotate(-5deg);
  }
  50% {
    transform: translateY(-5px) rotate(0deg);
  }
  60% {
    transform: translateY(-5px) rotate(5deg);
  }
  70% {
    transform: translateY(-5px) rotate(0deg);
  }
  80% {
    transform: translateY(-5px) rotate(-5deg);
  }
  90% {
    transform: translateY(-5px) rotate(0deg);
  }
  100% {
    transform: translateY(0) rotate(0deg);
  }
}
@keyframes dot_scale {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  90% {
    opacity: 0;
    transform: scale(2);
  }
  100% {
    opacity: 0;
    transform: scale(2);
  }
}
@keyframes banner-scale-2 {
  0% {
    opacity: 0;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    opacity: 1;
  }
}
@keyframes flipInY {
  0% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
  }
  40% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateY(-20deg);
    transform: perspective(400px) rotateY(-20deg);
  }
  60% {
    opacity: 1;
    -webkit-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(-5deg);
    transform: perspective(400px) rotateY(-5deg);
  }
  to {
    opacity: 1;
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes bird01 {
  0% {
    transform: skew(0deg) rotateX(0deg);
  }
  50% {
    transform: skew(27deg) rotateX(19deg);
  }
  100% {
    transform: skew(0deg) rotateX(0deg);
  }
}
@keyframes splitting_rotate3d {
  from {
    transform: rotate3d(1, -0.5, 0, 90deg);
  }
  to {
    transform: rotate3d(0, 0, 0, 0deg);
  }
}
@keyframes slide-in2 {
  0% {
    transform: translateY(-1em) rotate(-0.5turn) scale(0.5);
  }
  20%, 100% {
    transform: translateY(0) rotate(0deg) scale(1);
  }
}
@keyframes arrowLeft {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}
@keyframes cloud-1 {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(1.25rem);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes r-cloud-1 {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-1.875rem);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes cloud-2 {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-1.25rem) scale(0.95);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes cloud-3 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-1.25rem) scale(0.95);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes cloud-4 {
  0% {
    transform: translate(0);
  }
  50% {
    transform: translate(0.8rem, 1.5rem);
  }
  100% {
    transform: translate(0);
  }
}
@keyframes cloud-5 {
  0% {
    transform: translate(0);
  }
  50% {
    transform: translate(0.8rem, 1.5rem) rotate(5deg);
  }
  100% {
    transform: translate(0);
  }
}
@keyframes cloud-6 {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(10%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes cloud-7 {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-10%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes tree-1 {
  0% {
    transform: rotate(5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes tree-2 {
  0% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes car {
  0% {
    transform: translateX(100%);
  }
  25% {
    transform: translateX(75%) rotate(8deg);
  }
  50% {
    transform: translateX(50%) rotate(0deg);
  }
  75% {
    transform: translateX(25%) rotate(-3deg);
  }
  100% {
    transform: translateX(0%);
  }
}
@keyframes banner-scale {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
@keyframes round-scale {
  0% {
    transform: scale(1) rotate(0);
  }
  100% {
    transform: scale(0.5) rotate(360deg);
  }
}
@keyframes fade_scale {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.3);
  }
}
@keyframes rotate_360 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes dot-scale {
  0% {
    transform: scaleX(0);
  }
  100% {
    transform: scaleX(1);
  }
}
@keyframes moving {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
  }
}
@keyframes a-marquee-right {
  0% {
    transform: translateX(-125rem);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes a-marquee-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-125rem);
  }
}
@keyframes quartet-img-1 {
  0% {
    transform: translateY(-50%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes quartet-img-2 {
  0% {
    transform: translateX(50%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes quartet-img-3 {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes quartet-img-4 {
  0% {
    transform: translateY(50%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes scrollDown4 {
  0% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
  45% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
  55% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
  100% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}
@keyframes title-mask {
  0% {
    transform: scaleX(0);
    transform-origin: left;
  }
  20% {
    transform: scaleX(1);
    transform-origin: left;
  }
  50% {
    transform: scaleX(1);
    transform-origin: right;
  }
  70% {
    transform: scaleX(0);
    transform-origin: right;
  }
  100% {
    transform: scaleX(0) translateX(100%);
    transform-origin: right;
  }
}
@keyframes line-x {
  0% {
    transform: scaleX(0);
    transform-origin: left;
  }
  100% {
    transform: scaleX(1);
    transform-origin: left;
  }
}
/* header logo 生長動態：波浪遮罩由下往上推，帶出 M 的葉、髮束與字。
   位移值＝瀏覽器實測「波浪上緣 vs 該部位外框」的 y 差極值，整段時間才都在動 */
@keyframes logoWaveLeafL {
  from {
    transform: translate(-55px, 57px);
  }
  to {
    transform: translate(-55px, -28px);
  }
}
@keyframes logoWaveLeafR {
  from {
    transform: translate(-9px, 42px);
  }
  to {
    transform: translate(-9px, -44px);
  }
}
@keyframes logoWaveHairL {
  from {
    transform: translate(-105px, 42px);
  }
  to {
    transform: translate(-105px, -49px);
  }
}
@keyframes logoWaveHairR {
  from {
    transform: translate(-25px, 41px);
  }
  to {
    transform: translate(-25px, -49px);
  }
}
@keyframes logoWaveWord {
  from {
    transform: translate(-29px, 131px);
  }
  to {
    transform: translate(-29px, 40px);
  }
}
/* ==========
  #BREADCRUMB
  ========== */
.c-breadcrumb {
  position: relative;
  line-height: 1.5;
  z-index: 3;
  padding: 0 1.875rem;
  display: none;
}
.c-breadcrumb ul {
  margin: 0;
}
.c-breadcrumb li {
  font-size: 0.875rem;
}
@media (min-width: 1024px) {
  .c-breadcrumb {
    padding: 0 3.75rem;
  }
}

.c-breadcrumb__list {
  display: flex;
  align-items: center;
  padding: 1.125rem 0;
  white-space: nowrap;
  overflow-x: auto;
  margin: 0;
  list-style: none;
}
.c-breadcrumb__list li:first-child {
  cursor: pointer;
}
.c-breadcrumb__list li:first-child .c-breadcrumb__link {
  padding-left: 0;
}

.c-breadcrumb__item a {
  color: #999;
  transition: 0.2s;
}
.c-breadcrumb__item a:hover {
  color: #043b64;
  transition: 0.2s;
}
.c-breadcrumb__item {
  color: #999;
}
.c-breadcrumb__item .c-breadcrumb__link:after,
.c-breadcrumb__item .c-breadcrumb__text:after {
  content: "";
  position: absolute;
  top: 8px;
  right: -6px;
  width: 0.5rem;
  height: 0.75rem;
  color: #999;
  background: url(../img/icon/i-bread-next.svg) no-repeat left top;
}
.c-breadcrumb__item:last-child a {
  color: #043b64;
}
.c-breadcrumb__item:last-child .c-breadcrumb__link {
  cursor: default;
}
.c-breadcrumb__item:last-child .c-breadcrumb__link:after {
  display: none;
}
@media (min-width: 1024px) {
  .c-breadcrumb__item:last-child {
    padding-right: 0;
  }
  .c-breadcrumb__item:last-child .c-breadcrumb__link {
    padding-right: 0;
  }
}

.c-breadcrumb__link {
  position: relative;
  display: block;
  padding: 0 1.25rem;
  transition: color 0.2s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-breadcrumb__link:hover {
    color: #043b64;
  }
}
.c-breadcrumb__link img {
  display: block;
}

.c-breadcrumb__text {
  position: relative;
  display: block;
  padding: 0 1rem 0 0;
}

.fade-up,
.fade,
.fade-down,
.fade-left,
.fade-right,
.fade:not(.show),
.flipInX,
.flipInY,
.banner-animate,
.l-fade,
.fadeDown,
.l-fade-left,
.g-fade,
.g-fade-up,
.g-fade-left,
.g-fade-right,
.g-fadeDown {
  opacity: 0;
}

.g-line-x {
  transform: scaleX(0);
}

.no-js .l-fade,
.no-js .fade-up,
.no-js .fade,
.no-js .fade-left,
.no-js .fade-right,
.no-js .fade:not(.show),
.no-js .flipInX,
.no-js .flipInY,
.no-js .banner-animate,
.no-js .fadeDown,
.no-js .l-fade-left,
.no-js .g-fade,
.no-js .g-fade-up,
.no-js .g-fade-left,
.no-js .g-fade-right,
.no-js .g-fadeDown {
  opacity: 1;
}
.no-js .img-mask-anime .img-mask {
  transform: translateY(0);
}
.no-js .img-mask-anime .img-mask::after {
  display: none;
}
.no-js .g-line-x {
  transform: scaleX(1);
}
.no-js .char-reveal {
  opacity: 1;
}
.no-js .char-reveal .char {
  opacity: 1;
  translate: none;
  transition: none;
}

.img-mask-anime {
  overflow: hidden;
  display: block;
}
.img-mask-anime .img-mask {
  overflow: hidden;
  transition-timing-function: 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition-duration: 1.3s;
  transform: translateY(100%);
  transform-origin: left top;
  position: relative;
  display: block;
}
.img-mask-anime .img-mask::after {
  content: "";
  background-color: #DADADA;
  position: absolute;
  width: 101%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition-duration: 1.3s;
  transform: scaleY(1);
  transition-timing-function: 1s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transform-origin: top;
  transition-delay: 0.2s;
}
.img-mask-anime.a-play .img-mask {
  transform: translateY(0);
}
.img-mask-anime.a-play .img-mask::after {
  transform: scaleY(0);
}

.g-animate .g-fade,
.g-animate .g-fade-up,
.g-animate .g-fade-left,
.g-animate .g-fade-right,
.g-animate .g-fadeDown,
.g-animate .g-line-x {
  animation-duration: 1.2s;
  animation-fill-mode: forwards;
  animation-timing-function: ease;
  animation-iteration-count: 1;
}

.g-animate.a-play .g-fade {
  animation-name: fade;
}
.g-animate.a-play .g-fade-up {
  animation-name: fadeInUp;
}
.g-animate.a-play .g-fade-left {
  animation-name: fade-left;
}
.g-animate.a-play .g-fade-right {
  animation-name: fade-right;
}
.g-animate.a-play .g-fadeDown {
  animation-name: fadeDown;
}
.g-animate.a-play .g-line-x {
  animation-name: line-x;
}

.fade-up.a-play,
.fade-up.is-inview {
  animation-name: fadeInUp;
}

.fade.a-play,
.l-fade.is-inview {
  animation-name: fade;
}

.fade-left.a-play,
.fade-left.is-inview,
.l-fade-left.is-inview {
  animation-name: fade-left;
}

.fade-right.a-play,
.fade-right.is-inview {
  animation-name: fade-right;
}

.banner-animate.a-play,
.banner-animate.is-inview {
  animation-name: banner-scale;
}

.flipInX.a-play,
.flipInX.is-inview {
  animation-name: flipInX;
}

.flipInY.a-play,
.flipInY.is-inview {
  animation-name: flipInY;
}

.fade-down,
.fadeDown.is-inview {
  animation-name: fadeDown;
}

.a-play {
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease;
  animation-iteration-count: 1;
}

.is-inview {
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease;
  animation-iteration-count: 1;
}

.a-duration-13 {
  animation-duration: 1.3s;
}

.a-duration-15 {
  animation-duration: 1.5s;
}

.a-delay-1 {
  animation-delay: 0.1s;
}

.a-delay-2 {
  animation-delay: 0.2s;
}

.a-delay-3 {
  animation-delay: 0.3s;
}

.a-delay-4 {
  animation-delay: 0.4s;
}

.a-delay-5 {
  animation-delay: 0.5s;
}

.a-delay-6 {
  animation-delay: 0.6s;
}

.a-delay-7 {
  animation-delay: 0.7s;
}

.a-delay-8 {
  animation-delay: 0.8s;
}

.a-delay-9 {
  animation-delay: 0.9s;
}

.a-delay-10 {
  animation-delay: 0.1s;
}

.a-delay-11 {
  animation-delay: 0.11s;
}

.a-delay-12 {
  animation-delay: 0.12s;
}

.hover-scale img {
  transition: all 0.5s;
}
.hover-scale:hover img {
  transform: scale(1.1);
}

.hover-boxshadow {
  transition: all 0.5s;
}
.hover-boxshadow:hover {
  box-shadow: 0 0 9px rgba(0, 0, 0, 0.4);
}

@media (min-width: 768px) {
  .scroll-animate img {
    width: 125% !important;
    max-width: initial;
  }
  .scroll-animate.a-play img {
    animation: scroll-animate 8s linear 1 forwards;
  }
}

.s-scroll-animate img {
  width: 125% !important;
  max-width: initial;
}
.s-scroll-animate.a-play img {
  animation: scroll-animate 4s linear 1 forwards;
}

@keyframes scroll-animate {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  to {
    -webkit-transform: translateX(0%);
    transform: translateX(-20%);
  }
}
@keyframes fade {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes flash {
  0%, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes heart {
  0% {
    transform: scale(1);
  }
  14% {
    transform: scale(1.3);
  }
  28% {
    transform: scale(1);
  }
  42% {
    transform: scale(1.3);
  }
  70% {
    transform: scale(1);
  }
}
@keyframes jump {
  0%, to {
    animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
    transform: translateY(-25%);
  }
  50% {
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transform: translateY(0);
  }
}
@keyframes pulse {
  0% {
    transform: none;
  }
  50% {
    transform: scale(1.05);
  }
  to {
    transform: none;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(-1turn);
  }
  to {
    transform: none;
  }
}
@keyframes shake {
  0% {
    transform: none;
  }
  6.5% {
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    transform: none;
  }
}
@keyframes zoom {
  0% {
    transform: scale(0);
  }
  to {
    transform: none;
  }
}
@keyframes ping {
  75%, to {
    opacity: 0;
    transform: scale(2);
  }
}
@keyframes float {
  0% {
    transform: none;
  }
  50% {
    transform: translateY(-1.25rem);
  }
  to {
    transform: none;
  }
}
@keyframes circleAround {
  0% {
    transform: rotate(0deg) translateX(3px) rotate(0deg); /* 初始位置 */
  }
  100% {
    transform: rotate(360deg) translateX(3px) rotate(-360deg); /* 终止位置 */
  }
}
@keyframes circleAroundBig {
  0% {
    transform: rotate(0deg) translateX(10px) rotate(0deg); /* 初始位置 */
  }
  100% {
    transform: rotate(360deg) translateX(10px) rotate(-360deg);
  } /* 终止位置 */
}
@keyframes btnhovermaskstart {
  0% {
    transform: translate3d(-110%, 0, 1px);
  }
  to {
    transform: translateZ(1px);
  }
}
@keyframes btnHoverMaskEnd {
  0% {
    transform: translateZ(1px);
  }
  to {
    transform: translate3d(110%, 0, 1px);
  }
}
@keyframes btn_hover_mask_end {
  0% {
    transform: translateZ(1px);
  }
  to {
    transform: translate3d(110%, 0, 1px);
  }
}
@keyframes linkHoverArrow {
  0% {
    transform: translate3d(-150%, 0, 1px);
  }
  30% {
    transform: translate3d(-150%, 0, 1px);
  }
  to {
    transform: translateZ(1px);
  }
}
@keyframes bounceScaleDown02 {
  0% {
    transform: matrix(1.2, 0, 0, 1.2, 0, 0);
  }
  3.4% {
    transform: matrix(1.137, 0, 0, 1.119, 0, 0);
  }
  4.7% {
    transform: matrix(1.11, 0, 0, 1.08, 0, 0);
  }
  6.81% {
    transform: matrix(1.068, 0, 0, 1.021, 0, 0);
  }
  9.41% {
    transform: matrix(1.023, 0, 0, 0.966, 0, 0);
  }
  10.21% {
    transform: matrix(1.012, 0, 0, 0.955, 0, 0);
  }
  13.61% {
    transform: matrix(0.975, 0, 0, 0.934, 0, 0);
  }
  14.11% {
    transform: matrix(0.972, 0, 0, 0.934, 0, 0);
  }
  17.52% {
    transform: matrix(0.958, 0, 0, 0.952, 0, 0);
  }
  18.72% {
    transform: matrix(0.958, 0, 0, 0.963, 0, 0);
  }
  21.32% {
    transform: matrix(0.961, 0, 0, 0.986, 0, 0);
  }
  24.32% {
    transform: matrix(0.97, 0, 0, 1.008, 0, 0);
  }
  25.23% {
    transform: matrix(0.973, 0, 0, 1.012, 0, 0);
  }
  29.03% {
    transform: matrix(0.987, 0, 0, 1.021, 0, 0);
  }
  29.93% {
    transform: matrix(0.99, 0, 0, 1.02, 0, 0);
  }
  35.54% {
    transform: matrix(1.004, 0, 0, 1.008, 0, 0);
  }
  36.74% {
    transform: matrix(1.006, 0, 0, 1.004, 0, 0);
  }
  41.04% {
    transform: matrix(1.008, 0, 0, 0.996, 0, 0);
  }
  44.44% {
    transform: matrix(1.007, 0, 0, 0.994, 0, 0);
  }
  52.15% {
    transform: matrix(1.002, 0, 0, 0.999, 0, 0);
  }
  59.86% {
    transform: matrix(0.999, 0, 0, 1.002, 0, 0);
  }
  63.26% {
    transform: matrix(0.999, 0, 0, 1.002, 0, 0);
  }
  75.28% {
    transform: matrix(1, 0, 0, 0.999, 0, 0);
  }
  85.49% {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
  90.69% {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
  to {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
}
@keyframes bounceScaleDown05 {
  0% {
    transform: matrix(1.5, 0, 0, 1.5, 0, 0);
  }
  3.4% {
    transform: matrix(1.342, 0, 0, 1.297, 0, 0);
  }
  4.7% {
    transform: matrix(1.275, 0, 0, 1.2, 0, 0);
  }
  6.81% {
    transform: matrix(1.17, 0, 0, 1.054, 0, 0);
  }
  9.41% {
    transform: matrix(1.058, 0, 0, 0.916, 0, 0);
  }
  10.21% {
    transform: matrix(1.029, 0, 0, 0.887, 0, 0);
  }
  13.61% {
    transform: matrix(0.938, 0, 0, 0.834, 0, 0);
  }
  14.11% {
    transform: matrix(0.93, 0, 0, 0.835, 0, 0);
  }
  17.52% {
    transform: matrix(0.896, 0, 0, 0.88, 0, 0);
  }
  18.72% {
    transform: matrix(0.894, 0, 0, 0.906, 0, 0);
  }
  21.32% {
    transform: matrix(0.902, 0, 0, 0.965, 0, 0);
  }
  24.32% {
    transform: matrix(0.925, 0, 0, 1.02, 0, 0);
  }
  25.23% {
    transform: matrix(0.933, 0, 0, 1.031, 0, 0);
  }
  29.03% {
    transform: matrix(0.969, 0, 0, 1.052, 0, 0);
  }
  29.93% {
    transform: matrix(0.976, 0, 0, 1.051, 0, 0);
  }
  35.54% {
    transform: matrix(1.01, 0, 0, 1.019, 0, 0);
  }
  36.74% {
    transform: matrix(1.014, 0, 0, 1.011, 0, 0);
  }
  41.04% {
    transform: matrix(1.02, 0, 0, 0.989, 0, 0);
  }
  44.44% {
    transform: matrix(1.017, 0, 0, 0.984, 0, 0);
  }
  52.15% {
    transform: matrix(1.004, 0, 0, 0.997, 0, 0);
  }
  59.86% {
    transform: matrix(0.997, 0, 0, 1.005, 0, 0);
  }
  63.26% {
    transform: matrix(0.996, 0, 0, 1.004, 0, 0);
  }
  75.28% {
    transform: matrix(0.999, 0, 0, 0.998, 0, 0);
  }
  85.49% {
    transform: matrix(1.001, 0, 0, 1, 0, 0);
  }
  90.69% {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
  to {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
}
@keyframes bounceScaleUp02 {
  0% {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
  3.4% {
    transform: matrix(1.063, 0, 0, 1.081, 0, 0);
  }
  4.7% {
    transform: matrix(1.09, 0, 0, 1.12, 0, 0);
  }
  6.81% {
    transform: matrix(1.132, 0, 0, 1.179, 0, 0);
  }
  9.41% {
    transform: matrix(1.177, 0, 0, 1.234, 0, 0);
  }
  10.21% {
    transform: matrix(1.188, 0, 0, 1.245, 0, 0);
  }
  13.61% {
    transform: matrix(1.225, 0, 0, 1.266, 0, 0);
  }
  14.11% {
    transform: matrix(1.228, 0, 0, 1.266, 0, 0);
  }
  17.52% {
    transform: matrix(1.242, 0, 0, 1.248, 0, 0);
  }
  18.72% {
    transform: matrix(1.242, 0, 0, 1.237, 0, 0);
  }
  21.32% {
    transform: matrix(1.239, 0, 0, 1.214, 0, 0);
  }
  24.32% {
    transform: matrix(1.23, 0, 0, 1.192, 0, 0);
  }
  25.23% {
    transform: matrix(1.227, 0, 0, 1.188, 0, 0);
  }
  29.03% {
    transform: matrix(1.213, 0, 0, 1.179, 0, 0);
  }
  29.93% {
    transform: matrix(1.21, 0, 0, 1.18, 0, 0);
  }
  35.54% {
    transform: matrix(1.196, 0, 0, 1.192, 0, 0);
  }
  36.74% {
    transform: matrix(1.194, 0, 0, 1.196, 0, 0);
  }
  41.04% {
    transform: matrix(1.192, 0, 0, 1.204, 0, 0);
  }
  44.44% {
    transform: matrix(1.193, 0, 0, 1.206, 0, 0);
  }
  52.15% {
    transform: matrix(1.198, 0, 0, 1.201, 0, 0);
  }
  59.86% {
    transform: matrix(1.201, 0, 0, 1.198, 0, 0);
  }
  63.26% {
    transform: matrix(1.201, 0, 0, 1.198, 0, 0);
  }
  75.28% {
    transform: matrix(1.2, 0, 0, 1.201, 0, 0);
  }
  85.49% {
    transform: matrix(1.2, 0, 0, 1.2, 0, 0);
  }
  90.69% {
    transform: matrix(1.2, 0, 0, 1.2, 0, 0);
  }
  to {
    transform: matrix(1.2, 0, 0, 1.2, 0, 0);
  }
}
@keyframes bounceScaleUp05 {
  0% {
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
  3.4% {
    transform: matrix(1.158, 0, 0, 1.203, 0, 0);
  }
  4.7% {
    transform: matrix(1.225, 0, 0, 1.3, 0, 0);
  }
  6.81% {
    transform: matrix(1.33, 0, 0, 1.446, 0, 0);
  }
  9.41% {
    transform: matrix(1.442, 0, 0, 1.584, 0, 0);
  }
  10.21% {
    transform: matrix(1.471, 0, 0, 1.613, 0, 0);
  }
  13.61% {
    transform: matrix(1.562, 0, 0, 1.666, 0, 0);
  }
  14.11% {
    transform: matrix(1.57, 0, 0, 1.665, 0, 0);
  }
  17.52% {
    transform: matrix(1.604, 0, 0, 1.62, 0, 0);
  }
  18.72% {
    transform: matrix(1.606, 0, 0, 1.594, 0, 0);
  }
  21.32% {
    transform: matrix(1.598, 0, 0, 1.535, 0, 0);
  }
  24.32% {
    transform: matrix(1.575, 0, 0, 1.48, 0, 0);
  }
  25.23% {
    transform: matrix(1.567, 0, 0, 1.469, 0, 0);
  }
  29.03% {
    transform: matrix(1.531, 0, 0, 1.448, 0, 0);
  }
  29.93% {
    transform: matrix(1.524, 0, 0, 1.449, 0, 0);
  }
  35.54% {
    transform: matrix(1.49, 0, 0, 1.481, 0, 0);
  }
  36.74% {
    transform: matrix(1.486, 0, 0, 1.489, 0, 0);
  }
  41.04% {
    transform: matrix(1.48, 0, 0, 1.511, 0, 0);
  }
  44.44% {
    transform: matrix(1.483, 0, 0, 1.516, 0, 0);
  }
  52.15% {
    transform: matrix(1.496, 0, 0, 1.503, 0, 0);
  }
  59.86% {
    transform: matrix(1.503, 0, 0, 1.495, 0, 0);
  }
  63.26% {
    transform: matrix(1.504, 0, 0, 1.496, 0, 0);
  }
  75.28% {
    transform: matrix(1.501, 0, 0, 1.502, 0, 0);
  }
  85.49% {
    transform: matrix(1.499, 0, 0, 1.5, 0, 0);
  }
  90.69% {
    transform: matrix(1.5, 0, 0, 1.5, 0, 0);
  }
  to {
    transform: matrix(1.5, 0, 0, 1.5, 0, 0);
  }
}
@keyframes naviActiveIcon {
  0% {
    transform: scale(0);
  }
  3.33333% {
    transform: scale(0.49);
  }
  6.66667% {
    transform: scale(0.92);
  }
  10% {
    transform: scale(1.14);
  }
  13.33333% {
    transform: scale(1.18);
  }
  16.66667% {
    transform: scale(1.12);
  }
  20% {
    transform: scale(1.04);
  }
  23.33333% {
    transform: scale(0.99);
  }
  26.66667% {
    transform: scale(0.97);
  }
  30% {
    transform: scale(0.98);
  }
  33.33333% {
    transform: scale(0.99);
  }
  36.66667% {
    transform: scale(1);
  }
  40% {
    transform: scale(1);
  }
  43.33333% {
    transform: scale(1);
  }
  46.66667% {
    transform: scale(1);
  }
  50% {
    transform: scale(1);
  }
  53.33333% {
    transform: scale(1);
  }
  56.66667% {
    transform: scale(1);
  }
  60% {
    transform: scale(1);
  }
  63.33333% {
    transform: scale(1);
  }
  66.66667% {
    transform: scale(1);
  }
  70% {
    transform: scale(1);
  }
  73.33333% {
    transform: scale(1);
  }
  76.66667% {
    transform: scale(1);
  }
  80% {
    transform: scale(1);
  }
  83.33333% {
    transform: scale(1);
  }
  86.66667% {
    transform: scale(1);
  }
  90% {
    transform: scale(1);
  }
  93.33333% {
    transform: scale(1);
  }
  96.66667% {
    transform: scale(1);
  }
  to {
    transform: scale(1);
  }
}
@keyframes itemActive {
  0% {
    transform: translate3d(0, 25%, 0);
  }
  3.33333% {
    transform: translate3d(0, 12.64%, 0);
  }
  6.66667% {
    transform: translate3d(0, 1.89%, 0);
  }
  10% {
    transform: translate3d(0, -3.59%, 0);
  }
  13.33333% {
    transform: translate3d(0, -4.45%, 0);
  }
  16.66667% {
    transform: translate3d(0, -2.94%, 0);
  }
  20% {
    transform: translate3d(0, -1.03%, 0);
  }
  23.33333% {
    transform: translate3d(0, 0.24%, 0);
  }
  26.66667% {
    transform: translate3d(0, 0.69%, 0);
  }
  30% {
    transform: translate3d(0, 0.59%, 0);
  }
  33.33333% {
    transform: translate3d(0, 0.3%, 0);
  }
  36.66667% {
    transform: translate3d(0, 0.04%, 0);
  }
  40% {
    transform: translate3d(0, -0.09%, 0);
  }
  43.33333% {
    transform: translate3d(0, -0.11%, 0);
  }
  46.66667% {
    transform: translate3d(0, -0.07%, 0);
  }
  50% {
    transform: translate3d(0, -0.02%, 0);
  }
  53.33333% {
    transform: translate3d(0, 0.01%, 0);
  }
  56.66667% {
    transform: translate3d(0, 0.02%, 0);
  }
  60% {
    transform: translate3d(0, 0.01%, 0);
  }
  63.33333% {
    transform: translate3d(0, 0.01%, 0);
  }
  66.66667% {
    transform: translateZ(0);
  }
  70% {
    transform: translateZ(0);
  }
  73.33333% {
    transform: translateZ(0);
  }
  76.66667% {
    transform: translateZ(0);
  }
  80% {
    transform: translateZ(0);
  }
  83.33333% {
    transform: translateZ(0);
  }
  86.66667% {
    transform: translateZ(0);
  }
  90% {
    transform: translateZ(0);
  }
  93.33333% {
    transform: translateZ(0);
  }
  96.66667% {
    transform: translateZ(0);
  }
  to {
    transform: translateZ(0);
  }
}
/* =====================================================
   大標逐字浮現（共用）
   每行包一層 .line 當遮罩，行內逐字包 .char 並帶 --i 序號，字從行底浮上來。
   拆字由 app.js 的 splitChars 做：掛 .char-reveal 會自動拆並加 .is-ready，
   其他要沿用這個效果但自己控觸發的（例如首頁 banner 標語吃 .is-active），
   就自己呼叫 splitChars，樣式 @include 下面兩個 mixin。
   ===================================================== */
.char-reveal .line {
  display: block;
  overflow: hidden;
}
.char-reveal .char {
  display: inline-block;
  opacity: 0;
  translate: 0 100%;
  transition: opacity 0.35s ease, translate 0.35s ease;
}
.char-reveal {
  opacity: 0;
}
.char-reveal.is-ready {
  opacity: 1;
}
.char-reveal.a-play .char {
  opacity: 1;
  translate: 0 0;
  transition: opacity 0.5s ease calc(var(--i) * 0.03s), translate 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) calc(var(--i) * 0.03s);
}

@media (prefers-reduced-motion: reduce) {
  .char-reveal,
  .char-reveal.is-ready {
    opacity: 1;
  }
  .char-reveal .char,
  .char-reveal.a-play .char {
    opacity: 1;
    translate: none;
    transition: none;
  }
}
/* =====================================================
   卡片列表依序出場（共用）
   卡片本體掛 .fade-up（共用 waypoint 85% / revealInView，往上捲會收回），
   這個 mixin 只補「同一列由左至右錯開」的延遲，每列都從 0 重新起算。
   用法：容器在每個斷點 include 該階的欄數 ——
     .xxx-list {
       @include stagger-cols(1);
       @media (min-width: 768px) { @include stagger-cols(3); }
     }
   欄數變了就要重 include 一次：同特異度後寫的贏，不重寫會殘留上一階的
   循環，順序就亂掉。（做法同新聞卡片的 a-delay-N，那邊欄數是 js 算的，
   因為有分類篩選要重排；沒有篩選的列表用這個純 CSS 版就夠）
   ===================================================== */
html {
  font-size: clamp(16px, 0.8333333333vw, 21px);
  color: #222222;
}
@media (max-width: 1440px) {
  html {
    font-size: 16px;
  }
}

body {
  line-height: 1.75;
}
@media (min-width: 1600px) {
  body {
    font-size: 1.125rem;
  }
}
body {
  font-family: "Noto Sans TC", serif;
}

.edit-img {
  text-align: center;
}
.edit-img img {
  display: inline-block;
}

.img {
  position: relative;
  font-size: 0;
}

.img > span {
  width: 100%;
  height: 100%;
  position: absolute;
}

.clear:after {
  display: block;
  height: 0;
  clear: both;
  content: "";
  visibility: hidden;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.o-hidden {
  overflow: hidden;
}

.x-hidden {
  overflow-x: hidden;
}

.o-auto {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.clear:after {
  display: block;
  height: 0;
  clear: both;
  content: "";
  visibility: hidden;
}

.img-object {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.page-link-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.lang-list-box {
  display: block;
  opacity: 0;
  pointer-events: none;
  transition: all 0.5s ease;
  position: absolute;
  background-color: rgb(255, 255, 255);
  width: 100%;
  max-width: 100%;
  text-align: center;
  padding: 0.625rem 0;
  z-index: 2;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.3);
  top: 100%;
}
.lang-list-box .lang-list {
  display: block;
  width: 100%;
  padding: 5px 0;
  font-weight: 500;
}
.lang-list-box .lang-list:hover, .lang-list-box .lang-list.active {
  color: #043b64;
}
.lang-list-box:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 6px 7px 6px;
  border-color: transparent transparent rgb(255, 255, 255) transparent;
  position: absolute;
  left: 50%;
  top: -7px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.lang-list-box.active {
  opacity: 1;
  pointer-events: auto;
}

.table-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.table-col {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%;
}

@media (min-width: 40rem) {
  .edit-outer .row {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}
.radius-20 {
  border-radius: 1.25rem;
  overflow: hidden;
}

.overview-table {
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.border-collapse table,
.border-collapse th,
.border-collapse td {
  border-collapse: collapse;
}

.img-full img,
.img-full svg {
  width: 100%;
}
.img-full svg {
  height: auto;
}

/* The container must be positioned relative: */
.custom-select {
  position: relative;
  display: flex;
  flex-direction: column;
}
.custom-select #xsubject-error {
  order: 4;
  width: max-content;
}

.custom-select select {
  opacity: 0;
  position: absolute;
}

.youtube-box {
  position: relative;
}
.youtube-box span {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.youtube-box span iframe {
  width: 100%;
  height: 100%;
}

.trs {
  transition: all 0.5s;
}

.svg-hover-fff path {
  transition: all 0.5s;
}
.svg-hover-fff:hover path {
  stroke: #fff !important;
}

.dot-54ABC3 {
  list-style: disc;
}
.dot-54ABC3 li::marker {
  color: #54abc3;
}

.fs-en {
  font-family: "Inter", serif;
}

.fs-en-des {
  font-family: "Inter", sans-serif;
}

.fs-tw-title {
  font-family: "Noto Serif TC", serif;
}

.default-dot ul {
  margin-left: 0;
}
.default-dot li {
  padding-left: 1rem;
  position: relative;
}
.default-dot li:before {
  content: "";
  position: absolute;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 0.125rem;
  left: 0;
  top: 0.375rem;
  background-color: #043b64;
}
.default-dot li:not(:last-child) {
  margin-bottom: 0.625rem;
}

.line-grow {
  display: block;
  width: 1px;
  height: 0;
  background: #dddddd;
}

ol {
  list-style: decimal !important;
}
ol li {
  padding-left: 5px !important;
}

ul li::marker {
  font-size: 1rem;
  color: #043b64 !important;
  left: -1px;
  position: relative;
}

.edit-outer,
.container {
  overflow: visible;
}
.edit-outer ol,
.container ol {
  list-style: decimal !important;
  padding-left: 1.5rem !important;
}
.edit-outer ul,
.container ul {
  list-style: outside !important;
  padding-left: 1.5rem !important;
}
.edit-outer li::marker,
.container li::marker {
  width: 6px !important;
  height: 6px !important;
  border-radius: 3px !important;
}
@media (hover: hover) {
  .edit-outer a,
  .container a {
    color: #043b64;
    text-decoration: underline;
    transition: all 0.3s;
  }
  .edit-outer a:hover,
  .container a:hover {
    text-decoration: none;
  }
}
@media (hover: none) {
  .edit-outer a,
  .container a {
    color: #043b64;
  }
}
.edit-outer img,
.container img {
  margin: 0 auto;
}

.column {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media (min-width: 640px) {
  .column {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

/* ==========
  #MODAL
  ========== */
.c-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  -ms-overflow-style: none;
  z-index: 1000;
}
.c-modal::-webkit-scrollbar {
  display: none;
}

.c-modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

.c-modal__main {
  display: flex;
  align-items: center;
  max-width: 1152px;
}
@media screen and (orientation: portrait) {
  .c-modal__main {
    margin: 0 1.875rem;
  }
}
@media screen and (orientation: landscape) {
  .c-modal__main {
    margin: 3.75rem 1.875rem;
  }
}
@media (min-width: 1280px) {
  .c-modal__main {
    margin-left: 0;
    margin-right: 0;
    margin: 0 auto;
  }
}
.c-modal__main:before {
  display: block;
  height: 100vh;
  content: "";
}

.c-modal__content {
  position: relative;
  width: 100%;
}

.c-modal__btn {
  position: absolute;
  width: 1.875rem;
  height: 1.875rem;
  transition: transform 0.3s ease;
  right: 1.875rem;
  top: 1.875rem;
}
@media (min-width: 1024px) {
  .c-modal__btn {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.c-modal__btn:before, .c-modal__btn:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.75rem;
  height: 0.125rem;
  background: #ffffff;
  transition: background-color 0.3s ease;
}
@media (min-width: 768px) {
  .c-modal__btn:before, .c-modal__btn:after {
    width: 1.25rem;
  }
}
.c-modal__btn:before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-modal__btn:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-modal__btn:hover {
    transform: rotate(90deg);
  }
}

/* ==========
  #VIDEO MODAL（影音彈窗，樣式比照 .team-modal）
  ========== */
.video-modal__box {
  position: relative;
  width: 100%;
}
.video-modal__box .video-container {
  border-radius: 1.25rem;
  background: #000000;
  overflow: hidden;
}

.video-modal__close {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  width: 2.5rem;
  height: 2.5rem;
  z-index: 2;
  cursor: pointer;
  transition: transform 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .video-modal__close:hover {
    transform: rotate(90deg);
  }
}
@media (min-width: 1024px) {
  .video-modal__close {
    top: -3.75rem;
    right: -3.75rem;
    width: 3.75rem;
    height: 3.75rem;
  }
}
.video-modal__close img {
  display: block;
  width: 100%;
  height: 100%;
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ==========
  #PLUGIN
  ========== */
[data-aos][data-aos][data-aos-duration="50"],
body[data-aos-duration="50"] [data-aos] {
  transition-duration: 50ms;
}

[data-aos][data-aos][data-aos-delay="50"],
body[data-aos-delay="50"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="50"].aos-animate,
body[data-aos-delay="50"] [data-aos].aos-animate {
  transition-delay: 50ms;
}

[data-aos][data-aos][data-aos-duration="100"],
body[data-aos-duration="100"] [data-aos] {
  transition-duration: 0.1s;
}

[data-aos][data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
  transition-delay: 0.1s;
}

[data-aos][data-aos][data-aos-duration="150"],
body[data-aos-duration="150"] [data-aos] {
  transition-duration: 0.15s;
}

[data-aos][data-aos][data-aos-delay="150"],
body[data-aos-delay="150"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="150"].aos-animate,
body[data-aos-delay="150"] [data-aos].aos-animate {
  transition-delay: 0.15s;
}

[data-aos][data-aos][data-aos-duration="200"],
body[data-aos-duration="200"] [data-aos] {
  transition-duration: 0.2s;
}

[data-aos][data-aos][data-aos-delay="200"],
body[data-aos-delay="200"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="200"].aos-animate,
body[data-aos-delay="200"] [data-aos].aos-animate {
  transition-delay: 0.2s;
}

[data-aos][data-aos][data-aos-duration="250"],
body[data-aos-duration="250"] [data-aos] {
  transition-duration: 0.25s;
}

[data-aos][data-aos][data-aos-delay="250"],
body[data-aos-delay="250"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="250"].aos-animate,
body[data-aos-delay="250"] [data-aos].aos-animate {
  transition-delay: 0.25s;
}

[data-aos][data-aos][data-aos-duration="300"],
body[data-aos-duration="300"] [data-aos] {
  transition-duration: 0.3s;
}

[data-aos][data-aos][data-aos-delay="300"],
body[data-aos-delay="300"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="300"].aos-animate,
body[data-aos-delay="300"] [data-aos].aos-animate {
  transition-delay: 0.3s;
}

[data-aos][data-aos][data-aos-duration="350"],
body[data-aos-duration="350"] [data-aos] {
  transition-duration: 0.35s;
}

[data-aos][data-aos][data-aos-delay="350"],
body[data-aos-delay="350"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="350"].aos-animate,
body[data-aos-delay="350"] [data-aos].aos-animate {
  transition-delay: 0.35s;
}

[data-aos][data-aos][data-aos-duration="400"],
body[data-aos-duration="400"] [data-aos] {
  transition-duration: 0.4s;
}

[data-aos][data-aos][data-aos-delay="400"],
body[data-aos-delay="400"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="400"].aos-animate,
body[data-aos-delay="400"] [data-aos].aos-animate {
  transition-delay: 0.4s;
}

[data-aos][data-aos][data-aos-duration="450"],
body[data-aos-duration="450"] [data-aos] {
  transition-duration: 0.45s;
}

[data-aos][data-aos][data-aos-delay="450"],
body[data-aos-delay="450"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="450"].aos-animate,
body[data-aos-delay="450"] [data-aos].aos-animate {
  transition-delay: 0.45s;
}

[data-aos][data-aos][data-aos-duration="500"],
body[data-aos-duration="500"] [data-aos] {
  transition-duration: 0.5s;
}

[data-aos][data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
  transition-delay: 0.5s;
}

[data-aos][data-aos][data-aos-duration="550"],
body[data-aos-duration="550"] [data-aos] {
  transition-duration: 0.55s;
}

[data-aos][data-aos][data-aos-delay="550"],
body[data-aos-delay="550"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="550"].aos-animate,
body[data-aos-delay="550"] [data-aos].aos-animate {
  transition-delay: 0.55s;
}

[data-aos][data-aos][data-aos-duration="600"],
body[data-aos-duration="600"] [data-aos] {
  transition-duration: 0.6s;
}

[data-aos][data-aos][data-aos-delay="600"],
body[data-aos-delay="600"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="600"].aos-animate,
body[data-aos-delay="600"] [data-aos].aos-animate {
  transition-delay: 0.6s;
}

[data-aos][data-aos][data-aos-duration="650"],
body[data-aos-duration="650"] [data-aos] {
  transition-duration: 0.65s;
}

[data-aos][data-aos][data-aos-delay="650"],
body[data-aos-delay="650"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="650"].aos-animate,
body[data-aos-delay="650"] [data-aos].aos-animate {
  transition-delay: 0.65s;
}

[data-aos][data-aos][data-aos-duration="700"],
body[data-aos-duration="700"] [data-aos] {
  transition-duration: 0.7s;
}

[data-aos][data-aos][data-aos-delay="700"],
body[data-aos-delay="700"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="700"].aos-animate,
body[data-aos-delay="700"] [data-aos].aos-animate {
  transition-delay: 0.7s;
}

[data-aos][data-aos][data-aos-duration="750"],
body[data-aos-duration="750"] [data-aos] {
  transition-duration: 0.75s;
}

[data-aos][data-aos][data-aos-delay="750"],
body[data-aos-delay="750"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="750"].aos-animate,
body[data-aos-delay="750"] [data-aos].aos-animate {
  transition-delay: 0.75s;
}

[data-aos][data-aos][data-aos-duration="800"],
body[data-aos-duration="800"] [data-aos] {
  transition-duration: 0.8s;
}

[data-aos][data-aos][data-aos-delay="800"],
body[data-aos-delay="800"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="800"].aos-animate,
body[data-aos-delay="800"] [data-aos].aos-animate {
  transition-delay: 0.8s;
}

[data-aos][data-aos][data-aos-duration="850"],
body[data-aos-duration="850"] [data-aos] {
  transition-duration: 0.85s;
}

[data-aos][data-aos][data-aos-delay="850"],
body[data-aos-delay="850"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="850"].aos-animate,
body[data-aos-delay="850"] [data-aos].aos-animate {
  transition-delay: 0.85s;
}

[data-aos][data-aos][data-aos-duration="900"],
body[data-aos-duration="900"] [data-aos] {
  transition-duration: 0.9s;
}

[data-aos][data-aos][data-aos-delay="900"],
body[data-aos-delay="900"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="900"].aos-animate,
body[data-aos-delay="900"] [data-aos].aos-animate {
  transition-delay: 0.9s;
}

[data-aos][data-aos][data-aos-duration="950"],
body[data-aos-duration="950"] [data-aos] {
  transition-duration: 0.95s;
}

[data-aos][data-aos][data-aos-delay="950"],
body[data-aos-delay="950"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="950"].aos-animate,
body[data-aos-delay="950"] [data-aos].aos-animate {
  transition-delay: 0.95s;
}

[data-aos][data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
  transition-duration: 1s;
}

[data-aos][data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
  transition-delay: 1s;
}

[data-aos][data-aos][data-aos-duration="1050"],
body[data-aos-duration="1050"] [data-aos] {
  transition-duration: 1.05s;
}

[data-aos][data-aos][data-aos-delay="1050"],
body[data-aos-delay="1050"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1050"].aos-animate,
body[data-aos-delay="1050"] [data-aos].aos-animate {
  transition-delay: 1.05s;
}

[data-aos][data-aos][data-aos-duration="1100"],
body[data-aos-duration="1100"] [data-aos] {
  transition-duration: 1.1s;
}

[data-aos][data-aos][data-aos-delay="1100"],
body[data-aos-delay="1100"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1100"].aos-animate,
body[data-aos-delay="1100"] [data-aos].aos-animate {
  transition-delay: 1.1s;
}

[data-aos][data-aos][data-aos-duration="1150"],
body[data-aos-duration="1150"] [data-aos] {
  transition-duration: 1.15s;
}

[data-aos][data-aos][data-aos-delay="1150"],
body[data-aos-delay="1150"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1150"].aos-animate,
body[data-aos-delay="1150"] [data-aos].aos-animate {
  transition-delay: 1.15s;
}

[data-aos][data-aos][data-aos-duration="1200"],
body[data-aos-duration="1200"] [data-aos] {
  transition-duration: 1.2s;
}

[data-aos][data-aos][data-aos-delay="1200"],
body[data-aos-delay="1200"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1200"].aos-animate,
body[data-aos-delay="1200"] [data-aos].aos-animate {
  transition-delay: 1.2s;
}

[data-aos][data-aos][data-aos-duration="1250"],
body[data-aos-duration="1250"] [data-aos] {
  transition-duration: 1.25s;
}

[data-aos][data-aos][data-aos-delay="1250"],
body[data-aos-delay="1250"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1250"].aos-animate,
body[data-aos-delay="1250"] [data-aos].aos-animate {
  transition-delay: 1.25s;
}

[data-aos][data-aos][data-aos-duration="1300"],
body[data-aos-duration="1300"] [data-aos] {
  transition-duration: 1.3s;
}

[data-aos][data-aos][data-aos-delay="1300"],
body[data-aos-delay="1300"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1300"].aos-animate,
body[data-aos-delay="1300"] [data-aos].aos-animate {
  transition-delay: 1.3s;
}

[data-aos][data-aos][data-aos-duration="1350"],
body[data-aos-duration="1350"] [data-aos] {
  transition-duration: 1.35s;
}

[data-aos][data-aos][data-aos-delay="1350"],
body[data-aos-delay="1350"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1350"].aos-animate,
body[data-aos-delay="1350"] [data-aos].aos-animate {
  transition-delay: 1.35s;
}

[data-aos][data-aos][data-aos-duration="1400"],
body[data-aos-duration="1400"] [data-aos] {
  transition-duration: 1.4s;
}

[data-aos][data-aos][data-aos-delay="1400"],
body[data-aos-delay="1400"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1400"].aos-animate,
body[data-aos-delay="1400"] [data-aos].aos-animate {
  transition-delay: 1.4s;
}

[data-aos][data-aos][data-aos-duration="1450"],
body[data-aos-duration="1450"] [data-aos] {
  transition-duration: 1.45s;
}

[data-aos][data-aos][data-aos-delay="1450"],
body[data-aos-delay="1450"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1450"].aos-animate,
body[data-aos-delay="1450"] [data-aos].aos-animate {
  transition-delay: 1.45s;
}

[data-aos][data-aos][data-aos-duration="1500"],
body[data-aos-duration="1500"] [data-aos] {
  transition-duration: 1.5s;
}

[data-aos][data-aos][data-aos-delay="1500"],
body[data-aos-delay="1500"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1500"].aos-animate,
body[data-aos-delay="1500"] [data-aos].aos-animate {
  transition-delay: 1.5s;
}

[data-aos][data-aos][data-aos-duration="1550"],
body[data-aos-duration="1550"] [data-aos] {
  transition-duration: 1.55s;
}

[data-aos][data-aos][data-aos-delay="1550"],
body[data-aos-delay="1550"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1550"].aos-animate,
body[data-aos-delay="1550"] [data-aos].aos-animate {
  transition-delay: 1.55s;
}

[data-aos][data-aos][data-aos-duration="1600"],
body[data-aos-duration="1600"] [data-aos] {
  transition-duration: 1.6s;
}

[data-aos][data-aos][data-aos-delay="1600"],
body[data-aos-delay="1600"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1600"].aos-animate,
body[data-aos-delay="1600"] [data-aos].aos-animate {
  transition-delay: 1.6s;
}

[data-aos][data-aos][data-aos-duration="1650"],
body[data-aos-duration="1650"] [data-aos] {
  transition-duration: 1.65s;
}

[data-aos][data-aos][data-aos-delay="1650"],
body[data-aos-delay="1650"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1650"].aos-animate,
body[data-aos-delay="1650"] [data-aos].aos-animate {
  transition-delay: 1.65s;
}

[data-aos][data-aos][data-aos-duration="1700"],
body[data-aos-duration="1700"] [data-aos] {
  transition-duration: 1.7s;
}

[data-aos][data-aos][data-aos-delay="1700"],
body[data-aos-delay="1700"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1700"].aos-animate,
body[data-aos-delay="1700"] [data-aos].aos-animate {
  transition-delay: 1.7s;
}

[data-aos][data-aos][data-aos-duration="1750"],
body[data-aos-duration="1750"] [data-aos] {
  transition-duration: 1.75s;
}

[data-aos][data-aos][data-aos-delay="1750"],
body[data-aos-delay="1750"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1750"].aos-animate,
body[data-aos-delay="1750"] [data-aos].aos-animate {
  transition-delay: 1.75s;
}

[data-aos][data-aos][data-aos-duration="1800"],
body[data-aos-duration="1800"] [data-aos] {
  transition-duration: 1.8s;
}

[data-aos][data-aos][data-aos-delay="1800"],
body[data-aos-delay="1800"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1800"].aos-animate,
body[data-aos-delay="1800"] [data-aos].aos-animate {
  transition-delay: 1.8s;
}

[data-aos][data-aos][data-aos-duration="1850"],
body[data-aos-duration="1850"] [data-aos] {
  transition-duration: 1.85s;
}

[data-aos][data-aos][data-aos-delay="1850"],
body[data-aos-delay="1850"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1850"].aos-animate,
body[data-aos-delay="1850"] [data-aos].aos-animate {
  transition-delay: 1.85s;
}

[data-aos][data-aos][data-aos-duration="1900"],
body[data-aos-duration="1900"] [data-aos] {
  transition-duration: 1.9s;
}

[data-aos][data-aos][data-aos-delay="1900"],
body[data-aos-delay="1900"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1900"].aos-animate,
body[data-aos-delay="1900"] [data-aos].aos-animate {
  transition-delay: 1.9s;
}

[data-aos][data-aos][data-aos-duration="1950"],
body[data-aos-duration="1950"] [data-aos] {
  transition-duration: 1.95s;
}

[data-aos][data-aos][data-aos-delay="1950"],
body[data-aos-delay="1950"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="1950"].aos-animate,
body[data-aos-delay="1950"] [data-aos].aos-animate {
  transition-delay: 1.95s;
}

[data-aos][data-aos][data-aos-duration="2000"],
body[data-aos-duration="2000"] [data-aos] {
  transition-duration: 2s;
}

[data-aos][data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
  transition-delay: 2s;
}

[data-aos][data-aos][data-aos-duration="2050"],
body[data-aos-duration="2050"] [data-aos] {
  transition-duration: 2.05s;
}

[data-aos][data-aos][data-aos-delay="2050"],
body[data-aos-delay="2050"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2050"].aos-animate,
body[data-aos-delay="2050"] [data-aos].aos-animate {
  transition-delay: 2.05s;
}

[data-aos][data-aos][data-aos-duration="2100"],
body[data-aos-duration="2100"] [data-aos] {
  transition-duration: 2.1s;
}

[data-aos][data-aos][data-aos-delay="2100"],
body[data-aos-delay="2100"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2100"].aos-animate,
body[data-aos-delay="2100"] [data-aos].aos-animate {
  transition-delay: 2.1s;
}

[data-aos][data-aos][data-aos-duration="2150"],
body[data-aos-duration="2150"] [data-aos] {
  transition-duration: 2.15s;
}

[data-aos][data-aos][data-aos-delay="2150"],
body[data-aos-delay="2150"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2150"].aos-animate,
body[data-aos-delay="2150"] [data-aos].aos-animate {
  transition-delay: 2.15s;
}

[data-aos][data-aos][data-aos-duration="2200"],
body[data-aos-duration="2200"] [data-aos] {
  transition-duration: 2.2s;
}

[data-aos][data-aos][data-aos-delay="2200"],
body[data-aos-delay="2200"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2200"].aos-animate,
body[data-aos-delay="2200"] [data-aos].aos-animate {
  transition-delay: 2.2s;
}

[data-aos][data-aos][data-aos-duration="2250"],
body[data-aos-duration="2250"] [data-aos] {
  transition-duration: 2.25s;
}

[data-aos][data-aos][data-aos-delay="2250"],
body[data-aos-delay="2250"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2250"].aos-animate,
body[data-aos-delay="2250"] [data-aos].aos-animate {
  transition-delay: 2.25s;
}

[data-aos][data-aos][data-aos-duration="2300"],
body[data-aos-duration="2300"] [data-aos] {
  transition-duration: 2.3s;
}

[data-aos][data-aos][data-aos-delay="2300"],
body[data-aos-delay="2300"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2300"].aos-animate,
body[data-aos-delay="2300"] [data-aos].aos-animate {
  transition-delay: 2.3s;
}

[data-aos][data-aos][data-aos-duration="2350"],
body[data-aos-duration="2350"] [data-aos] {
  transition-duration: 2.35s;
}

[data-aos][data-aos][data-aos-delay="2350"],
body[data-aos-delay="2350"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2350"].aos-animate,
body[data-aos-delay="2350"] [data-aos].aos-animate {
  transition-delay: 2.35s;
}

[data-aos][data-aos][data-aos-duration="2400"],
body[data-aos-duration="2400"] [data-aos] {
  transition-duration: 2.4s;
}

[data-aos][data-aos][data-aos-delay="2400"],
body[data-aos-delay="2400"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2400"].aos-animate,
body[data-aos-delay="2400"] [data-aos].aos-animate {
  transition-delay: 2.4s;
}

[data-aos][data-aos][data-aos-duration="2450"],
body[data-aos-duration="2450"] [data-aos] {
  transition-duration: 2.45s;
}

[data-aos][data-aos][data-aos-delay="2450"],
body[data-aos-delay="2450"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2450"].aos-animate,
body[data-aos-delay="2450"] [data-aos].aos-animate {
  transition-delay: 2.45s;
}

[data-aos][data-aos][data-aos-duration="2500"],
body[data-aos-duration="2500"] [data-aos] {
  transition-duration: 2.5s;
}

[data-aos][data-aos][data-aos-delay="2500"],
body[data-aos-delay="2500"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2500"].aos-animate,
body[data-aos-delay="2500"] [data-aos].aos-animate {
  transition-delay: 2.5s;
}

[data-aos][data-aos][data-aos-duration="2550"],
body[data-aos-duration="2550"] [data-aos] {
  transition-duration: 2.55s;
}

[data-aos][data-aos][data-aos-delay="2550"],
body[data-aos-delay="2550"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2550"].aos-animate,
body[data-aos-delay="2550"] [data-aos].aos-animate {
  transition-delay: 2.55s;
}

[data-aos][data-aos][data-aos-duration="2600"],
body[data-aos-duration="2600"] [data-aos] {
  transition-duration: 2.6s;
}

[data-aos][data-aos][data-aos-delay="2600"],
body[data-aos-delay="2600"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2600"].aos-animate,
body[data-aos-delay="2600"] [data-aos].aos-animate {
  transition-delay: 2.6s;
}

[data-aos][data-aos][data-aos-duration="2650"],
body[data-aos-duration="2650"] [data-aos] {
  transition-duration: 2.65s;
}

[data-aos][data-aos][data-aos-delay="2650"],
body[data-aos-delay="2650"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2650"].aos-animate,
body[data-aos-delay="2650"] [data-aos].aos-animate {
  transition-delay: 2.65s;
}

[data-aos][data-aos][data-aos-duration="2700"],
body[data-aos-duration="2700"] [data-aos] {
  transition-duration: 2.7s;
}

[data-aos][data-aos][data-aos-delay="2700"],
body[data-aos-delay="2700"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2700"].aos-animate,
body[data-aos-delay="2700"] [data-aos].aos-animate {
  transition-delay: 2.7s;
}

[data-aos][data-aos][data-aos-duration="2750"],
body[data-aos-duration="2750"] [data-aos] {
  transition-duration: 2.75s;
}

[data-aos][data-aos][data-aos-delay="2750"],
body[data-aos-delay="2750"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2750"].aos-animate,
body[data-aos-delay="2750"] [data-aos].aos-animate {
  transition-delay: 2.75s;
}

[data-aos][data-aos][data-aos-duration="2800"],
body[data-aos-duration="2800"] [data-aos] {
  transition-duration: 2.8s;
}

[data-aos][data-aos][data-aos-delay="2800"],
body[data-aos-delay="2800"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2800"].aos-animate,
body[data-aos-delay="2800"] [data-aos].aos-animate {
  transition-delay: 2.8s;
}

[data-aos][data-aos][data-aos-duration="2850"],
body[data-aos-duration="2850"] [data-aos] {
  transition-duration: 2.85s;
}

[data-aos][data-aos][data-aos-delay="2850"],
body[data-aos-delay="2850"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2850"].aos-animate,
body[data-aos-delay="2850"] [data-aos].aos-animate {
  transition-delay: 2.85s;
}

[data-aos][data-aos][data-aos-duration="2900"],
body[data-aos-duration="2900"] [data-aos] {
  transition-duration: 2.9s;
}

[data-aos][data-aos][data-aos-delay="2900"],
body[data-aos-delay="2900"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2900"].aos-animate,
body[data-aos-delay="2900"] [data-aos].aos-animate {
  transition-delay: 2.9s;
}

[data-aos][data-aos][data-aos-duration="2950"],
body[data-aos-duration="2950"] [data-aos] {
  transition-duration: 2.95s;
}

[data-aos][data-aos][data-aos-delay="2950"],
body[data-aos-delay="2950"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="2950"].aos-animate,
body[data-aos-delay="2950"] [data-aos].aos-animate {
  transition-delay: 2.95s;
}

[data-aos][data-aos][data-aos-duration="3000"],
body[data-aos-duration="3000"] [data-aos] {
  transition-duration: 3s;
}

[data-aos][data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
  transition-delay: 0s;
}

[data-aos][data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
  transition-delay: 3s;
}

[data-aos] {
  pointer-events: none;
}

[data-aos].aos-animate {
  pointer-events: auto;
}

[data-aos][data-aos][data-aos-easing=linear],
body[data-aos-easing=linear] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}

[data-aos][data-aos][data-aos-easing=ease],
body[data-aos-easing=ease] [data-aos] {
  transition-timing-function: ease;
}

[data-aos][data-aos][data-aos-easing=ease-in],
body[data-aos-easing=ease-in] [data-aos] {
  transition-timing-function: ease-in;
}

[data-aos][data-aos][data-aos-easing=ease-out],
body[data-aos-easing=ease-out] [data-aos] {
  transition-timing-function: ease-out;
}

[data-aos][data-aos][data-aos-easing=ease-in-out],
body[data-aos-easing=ease-in-out] [data-aos] {
  transition-timing-function: ease-in-out;
}

[data-aos][data-aos][data-aos-easing=ease-in-back],
body[data-aos-easing=ease-in-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

[data-aos][data-aos][data-aos-easing=ease-out-back],
body[data-aos-easing=ease-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-back],
body[data-aos-easing=ease-in-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

[data-aos][data-aos][data-aos-easing=ease-in-sine],
body[data-aos-easing=ease-in-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}

[data-aos][data-aos][data-aos-easing=ease-out-sine],
body[data-aos-easing=ease-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-sine],
body[data-aos-easing=ease-in-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

[data-aos][data-aos][data-aos-easing=ease-in-quad],
body[data-aos-easing=ease-in-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing=ease-out-quad],
body[data-aos-easing=ease-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-quad],
body[data-aos-easing=ease-in-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos][data-aos-easing=ease-in-cubic],
body[data-aos-easing=ease-in-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing=ease-out-cubic],
body[data-aos-easing=ease-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],
body[data-aos-easing=ease-in-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos][data-aos-easing=ease-in-quart],
body[data-aos-easing=ease-in-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing=ease-out-quart],
body[data-aos-easing=ease-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-quart],
body[data-aos-easing=ease-in-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

@media screen {
  html:not(.no-js) [data-aos^=fade][data-aos^=fade] {
    opacity: 0;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
  }
  html:not(.no-js) [data-aos^=fade][data-aos^=fade].aos-animate {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
  html:not(.no-js) [data-aos=fade-up] {
    -webkit-transform: translate3d(0, 100px, 0);
    transform: translate3d(0, 100px, 0);
  }
  html:not(.no-js) [data-aos=fade-down] {
    -webkit-transform: translate3d(0, -100px, 0);
    transform: translate3d(0, -100px, 0);
  }
  html:not(.no-js) [data-aos=fade-right] {
    -webkit-transform: translate3d(-100px, 0, 0);
    transform: translate3d(-100px, 0, 0);
  }
  html:not(.no-js) [data-aos=fade-left] {
    -webkit-transform: translate3d(100px, 0, 0);
    transform: translate3d(100px, 0, 0);
  }
  html:not(.no-js) [data-aos=fade-up-right] {
    -webkit-transform: translate3d(-100px, 100px, 0);
    transform: translate3d(-100px, 100px, 0);
  }
  html:not(.no-js) [data-aos=fade-up-left] {
    -webkit-transform: translate3d(100px, 100px, 0);
    transform: translate3d(100px, 100px, 0);
  }
  html:not(.no-js) [data-aos=fade-down-right] {
    -webkit-transform: translate3d(-100px, -100px, 0);
    transform: translate3d(-100px, -100px, 0);
  }
  html:not(.no-js) [data-aos=fade-down-left] {
    -webkit-transform: translate3d(100px, -100px, 0);
    transform: translate3d(100px, -100px, 0);
  }
  html:not(.no-js) [data-aos^=zoom][data-aos^=zoom] {
    opacity: 0;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
  }
  html:not(.no-js) [data-aos^=zoom][data-aos^=zoom].aos-animate {
    opacity: 1;
    -webkit-transform: translateZ(0) scale(1);
    transform: translateZ(0) scale(1);
  }
  html:not(.no-js) [data-aos=zoom-in] {
    -webkit-transform: scale(0.6);
    transform: scale(0.6);
  }
  html:not(.no-js) [data-aos=zoom-in-up] {
    -webkit-transform: translate3d(0, 100px, 0) scale(0.6);
    transform: translate3d(0, 100px, 0) scale(0.6);
  }
  html:not(.no-js) [data-aos=zoom-in-down] {
    -webkit-transform: translate3d(0, -100px, 0) scale(0.6);
    transform: translate3d(0, -100px, 0) scale(0.6);
  }
  html:not(.no-js) [data-aos=zoom-in-right] {
    -webkit-transform: translate3d(-100px, 0, 0) scale(0.6);
    transform: translate3d(-100px, 0, 0) scale(0.6);
  }
  html:not(.no-js) [data-aos=zoom-in-left] {
    -webkit-transform: translate3d(100px, 0, 0) scale(0.6);
    transform: translate3d(100px, 0, 0) scale(0.6);
  }
  html:not(.no-js) [data-aos=zoom-out] {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
  html:not(.no-js) [data-aos=zoom-out-up] {
    -webkit-transform: translate3d(0, 100px, 0) scale(1.2);
    transform: translate3d(0, 100px, 0) scale(1.2);
  }
  html:not(.no-js) [data-aos=zoom-out-down] {
    -webkit-transform: translate3d(0, -100px, 0) scale(1.2);
    transform: translate3d(0, -100px, 0) scale(1.2);
  }
  html:not(.no-js) [data-aos=zoom-out-right] {
    -webkit-transform: translate3d(-100px, 0, 0) scale(1.2);
    transform: translate3d(-100px, 0, 0) scale(1.2);
  }
  html:not(.no-js) [data-aos=zoom-out-left] {
    -webkit-transform: translate3d(100px, 0, 0) scale(1.2);
    transform: translate3d(100px, 0, 0) scale(1.2);
  }
  html:not(.no-js) [data-aos^=slide][data-aos^=slide] {
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    visibility: hidden;
  }
  html:not(.no-js) [data-aos^=slide][data-aos^=slide].aos-animate {
    visibility: visible;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  html:not(.no-js) [data-aos=slide-up] {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  html:not(.no-js) [data-aos=slide-down] {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  html:not(.no-js) [data-aos=slide-right] {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  html:not(.no-js) [data-aos=slide-left] {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  html:not(.no-js) [data-aos^=flip][data-aos^=flip] {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
  }
  html:not(.no-js) [data-aos=flip-left] {
    -webkit-transform: perspective(2500px) rotateY(-100deg);
    transform: perspective(2500px) rotateY(-100deg);
  }
  html:not(.no-js) [data-aos=flip-left].aos-animate {
    -webkit-transform: perspective(2500px) rotateY(0);
    transform: perspective(2500px) rotateY(0);
  }
  html:not(.no-js) [data-aos=flip-right] {
    -webkit-transform: perspective(2500px) rotateY(100deg);
    transform: perspective(2500px) rotateY(100deg);
  }
  html:not(.no-js) [data-aos=flip-right].aos-animate {
    -webkit-transform: perspective(2500px) rotateY(0);
    transform: perspective(2500px) rotateY(0);
  }
  html:not(.no-js) [data-aos=flip-up] {
    -webkit-transform: perspective(2500px) rotateX(-100deg);
    transform: perspective(2500px) rotateX(-100deg);
  }
  html:not(.no-js) [data-aos=flip-up].aos-animate {
    -webkit-transform: perspective(2500px) rotateX(0);
    transform: perspective(2500px) rotateX(0);
  }
  html:not(.no-js) [data-aos=flip-down] {
    -webkit-transform: perspective(2500px) rotateX(100deg);
    transform: perspective(2500px) rotateX(100deg);
  }
  html:not(.no-js) [data-aos=flip-down].aos-animate {
    -webkit-transform: perspective(2500px) rotateX(0);
    transform: perspective(2500px) rotateX(0);
  }
}
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  touch-action: pan-y;
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  width: var(--swiper-centered-offset-after);
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  height: var(--swiper-centered-offset-after);
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.swiper-button-lock {
  display: none;
}

.swiper-pagination-lock {
  display: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../img/layout/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

@font-face {
  font-family: "lg";
  src: url("fonts/lg.woff2?io9a6k") format("woff2"), url("fonts/lg.ttf?io9a6k") format("truetype"), url("fonts/lg.woff?io9a6k") format("woff"), url("fonts/lg.svg?io9a6k#lg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.lg-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "lg" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lg-container {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.lg-next,
.lg-prev {
  background-color: rgba(0, 0, 0, 0.45);
  border-radius: 2px;
  color: #999;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 1084;
  outline: none;
  border: none;
}

.lg-next.disabled,
.lg-prev.disabled {
  opacity: 0 !important;
  cursor: default;
}

.lg-next:hover:not(.disabled),
.lg-prev:hover:not(.disabled) {
  color: #fff;
}

.lg-single-item .lg-next,
.lg-single-item .lg-prev {
  display: none;
}

.lg-next {
  right: 20px;
}

.lg-next:before {
  content: "\e095";
}

.lg-prev {
  left: 20px;
}

.lg-prev:after {
  content: "\e094";
}

@-webkit-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-moz-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-ms-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@-moz-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@-ms-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
.lg-outer.lg-right-end .lg-object {
  -webkit-animation: lg-right-end 0.3s;
  -o-animation: lg-right-end 0.3s;
  animation: lg-right-end 0.3s;
  position: relative;
}

.lg-outer.lg-left-end .lg-object {
  -webkit-animation: lg-left-end 0.3s;
  -o-animation: lg-left-end 0.3s;
  animation: lg-left-end 0.3s;
  position: relative;
}

.lg-toolbar {
  z-index: 1082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.lg-media-overlap .lg-toolbar {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4));
}

.lg-toolbar .lg-icon {
  color: #999;
  cursor: pointer;
  float: right;
  font-size: 24px;
  height: 47px;
  line-height: 27px;
  padding: 10px 0;
  text-align: center;
  width: 50px;
  text-decoration: none !important;
  outline: medium none;
  will-change: color;
  -webkit-transition: color 0.2s linear;
  -o-transition: color 0.2s linear;
  transition: color 0.2s linear;
  background: none;
  border: none;
  box-shadow: none;
}

.lg-toolbar .lg-icon.lg-icon-18 {
  font-size: 18px;
}

.lg-toolbar .lg-icon:hover {
  color: #fff;
}

.lg-toolbar .lg-close:after {
  content: "\e070";
}

.lg-toolbar .lg-maximize {
  font-size: 22px;
}

.lg-toolbar .lg-maximize:after {
  content: "\e90a";
}

.lg-toolbar .lg-download:after {
  content: "\e0f2";
}

.lg-sub-html {
  color: #eee;
  font-size: 16px;
  padding: 10px 40px;
  text-align: center;
  z-index: 1080;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
}

.lg-sub-html h4 {
  margin: 0;
  font-weight: bold;
}

.lg-sub-html p {
  margin: 5px 0 0;
}

.lg-sub-html a {
  color: inherit;
}

.lg-sub-html a:hover {
  text-decoration: underline;
}

.lg-media-overlap .lg-sub-html {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
}

.lg-item .lg-sub-html {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

.lg-error-msg {
  font-size: 14px;
  color: #999;
}

.lg-counter {
  color: #999;
  display: inline-block;
  font-size: 16px;
  padding-left: 20px;
  padding-top: 12px;
  height: 47px;
  vertical-align: middle;
}

.lg-closing .lg-toolbar,
.lg-closing .lg-prev,
.lg-closing .lg-next,
.lg-closing .lg-sub-html {
  opacity: 0;
  -webkit-transition: -webkit-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  -moz-transition: -moz-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  -o-transition: -o-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  transition: transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-video-cont {
  opacity: 0;
  -moz-transform: scale3d(0.5, 0.5, 0.5);
  -o-transform: scale3d(0.5, 0.5, 0.5);
  -ms-transform: scale3d(0.5, 0.5, 0.5);
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -moz-transition: -moz-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -o-transition: -o-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-video-cont {
  opacity: 1;
  -moz-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}

.lg-icon:focus-visible {
  color: #fff;
  border-radius: 3px;
  outline: 1px dashed rgba(255, 255, 255, 0.6);
}

.lg-toolbar .lg-icon:focus-visible {
  border-radius: 8px;
  outline-offset: -5px;
}

.lg-outer .lg-thumb-outer {
  background-color: #0d0a0a;
  width: 100%;
  max-height: 350px;
  overflow: hidden;
  float: left;
}

.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-outer .lg-thumb-outer.lg-rebuilding-thumbnails .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-outer .lg-thumb-outer.lg-thumb-align-middle {
  text-align: center;
}

.lg-outer .lg-thumb-outer.lg-thumb-align-left {
  text-align: left;
}

.lg-outer .lg-thumb-outer.lg-thumb-align-right {
  text-align: right;
}

.lg-outer.lg-single-item .lg-thumb-outer {
  display: none;
}

.lg-outer .lg-thumb {
  padding: 5px 0;
  height: 100%;
  margin-bottom: -5px;
  display: inline-block;
  vertical-align: middle;
}

@media (min-width: 768px) {
  .lg-outer .lg-thumb {
    padding: 10px 0;
  }
}
.lg-outer .lg-thumb-item {
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border-radius: 2px;
  margin-bottom: 5px;
  will-change: border-color;
}

@media (min-width: 768px) {
  .lg-outer .lg-thumb-item {
    border-radius: 4px;
    border: 2px solid #fff;
    -webkit-transition: border-color 0.25s ease;
    -o-transition: border-color 0.25s ease;
    transition: border-color 0.25s ease;
  }
}
.lg-outer .lg-thumb-item.active,
.lg-outer .lg-thumb-item:hover {
  border-color: #a90707;
}

.lg-outer .lg-thumb-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0;
}

.lg-outer .lg-toggle-thumb:after {
  content: "\e1ff";
}

.lg-outer.lg-animate-thumb .lg-thumb {
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.lg-outer .lg-video-cont {
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}

.lg-outer .lg-video-cont .lg-object {
  width: 100% !important;
  height: 100% !important;
}

.lg-outer .lg-has-iframe .lg-video-cont {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
}

.lg-outer .lg-video-object {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  z-index: 3;
}

.lg-outer .lg-video-poster {
  z-index: 1;
}

.lg-outer .lg-has-video .lg-video-object {
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity 0.3s ease-in;
  -o-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}

.lg-outer .lg-has-video.lg-video-loaded .lg-video-poster,
.lg-outer .lg-has-video.lg-video-loaded .lg-video-play-button {
  opacity: 0 !important;
}

.lg-outer .lg-has-video.lg-video-loaded .lg-video-object {
  opacity: 1;
}

@keyframes lg-play-stroke {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}
@keyframes lg-play-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.lg-video-play-button {
  width: 18%;
  max-width: 140px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  cursor: pointer;
  transform: translate(-50%, -50%) scale(1);
  will-change: opacity, transform;
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  -o-transition: -o-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  transition: transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
}

.lg-video-play-button:hover .lg-video-play-icon-bg,
.lg-video-play-button:hover .lg-video-play-icon {
  opacity: 1;
}

.lg-video-play-icon-bg {
  fill: none;
  stroke-width: 3%;
  stroke: #fcfcfc;
  opacity: 0.6;
  will-change: opacity;
  -webkit-transition: opacity 0.12s ease-in;
  -o-transition: opacity 0.12s ease-in;
  transition: opacity 0.12s ease-in;
}

.lg-video-play-icon-circle {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  fill: none;
  stroke-width: 3%;
  stroke: rgba(30, 30, 30, 0.9);
  stroke-opacity: 1;
  stroke-linecap: round;
  stroke-dasharray: 200;
  stroke-dashoffset: 200;
}

.lg-video-play-icon {
  position: absolute;
  width: 25%;
  max-width: 120px;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  opacity: 0.6;
  will-change: opacity;
  -webkit-transition: opacity 0.12s ease-in;
  -o-transition: opacity 0.12s ease-in;
  transition: opacity 0.12s ease-in;
}

.lg-video-play-icon .lg-video-play-icon-inner {
  fill: #fcfcfc;
}

.lg-video-loading .lg-video-play-icon-circle {
  animation: lg-play-rotate 2s linear 0.25s infinite, lg-play-stroke 1.5s ease-in-out 0.25s infinite;
}

.lg-video-loaded .lg-video-play-button {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.7);
}

.lg-progress-bar {
  background-color: #333;
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1083;
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity 0.08s ease 0s;
  -moz-transition: opacity 0.08s ease 0s;
  -o-transition: opacity 0.08s ease 0s;
  transition: opacity 0.08s ease 0s;
}

.lg-progress-bar .lg-progress {
  background-color: #a90707;
  height: 5px;
  width: 0;
}

.lg-progress-bar.lg-start .lg-progress {
  width: 100%;
}

.lg-show-autoplay .lg-progress-bar {
  opacity: 1;
}

.lg-autoplay-button:after {
  content: "\e01d";
}

.lg-show-autoplay .lg-autoplay-button:after {
  content: "\e01a";
}

.lg-single-item .lg-autoplay-button {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap,
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transition-duration: 0ms !important;
  transition-duration: 0ms !important;
}

.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  -moz-transition: -moz-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  -o-transition: -o-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  transition: transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
}

.lg-outer.lg-use-transition-for-zoom.lg-zoom-drag-transition .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -moz-transition: -moz-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -o-transition: -o-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  transition: transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.no-transition,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.no-transition {
  transition: none !important;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition {
  transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0px) !important;
  max-width: none !important;
  max-height: none !important;
  top: 50% !important;
  left: 50% !important;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition-x,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition-x {
  transform: scale3d(1, 1, 1) translate3d(-50%, 0, 0px) !important;
  top: 0 !important;
  left: 50% !important;
  max-width: none !important;
  max-height: none !important;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition-y,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition-y {
  transform: scale3d(1, 1, 1) translate3d(0, -50%, 0px) !important;
  top: 50% !important;
  left: 0% !important;
  max-width: none !important;
  max-height: none !important;
}

.lg-icon.lg-zoom-in:after {
  content: "\e311";
}

.lg-actual-size .lg-icon.lg-zoom-in {
  opacity: 0.5;
  pointer-events: none;
}

.lg-icon.lg-actual-size {
  font-size: 20px;
}

.lg-icon.lg-actual-size:after {
  content: "\e033";
}

.lg-icon.lg-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}

.lg-icon.lg-zoom-out:after {
  content: "\e312";
}

.lg-zoomed .lg-icon.lg-zoom-out {
  opacity: 1;
  pointer-events: auto;
}

.lg-outer[data-lg-slide-type=video] .lg-zoom-in,
.lg-outer[data-lg-slide-type=video] .lg-actual-size,
.lg-outer[data-lg-slide-type=video] .lg-zoom-out,
.lg-outer[data-lg-slide-type=iframe] .lg-zoom-in,
.lg-outer[data-lg-slide-type=iframe] .lg-actual-size,
.lg-outer[data-lg-slide-type=iframe] .lg-zoom-out,
.lg-outer.lg-first-slide-loading .lg-zoom-in,
.lg-outer.lg-first-slide-loading .lg-actual-size,
.lg-outer.lg-first-slide-loading .lg-zoom-out {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-pager-outer {
  text-align: center;
  z-index: 1080;
  height: 10px;
  margin-bottom: 10px;
}

.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
  overflow: visible;
}

.lg-outer.lg-single-item .lg-pager-outer {
  display: none;
}

.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px;
}

.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
  box-shadow: 0 0 0 2px white inset;
}

.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #fff;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  will-change: transform, opacity;
  -webkit-transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  -moz-transition: opacity 0.15s ease 0s, -moz-transform 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s, -o-transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
}

.lg-outer .lg-pager-thumb-cont img {
  width: 100%;
  height: 100%;
}

.lg-outer .lg-pager {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
  display: block;
  height: 12px;
  -webkit-transition: box-shadow 0.3s ease 0s;
  -o-transition: box-shadow 0.3s ease 0s;
  transition: box-shadow 0.3s ease 0s;
  width: 12px;
}

.lg-outer .lg-pager:hover,
.lg-outer .lg-pager:focus {
  box-shadow: 0 0 0 8px white inset;
}

.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

.lg-fullscreen:after {
  content: "\e20c";
}

.lg-fullscreen-on .lg-fullscreen:after {
  content: "\e20d";
}

.lg-outer .lg-dropdown-overlay {
  background-color: rgba(0, 0, 0, 0.25);
  bottom: 0;
  cursor: default;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1081;
  opacity: 0;
  visibility: hidden;
  will-change: visibility, opacity;
  -webkit-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  -o-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
}

.lg-outer.lg-dropdown-active .lg-dropdown,
.lg-outer.lg-dropdown-active .lg-dropdown-overlay {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -moz-transform: translate3d(0, 0px, 0);
  -o-transform: translate3d(0, 0px, 0);
  -ms-transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  transform: translate3d(0, 0px, 0);
  opacity: 1;
  visibility: visible;
}

.lg-outer.lg-dropdown-active .lg-share {
  color: #fff;
}

.lg-outer .lg-dropdown {
  background-color: #fff;
  border-radius: 2px;
  font-size: 14px;
  list-style-type: none;
  margin: 0;
  padding: 10px 0;
  position: absolute;
  right: 0;
  text-align: left;
  top: 50px;
  opacity: 0;
  visibility: hidden;
  -moz-transform: translate3d(0, 5px, 0);
  -o-transform: translate3d(0, 5px, 0);
  -ms-transform: translate3d(0, 5px, 0);
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
  will-change: visibility, opacity, transform;
  -webkit-transition: -webkit-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  -moz-transition: -moz-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  -o-transition: -o-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  transition: transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
}

.lg-outer .lg-dropdown:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  border: 8px solid transparent;
  border-bottom-color: #fff;
  right: 16px;
  top: -16px;
}

.lg-outer .lg-dropdown > li:last-child {
  margin-bottom: 0px;
}

.lg-outer .lg-dropdown > li:hover a {
  color: #333;
}

.lg-outer .lg-dropdown a {
  color: #333;
  display: block;
  white-space: pre;
  padding: 4px 12px;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
}

.lg-outer .lg-dropdown a:hover {
  background-color: rgba(0, 0, 0, 0.07);
}

.lg-outer .lg-dropdown .lg-dropdown-text {
  display: inline-block;
  line-height: 1;
  margin-top: -3px;
  vertical-align: middle;
}

.lg-outer .lg-dropdown .lg-icon {
  color: #333;
  display: inline-block;
  float: none;
  font-size: 20px;
  height: auto;
  line-height: 1;
  margin-right: 8px;
  padding: 0;
  vertical-align: middle;
  width: auto;
}

.lg-outer .lg-share {
  position: relative;
}

.lg-outer .lg-share:after {
  content: "\e80d";
}

.lg-outer .lg-share-facebook .lg-icon {
  color: #3b5998;
}

.lg-outer .lg-share-facebook .lg-icon:after {
  content: "\e904";
}

.lg-outer .lg-share-twitter .lg-icon {
  color: #00aced;
}

.lg-outer .lg-share-twitter .lg-icon:after {
  content: "\e907";
}

.lg-outer .lg-share-pinterest .lg-icon {
  color: #cb2027;
}

.lg-outer .lg-share-pinterest .lg-icon:after {
  content: "\e906";
}

.lg-comment-box {
  width: 420px;
  max-width: 100%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999;
  background-color: #fff;
  will-change: transform;
  -moz-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-comment-box .lg-comment-title {
  margin: 0;
  color: #fff;
  font-size: 18px;
}

.lg-comment-box .lg-comment-header {
  background-color: #000;
  padding: 12px 20px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}

.lg-comment-box .lg-comment-body {
  height: 100% !important;
  padding-top: 43px !important;
  width: 100% !important;
}

.lg-comment-box .fb-comments {
  height: 100%;
  width: 100%;
  background: url("../images/loading.gif") no-repeat scroll center center #fff;
  overflow-y: auto;
  display: inline-block;
}

.lg-comment-box .fb-comments[fb-xfbml-state=rendered] {
  background-image: none;
}

.lg-comment-box .fb-comments > span {
  max-width: 100%;
}

.lg-comment-box .lg-comment-close {
  position: absolute;
  right: 5px;
  top: 12px;
  cursor: pointer;
  font-size: 20px;
  color: #999;
  will-change: color;
  -webkit-transition: color 0.2s linear;
  -o-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

.lg-comment-box .lg-comment-close:hover {
  color: #fff;
}

.lg-comment-box .lg-comment-close:after {
  content: "\e070";
}

.lg-comment-box iframe {
  max-width: 100% !important;
  width: 100% !important;
}

.lg-comment-box #disqus_thread {
  padding: 0 20px;
}

.lg-outer .lg-comment-overlay {
  background-color: rgba(0, 0, 0, 0.25);
  bottom: 0;
  cursor: default;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1081;
  opacity: 0;
  visibility: hidden;
  will-change: visibility, opacity;
  -webkit-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  -o-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
}

.lg-outer .lg-comment-toggle:after {
  content: "\e908";
}

.lg-outer.lg-comment-active .lg-comment-overlay {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -moz-transform: translate3d(0, 0px, 0);
  -o-transform: translate3d(0, 0px, 0);
  -ms-transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  transform: translate3d(0, 0px, 0);
  opacity: 1;
  visibility: visible;
}

.lg-outer.lg-comment-active .lg-comment-toggle {
  color: #fff;
}

.lg-outer.lg-comment-active .lg-comment-box {
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.lg-outer .lg-img-rotate {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer[data-lg-slide-type=video] .lg-rotate-left,
.lg-outer[data-lg-slide-type=video] .lg-rotate-right,
.lg-outer[data-lg-slide-type=video] .lg-flip-ver,
.lg-outer[data-lg-slide-type=video] .lg-flip-hor,
.lg-outer[data-lg-slide-type=iframe] .lg-rotate-left,
.lg-outer[data-lg-slide-type=iframe] .lg-rotate-right,
.lg-outer[data-lg-slide-type=iframe] .lg-flip-ver,
.lg-outer[data-lg-slide-type=iframe] .lg-flip-hor {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-img-rotate:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.lg-rotate-left:after {
  content: "\e900";
}

.lg-rotate-right:after {
  content: "\e901";
}

.lg-icon.lg-flip-hor,
.lg-icon.lg-flip-ver {
  font-size: 26px;
}

.lg-flip-ver:after {
  content: "\e903";
}

.lg-flip-hor:after {
  content: "\e902";
}

.lg-medium-zoom-item {
  cursor: zoom-in;
}

.lg-medium-zoom .lg-outer {
  cursor: zoom-out;
}

.lg-medium-zoom .lg-outer.lg-grab img.lg-object {
  cursor: zoom-out;
}

.lg-medium-zoom .lg-outer.lg-grabbing img.lg-object {
  cursor: zoom-out;
}

.lg-relative-caption .lg-outer .lg-sub-html {
  white-space: normal;
  bottom: auto;
  padding: 0;
  background-image: none;
}

.lg-relative-caption .lg-outer .lg-relative-caption-item {
  opacity: 0;
  padding: 16px 0;
  transition: 0.5s opacity ease;
}

.lg-relative-caption .lg-outer .lg-show-caption .lg-relative-caption-item {
  opacity: 1;
}

.lg-group:after {
  content: "";
  display: table;
  clear: both;
}

.lg-container {
  display: none;
  outline: none;
}

.lg-container.lg-show {
  display: block;
}

.lg-on {
  scroll-behavior: unset;
}

.lg-overlay-open {
  overflow: hidden;
}

.lg-toolbar,
.lg-prev,
.lg-next,
.lg-pager-outer,
.lg-hide-sub-html .lg-sub-html {
  opacity: 0;
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-show-in .lg-toolbar,
.lg-show-in .lg-prev,
.lg-show-in .lg-next,
.lg-show-in .lg-pager-outer {
  opacity: 1;
}

.lg-show-in.lg-hide-sub-html .lg-sub-html {
  opacity: 1;
}

.lg-show-in .lg-hide-items .lg-prev {
  opacity: 0;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0);
}

.lg-show-in .lg-hide-items .lg-next {
  opacity: 0;
  -webkit-transform: translate3d(10px, 0, 0);
  transform: translate3d(10px, 0, 0);
}

.lg-show-in .lg-hide-items .lg-toolbar {
  opacity: 0;
  -webkit-transform: translate3d(0, -10px, 0);
  transform: translate3d(0, -10px, 0);
}

.lg-show-in .lg-hide-items.lg-hide-sub-html .lg-sub-html {
  opacity: 0;
  -webkit-transform: translate3d(0, 20px, 0);
  transform: translate3d(0, 20px, 0);
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  text-align: left;
  opacity: 0.001;
  outline: none;
  will-change: auto;
  overflow: hidden;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.lg-outer.lg-zoom-from-image {
  opacity: 1;
}

.lg-outer.lg-visible {
  opacity: 1;
}

.lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-prev-slide,
.lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-next-slide,
.lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-current {
  -webkit-transition-duration: inherit !important;
  transition-duration: inherit !important;
  -webkit-transition-timing-function: inherit !important;
  transition-timing-function: inherit !important;
}

.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide,
.lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide,
.lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}

.lg-outer.lg-grab img.lg-object {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.lg-outer.lg-grabbing img.lg-object {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.lg-outer .lg-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.lg-outer .lg-inner {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: opacity 0s;
  -o-transition: opacity 0s;
  transition: opacity 0s;
  white-space: nowrap;
}

.lg-outer .lg-item {
  display: none !important;
}

.lg-outer .lg-item:not(.lg-start-end-progress) {
  background: url("../images/loading.gif") no-repeat scroll center center transparent;
}

.lg-outer.lg-css3 .lg-prev-slide,
.lg-outer.lg-css3 .lg-current,
.lg-outer.lg-css3 .lg-next-slide {
  display: inline-block !important;
}

.lg-outer.lg-css .lg-current {
  display: inline-block !important;
}

.lg-outer .lg-item,
.lg-outer .lg-img-wrap {
  display: inline-block;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
}

.lg-outer .lg-item:before,
.lg-outer .lg-img-wrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.lg-outer .lg-img-wrap {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  white-space: nowrap;
  font-size: 0;
}

.lg-outer .lg-item.lg-complete {
  background-image: none;
}

.lg-outer .lg-item.lg-current {
  z-index: 1060;
}

.lg-outer .lg-object {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  position: relative;
}

.lg-outer .lg-empty-html.lg-sub-html,
.lg-outer .lg-empty-html .lg-sub-html {
  display: none;
}

.lg-outer.lg-hide-download .lg-download {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-first-slide .lg-dummy-img {
  position: absolute;
  top: 50%;
  left: 50%;
}

.lg-outer.lg-components-open:not(.lg-zoomed) .lg-components {
  -webkit-transform: translate3d(0, 0%, 0);
  transform: translate3d(0, 0%, 0);
  opacity: 1;
}

.lg-outer.lg-components-open:not(.lg-zoomed) .lg-sub-html {
  opacity: 1;
  transition: opacity 0.2s ease-out 0.15s;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0;
  will-change: auto;
  -webkit-transition: opacity 333ms ease-in 0s;
  -o-transition: opacity 333ms ease-in 0s;
  transition: opacity 333ms ease-in 0s;
}

.lg-backdrop.in {
  opacity: 1;
}

.lg-css3.lg-no-trans .lg-prev-slide,
.lg-css3.lg-no-trans .lg-next-slide,
.lg-css3.lg-no-trans .lg-current {
  -webkit-transition: none 0s ease 0s !important;
  -moz-transition: none 0s ease 0s !important;
  -o-transition: none 0s ease 0s !important;
  transition: none 0s ease 0s !important;
}

.lg-css3.lg-use-css3 .lg-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-css3.lg-fade .lg-item {
  opacity: 0;
}

.lg-css3.lg-fade .lg-item.lg-current {
  opacity: 1;
}

.lg-css3.lg-fade .lg-item.lg-prev-slide,
.lg-css3.lg-fade .lg-item.lg-next-slide,
.lg-css3.lg-fade .lg-item.lg-current {
  -webkit-transition: opacity 0.1s ease 0s;
  -moz-transition: opacity 0.1s ease 0s;
  -o-transition: opacity 0.1s ease 0s;
  transition: opacity 0.1s ease 0s;
}

.lg-css3.lg-use-css3 .lg-item.lg-start-progress {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  -o-transition: -o-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  transition: transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
}

.lg-css3.lg-use-css3 .lg-item.lg-start-end-progress {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide,
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide,
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}

.lg-container {
  display: none;
}

.lg-container.lg-show {
  display: block;
}

.lg-container.lg-dragging-vertical .lg-backdrop {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-container.lg-dragging-vertical .lg-css3 .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}

.lg-inline .lg-backdrop,
.lg-inline .lg-outer {
  position: absolute;
}

.lg-inline .lg-backdrop {
  z-index: 1;
}

.lg-inline .lg-outer {
  z-index: 2;
}

.lg-inline .lg-maximize:after {
  content: "\e909";
}

.lg-components {
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  will-change: transform;
  -webkit-transition: -webkit-transform 0.35s ease-out 0s;
  -moz-transition: -moz-transform 0.35s ease-out 0s;
  -o-transition: -o-transform 0.35s ease-out 0s;
  transition: transform 0.35s ease-out 0s;
  z-index: 1080;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  padding-bottom: 30px;
}

:root {
  /* Fonts */
  --font-zh: "Noto Sans TC", "思源黑體", "PingFang TC", sans-serif;
  /* Spacing */
  --space-2xl: 160px;
  --space-xl: 140px;
  --space-lg: 120px;
  --space-md-plus: 100px;
  --space-md: 80px;
  --space-sm-plus: 72px;
  --space-sm: 60px;
  --space-xs-plus: 48px;
  --space-xs: 40px;
  --space-frame: 30px;
  /* Container */
  --container-padding: 80px;
}

@media (max-width: 1023px) {
  :root {
    --container-padding: 40px;
  }
}
@media (max-width: 767px) {
  :root {
    --space-2xl: 80px;
    --space-xl: 72px;
    --space-lg: 64px;
    --space-md-plus: 56px;
    --space-md: 40px;
    --space-sm-plus: 40px;
    --space-sm: 40px;
    --space-xs-plus: 40px;
    --space-xs: 40px;
    --container-padding: 20px;
    /* --space-frame 維持 30px */
  }
}
.c-h3 {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .c-h3 {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 1024px) {
  .c-h3 {
    font-size: clamp(24px, 100vw * 32 / 1920, 32px);
  }
}
.c-h3 {
  margin: 0;
  color: #043b64;
}

body {
  font-family: var(--font-zh);
  background-color: #f1f7fd;
}

:root {
  --header-h: 64px;
}
@media (min-width: 1280px) {
  :root {
    --header-h: 108px;
  }
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  background-color: #ffffff;
  transition: transform 0.4s ease, background-color 0.4s ease;
}
.l-header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px var(--space-xs);
  transition: padding 0.4s ease;
}
@media (max-width: 1279px) {
  .l-header__inner {
    padding: 12px 30px;
  }
}
.l-header__logo {
  display: block;
  flex-shrink: 0;
  width: 80px;
  height: 68px;
}
@media (max-width: 1279px) {
  .l-header__logo {
    width: 47px;
    height: 40px;
  }
}
.l-header__logo svg {
  display: block;
  width: 100%;
  height: 100%;
}
.l-header__logo-wave {
  animation-duration: 0.95s;
  animation-timing-function: cubic-bezier(0.45, 0.05, 0.4, 1);
  animation-fill-mode: forwards;
}
.l-header__logo-wave--leaf-l {
  animation-name: logoWaveLeafL;
  animation-delay: 0.15s;
}
.l-header__logo-wave--leaf-r {
  animation-name: logoWaveLeafR;
  animation-delay: 0.24s;
}
.l-header__logo-wave--hair-l {
  animation-name: logoWaveHairL;
  animation-duration: 1.05s;
  animation-delay: 0.33s;
}
.l-header__logo-wave--hair-r {
  animation-name: logoWaveHairR;
  animation-duration: 1.05s;
  animation-delay: 0.42s;
}
.l-header__logo-wave--word {
  animation-name: logoWaveWord;
  animation-duration: 0.7s;
  animation-delay: 0.75s;
}
.l-header__nav {
  padding: 0;
  transition: padding 0.4s ease, border-radius 0.4s ease, background-color 0.4s ease;
}
@media (max-width: 1279px) {
  .l-header__nav {
    display: none;
  }
}
.l-header__menu {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}
.l-header__tools {
  display: none;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
@media (max-width: 1279px) {
  .l-header__tools {
    display: flex;
  }
}
.l-header__item {
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
}
.l-header__submenu {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 1;
  padding-top: 40px;
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media (max-width: 1279px) {
  .l-header__submenu {
    display: none;
  }
}
.l-header__submenu-panel {
  padding: 20px var(--space-xs);
  border-radius: 16px;
  background-color: #ffffff;
  filter: drop-shadow(0 5px 5px rgba(0, 0, 0, 0.05));
}
.l-header__submenu-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 96px;
}
.l-header__submenu-link {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .l-header__submenu-link {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.l-header__submenu-link {
  display: block;
  width: 100%;
  color: #2d2d2d;
  text-align: center;
  white-space: nowrap;
  transition: color 0.3s;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .l-header__submenu-link:hover {
    color: #005cb9;
  }
}
@media (hover: hover), (-ms-high-contrast: none) {
  .l-header__item--hassub:hover .l-header__link {
    color: #005cb9;
  }
  .l-header__item--hassub:hover .l-header__submenu {
    opacity: 1;
    visibility: visible;
  }
}
.l-header__link {
  display: block;
  font-size: 18px;
  line-height: normal;
  letter-spacing: 0.08em;
  font-weight: 400;
  color: #2d2d2d;
  white-space: nowrap;
  transition: color 0.3s;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .l-header__link:hover {
    color: #005cb9;
  }
}
.l-header__lang {
  display: block;
  width: 24px;
  height: 24px;
}
.l-header__lang img {
  width: 100%;
  height: 100%;
}
.l-header.is-menu-open .l-header__inner {
  padding: 20px var(--space-xs);
}
@media (max-width: 1279px) {
  .l-header.is-menu-open .l-header__inner {
    padding: 12px 30px;
  }
}
.l-header.is-ready .l-header__item,
.l-header.is-ready .l-header__tools > * {
  opacity: 0;
  translate: 0 -10px;
}
.l-header.is-enter .l-header__item,
.l-header.is-enter .l-header__tools > * {
  opacity: 1;
  translate: 0 0;
  transition: opacity 0.5s ease, translate 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.l-header.is-enter .l-header__item:nth-child(1) {
  transition-delay: 0.06s;
}
.l-header.is-enter .l-header__item:nth-child(2) {
  transition-delay: 0.12s;
}
.l-header.is-enter .l-header__item:nth-child(3) {
  transition-delay: 0.18s;
}
.l-header.is-enter .l-header__item:nth-child(4) {
  transition-delay: 0.24s;
}
.l-header.is-enter .l-header__item:nth-child(5) {
  transition-delay: 0.3s;
}
.l-header.is-enter .l-header__item:nth-child(6) {
  transition-delay: 0.36s;
}
.l-header.is-enter .l-header__item:nth-child(7) {
  transition-delay: 0.42s;
}
.l-header.is-enter .l-header__tools > * {
  transition-delay: 0.36s;
}
.l-header.is-enter .l-header__tools > * + * {
  transition-delay: 0.42s;
}
.l-header.is-hide {
  transform: translateY(-100%);
}
.l-header.is-menu-open {
  background-color: #ffffff;
}
.l-header.is-menu-open .l-header__lang--m {
  display: none;
}

.hamburger {
  position: relative;
  display: block;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.hamburger__open, .hamburger__close {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.hamburger__open {
  transform: rotate(90deg);
}
.hamburger__close {
  opacity: 0;
}
.hamburger.is-active .hamburger__open {
  opacity: 0;
}
.hamburger.is-active .hamburger__close {
  opacity: 1;
}

.mobile-nav-outer {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  width: 100%;
  height: calc(100vh - 64px);
  height: calc(100dvh - 64px);
  padding: 16px 30px;
  overflow-y: auto;
  background-color: #ffffff;
}
@media (max-width: 1279px) {
  .mobile-nav-outer {
    display: block;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
}
.mobile-nav-outer.is-active {
  visibility: visible;
  opacity: 1;
}
.mobile-nav-outer__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.mobile-nav-outer__item {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(4, 59, 100, 0.1);
}
.mobile-nav-outer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mobile-nav-outer__title {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.04em;
  font-weight: 400;
  color: #043b64;
  white-space: nowrap;
}
.mobile-nav-outer__arrow {
  display: block;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.mobile-nav-outer__arrow img {
  width: 100%;
  height: 100%;
}
.mobile-nav-outer__sub {
  display: none;
  padding-left: 18px;
}
.mobile-nav-outer__sub li + li {
  margin-top: 12px;
}
.mobile-nav-outer__sub a {
  display: block;
  font-size: 16px;
  line-height: 189%;
  letter-spacing: 0.04em;
  font-weight: 400;
  color: #2d2d2d;
}

.page-banner {
  position: relative;
  margin-top: var(--header-h);
}
@media (min-width: 1024px) {
  .page-banner:not([class*=vh]):not([class*=vw]) {
    height: 36.458vw;
  }
}
@media (min-width: 1920px) {
  .page-banner:not([class*=vh]):not([class*=vw]) {
    height: 700px;
  }
}
.page-banner__wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  z-index: 1;
  width: 100%;
  aspect-ratio: 1920/418;
  overflow: hidden;
  pointer-events: none;
}
.page-banner__wave-svg {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.page-banner--wipe .page-banner__media,
.page-banner--wipe .page-banner__wave-svg--light {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.page-banner--wipe .page-banner__wave-svg--grad {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.9s cubic-bezier(0.65, 0, 0.35, 1);
}
.page-banner--wipe.a-play .page-banner__media,
.page-banner--wipe.a-play .page-banner__wave-svg--light {
  clip-path: inset(0 0 0 0);
}
.page-banner--wipe.a-play .page-banner__wave-svg--grad {
  clip-path: inset(0 0 0 0);
  transition-delay: 1.1s;
}
.page-banner__wave-parallax > use {
  animation: banner-wave-move 24s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
  will-change: transform;
}
.page-banner__video, .page-banner__fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-banner__video {
  opacity: 0;
  transition: opacity 0.4s ease;
}
.page-banner__video.is-ready {
  opacity: 1;
}
.page-banner__video.is-hide {
  display: none;
}
.page-banner__fallback {
  display: none;
}
.page-banner__fallback.is-show {
  display: block;
}

@keyframes banner-wave-move {
  0% {
    transform: translate3d(-88px, 0, 0);
  }
  100% {
    transform: translate3d(88px, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .page-banner__wave-parallax > use {
    animation: none;
  }
  .l-footer__deco,
  .l-footer__deco.a-play,
  .page-banner--wipe .page-banner__media,
  .page-banner--wipe .page-banner__wave-svg,
  .page-banner--wipe.a-play .page-banner__media,
  .page-banner--wipe.a-play .page-banner__wave-svg {
    clip-path: none;
    transform: none;
    transition: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .l-header.is-ready .l-header__item,
  .l-header.is-ready .l-header__tools > *,
  .l-header.is-enter .l-header__item,
  .l-header.is-enter .l-header__tools > * {
    opacity: 1;
    translate: none;
    transition: none;
  }
}
.l-footer {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 598px;
}
@media (max-width: 1279px) {
  .l-footer {
    min-height: 569px;
  }
}
.l-footer__deco {
  position: absolute;
  top: -3.85vw;
  left: 0;
  display: block;
  width: 100%;
  height: calc(100% + 3.85vw);
  background: url("../img/layout/footer-shape-1.svg") no-repeat center/100% 100%;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.l-footer__deco.a-play {
  clip-path: inset(0 0 0 0);
}
@media (max-width: 1279px) {
  .l-footer__deco {
    top: 0;
    height: 100%;
    background-image: url("../img/layout/footer-shape-1-m.svg");
  }
}
.l-footer__bg {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url("../img/layout/footer-shape-2.svg") no-repeat center/100% 100%;
}
@media (max-width: 1279px) {
  .l-footer__bg {
    top: 6.154vw;
    height: calc(100% - 6.154vw);
    background-image: url("../img/layout/footer-shape-2-m.svg");
  }
}
.l-footer__inner {
  width: 100%;
  max-width: calc(1680px + var(--container-padding) * 2);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  position: relative;
  min-width: 0;
  z-index: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  padding-bottom: var(--space-sm);
}
@media (max-width: 1279px) {
  .l-footer__inner {
    gap: var(--space-xs);
    padding-top: var(--space-xs);
    padding-bottom: 20px;
  }
}
.l-footer__top {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: center;
}
.l-footer__cols {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  gap: min(7.738%, 130px);
}
@media (max-width: 1279px) {
  .l-footer__cols {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 20px 40px;
  }
}
.l-footer__col {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-align: center;
  word-break: break-word;
}
.l-footer__col--first {
  width: 5.952%;
}
.l-footer__col--last {
  align-self: stretch;
  gap: var(--space-xs);
}
@media (max-width: 1279px) {
  .l-footer__col {
    display: contents;
  }
}
.l-footer__col-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
@media (max-width: 1279px) {
  .l-footer__col-group {
    display: contents;
  }
}
.l-footer__col-title {
  font-size: 20px;
  line-height: 170%;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #ffffff;
  white-space: nowrap;
}
@media (max-width: 1279px) {
  .l-footer__col-title {
    width: 100px;
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
    font-weight: 400;
    text-align: center;
  }
}
.l-footer__col-link {
  font-size: 16px;
  line-height: 187.5%;
  letter-spacing: 0.08em;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.8);
  white-space: nowrap;
  transition: color 0.3s;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .l-footer__col-link:hover {
    color: #ffffff;
  }
}
@media (max-width: 1279px) {
  .l-footer__col-link {
    display: none;
  }
}
.l-footer__shop-wrap {
  display: contents;
}
@media (max-width: 1279px) {
  .l-footer__shop-wrap {
    display: flex;
    flex: 0 0 100%;
    justify-content: center;
    margin-top: 20px;
  }
}
.l-footer__shop {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  height: 64px;
  padding: 12px 32px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 9999px;
  background-color: rgba(255, 255, 255, 0.15);
  transition: background-color 0.3s;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .l-footer__shop:hover {
    background-color: rgba(255, 255, 255, 0.3);
  }
}
.l-footer__shop-icon {
  display: block;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.l-footer__shop-icon img {
  width: 100%;
  height: 100%;
}
.l-footer__shop-text {
  font-size: 18px;
  line-height: normal;
  letter-spacing: 0.16em;
  font-weight: 500;
  color: #ffffff;
  white-space: nowrap;
}
.l-footer__bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.l-footer__line {
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.3);
}
.l-footer__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
@media (max-width: 1279px) {
  .l-footer__info {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
}
.l-footer__terms {
  display: flex;
  align-items: center;
  gap: 16px;
}
.l-footer__terms-link {
  font-size: 16px;
  line-height: 187.5%;
  letter-spacing: 0.08em;
  font-weight: 400;
  color: #ffffff;
  white-space: nowrap;
}
@media (max-width: 1279px) {
  .l-footer__terms-link {
    color: #d9d9d9;
  }
}
.l-footer__copyright {
  width: 26.667%;
  font-size: 16px;
  line-height: 187.5%;
  letter-spacing: 0.08em;
  font-weight: 400;
  color: #ffffff;
  text-align: right;
}
@media (max-width: 1279px) {
  .l-footer__copyright {
    width: auto;
    text-align: left;
  }
}

.side-line {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 9;
  display: block;
  width: 60px;
  margin-top: -30px;
  animation-delay: 0.6s;
}
.side-line img {
  display: block;
  width: 100%;
  transition: transform 0.3s ease, filter 0.3s ease;
}
.side-line:hover img {
  transform: scale(1.08);
  filter: drop-shadow(0 4px 12px rgba(57, 205, 0, 0.4));
}
@media (max-width: 767px) {
  .side-line {
    width: 40px;
    margin-top: -20px;
  }
}

.page-r-side-ani,
.page-l-side-ani {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0s linear 0.4s;
}
.page-r-side-ani.is-show,
.page-l-side-ani.is-show {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s ease, visibility 0s;
}
.page-r-side-ani svg,
.page-l-side-ani svg {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 296/592;
}
.page-r-side-ani path,
.page-l-side-ani path {
  opacity: 0;
}
.page-r-side-ani.is-show path,
.page-l-side-ani.is-show path {
  animation-duration: 10s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
.page-r-side-ani.is-show path:nth-child(1),
.page-l-side-ani.is-show path:nth-child(1) {
  animation-name: home-wave-ring-1;
}
.page-r-side-ani.is-show path:nth-child(2),
.page-l-side-ani.is-show path:nth-child(2) {
  animation-name: home-wave-ring-2;
}
.page-r-side-ani.is-show path:nth-child(3),
.page-l-side-ani.is-show path:nth-child(3) {
  animation-name: home-wave-ring-3;
}
.page-r-side-ani.is-show path:nth-child(4),
.page-l-side-ani.is-show path:nth-child(4) {
  animation-name: home-wave-ring-4;
}
.page-r-side-ani.is-show path:nth-child(5),
.page-l-side-ani.is-show path:nth-child(5) {
  animation-name: home-wave-ring-5;
}
.page-r-side-ani.is-show path:nth-child(6),
.page-l-side-ani.is-show path:nth-child(6) {
  animation-name: home-wave-ring-6;
}
.page-r-side-ani.is-show path:nth-child(7),
.page-l-side-ani.is-show path:nth-child(7) {
  animation-name: home-wave-ring-7;
}
.page-r-side-ani.is-show path:nth-child(8),
.page-l-side-ani.is-show path:nth-child(8) {
  animation-name: home-wave-ring-8;
}
.page-r-side-ani.is-show path:nth-child(9),
.page-l-side-ani.is-show path:nth-child(9) {
  animation-name: home-wave-ring-9;
}
.page-r-side-ani.is-show path:nth-child(10),
.page-l-side-ani.is-show path:nth-child(10) {
  animation-name: home-wave-ring-10;
}

.page-l-side-ani svg {
  transform: scaleX(-1);
}

body:has(.page-r-side-ani) .page-l-side-ani.is-show path {
  animation-delay: -3s;
}

@media (prefers-reduced-motion: reduce) {
  .page-r-side-ani,
  .page-l-side-ani {
    transition: none;
  }
  .page-r-side-ani path,
  .page-l-side-ani path,
  .page-r-side-ani.is-show path,
  .page-l-side-ani.is-show path {
    animation: none;
    opacity: 1;
  }
}
.no-js .page-r-side-ani path,
.no-js .page-l-side-ani path {
  animation: none;
  opacity: 1;
}

.go-top {
  position: fixed;
  right: var(--space-frame);
  bottom: var(--space-frame);
  z-index: 9;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background-color: #34b2cf;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  translate: 0 12px;
  transition: opacity 0.3s ease, translate 0.3s ease, visibility 0s linear 0.3s, background-color 0.3s ease;
}
.go-top.is-show {
  opacity: 1;
  visibility: visible;
  translate: 0 0;
  transition: opacity 0.3s ease, translate 0.3s ease, visibility 0s, background-color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .go-top:hover {
    background-color: #036a80;
  }
}
@media (min-width: 1280px) {
  .go-top {
    right: 40px;
    bottom: 40px;
    width: 64px;
    height: 64px;
  }
}
.go-top__icon {
  display: block;
  width: 24px;
  height: 24px;
  background-color: #ffffff;
  transform: rotate(-90deg);
  -webkit-mask: url("../img/layout/i-btn-arrow.svg") no-repeat center/contain;
  mask: url("../img/layout/i-btn-arrow.svg") no-repeat center/contain;
}

@media (prefers-reduced-motion: reduce) {
  .go-top {
    transition: none;
  }
}
.c-btn-arrow {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  height: 56px;
  padding: 8px 24px 8px 8px;
  border: 0;
  border-radius: 9999px;
  background-color: #34b2cf;
  font-family: inherit;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-btn-arrow:hover {
    background-color: #036a80;
  }
  .c-btn-arrow:hover .c-btn-arrow__icon {
    color: #036a80;
  }
}
@media (min-width: 1280px) {
  .c-btn-arrow {
    height: 64px;
    padding: 12px 40px 12px 12px;
  }
}
.c-btn-arrow--next {
  flex-direction: row-reverse;
  padding: 8px 8px 8px 24px;
}
@media (min-width: 1280px) {
  .c-btn-arrow--next {
    padding: 12px 12px 12px 40px;
  }
}
.c-btn-arrow__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #ffffff;
  color: #34b2cf;
  transition: color 0.3s ease;
}
.c-btn-arrow__arrow {
  display: block;
  width: 24px;
  height: 24px;
  background-color: currentColor;
  -webkit-mask: url("../img/layout/i-btn-arrow.svg") no-repeat center/contain;
  mask: url("../img/layout/i-btn-arrow.svg") no-repeat center/contain;
}
.c-btn-arrow__arrow--prev {
  transform: rotate(180deg);
}
.c-btn-arrow__text {
  font-size: 18px;
  line-height: normal;
  letter-spacing: 0.16em;
  font-weight: 500;
  color: #ffffff;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .c-btn-arrow__text {
    font-size: 16px;
  }
}

.brands {
  padding: var(--space-lg) 0;
}
.brands__inner {
  width: 100%;
  max-width: calc(1520px + var(--container-padding) * 2);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-md);
}
@media (max-width: 767px) {
  .brands__inner {
    flex-direction: column;
    gap: var(--space-md);
  }
}
.brands__aside {
  flex-shrink: 0;
  width: 120px;
}
@media (min-width: 1280px) {
  .brands__aside {
    position: sticky;
    top: 120px;
    align-self: flex-start;
  }
}
@media (max-width: 1279px) {
  .brands__aside {
    position: relative;
    z-index: 5;
    width: 100%;
    margin-top: 0;
  }
}
@media (max-width: 1279px) {
  .brands__aside--expand {
    display: contents;
  }
}
@media (max-width: 1279px) {
  .brands__aside-col {
    display: contents;
  }
}
.brands__main {
  flex: 1;
  max-width: 1163px;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
@media (max-width: 767px) {
  .brands__main {
    max-width: none;
    margin-left: 0;
  }
}

.brands-filter {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 20px;
  border-radius: 20px;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.08));
}
@media (max-width: 1279px) {
  .brands-filter {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    display: none;
    width: 100%;
    gap: 10px;
    padding: 12px 22px;
    border: 1px solid #34b2cf;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
  }
  .brands-filter.is-open {
    display: flex;
  }
}
.brands-filter__toggle {
  display: none;
}
@media (max-width: 1279px) {
  .brands-filter__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 12px 22px;
    border: 1px solid #34b2cf;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
    font-family: inherit;
    cursor: pointer;
  }
}
.brands-filter__toggle-text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .brands-filter__toggle-text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.brands-filter__toggle-text {
  color: #054c72;
}
.brands-filter__toggle-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 19.5px;
  height: 13px;
}
.brands-filter__toggle-arrow img {
  width: 17px;
  height: 10px;
  transform: rotate(180deg);
}
.brands-filter__link {
  display: flex;
  align-items: center;
  gap: 12px;
}
.brands-filter__radio {
  display: block;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  background: url("../img/brands/i-radio-off.svg") no-repeat center/100% 100%;
}
@media (max-width: 1279px) {
  .brands-filter__radio {
    display: none;
  }
}
.brands-filter__text {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .brands-filter__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.brands-filter__text {
  color: #054c72;
  white-space: nowrap;
}
@media (max-width: 1279px) {
  .brands-filter__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media (max-width: 1279px) and (max-width: 767px) {
  .brands-filter__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.brands-filter__item.is-active .brands-filter__radio {
  background-image: url("../img/brands/i-radio-on.svg");
}

@media (max-width: 1279px) {
  .brands-filter.brands-filter--expand {
    position: static;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px 8px;
    width: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    filter: none;
  }
  .brands-filter.brands-filter--expand .brands-filter__item {
    flex: 0 0 calc((100% - 16px) / 3);
  }
  .brands-filter.brands-filter--expand .brands-filter__link {
    justify-content: center;
    padding: 6px 0;
    border: 1px solid #d9d9d9;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 5px rgba(201, 217, 232, 0.5));
  }
  .brands-filter.brands-filter--expand .brands-filter__text {
    color: rgba(5, 76, 114, 0.6);
    text-align: center;
  }
  .brands-filter.brands-filter--expand .brands-filter__item.is-active .brands-filter__link {
    border-color: #34b2cf;
  }
  .brands-filter.brands-filter--expand .brands-filter__item.is-active .brands-filter__text {
    color: #054c72;
  }
}

@media (max-width: 1279px) {
  .brands-filter-bar {
    position: sticky;
    top: 10px;
    z-index: 6;
    transition: top 0.4s ease;
  }
  .brands-filter-bar::before {
    content: "";
    position: absolute;
    inset: -12px -30px;
    z-index: -1;
    background-color: #f1f7fd;
  }
}

.each-brand.is-hide {
  display: none;
}

.brands-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.brands-group__head {
  display: flex;
  align-items: center;
  gap: 20px;
}
.brands-group__title {
  color: #054c72;
  white-space: nowrap;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .brands-group__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 767px) {
  .brands-group__title {
    line-height: 165%;
  }
}
.brands-group__line {
  display: block;
  flex: 1 0 0;
  min-width: 1px;
  height: 1px;
  background-color: rgba(5, 76, 114, 0.3);
}

.pic-shadow {
  filter: drop-shadow(6px 6px 12px #c9d9e8);
}

.brand-anchor > a.is-active {
  color: rgb(var(--seriesColor));
}

.brand-anchor-fixed {
  position: fixed;
  top: 96px;
  right: 30px;
  left: 30px;
  margin-top: 20px;
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 86px;
  padding: 20px 60px;
  border-radius: 100px;
  background: #ffffff;
  box-shadow: 0 0 15px color-mix(in srgb, rgb(var(--seriesColor)) 20%, #fff);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-100%);
  transition: opacity 0.35s ease, visibility 0.35s ease, transform 0.4s ease, top 0.4s ease;
}
.brand-anchor-fixed.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
@media (min-width: 1280px) {
  .brand-anchor-fixed {
    right: 60px;
    left: 60px;
  }
}
@media (min-width: 1440px) {
  .brand-anchor-fixed {
    right: 10.416666vw;
    left: 10.416666vw;
  }
}
@media (max-width: 1279px) {
  .brand-anchor-fixed {
    top: 72px;
    right: 0;
    left: 0;
    height: 64px;
    margin-top: 0;
    padding: 16px 30px;
    justify-content: center;
    border-radius: 0;
    background: color-mix(in srgb, rgb(var(--seriesColor)) 10%, #fff);
    box-shadow: none;
  }
}
.brand-anchor-fixed__logo {
  display: block;
  flex-shrink: 0;
  width: 142px;
  height: 46px;
}
@media (max-width: 1279px) {
  .brand-anchor-fixed__logo {
    display: none;
  }
}
.brand-anchor-fixed__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.brand-anchor-fixed__list {
  display: flex;
  align-items: center;
  gap: 60px;
}
@media (max-width: 1279px) {
  .brand-anchor-fixed__list {
    gap: 40px;
  }
}
.brand-anchor-fixed__line {
  flex-shrink: 0;
  width: 1px;
  height: 30px;
  background: #ccc;
}
.brand-anchor-fixed__link {
  font-size: 18px;
  line-height: 32px;
  letter-spacing: 0.12em;
  font-weight: 400;
  color: #2d2d2d;
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .brand-anchor-fixed__link:hover {
    color: rgb(var(--seriesColor));
  }
}
.brand-anchor-fixed__link.is-active {
  color: rgb(var(--seriesColor));
}

.series-animation {
  width: 295px;
  pointer-events: none;
}
.series-animation img {
  display: block;
  width: 100%;
  height: auto;
}

.brand-buy {
  display: inline-flex;
  align-items: center;
  gap: 40px;
  padding: 12px 12px 12px 40px;
  border: 1px solid rgb(var(--seriesColor));
  border-radius: 100px;
  background-color: rgb(var(--seriesColor));
  box-shadow: 6px 6px 12px color-mix(in srgb, rgb(var(--seriesColor)) 20%, #fff), -6px -6px 12px #ffffff;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .brand-buy:hover {
    border-color: color-mix(in srgb, rgb(var(--seriesColor)) 70%, #fff);
    background-color: color-mix(in srgb, rgb(var(--seriesColor)) 70%, #fff);
  }
  .brand-buy:hover .brand-buy__arrow {
    background-color: color-mix(in srgb, rgb(var(--seriesColor)) 70%, #fff);
  }
}
.brand-buy__text {
  font-size: 20px;
  line-height: normal;
  letter-spacing: 0.16em;
  font-weight: 500;
  color: #ffffff;
  white-space: nowrap;
}
.brand-buy__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #ffffff;
}
.brand-buy__arrow {
  display: block;
  width: 24px;
  height: 24px;
  background-color: rgb(var(--seriesColor));
  -webkit-mask: url("../img/brands/i-arrow-buy.svg") no-repeat center/24px 24px;
  mask: url("../img/brands/i-arrow-buy.svg") no-repeat center/24px 24px;
  transition: background-color 0.3s ease;
}

.brand-series-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-bottom: 40px;
}
.brand-series-head__tag {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 24px;
  border-radius: 12px;
  background: #ffffff;
}
.brand-series-head__dot {
  flex-shrink: 0;
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgb(var(--seriesColor));
}
.brand-series-head__tag-text {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #000000;
  white-space: nowrap;
}
.brand-series-head__row {
  display: flex;
  align-items: center;
  gap: 20px;
  width: 100%;
}
.brand-series-head__line {
  display: block;
  flex: 1 0 0;
  min-width: 1px;
  height: 1px;
  background-color: rgb(var(--seriesColor));
  opacity: 0.5;
}
.brand-series-head__title {
  font-size: 28px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: rgb(var(--seriesColor));
  text-align: center;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .brand-series-head__title {
    font-size: 32px;
  }
}
@media (min-width: 1024px) {
  .brand-series-head__title {
    font-size: 40px;
  }
}

@media (min-width: 1280px) {
  .brands-sort-outre {
    position: sticky;
    top: 120px;
    align-self: flex-start;
  }
}
@media (max-width: 1279px) {
  .brands-sort-outre {
    position: relative;
    z-index: 6;
    min-height: 64px;
  }
}

@media (max-width: 1279px) {
  .brands-sort-bar {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    transition: top 0.4s ease;
  }
  .brands-sort-bar.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 8;
    width: 100%;
    margin-left: 0;
  }
}

.brands-sort {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 1279px) {
  .brands-sort {
    position: absolute;
    top: calc(100% + 12px);
    right: 30px;
    left: 30px;
    display: none;
    gap: 10px;
    padding: 12px 22px;
    border: 1px solid rgb(var(--seriesColor));
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
  }
  .brands-sort.is-open {
    display: flex;
  }
}
.brands-sort__toggle {
  display: none;
}
@media (max-width: 1279px) {
  .brands-sort__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    height: 64px;
    padding: 12px 30px;
    border: 0;
    background-color: color-mix(in srgb, rgb(var(--seriesColor)) 10%, #fff);
    font-family: inherit;
    cursor: pointer;
  }
}
.brands-sort__toggle-text {
  color: color-mix(in srgb, rgb(var(--seriesColor)) 60%, #000);
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .brands-sort__toggle-text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.brands-sort__toggle-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 19.5px;
  height: 13px;
}
.brands-sort__toggle-icon {
  display: block;
  width: 17px;
  height: 10px;
  background-color: rgb(var(--seriesColor));
  transform: rotate(180deg);
  -webkit-mask: url("../img/layout/i-select-arrow.svg") no-repeat center/100% 100%;
  mask: url("../img/layout/i-select-arrow.svg") no-repeat center/100% 100%;
}
.brands-sort__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .brands-sort__link:hover .brands-sort__text {
    color: rgb(var(--seriesColor));
  }
}
.brands-sort__text {
  color: #8b8b8b;
  transition: color 0.3s;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .brands-sort__text {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 1279px) {
  .brands-sort__text {
    color: color-mix(in srgb, rgb(var(--seriesColor)) 60%, #000);
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media (max-width: 1279px) and (max-width: 767px) {
  .brands-sort__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.brands-sort__arrow {
  display: none;
  flex-shrink: 0;
  width: 62.5px;
  height: 10px;
  background-color: rgb(var(--seriesColor));
  -webkit-mask: url("../img/brands/i-arrow-line.svg") no-repeat center/100% 100%;
  mask: url("../img/brands/i-arrow-line.svg") no-repeat center/100% 100%;
}
.brands-sort__item.is-active .brands-sort__text {
  font-weight: 500;
  color: rgb(var(--seriesColor));
}
.brands-sort__item.is-active .brands-sort__arrow {
  display: block;
}
@media (max-width: 1279px) {
  .brands-sort__item.is-active .brands-sort__text {
    font-weight: 400;
    color: color-mix(in srgb, rgb(var(--seriesColor)) 60%, #000);
  }
  .brands-sort__item.is-active .brands-sort__arrow {
    display: none;
  }
}

.prod-each-conetent {
  display: none;
}
.prod-each-conetent.is-active {
  display: block;
}

.brand-album {
  padding: 63px 81px 79px;
  border-radius: 20px;
  border-bottom: 5px solid rgb(var(--seriesColor));
  background-color: #ffffff;
}
@media (max-width: 1279px) {
  .brand-album {
    padding: 40px 20px;
  }
}
.brand-album__title {
  margin-bottom: 60px;
  color: rgb(var(--seriesColor));
  text-align: center;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .brand-album__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 1279px) {
  .brand-album__title {
    margin-bottom: 40px;
  }
}
.brand-album__body {
  display: flex;
  align-items: center;
  gap: 60px;
}
@media (max-width: 1279px) {
  .brand-album__body {
    gap: 12px;
  }
}
.brand-album__arrow {
  flex-shrink: 0;
  width: 24px;
  height: 48px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}
.brand-album__arrow-icon {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgb(var(--seriesColor));
  -webkit-mask: url("../img/brands/i-slide-arrow.svg") no-repeat center/100% 100%;
  mask: url("../img/brands/i-slide-arrow.svg") no-repeat center/100% 100%;
}
.brand-album__arrow--next .brand-album__arrow-icon {
  transform: rotate(180deg);
}
.brand-album__arrow.swiper-button-lock {
  display: block;
  visibility: hidden;
  pointer-events: none;
}
@media (max-width: 1279px) {
  .brand-album__arrow {
    width: 16px;
    height: 32px;
  }
}
.brand-album__list {
  flex: 1 0 0;
  min-width: 0;
}
.brand-album__item {
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
}
@media (max-width: 1279px) {
  .brand-album__item {
    gap: 16px;
  }
}
.brand-album__pic {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 207px;
}
.brand-album__pic img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
@media (max-width: 1279px) {
  .brand-album__pic {
    height: 140px;
  }
}
@media (max-width: 767px) {
  .brand-album__pic {
    height: 160px;
  }
}
.brand-album__caption {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.brand-album__tag {
  display: flex;
  align-items: center;
  gap: 8px;
}
.brand-album__dot {
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: rgb(var(--seriesColor));
}
.brand-album__tag-text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 300;
}
@media (max-width: 767px) {
  .brand-album__tag-text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.brand-album__name {
  text-align: center;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .brand-album__name {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.brand-album__name {
  color: #000;
}
@media (max-width: 767px) {
  .brand-album__name {
    font-size: 16px;
    line-height: 189%;
    letter-spacing: 0.08em;
    font-weight: 300;
  }
}
.brand-album__dots {
  display: none;
}
.brand-album__dots .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 0;
  opacity: 1;
  border-radius: 50%;
  border: 1px solid #4c97bf;
  background-color: #ffffff;
  transition: background-color 0.3s ease;
}
.brand-album__dots .swiper-pagination-bullet-active {
  background-color: #4c97bf;
}

.team-cards > .fade-up:nth-child(1n+1) {
  animation-delay: 0s;
}
@media (min-width: 768px) {
  .team-cards > .fade-up:nth-child(2n+1) {
    animation-delay: 0s;
  }
  .team-cards > .fade-up:nth-child(2n+2) {
    animation-delay: 0.12s;
  }
}
@media (min-width: 1024px) {
  .team-cards > .fade-up:nth-child(3n+1) {
    animation-delay: 0s;
  }
  .team-cards > .fade-up:nth-child(3n+2) {
    animation-delay: 0.12s;
  }
  .team-cards > .fade-up:nth-child(3n+3) {
    animation-delay: 0.24s;
  }
}
@media (min-width: 1280px) {
  .team-cards > .fade-up:nth-child(4n+1) {
    animation-delay: 0s;
  }
  .team-cards > .fade-up:nth-child(4n+2) {
    animation-delay: 0.12s;
  }
  .team-cards > .fade-up:nth-child(4n+3) {
    animation-delay: 0.24s;
  }
  .team-cards > .fade-up:nth-child(4n+4) {
    animation-delay: 0.36s;
  }
}

.team-card__bg {
  --team-bg-rx: 37.5%;
  --team-bg-ry: 52.2727%;
  display: block;
  aspect-ratio: 460/330;
  border-radius: var(--team-bg-rx) 0 var(--team-bg-rx) 0/var(--team-bg-ry) 0 var(--team-bg-ry) 0;
  background-image: linear-gradient(258.04deg, #043b64 -10.53%, #054c72 38.57%, #65bfb5 112.23%);
}

.team-modal .c-modal__overlay {
  background: rgba(0, 0, 0, 0.8);
}
.team-modal .c-modal__main {
  max-width: none;
}
@media screen and (orientation: portrait) {
  .team-modal .c-modal__main {
    margin: 1.875rem;
  }
}
@media screen and (orientation: landscape) {
  .team-modal .c-modal__main {
    margin: 3.75rem 1.875rem;
  }
}
@media (min-width: 1024px) {
  .team-modal .c-modal__main {
    width: 89.5833vw;
    max-width: 1720px;
    margin: 0 auto;
  }
}

.team-modal__box {
  position: relative;
  background: #fff;
  border-radius: 1.25rem;
  padding: 1.875rem;
}
@media (min-width: 1024px) {
  .team-modal__box {
    height: 81.4815vh;
    max-height: 880px;
    min-height: 480px;
    padding: 0;
  }
}

.team-modal__deco {
  display: none;
}
@media (min-width: 1024px) {
  .team-modal__deco {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18.4302%;
    height: auto;
    pointer-events: none;
  }
}

.team-modal__figure {
  position: relative;
  width: 100%;
  max-width: 534px;
  margin: 0 auto 1.875rem;
  aspect-ratio: 534/505;
}
@media (min-width: 1024px) {
  .team-modal__figure {
    position: absolute;
    top: 50%;
    left: 5.814%;
    width: 31.0465%;
    margin: 0;
    transform: translateY(-50%);
  }
}

.team-modal__figure-card {
  position: absolute;
  top: 30.6931%;
  left: 17.603%;
  width: 82.397%;
  height: 56.4356%;
  --team-bg-rx: 27.2727%;
  --team-bg-ry: 42.1053%;
  border-radius: var(--team-bg-rx) 0 var(--team-bg-rx) 0/var(--team-bg-ry) 0 var(--team-bg-ry) 0;
  background-image: linear-gradient(258.04deg, #043b64 -10.53%, #054c72 38.57%, #65bfb5 112.23%);
}

.team-modal__figure-deco {
  position: absolute;
  top: 60.396%;
  left: 0;
  width: 44.9438%;
  height: 39.604%;
}

.team-modal__figure-pic {
  position: absolute;
  top: 0;
  left: 17.603%;
  width: 73.7828%;
  height: 87.1287%;
  object-fit: cover;
}

@media (min-width: 1024px) {
  .team-modal__body {
    position: absolute;
    top: 3.75rem;
    right: 0.9884%;
    bottom: 3.75rem;
    left: 42.9651%;
    padding: 0 4.1279% 0 0;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .team-modal__body::-webkit-scrollbar {
    width: 0.75rem;
  }
  .team-modal__body::-webkit-scrollbar-track {
    background: transparent;
  }
  .team-modal__body::-webkit-scrollbar-thumb {
    background: #d9d9d9;
    border-radius: 6.25rem;
  }
  @supports not selector(::-webkit-scrollbar) {
    .team-modal__body {
      scrollbar-width: thin;
      scrollbar-color: #d9d9d9 transparent;
    }
  }
}

.team-modal__inner {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (min-width: 1024px) {
  .team-modal__inner {
    gap: 2rem;
  }
}

.team-modal__title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: 0.08em;
  color: #2d2d2d;
}
@media (min-width: 1024px) {
  .team-modal__title {
    gap: 1.25rem;
    font-size: 2.5rem;
  }
}
.team-modal__title span:first-child {
  color: #054c72;
}

.team-modal__group {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.team-modal__label {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.83;
  letter-spacing: 0.08em;
  color: #0094b0;
}
@media (min-width: 1024px) {
  .team-modal__label {
    font-size: 1.5rem;
  }
}
.team-modal__label.is-alt {
  color: #34b2cf;
}

.team-modal__list {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 0.75rem 7.9455%;
}
.team-modal__list li {
  width: 100%;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.89;
  letter-spacing: 0.08em;
  color: #2d2d2d;
  word-break: break-word;
}
@media (min-width: 768px) {
  .team-modal__list li {
    width: 46.0272%;
  }
}
@media (min-width: 1024px) {
  .team-modal__list li {
    font-size: 1.125rem;
  }
}

.team-modal__line {
  width: 100%;
  height: 0;
  border: 0;
  border-top: 1px solid #d5d5d5;
  margin: 0;
}

.team-modal__close {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  width: 2.5rem;
  height: 2.5rem;
  cursor: pointer;
  transition: transform 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .team-modal__close:hover {
    transform: rotate(90deg);
  }
}
@media (min-width: 1024px) {
  .team-modal__close {
    top: -3.75rem;
    right: -3.75rem;
    width: 3.75rem;
    height: 3.75rem;
  }
}
.team-modal__close img {
  display: block;
  width: 100%;
  height: 100%;
}

.milestone {
  --milestone-year-w: 359px;
  --milestone-content-gap: 69px;
  --milestone-dot: 17px;
  --milestone-year-size: 72px;
  position: relative;
}
@media (max-width: 1023px) {
  .milestone {
    --milestone-year-size: 48px;
  }
}

.milestone__deco {
  position: absolute;
  top: 230px;
  right: -60px;
  z-index: 0;
  display: flex;
  flex-direction: column;
  gap: 800px;
  width: 295px;
  pointer-events: none;
}
@media (min-width: 1440px) {
  .milestone__deco {
    right: -10.416666vw;
  }
}
@media (max-width: 1279px) {
  .milestone__deco {
    display: none;
  }
}
.milestone__deco img {
  display: block;
  width: 100%;
  height: auto;
}

.milestone__timeline {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 100px;
}
@media (max-width: 1023px) {
  .milestone__timeline {
    gap: 60px;
  }
}

.milestone__line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--milestone-year-w);
  width: 2px;
  background-color: #d9d9d9;
  transform: translateX(-1px);
}
@media (max-width: 1023px) {
  .milestone__line {
    left: calc(var(--milestone-dot) / 2);
  }
}

.milestone__bar {
  position: absolute;
  top: 0;
  left: var(--milestone-year-w);
  z-index: 1;
  width: 2px;
  height: 0;
  background-color: #0094b0;
  transform: translateX(-1px);
}
@media (max-width: 1023px) {
  .milestone__bar {
    left: calc(var(--milestone-dot) / 2);
  }
}

.milestone__item {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-start;
}
@media (max-width: 1023px) {
  .milestone__item {
    display: block;
    padding-left: 40px;
  }
}

.milestone__year {
  position: relative;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  width: var(--milestone-year-w);
  padding-right: calc(var(--milestone-dot) / 2 + 60px);
  margin-top: calc((44px - var(--milestone-year-size) * 1.125) / 2);
}
@media (max-width: 1023px) {
  .milestone__year {
    position: static;
    width: auto;
    margin-top: 0;
    margin-bottom: 16px;
    padding-right: 0;
    justify-content: flex-start;
  }
}

.milestone__year-text {
  display: flex;
  align-items: center;
  gap: 20px;
  white-space: nowrap;
  opacity: 0.5;
  transition: opacity 0.4s ease;
}
@media (max-width: 1023px) {
  .milestone__year-text {
    gap: 12px;
  }
}

.milestone__year-num {
  font-family: "Inter", serif;
  font-size: var(--milestone-year-size);
  font-weight: 400;
  line-height: 1.125;
  background-image: linear-gradient(109.63deg, #043b64 10.531%, #054c74 38.574%, #65bfb5 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.milestone__year-tw {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .milestone__year-tw {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.milestone__year-tw {
  color: #036a80;
}

.milestone__dot {
  position: absolute;
  top: 50%;
  right: calc(var(--milestone-dot) / 2 * -1);
  width: var(--milestone-dot);
  height: var(--milestone-dot);
  border: 2px solid #d1d1d1;
  border-radius: 50%;
  background-color: #ffffff;
  transform: translateY(-50%);
  transition: border-color 0.4s ease, background-color 0.4s ease;
}
@media (max-width: 1023px) {
  .milestone__dot {
    top: calc(var(--milestone-year-size) * 1.125 / 2);
    right: auto;
    left: 0;
  }
}

.milestone__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 32px;
  min-width: 0;
  margin-left: var(--milestone-content-gap);
  opacity: 0.5;
  transition: opacity 0.4s ease;
}
@media (max-width: 1023px) {
  .milestone__content {
    gap: 20px;
    margin-left: 0;
  }
}

.milestone__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.milestone__row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.milestone__icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  margin-top: 8px;
}
@media (max-width: 767px) {
  .milestone__icon {
    margin-top: 3px;
  }
}
.milestone__icon img {
  display: block;
  width: 28px;
  height: 28px;
}

.milestone__text {
  min-width: 0;
  color: #2d2d2d;
}

.milestone__title {
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .milestone__title {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.milestone__title {
  margin-right: 8px;
}
@media (max-width: 1023px) {
  .milestone__title {
    display: block;
    margin-right: 0;
    margin-bottom: 4px;
  }
}

.milestone__desc {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .milestone__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}

.milestone__figures {
  display: flex;
  gap: 32px;
}
@media (max-width: 1023px) {
  .milestone__figures {
    flex-direction: column;
    gap: 16px;
  }
}

.milestone__fig {
  position: relative;
  flex-shrink: 0;
  width: 460px;
  height: 307px;
  overflow: hidden;
}
@media (max-width: 1023px) {
  .milestone__fig {
    width: 100%;
    max-width: 460px;
    height: auto;
    aspect-ratio: 460/307;
  }
}
.milestone__fig img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1279px) {
  .milestone__figures--pair {
    flex-direction: column;
    gap: 16px;
  }
}

.milestone__figures--pair .milestone__fig {
  flex: 1 1 0;
  width: auto;
  max-width: 360px;
  height: auto;
  aspect-ratio: 360/240;
}
@media (max-width: 1279px) {
  .milestone__figures--pair .milestone__fig {
    flex: none;
    width: 100%;
    max-width: 460px;
  }
}

.milestone__fig--curve-a {
  border-top-right-radius: 100px;
  border-bottom-left-radius: 100px;
}
@media (max-width: 1023px) {
  .milestone__fig--curve-a {
    border-top-right-radius: 60px;
    border-bottom-left-radius: 60px;
  }
}

.milestone__fig--curve-b {
  border-top-left-radius: 100px;
  border-bottom-right-radius: 100px;
}
@media (max-width: 1023px) {
  .milestone__fig--curve-b {
    border-top-left-radius: 60px;
    border-bottom-right-radius: 60px;
  }
}

.milestone__item.is-active .milestone__year-text,
.milestone__item.is-active .milestone__content {
  opacity: 1;
}
.milestone__item.is-active .milestone__dot {
  border-color: #0094b0;
  background-color: #0094b0;
}

.chairman {
  position: relative;
  padding-bottom: 86px;
}
@media (max-width: 1023px) {
  .chairman {
    padding-bottom: 0;
  }
}

.chairman__intro {
  display: grid;
  grid-template-columns: 100%;
}
@media (max-width: 1023px) {
  .chairman__intro {
    display: block;
  }
}

.chairman__figure {
  position: relative;
  grid-area: 1/1;
  align-self: start;
  justify-self: end;
  width: 55.1974%;
  aspect-ratio: 839/667.5;
}
@media (max-width: 1023px) {
  .chairman__figure {
    width: calc(100% + 30px);
    margin-left: -30px;
    margin-bottom: var(--space-xs);
    aspect-ratio: 360/324;
    overflow: hidden;
  }
}

.chairman__figure-shape {
  position: absolute;
  top: 18.2772%;
  left: 18.9511%;
  width: 81.0489%;
  height: 74.4569%;
  border-radius: 29.4118% 0 29.4118% 0/40.2414% 0 40.2414% 0;
  background-image: linear-gradient(258.257deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
}
@media (max-width: 1023px) {
  .chairman__figure-shape {
    top: 18.2654%;
    left: 8.3694%;
    width: 91.6306%;
    height: 74.4105%;
  }
}

.chairman__figure-deco {
  position: absolute;
  top: 51.8352%;
  left: 0;
  width: 37.9023%;
  height: 40.8989%;
  border-radius: 0 47.1698% 0 47.1698%/0 54.9451% 0 54.9451%;
  background-color: rgba(249, 225, 177, 0.4);
}
@media (max-width: 1023px) {
  .chairman__figure-deco {
    top: 51.8025%;
    left: -13.0556%;
    width: 42.85%;
    height: 40.8735%;
  }
}

.chairman__figure-pic {
  position: absolute;
  top: 0;
  left: 25.5066%;
  display: block;
  width: 58.7008%;
  height: 100%;
  clip-path: polygon(0 0, 100% 0, 100% 90.9829%, 96.6497% 91.7438%, 93.198% 92.2953%, 89.7462% 92.6262%, 86.2944% 92.7341%, 56.6497% 92.7341%, 50.4569% 96.4045%, 45.4822% 100%, 0 100%);
}
@media (max-width: 1023px) {
  .chairman__figure-pic {
    left: 15.7806%;
    width: 66.3639%;
  }
}
.chairman__figure-pic img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.chairman__lead {
  position: relative;
  z-index: 1;
  grid-area: 1/1;
  display: flex;
  flex-direction: column;
  gap: 72px;
  width: 48.9474%;
  margin-top: 8.0263%;
}
@media (max-width: 1023px) {
  .chairman__lead {
    gap: 0;
    width: 100%;
    margin-top: 0;
  }
}

.chairman__lead-top {
  width: 91%;
}
@media (max-width: 1023px) {
  .chairman__lead-top {
    width: 100%;
  }
}

.chairman__name {
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .chairman__name {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.chairman__name {
  color: #043b64;
  text-align: center;
}

.chairman__quote {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 24px;
}
@media (max-width: 1023px) {
  .chairman__quote {
    display: none;
  }
}

.chairman__quote-mark {
  flex-shrink: 0;
  width: 38px;
  height: 66px;
}
.chairman__quote-mark img {
  display: block;
  width: 38px;
  height: 66px;
}

.chairman__quote-text {
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .chairman__quote-text {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.chairman__quote-text {
  flex: 1;
  min-width: 0;
  color: #043b64;
}

.chairman__watermark {
  font-family: "Inter", serif;
  font-size: 8.3333vw;
  font-weight: 700;
  line-height: normal;
  color: rgba(196, 235, 245, 0.5);
}
@media (max-width: 1023px) {
  .chairman__watermark {
    font-size: min(17.4359vw, 68px);
    text-align: center;
  }
}

.chairman__card {
  position: relative;
  z-index: 1;
  margin-top: var(--space-md);
  padding: 100px 120px;
  border-radius: 40px;
  background-color: #ffffff;
  box-shadow: 0 0 10px rgba(0, 92, 185, 0.15);
}
@media (max-width: 1023px) {
  .chairman__card {
    margin-top: 60px;
    padding: 0;
    border-radius: 0;
    background-color: transparent;
    box-shadow: none;
  }
}
.chairman__card > * + * {
  margin-top: 34px;
}
.chairman__card > .chairman__p + .chairman__subtitle {
  margin-top: 68px;
}

.chairman__subtitle {
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .chairman__subtitle {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
.chairman__subtitle {
  color: #054c72;
}

.chairman__p {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .chairman__p {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.chairman__p {
  color: #2d2d2d;
}

.chairman__deco {
  position: absolute;
  bottom: 0;
  left: -5.7895%;
  z-index: 0;
  width: 27.7632%;
  aspect-ratio: 422/412;
  border-radius: 0 35.545% 0 35.545%/0 36.4078% 0 36.4078%;
  background-image: linear-gradient(98.845deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
}
@media (max-width: 1023px) {
  .chairman__deco {
    display: none;
  }
}

.honor-head {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (min-width: 768px) {
  .honor-head {
    gap: 36px;
  }
}
.honor-head::before, .honor-head::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: rgba(4, 59, 100, 0.15);
}
.honor-head__title {
  margin: 0;
  flex-shrink: 0;
  color: #043b64;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .honor-head__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .honor-head__title {
    font-size: clamp(32px, 100vw * 40 / 1920, 40px);
  }
}

.honor-award {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  margin: 40px auto 0;
}
.honor-award > .fade-up:nth-child(1n+1) {
  animation-delay: 0s;
}
@media (min-width: 768px) {
  .honor-award > .fade-up:nth-child(3n+1) {
    animation-delay: 0s;
  }
  .honor-award > .fade-up:nth-child(3n+2) {
    animation-delay: 0.12s;
  }
  .honor-award > .fade-up:nth-child(3n+3) {
    animation-delay: 0.24s;
  }
  .honor-award {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    max-width: 1249px;
    margin-top: 60px;
  }
}
@media (min-width: 1280px) {
  .honor-award {
    gap: 80px;
  }
}
.honor-award__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
}
.honor-award__pic {
  display: block;
  width: 100%;
  max-width: 320px;
  height: auto;
  border-radius: 20px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.08);
}
.honor-award__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 28px;
  border-radius: 50px;
  background-color: #cbe6f7;
  color: #043b64;
  text-align: center;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .honor-award__brand {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 768px) and (max-width: 1279px) {
  .honor-award__brand {
    padding: 8px 20px;
    font-size: 18px;
  }
}
.honor-award__txt {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: -12px;
}
.honor-award__leaf {
  flex-shrink: 0;
  display: block;
  width: 40px;
  height: 69px;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .honor-award__leaf {
    display: none;
  }
}
@media (min-width: 1024px) {
  .honor-award__leaf {
    width: clamp(24px, 2.5vw, 48px);
    height: auto;
  }
}
.honor-award__leaf--r {
  transform: scaleX(-1);
}
.honor-award__name {
  margin: 0;
  color: #2d2d2d;
  text-align: center;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .honor-award__name {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.honor-award__name {
  font-size: 20px;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .honor-award__name {
    font-size: 18px;
  }
}
@media (min-width: 1024px) {
  .honor-award__name {
    font-size: clamp(18px, 1.25vw, 24px);
  }
}

.honor-cert {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
  margin-top: 40px;
}
.honor-cert > .fade-up:nth-child(1n+1) {
  animation-delay: 0s;
}
@media (min-width: 768px) {
  .honor-cert > .fade-up:nth-child(2n+1) {
    animation-delay: 0s;
  }
  .honor-cert > .fade-up:nth-child(2n+2) {
    animation-delay: 0.12s;
  }
  .honor-cert {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 40px;
    margin-top: 60px;
  }
}
@media (min-width: 1024px) {
  .honor-cert > .fade-up:nth-child(4n+1) {
    animation-delay: 0s;
  }
  .honor-cert > .fade-up:nth-child(4n+2) {
    animation-delay: 0.12s;
  }
  .honor-cert > .fade-up:nth-child(4n+3) {
    animation-delay: 0.24s;
  }
  .honor-cert > .fade-up:nth-child(4n+4) {
    animation-delay: 0.36s;
  }
  .honor-cert {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1280px) {
  .honor-cert {
    gap: 80px;
  }
}
.honor-cert__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
}
.honor-cert__link {
  display: block;
  width: 100%;
  max-width: 320px;
  border-radius: 20px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.08);
  transition: translate 0.3s ease, box-shadow 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .honor-cert__link:hover {
    translate: 0 -6px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
  }
}
.honor-cert__pic {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 20px;
}
.honor-cert__name {
  margin: 0;
  color: #2d2d2d;
  text-align: center;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .honor-cert__name {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}

.honor-section + .honor-section {
  margin-top: 80px;
}
@media (min-width: 768px) {
  .honor-section + .honor-section {
    margin-top: 100px;
  }
}
@media (min-width: 1280px) {
  .honor-section + .honor-section {
    margin-top: 160px;
  }
}

.home-intro-outer {
  position: fixed;
  inset: 0;
  z-index: 9999;
  overflow: hidden;
}
.home-intro-outer .home-intro-bg {
  position: absolute;
  inset: 0;
  background: #e4f4f8;
  will-change: transform;
}
.home-intro-outer .home-intro-inner {
  position: relative;
  z-index: 1;
}
.home-intro-outer .home-intro-text {
  opacity: 0;
}
.home-intro-outer .home-intro-text .line {
  display: block;
  overflow: hidden;
}
.home-intro-outer .char {
  display: inline-block;
  opacity: 0;
  transform: translateY(30px);
  will-change: transform, opacity;
}
.home-intro-outer .home-intro-logo {
  opacity: 0;
  transform: translateY(20px);
  will-change: transform, opacity;
}
.home-intro-outer.is-ready .home-intro-text,
.home-intro-outer.is-ready .char,
.home-intro-outer.is-ready .home-intro-logo {
  opacity: 1;
  transform: none;
}

.home-main {
  overflow-x: hidden;
  background-color: #ffffff;
}

.home-banner-outer {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
  margin-top: var(--header-h);
}
@media (min-width: 1024px) {
  .home-banner-outer {
    margin-left: 6.25vw;
    padding-bottom: 40px;
  }
}
@media (max-width: 1023px) {
  .home-banner-outer .home-banner__crop {
    display: grid;
    grid-template-columns: 100%;
    align-content: end;
    max-height: calc(100vh - var(--header-h));
    max-height: calc(100dvh - var(--header-h));
    overflow: hidden;
  }
}
@media (max-width: 1023px) and (orientation: landscape) {
  .home-banner-outer .home-banner__crop {
    max-height: none;
  }
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner__crop {
    display: grid;
    grid-template-columns: 100%;
    align-content: end;
    max-height: calc(100vh - var(--header-h) - 40px);
    overflow: hidden;
  }
}
.home-banner-outer .home-banner__deco {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  display: block;
  width: 100%;
  aspect-ratio: 390/632;
  pointer-events: none;
  -webkit-mask: url("../img/index/home-banner-xs-d.svg") no-repeat right top/100% 100%;
  mask: url("../img/index/home-banner-xs-d.svg") no-repeat right top/100% 100%;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.8s cubic-bezier(0.65, 0, 0.35, 1);
}
.home-banner-outer .home-banner__deco.is-enter {
  clip-path: inset(0 0 0 0);
  transition-delay: 0.8s;
}
.home-banner-outer .home-banner__deco::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 140%;
  height: 100%;
  background: linear-gradient(90deg, #054c72 0%, #a9d7cd 38.5%);
  will-change: transform;
  animation: home-deco-flow 16s ease-in-out infinite alternate;
}
@media (min-width: 768px) {
  .home-banner-outer .home-banner__deco {
    aspect-ratio: 768/812;
    -webkit-mask-image: url("../img/index/home-banner-md-d.svg");
    mask-image: url("../img/index/home-banner-md-d.svg");
  }
}
@media (max-width: 1023px) and (orientation: landscape) {
  .home-banner-outer .home-banner__deco {
    aspect-ratio: 390/632;
    -webkit-mask-image: url("../img/index/home-banner-xs-d.svg");
    mask-image: url("../img/index/home-banner-xs-d.svg");
  }
}
@media (max-width: 1023px) {
  .home-banner-outer .home-banner__deco {
    position: relative;
    grid-area: 1/1;
    align-self: end;
    min-height: 0;
  }
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner__deco {
    position: relative;
    grid-area: 1/1;
    align-self: end;
    justify-self: end;
    width: 92.96875%;
    aspect-ratio: 1785/1000;
    -webkit-mask-image: url("../img/index/home-banner-lg-d.svg");
    mask-image: url("../img/index/home-banner-lg-d.svg");
  }
}
.home-banner-outer .home-banner__stage {
  position: relative;
  z-index: 1;
  width: 100%;
  aspect-ratio: 390/617;
  -webkit-mask: url("../img/index/home-banner-xs.svg") no-repeat center bottom/100% auto;
  mask: url("../img/index/home-banner-xs.svg") no-repeat center bottom/100% auto;
}
@media (min-width: 768px) {
  .home-banner-outer .home-banner__stage {
    -webkit-mask-image: url("../img/index/home-banner-md-mask.svg");
    mask-image: url("../img/index/home-banner-md-mask.svg");
  }
}
@media (max-width: 1023px) and (orientation: landscape) {
  .home-banner-outer .home-banner__stage {
    -webkit-mask-image: url("../img/index/home-banner-xs.svg");
    mask-image: url("../img/index/home-banner-xs.svg");
  }
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner__stage {
    -webkit-mask-image: url("../img/index/home-banner-lg-mask.svg");
    mask-image: url("../img/index/home-banner-lg-mask.svg");
  }
}
.home-banner-outer .home-banner__stage {
  background-color: #ffffff;
  opacity: 0;
}
.home-banner-outer .home-banner__stage.is-enter {
  animation: home-banner-fade-in 0.9s ease forwards;
}
@media (min-width: 768px) {
  .home-banner-outer .home-banner__stage {
    aspect-ratio: 768/783;
  }
}
@media (max-width: 1023px) {
  .home-banner-outer .home-banner__stage {
    grid-area: 1/1;
    align-self: end;
    min-height: 0;
    margin-bottom: 3.8462%;
    max-height: calc(100vh - var(--header-h) - 148px - 3.8462vw);
    max-height: calc(100dvh - var(--header-h) - 148px - 3.8462vw);
  }
}
@media (max-width: 1023px) and (min-width: 768px) {
  .home-banner-outer .home-banner__stage {
    margin-bottom: 3.776%;
    max-height: calc(100vh - var(--header-h) - 148px - 3.776vw);
    max-height: calc(100dvh - var(--header-h) - 148px - 3.776vw);
  }
}
@media (max-width: 1023px) and (orientation: landscape) {
  .home-banner-outer .home-banner__stage {
    aspect-ratio: 390/617;
    margin-bottom: 3.8462%;
    max-height: none;
  }
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner__stage {
    grid-area: 1/1;
    align-self: end;
    min-height: 0;
    width: 92.96875%;
    margin-left: auto;
    aspect-ratio: 1785/1000;
    max-height: calc(100vh - var(--header-h) - 40px);
  }
}
.home-banner-outer .banner-img img,
.home-banner-outer .idx-video-box .video-mp4 video {
  object-position: center top;
}
.home-banner-outer .home-banner__slick {
  height: 100%;
}
.home-banner-outer .home-banner__slick.is-ready .slick-current .banner-img img {
  animation: home-banner-kenburns 6s linear forwards;
}
.home-banner-outer .home-banner-slogan-outer {
  position: relative;
  z-index: 2;
  display: grid;
  padding: 30px;
}
@media (max-width: 1023px) {
  .home-banner-outer .home-banner-slogan-outer {
    grid-area: 2/1;
  }
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner-slogan-outer {
    position: static;
    grid-area: 1/1;
    align-self: end;
    justify-self: start;
    padding: 0;
    margin: 0 0 2.96875% 0;
  }
}
.home-banner-outer .home-banner__slogan {
  grid-area: 1/1;
  margin: 0;
  color: #2d2d2d;
  font-size: 28px;
  line-height: 157%;
  letter-spacing: 0.08em;
  font-weight: 500;
  visibility: hidden;
  transition: visibility 0s linear 0.35s;
}
.home-banner-outer .home-banner__slogan .line {
  display: block;
  overflow: hidden;
}
.home-banner-outer .home-banner__slogan .char {
  display: inline-block;
  opacity: 0;
  translate: 0 100%;
  transition: opacity 0.35s ease, translate 0.35s ease;
}
.home-banner-outer .home-banner__slogan.is-active {
  visibility: visible;
  transition: visibility 0s;
}
.home-banner-outer .home-banner__slogan.is-active .char {
  opacity: 1;
  translate: 0 0;
  transition: opacity 0.5s ease calc(var(--i) * 0.03s), translate 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) calc(var(--i) * 0.03s);
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner__slogan {
    line-height: 158%;
    letter-spacing: 0.1em;
  }
}
@media (min-width: 1024px) {
  .home-banner-outer .home-banner__slogan {
    font-size: clamp(40px, 100vw * 48 / 1920, 48px);
  }
}
@media (min-width: 1280px) {
  .home-banner-outer .home-banner__slogan {
    letter-spacing: 0.12em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-banner__deco::before {
    animation: none;
  }
  .home-develop__yellow,
  .home-develop__yellow.a-play,
  .home-develop__media,
  .home-develop__media.a-play {
    clip-path: none;
    transition: none;
  }
  .home-banner__deco,
  .home-banner__deco.is-enter,
  .home-banner__stage,
  .home-banner__stage.is-enter {
    opacity: 1;
    animation: none;
    clip-path: none;
    transition: none;
  }
  .home-banner__slick .slick-current .banner-img img {
    animation: none;
  }
  .home-banner__slogan,
  .home-banner__slogan.is-active {
    transition: none;
  }
  .home-banner__slogan .char,
  .home-banner__slogan.is-active .char {
    opacity: 1;
    translate: none;
    transition: none;
  }
}
@keyframes home-banner-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes home-banner-kenburns {
  from {
    transform: scale(1.08);
  }
  to {
    transform: scale(1);
  }
}
@keyframes home-deco-flow {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-28.5714%, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-banner__deco {
    animation: none;
  }
}
.home-brands-outer {
  position: relative;
  padding: 57px 0 11.45vw;
  background: linear-gradient(180deg, #ffffff 0, #e4f4f7 130px);
}
@media (max-width: 767px) {
  .home-brands-outer {
    padding: 80px 0 105px;
    background: linear-gradient(180deg, #ffffff 0, #e4f4f7 300px);
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-brands-outer {
    padding-bottom: 140px;
  }
}
.home-brands-outer .home-brands__wave {
  position: absolute;
  left: 0;
  bottom: -1px;
  z-index: 2;
  display: block;
  width: 100%;
  height: auto;
  pointer-events: none;
}

@keyframes home-ring-pulse {
  0% {
    scale: 1;
    opacity: 0.55;
  }
  70% {
    opacity: 0;
  }
  100% {
    scale: 1.45;
    opacity: 0;
  }
}
@keyframes home-wave-ring-1 {
  0% {
    opacity: 0;
  }
  6% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  81% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-2 {
  0% {
    opacity: 0;
  }
  2.5% {
    opacity: 0;
  }
  8.5% {
    opacity: 1;
  }
  72.5% {
    opacity: 1;
  }
  78.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-3 {
  0% {
    opacity: 0;
  }
  5% {
    opacity: 0;
  }
  11% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-4 {
  0% {
    opacity: 0;
  }
  7.5% {
    opacity: 0;
  }
  13.5% {
    opacity: 1;
  }
  67.5% {
    opacity: 1;
  }
  73.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-5 {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 0;
  }
  16% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  71% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-6 {
  0% {
    opacity: 0;
  }
  12.5% {
    opacity: 0;
  }
  18.5% {
    opacity: 1;
  }
  62.5% {
    opacity: 1;
  }
  68.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-7 {
  0% {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  21% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  66% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-8 {
  0% {
    opacity: 0;
  }
  17.5% {
    opacity: 0;
  }
  23.5% {
    opacity: 1;
  }
  57.5% {
    opacity: 1;
  }
  63.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-9 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  26% {
    opacity: 1;
  }
  55% {
    opacity: 1;
  }
  61% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-10 {
  0% {
    opacity: 0;
  }
  22.5% {
    opacity: 0;
  }
  28.5% {
    opacity: 1;
  }
  52.5% {
    opacity: 1;
  }
  58.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes home-wave-ring-11 {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  31% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  56% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.home-develop__ring,
.home-career__ring {
  aspect-ratio: 1/1;
}
.home-develop__ring path,
.home-career__ring path {
  opacity: 0;
}
.home-develop__ring.is-in path,
.home-career__ring.is-in path {
  animation-duration: 10s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
.home-develop__ring.is-in path:nth-child(1),
.home-career__ring.is-in path:nth-child(1) {
  animation-name: home-wave-ring-1;
}
.home-develop__ring.is-in path:nth-child(2),
.home-career__ring.is-in path:nth-child(2) {
  animation-name: home-wave-ring-2;
}
.home-develop__ring.is-in path:nth-child(3),
.home-career__ring.is-in path:nth-child(3) {
  animation-name: home-wave-ring-3;
}
.home-develop__ring.is-in path:nth-child(4),
.home-career__ring.is-in path:nth-child(4) {
  animation-name: home-wave-ring-4;
}
.home-develop__ring.is-in path:nth-child(5),
.home-career__ring.is-in path:nth-child(5) {
  animation-name: home-wave-ring-5;
}
.home-develop__ring.is-in path:nth-child(6),
.home-career__ring.is-in path:nth-child(6) {
  animation-name: home-wave-ring-6;
}
.home-develop__ring.is-in path:nth-child(7),
.home-career__ring.is-in path:nth-child(7) {
  animation-name: home-wave-ring-7;
}
.home-develop__ring.is-in path:nth-child(8),
.home-career__ring.is-in path:nth-child(8) {
  animation-name: home-wave-ring-8;
}
.home-develop__ring.is-in path:nth-child(9),
.home-career__ring.is-in path:nth-child(9) {
  animation-name: home-wave-ring-9;
}
.home-develop__ring.is-in path:nth-child(10),
.home-career__ring.is-in path:nth-child(10) {
  animation-name: home-wave-ring-10;
}
.home-develop__ring.is-in path:nth-child(11),
.home-career__ring.is-in path:nth-child(11) {
  animation-name: home-wave-ring-11;
}

@media (prefers-reduced-motion: reduce) {
  .home-brands__ring,
  .home-brands__ring-txt,
  .home-brands__pic,
  .home-brands__logo {
    transition: none;
  }
  .home-brands__ring.is-in::before,
  .home-brands__ring.is-in::after {
    animation: none;
  }
  .home-develop__ring path,
  .home-career__ring path,
  .home-develop__ring.is-in path,
  .home-career__ring.is-in path {
    animation: none;
    opacity: 1;
  }
}
.home-brands {
  --ring: clamp(274px, 20.41667vw, 392px);
  position: relative;
  padding-top: calc(var(--ring) / 2);
}
@media (max-width: 767px) {
  .home-brands {
    --ring: min(70.25641vw, 274px);
    padding-top: 0;
  }
}
.home-brands__ring {
  position: absolute;
  left: 50%;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--ring);
  height: var(--ring);
  transform: translateX(-50%);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.4);
  opacity: 0;
  scale: 0.86;
  transition: opacity 0.9s ease, scale 0.9s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.home-brands__ring.is-in {
  opacity: 1;
  scale: 1;
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .home-brands__ring {
    top: -40px;
  }
}
.home-brands__ring::before, .home-brands__ring::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.55);
  opacity: 0;
  pointer-events: none;
}
.home-brands__ring.is-in::before, .home-brands__ring.is-in::after {
  animation: home-ring-pulse 3.6s cubic-bezier(0.22, 0.61, 0.36, 1) 0.9s infinite;
}
.home-brands__ring.is-in::after {
  animation-delay: 2.7s;
}
@media (max-width: 767px) {
  .home-brands__ring {
    position: relative;
    left: auto;
    top: auto;
    margin: 0 auto 60px;
    transform: none;
  }
}
.home-brands__ring-in {
  position: absolute;
  inset: 6.1224%;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 767px) {
  .home-brands__ring-in {
    inset: 6.2044%;
  }
}
.home-brands__ring-txt {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--ring) * 0.0612245);
  text-align: center;
  opacity: 0;
  translate: 0 16px;
}
@media (max-width: 767px) {
  .home-brands__ring-txt {
    gap: calc(var(--ring) * 0.0875912);
  }
}
.home-brands__ring-txt {
  transition: opacity 0.7s ease 0.25s, translate 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) 0.25s;
}
.home-brands__ring.is-in .home-brands__ring-txt {
  opacity: 1;
  translate: 0 0;
}
.home-brands__ring-t1, .home-brands__ring-t3 {
  margin: 0;
  font-family: "Noto Serif TC", serif;
  font-size: calc(var(--ring) * 0.142857);
  line-height: 1;
  font-weight: 600;
  background: linear-gradient(123.61deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (max-width: 767px) {
  .home-brands__ring-t1, .home-brands__ring-t3 {
    font-size: calc(var(--ring) * 0.1313869);
  }
}
.home-brands__ring-t1 {
  letter-spacing: 0.12em;
  text-indent: 0.12em;
}
.home-brands__ring-t2 {
  margin: 0;
  font-family: "Noto Serif TC", serif;
  font-size: calc(var(--ring) * 0.0816327);
  line-height: 1;
  letter-spacing: 0.08em;
  text-indent: 0.08em;
  font-weight: 600;
  color: #2d2d2d;
}
@media (max-width: 767px) {
  .home-brands__ring-t2 {
    font-size: calc(var(--ring) * 0.0875912);
  }
}
.home-brands__wrap {
  display: flex;
  gap: 40px;
}
@media (max-width: 1023px) {
  .home-brands__wrap {
    display: block;
  }
}
.home-brands__col {
  flex: 1 1 0;
  min-width: 0;
}
@media (max-width: 1023px) {
  .home-brands__col + .home-brands__col {
    margin-top: 60px;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-brands__col + .home-brands__col {
    margin-top: 100px;
  }
}
.home-brands__card {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 820/472;
}
.home-brands__col--shampoo .home-brands__card {
  border-radius: 0 24.3902% 0 24.3902%/0 42.3729% 0 42.3729%;
}
.home-brands__col--hairdye .home-brands__card {
  border-radius: 24.3902% 0 24.3902% 0/42.3729% 0 42.3729% 0;
}
.home-brands__pic {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (hover: hover) {
  .home-brands__card:hover .home-brands__pic {
    scale: 1.1;
  }
}
.home-brands__label {
  position: absolute;
  top: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  transform: translate(-50%, -50%);
  white-space: nowrap;
}
.home-brands__col--shampoo .home-brands__label {
  left: 75%;
  color: #2c8595;
}
.home-brands__col--hairdye .home-brands__label {
  left: 25%;
  color: #5f4838;
}
@media (max-width: 767px) {
  .home-brands__col--shampoo .home-brands__label {
    left: 80.15%;
  }
  .home-brands__col--hairdye .home-brands__label {
    left: 19.85%;
  }
}
.home-brands__label-tw {
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  text-indent: 0.08em;
  font-weight: 500;
}
@media (min-width: 1024px) {
  .home-brands__label-tw {
    font-size: clamp(32px, 100vw * 40 / 1920, 40px);
  }
}
@media (max-width: 767px) {
  .home-brands__label-tw {
    font-size: 28px;
    line-height: 157%;
  }
}
.home-brands__label-en {
  font-family: "Inter", sans-serif;
  font-size: 24px;
  line-height: normal;
  letter-spacing: 0.04em;
  font-weight: 300;
  font-style: italic;
}
@media (max-width: 767px) {
  .home-brands__label-en {
    font-size: 18px;
  }
}
.home-brands__list {
  position: relative;
  margin-top: 20px;
}
.home-brands__list .swiper {
  overflow: hidden;
  margin: -10px -3px -20px;
  padding: 10px 3px 20px;
}
@media (min-width: 768px) {
  .home-brands__list--pc-nodots .home-brands__dots {
    display: none;
  }
}
.home-brands__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 260/110;
  border-radius: 12px;
  border: 1px solid #dee9eb;
  background-color: #ffffff;
  box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.05);
  transition: translate 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .home-brands__logo:hover {
    translate: 0 -6px;
    box-shadow: 4px 10px 16px rgba(0, 0, 0, 0.1);
    border-color: #4c97bf;
  }
}
.home-brands__col--hairdye .home-brands__logo {
  border-color: #f2ece0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .home-brands__col--hairdye .home-brands__logo:hover {
    border-color: #b38a6e;
  }
}
.home-brands__logo-img {
  display: block;
  height: auto;
  object-fit: contain;
}
.home-brands__logo-img--s1 {
  width: 53.8462%;
}
@media (max-width: 767px) {
  .home-brands__logo-img--s1 {
    width: 57.8616%;
  }
}
.home-brands__logo-img--s2 {
  width: 57.6923%;
}
@media (max-width: 767px) {
  .home-brands__logo-img--s2 {
    width: 57.8616%;
  }
}
.home-brands__logo-img--s3 {
  width: 53.8462%;
}
@media (max-width: 767px) {
  .home-brands__logo-img--s3 {
    width: 57.8616%;
  }
}
.home-brands__logo-img--h1 {
  width: 53.8462%;
}
@media (max-width: 767px) {
  .home-brands__logo-img--h1 {
    width: 57.2327%;
  }
}
.home-brands__logo-img--h2 {
  width: 53.8462%;
}
@media (max-width: 767px) {
  .home-brands__logo-img--h2 {
    width: 57.8616%;
  }
}
.home-brands__logo-img--h3 {
  width: 34.6154%;
}
@media (max-width: 767px) {
  .home-brands__logo-img--h3 {
    width: 37.1069%;
  }
}
.home-brands__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  margin-top: 52px;
}
.home-brands__dots.swiper-pagination-lock, .home-brands__dots:empty {
  display: none;
}
@media (max-width: 767px) {
  .home-brands__dots {
    gap: 24px;
    margin-top: 20px;
  }
}
.home-brands__dots .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  margin: 0;
  opacity: 1;
  border-radius: 50%;
  border: 1px solid #4c97bf;
  background-color: #ffffff;
  transition: background-color 0.3s ease;
}
@media (max-width: 767px) {
  .home-brands__dots .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
  }
}
.home-brands__dots .swiper-pagination-bullet-active {
  background-color: #4c97bf;
}
.home-brands__col--hairdye .home-brands__dots .swiper-pagination-bullet {
  border-color: #b38a6e;
}
.home-brands__col--hairdye .home-brands__dots .swiper-pagination-bullet-active {
  background-color: #b38a6e;
}

.home-number-outer {
  padding: 54px 0 90px;
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .home-number-outer {
    padding: 80px 0 100px;
  }
}

.home-number__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15.625vw;
}
@media (max-width: 1279px) {
  .home-number__list {
    gap: 8.3333vw;
  }
}
@media (max-width: 767px) {
  .home-number__list {
    flex-direction: column;
    gap: 60px;
  }
}
.home-number__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  width: 240px;
  text-align: center;
}
.home-number__icon {
  display: block;
  width: 100px;
  height: 100px;
}
.home-number__txt {
  color: #2d2d2d;
  white-space: nowrap;
}
.home-number__t1 {
  margin: 0;
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 700;
}
@media (max-width: 767px) {
  .home-number__t1 {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .home-number__t1 {
    font-size: clamp(24px, 100vw * 28 / 1920, 28px);
  }
}
.home-number__t2 {
  margin: 0;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .home-number__t2 {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-number__item {
    width: 23.4375vw;
    gap: 3.125vw;
  }
  .home-number__icon {
    width: 9.7656vw;
    height: 9.7656vw;
  }
  .home-number__t1 {
    font-size: 2.7344vw;
  }
  .home-number__t2 {
    font-size: 1.9531vw;
  }
}

.home-develop-outer {
  position: relative;
  aspect-ratio: 1920/976;
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .home-develop-outer {
    aspect-ratio: 390/693;
  }
}
.home-develop-outer .home-develop__media {
  position: absolute;
  inset: 0;
  z-index: 1;
  -webkit-mask: url("../img/index/home-develop-mask.svg") no-repeat center/100% 100%;
  mask: url("../img/index/home-develop-mask.svg") no-repeat center/100% 100%;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.home-develop-outer .home-develop__media.a-play {
  clip-path: inset(0 0 0 0);
}
@media (max-width: 767px) {
  .home-develop-outer .home-develop__media {
    -webkit-mask-image: url("../img/index/home-develop-mask-xs.svg");
    mask-image: url("../img/index/home-develop-mask-xs.svg");
  }
}
.home-develop-outer .home-develop__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
}
@media (max-width: 767px) {
  .home-develop-outer .home-develop__media::after {
    display: none;
  }
}
.home-develop-outer .home-develop__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-develop-outer .home-develop__yellow {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: auto;
  pointer-events: none;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.home-develop-outer .home-develop__yellow.a-play {
  clip-path: inset(0 0 0 0);
  transition-delay: 0.45s;
}
@media (max-width: 767px) {
  .home-develop-outer .home-develop__yellow {
    display: none;
  }
}
.home-develop-outer .home-develop__scrim {
  display: none;
}
@media (max-width: 767px) {
  .home-develop-outer .home-develop__scrim {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }
}
.home-develop-outer .home-develop__ring {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: block;
  width: 20.26vw;
  height: auto;
  pointer-events: none;
}
@media (max-width: 767px) {
  .home-develop-outer .home-develop__ring {
    display: none;
  }
}

.home-develop {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  align-items: flex-end;
  padding-bottom: 14.53125vw;
}
@media (max-width: 767px) {
  .home-develop {
    padding-bottom: 40px;
  }
}
.home-develop__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4.1666vw;
  color: #ffffff;
}
@media (max-width: 767px) {
  .home-develop__body {
    gap: 40px;
  }
}
.home-develop__head {
  display: flex;
  flex-direction: column;
  gap: 8px;
  white-space: nowrap;
}
.home-develop__title {
  margin: 0;
  font-size: 48px;
  line-height: 158%;
  letter-spacing: 0.12em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .home-develop__title {
    font-size: 32px;
    line-height: 156%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .home-develop__title {
    font-size: clamp(40px, 100vw * 48 / 1920, 48px);
  }
}
.home-develop__sub {
  margin: 0;
  font-size: 28px;
  line-height: 44px;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (min-width: 1024px) {
  .home-develop__sub {
    font-size: clamp(24px, 100vw * 28 / 1920, 28px);
  }
}
@media (max-width: 767px) {
  .home-develop__sub {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.home-develop__tags {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media (max-width: 767px) {
  .home-develop__tags {
    gap: 20px;
  }
}
.home-develop__tag {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .home-develop__tag {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .home-develop__tag {
    font-size: clamp(24px, 100vw * 28 / 1920, 28px);
  }
}
.home-develop__tag {
  line-height: 171%;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .home-develop__tag {
    font-size: 18px;
    line-height: 189%;
  }
}
.home-develop__star {
  flex-shrink: 0;
  display: block;
  width: 20px;
  height: 20px;
}

.home-career-outer {
  position: relative;
  padding: 100px 0 0;
  background-color: #ffffff;
}
@media (max-width: 1023px) {
  .home-career-outer {
    padding: 88px 0 90px;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-career-outer {
    padding-bottom: 0;
  }
}
.home-career-outer .home-career__ring {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  width: 20.26vw;
  height: auto;
  pointer-events: none;
}
@media (max-width: 1023px) {
  .home-career-outer .home-career__ring {
    display: none;
  }
}

.home-career {
  position: relative;
  min-height: min(38.125vw, 732px);
}
@media (max-width: 1023px) {
  .home-career {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-career {
    max-width: 600px;
    margin: 0 auto;
  }
}
.home-career__figure {
  position: absolute;
  right: 0;
  top: 0;
  width: 61.4286%;
  aspect-ratio: 1032/732;
}
@media (max-width: 1023px) {
  .home-career__figure {
    position: relative;
    right: auto;
    top: auto;
    order: 2;
    width: 125.243%;
    margin: 28px 0 40px -25.243%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-career__figure {
    max-width: 411.67px;
    margin: 28px auto 40px;
  }
}
.home-career__shape {
  position: absolute;
}
.home-career__shape--main {
  left: 20.155%;
  top: 24.727%;
  width: 79.845%;
  height: 75.273%;
  border-radius: min(10.4167vw, 200px) 0 min(10.4167vw, 200px) 0;
  background: linear-gradient(257.2deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
}
@media (max-width: 1023px) {
  .home-career__shape--main {
    border-radius: 80px 0 80px 0;
  }
}
.home-career__shape--sub {
  left: 0;
  top: 51.23%;
  width: 40.31%;
  height: 48.77%;
  border-radius: 0 min(7.8125vw, 150px) 0 min(7.8125vw, 150px);
  background-color: rgba(249, 225, 177, 0.4);
}
@media (max-width: 1023px) {
  .home-career__shape--sub {
    border-radius: 0 60px 0 60px;
  }
}
.home-career__pic {
  position: absolute;
  left: 31.589%;
  top: 0;
  width: 56.88%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
@media (max-width: 1023px) {
  .home-career__pic {
    width: auto;
    object-fit: contain;
  }
}
.home-career__body {
  width: 46%;
  padding-top: min(9.4271vw, 181px);
}
@media (max-width: 1023px) {
  .home-career__body {
    order: 3;
    width: 100%;
    padding-top: 0;
  }
}
.home-career__head {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 40px;
  color: #2d2d2d;
}
@media (max-width: 1023px) {
  .home-career__head {
    align-items: flex-start;
  }
}
.home-career__title {
  margin: 0;
  font-size: 48px;
  line-height: 158%;
  letter-spacing: 0.12em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .home-career__title {
    font-size: 32px;
    line-height: 156%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 1279px) {
  .home-career__title {
    white-space: normal;
  }
}
@media (min-width: 1024px) {
  .home-career__title {
    font-size: clamp(40px, 100vw * 48 / 1920, 48px);
  }
}
@media (max-width: 1023px) {
  .home-career__title {
    font-size: 28px;
    line-height: 157%;
  }
}
.home-career__sub {
  margin: 0;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .home-career__sub {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 1023px) {
  .home-career__sub {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 1023px) {
  .home-career__body .c-btn-arrow {
    display: flex;
    width: fit-content;
    margin: 0 auto;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .home-career__head {
    align-items: center;
  }
  .home-career__en, .home-career__title, .home-career__sub {
    text-align: center;
  }
}
.home-career__en {
  margin: 80px 0 0;
  width: 44.464%;
  font-family: "Outfit", "Inter", serif;
  font-size: min(8.3333vw, 160px);
  line-height: normal;
  font-weight: 700;
  color: rgba(196, 235, 245, 0.5);
}
@media (max-width: 1023px) {
  .home-career__en {
    order: 1;
    width: 100%;
    margin: 0;
    font-size: 72px;
  }
}

.home-esg-outer {
  padding: 180px 0 0;
  background-color: #ffffff;
}
@media (max-width: 1279px) {
  .home-esg-outer {
    padding-top: 100px;
  }
}
@media (max-width: 767px) {
  .home-esg-outer {
    padding-top: 0;
  }
}

.home-esg {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 32px;
  row-gap: 33px;
}
@media (max-width: 767px) {
  .home-esg {
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
}
.home-esg__card {
  --ratio: 32.0388%;
  position: relative;
  display: flex;
  align-items: flex-start;
  overflow: hidden;
  border-radius: 20px;
}
.home-esg__card::before {
  content: "";
  flex-shrink: 0;
  width: 0;
  padding-top: var(--ratio);
}
.home-esg__card--lg {
  --ratio: 0;
  grid-column: 1;
  grid-row: span 2;
}
@media (max-width: 767px) {
  .home-esg__card {
    border-radius: 12px;
    align-items: center;
  }
  .home-esg__card, .home-esg__card--lg {
    --ratio: 32.1212%;
  }
}
.home-esg__pic {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.home-esg__mask {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 70.1%);
}
@media (max-width: 767px) {
  .home-esg__mask {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
  }
}
.home-esg__info {
  position: relative;
  z-index: 1;
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 32px 57px;
}
@media (max-width: 767px) {
  .home-esg__info {
    padding: 0 30px;
  }
}
.home-esg__txt {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: #ffffff;
}
.home-esg__title {
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 700;
}
@media (max-width: 767px) {
  .home-esg__title {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .home-esg__title {
    font-size: clamp(24px, 100vw * 28 / 1920, 28px);
  }
}
.home-esg__des {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .home-esg__des {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 767px) {
  .home-esg__des {
    display: none;
  }
}
.home-esg__more {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #34b2cf;
  transition: background-color 0.3s ease;
}
.home-esg__arrow {
  display: block;
  width: 24px;
  height: 24px;
  background-color: #ffffff;
  -webkit-mask: url("../img/layout/i-arrow-right.svg") no-repeat center/contain;
  mask: url("../img/layout/i-arrow-right.svg") no-repeat center/contain;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .home-esg__card:hover .home-esg__pic {
    transform: scale(1.1);
  }
  .home-esg__card:hover .home-esg__more {
    background-color: #036a80;
  }
}

.banner-block .slick-dots:has(li:only-child) {
  display: none;
}

.banner-box .slick-list,
.banner-box .slick-track,
.banner-box .slick-slide {
  height: 100%;
}
.banner-box .banner-box {
  margin-bottom: 0;
}
.banner-box .banner-list h1,
.banner-box .banner-list h2,
.banner-box .banner-list p {
  opacity: 0;
  animation-duration: 1.2s;
  animation-fill-mode: forwards;
  animation-timing-function: ease;
  animation-iteration-count: 1;
}
.banner-box .slick-active p,
.banner-box .slick-active h2,
.banner-box .slick-active h1 {
  animation-name: fadeInUp;
  opacity: 1;
}
.banner-box .slick-active p {
  animation-name: fadeInUp;
  animation-delay: 0.4s;
}
.banner-box .banner-img {
  width: 100%;
  height: 100%;
}
.banner-box .banner-img picture,
.banner-box .banner-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner-box {
  /* 針對 data-video-type="video" 的元素 */
}
.banner-box [data-video-type=video] .banner-img,
.banner-box [data-video-type=youtube] .banner-img {
  transition: opacity 0.4s ease;
}
.banner-box [data-video-type=video] .banner-img.close,
.banner-box [data-video-type=youtube] .banner-img.close {
  opacity: 0;
}
.banner-box .slick-dots {
  position: absolute;
  right: 60px;
  left: auto;
  top: 50%;
  bottom: auto;
  transform: translateY(-50%);
  width: auto;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  z-index: 3;
}
@media (max-width: 1023px) {
  .banner-box .slick-dots {
    right: 20px;
  }
}
.banner-box .slick-dots li {
  width: 10px;
  height: auto;
  margin: 0;
}
.banner-box .slick-dots li button {
  display: block;
  width: 10px;
  height: 10px;
  padding: 0;
  border: 0;
  border-radius: 50px;
  background: #ffffff;
  font-size: 0;
  line-height: 0;
  color: transparent;
  cursor: pointer;
  transition: height 0.4s ease, background-color 0.4s ease;
}
.banner-box .slick-dots li button::before {
  content: none;
}
.banner-box .slick-dots li.slick-active button {
  height: 52px;
  background: #a9d7cd;
}

.idx-video-box {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
}
.idx-video-box .video-iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 320.46% !important;
  height: 100% !important;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
@media (min-width: 768px) {
  .idx-video-box .video-iframe {
    width: 208.34% !important;
  }
}
@media (min-width: 1024px) {
  .idx-video-box .video-iframe {
    top: 0;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16/9;
    transform: translateX(-50%);
  }
}
.idx-video-box .video-mp4 video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-mask: url("../img/index/home-banner-xs.svg") no-repeat center bottom/100% auto;
  mask: url("../img/index/home-banner-xs.svg") no-repeat center bottom/100% auto;
}
@media (min-width: 768px) {
  .idx-video-box .video-mp4 video {
    -webkit-mask-image: url("../img/index/home-banner-md-mask.svg");
    mask-image: url("../img/index/home-banner-md-mask.svg");
  }
}
@media (max-width: 1023px) and (orientation: landscape) {
  .idx-video-box .video-mp4 video {
    -webkit-mask-image: url("../img/index/home-banner-xs.svg");
    mask-image: url("../img/index/home-banner-xs.svg");
  }
}
@media (min-width: 1024px) {
  .idx-video-box .video-mp4 video {
    -webkit-mask-image: url("../img/index/home-banner-lg-mask.svg");
    mask-image: url("../img/index/home-banner-lg-mask.svg");
  }
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 1279px) {
  .news-filter {
    position: relative;
    z-index: 5;
  }
}
.news-filter__toggle {
  display: none;
}
@media (max-width: 1279px) {
  .news-filter__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 12px 22px;
    border: 1px solid #34b2cf;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
    font-family: inherit;
    cursor: pointer;
  }
}
.news-filter__toggle-text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .news-filter__toggle-text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.news-filter__toggle-text {
  color: #054c72;
}
.news-filter__toggle-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 19.5px;
  height: 13px;
}
.news-filter__toggle-arrow img {
  width: 17px;
  height: 10px;
  transform: rotate(180deg);
}

@media (max-width: 1279px) {
  .news-tab {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    display: none;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    padding: 12px 22px;
    border: 1px solid #34b2cf;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
  }
  .news-tab.is-open {
    display: flex;
  }
}
@media (min-width: 1280px) {
  .news-tab {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    border-radius: 100px;
    background-color: #f1f7fd;
    box-shadow: -8px -8px 16px 0 #ffffff, 8px 8px 16px 0 rgba(201, 217, 232, 0.5);
  }
}
@media (max-width: 1279px) {
  .news-tab__item {
    display: block;
    width: 100%;
  }
}
@media (min-width: 1280px) {
  .news-tab__item {
    flex: 1 0 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 32px;
    border-radius: 500px;
    transition: background-color 0.3s ease;
  }
}
@media (min-width: 1280px) and (hover: hover), (min-width: 1280px) and (-ms-high-contrast: none) {
  .news-tab__item:hover {
    background-color: rgba(255, 255, 255, 0.7);
  }
}
@media (min-width: 1280px) {
  .news-tab__item.is-active {
    background-image: linear-gradient(123.621deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
  }
}
@media (min-width: 1280px) and (hover: hover), (min-width: 1280px) and (-ms-high-contrast: none) {
  .news-tab__item.is-active:hover {
    background-color: transparent;
  }
}
.news-tab__text {
  transition: color 0.3s ease;
}
@media (max-width: 1279px) {
  .news-tab__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.08em;
    font-weight: 400;
    color: #054c72;
  }
}
@media (max-width: 1279px) and (max-width: 767px) {
  .news-tab__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 1280px) {
  .news-tab__text {
    font-size: 20px;
    line-height: 36px;
    letter-spacing: 0.08em;
    font-weight: 500;
    text-align: center;
    white-space: nowrap;
    background-image: linear-gradient(114.302deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }
}
@media (max-width: 1279px) and (hover: hover), (max-width: 1279px) and (-ms-high-contrast: none) {
  .news-tab__item:hover .news-tab__text {
    color: #34b2cf;
  }
}
@media (min-width: 1280px) {
  .news-tab__item.is-active .news-tab__text {
    background-image: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    color: #ffffff;
  }
}

.news-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  margin-top: var(--space-xs);
}
@media (min-width: 768px) {
  .news-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 30px;
    margin-top: var(--space-md);
  }
}
@media (min-width: 1280px) {
  .news-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 100px 52px;
    margin-top: 120px;
  }
}

.news-more {
  display: flex;
  justify-content: center;
  margin-top: var(--space-md);
}
.news-more.is-hide {
  display: none;
}
.news-more__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  padding: 12px 40px;
  border: 0;
  border-radius: 9999px;
  background-image: linear-gradient(123.621deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
  font-family: inherit;
  font-size: 20px;
  line-height: 36px;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #ffffff;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .news-more__btn:hover {
    opacity: 0.85;
  }
}
@media (max-width: 767px) {
  .news-more__btn {
    height: 56px;
    padding: 10px 32px;
    font-size: 18px;
    line-height: 32px;
  }
}

.news-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: box-shadow 0.3s ease;
}
.news-card.is-hide {
  display: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .news-card:hover {
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
  }
  .news-card:hover .news-card__title {
    color: #054c72;
  }
  .news-card:hover .news-card__figure > img {
    transform: scale(1.06);
  }
  .news-card:hover .news-card__mark {
    transform: scale(1.06);
  }
}
.news-card:nth-child(odd) {
  border-radius: 40px 0;
}
.news-card:nth-child(even) {
  border-radius: 0 40px;
}
.news-card.news-card--a {
  border-radius: 40px 0;
}
.news-card.news-card--b {
  border-radius: 0 40px;
}
@media (min-width: 768px) {
  .news-card:nth-child(odd) {
    border-radius: 60px 0;
  }
  .news-card:nth-child(even) {
    border-radius: 0 60px;
  }
  .news-card.news-card--a {
    border-radius: 60px 0;
  }
  .news-card.news-card--b {
    border-radius: 0 60px;
  }
}
@media (min-width: 1280px) {
  .news-card:nth-child(odd) {
    border-radius: 80px 0;
  }
  .news-card:nth-child(even) {
    border-radius: 0 80px;
  }
  .news-card.news-card--a {
    border-radius: 80px 0;
  }
  .news-card.news-card--b {
    border-radius: 0 80px;
  }
}
.news-card__body {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 220px;
  padding: 30px 24px 20px;
  background-color: #ffffff;
}
@media (min-width: 768px) {
  .news-card__body {
    min-height: 260px;
    padding: 32px 32px 24px;
  }
}
@media (min-width: 1280px) {
  .news-card__body {
    min-height: 300px;
    padding: 40px 48px 28px;
  }
}
.news-card__title {
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .news-card__title {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.news-card__title {
  color: #043b64;
  word-break: break-word;
  transition: color 0.3s ease;
}
.news-card__meta {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}
.news-card__date {
  display: flex;
  align-items: center;
  gap: 16px;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  color: #043b64;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .news-card__date {
    gap: 12px;
  }
}
.news-card__day {
  font-size: 72px;
  line-height: normal;
}
@media (max-width: 1023px) {
  .news-card__day {
    font-size: 60px;
  }
}
@media (max-width: 767px) {
  .news-card__day {
    font-size: 52px;
  }
}
.news-card__ym {
  font-size: 20px;
}
.news-card__ym span {
  display: block;
  line-height: 32px;
}
@media (max-width: 767px) {
  .news-card__ym {
    font-size: 18px;
  }
  .news-card__ym span {
    line-height: 28px;
  }
}
.news-card__tag-wrap {
  flex-shrink: 0;
  display: flex;
  width: 106px;
  padding-bottom: 16px;
}
@media (max-width: 767px) {
  .news-card__tag-wrap {
    width: auto;
    padding-bottom: 10px;
  }
}
.news-card__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 20px;
  border: 1px solid #65bfb5;
  border-radius: 100px;
  background-color: #ffffff;
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.04em;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  background-image: linear-gradient(108.482deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (max-width: 767px) {
  .news-card__tag {
    padding: 2px 14px;
    font-size: 14px;
    line-height: 26px;
  }
}
.news-card__figure {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.news-card__figure > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.news-card__figure--blank {
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: linear-gradient(101.483deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
}
.news-card__mark {
  display: block;
  width: 25.424%;
  max-width: 120px;
  aspect-ratio: 120/101;
  transition: transform 0.5s ease;
}
.news-card__mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.news-detail {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
  max-width: 1200px;
  margin: 0 auto;
}
@media (min-width: 1280px) {
  .news-detail {
    gap: 80px;
  }
}
.news-detail__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  width: 100%;
}
@media (min-width: 1280px) {
  .news-detail__head {
    gap: 40px;
  }
}
.news-detail__meta {
  display: flex;
  align-items: center;
  gap: 12px;
}
@media (min-width: 1280px) {
  .news-detail__meta {
    gap: 20px;
  }
}
.news-detail__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 136px;
  padding: 8px 20px;
  border: 1px solid #65bfb5;
  border-radius: 100px;
  background-color: #ffffff;
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.04em;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  background-image: linear-gradient(108.482deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (max-width: 767px) {
  .news-detail__tag {
    width: auto;
    padding: 6px 16px;
    font-size: 14px;
    line-height: 26px;
  }
}
.news-detail__date {
  font-family: "Inter", sans-serif;
  font-size: 18px;
  line-height: 34px;
  font-weight: 400;
  white-space: nowrap;
  background-image: linear-gradient(113.434deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (max-width: 767px) {
  .news-detail__date {
    font-size: 16px;
    line-height: 30px;
  }
}
.news-detail__title {
  font-size: 48px;
  line-height: 158%;
  letter-spacing: 0.12em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .news-detail__title {
    font-size: 32px;
    line-height: 156%;
    letter-spacing: 0.08em;
  }
}
.news-detail__title {
  width: 100%;
  color: #054c72;
  text-align: center;
  word-break: break-word;
}
.news-detail__share {
  display: flex;
  align-items: center;
  gap: 16px;
}
.news-detail__share-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid #036a80;
  border-radius: 50%;
  color: #036a80;
  transition: border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .news-detail__share-link:hover {
    border-color: #054c72;
    background-color: #054c72;
    color: #ffffff;
  }
}
.news-detail__share-icon {
  display: block;
  width: 28px;
  height: 28px;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.news-detail__share-icon--facebook {
  -webkit-mask-image: url("../img/news/i-facebook.svg");
  mask-image: url("../img/news/i-facebook.svg");
}
.news-detail__share-icon--line {
  -webkit-mask-image: url("../img/news/i-line.svg");
  mask-image: url("../img/news/i-line.svg");
}
.news-detail__share-icon--share {
  -webkit-mask-image: url("../img/news/i-share.svg");
  mask-image: url("../img/news/i-share.svg");
}
.news-detail__figure {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 20px;
  overflow: hidden;
}
.news-detail__figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-detail__content {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .news-detail__content {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.news-detail__content {
  width: 100%;
  color: #2d2d2d;
  word-break: break-word;
}
.news-detail__content p + p {
  margin-top: 34px;
}

.contact-wrap {
  position: relative;
}

.contact-ani {
  position: absolute;
  z-index: 0;
  width: 15.364vw;
  height: 30.7291vw;
  pointer-events: none;
}
@media (max-width: 1279px) {
  .contact-ani {
    display: none;
  }
}
.contact-ani img {
  display: block;
  width: 100%;
  height: 100%;
}
.contact-ani--r {
  top: 30.7291vw;
  right: -60px;
}
@media (min-width: 1440px) {
  .contact-ani--r {
    right: -10.416666vw;
  }
}
.contact-ani--l {
  top: 100%;
  left: -60px;
  transform: scaleX(-1);
}
@media (min-width: 1440px) {
  .contact-ani--l {
    left: -10.416666vw;
  }
}

.contact-form {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-md);
  border-radius: 20px;
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .contact-form {
    padding: var(--space-md) 30px;
  }
}
.contact-form__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-xs);
  width: 100%;
}
.contact-form__fields {
  display: flex;
  flex-direction: column;
  gap: 28px;
  width: 100%;
}
.contact-form__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
@media (max-width: 767px) {
  .contact-form__row {
    grid-template-columns: minmax(0, 1fr);
  }
}

.contact-field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 14px 24px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  background-color: #ffffff;
  backdrop-filter: blur(4px);
  transition: border-color 0.3s ease;
}
.contact-field.is-invalid {
  border-color: #ed6d34;
}
.contact-field--plain {
  border-color: transparent;
  backdrop-filter: none;
}
.contact-field--plain.is-invalid {
  border-color: transparent;
}
.contact-field--textarea {
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
}
.contact-field > label.error {
  flex: 1 0 100%;
  margin: 0;
}
.contact-field__label {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact-field__label {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.contact-field__label {
  flex-shrink: 0;
  padding: 3px 0;
  color: #2d2d2d;
  white-space: nowrap;
}
.contact-field__required {
  color: #ff3b30;
}
.contact-field__input {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact-field__input {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.contact-field__input {
  display: block;
  flex: 1 0 0;
  min-width: 0;
  padding: 3px 0;
  border: 0;
  background-color: transparent;
  font-family: inherit;
  color: #2d2d2d;
}
.contact-field__input::placeholder {
  color: #aaaaaa;
}
.contact-field__input:focus {
  outline: none;
}
.contact-field__input--select {
  appearance: none;
  padding-right: 24px;
  background-image: url("../img/contact/i-select-arrow.svg");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 15.9px 9.011px;
  cursor: pointer;
}
.contact-field__input--select:invalid {
  color: #aaaaaa;
}
.contact-field__input--textarea {
  flex: none;
  height: 188px;
  resize: none;
}
@media (max-width: 767px) {
  .contact-field__input--textarea {
    height: 120px;
  }
}

.contact-radio-group {
  display: flex;
  align-items: center;
  gap: 8px;
}

.contact-radio {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 0;
  cursor: pointer;
}
.contact-radio__input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
.contact-radio__mark {
  position: relative;
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  border: 1px solid #2d2d2d;
  border-radius: 50%;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}
.contact-radio__text {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact-radio__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.contact-radio__text {
  color: #2d2d2d;
  white-space: nowrap;
}
.contact-radio__input:checked + .contact-radio__mark {
  border-color: #34b2cf;
  background-color: #34b2cf;
  box-shadow: inset 0 0 0 2px #ffffff;
}
.contact-radio__input:focus-visible + .contact-radio__mark {
  outline: 2px solid #34b2cf;
  outline-offset: 2px;
}

.contact-agree {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 12px;
}
.contact-agree > label.error {
  flex: 1 0 100%;
  margin: 0;
  text-align: center;
}
.contact-agree__input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
.contact-agree__mark {
  position: relative;
  flex-shrink: 0;
  margin-top: 8px;
  width: 20px;
  height: 20px;
  border: 1px solid #2d2d2d;
  background-color: #ffffff;
  cursor: pointer;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}
@media (max-width: 767px) {
  .contact-agree__mark {
    margin-top: 7px;
  }
}
.contact-agree__mark::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 6px;
  width: 5px;
  height: 10px;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.contact-agree__input:checked + .contact-agree__mark {
  border-color: #34b2cf;
  background-color: #34b2cf;
}
.contact-agree__input:checked + .contact-agree__mark::after {
  opacity: 1;
}
.contact-agree__input:focus-visible + .contact-agree__mark {
  outline: 2px solid #34b2cf;
  outline-offset: 2px;
}
.contact-agree__text {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact-agree__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.contact-agree__text {
  color: #2d2d2d;
}
.contact-agree__link {
  color: #338ca7;
  transition: opacity 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .contact-agree__link:hover {
    opacity: 0.7;
  }
}

.ir-blocks {
  display: flex;
  flex-direction: column;
  gap: var(--space-md-plus);
}
.ir-blocks--md {
  gap: var(--space-md);
}

.ir-sec {
  position: relative;
  z-index: 1;
}
.ir-sec:has(.ir-select__list.is-open) {
  z-index: 5;
}
.ir-sec__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .ir-sec__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 24px;
  }
}
.ir-sec__head--center {
  position: relative;
  justify-content: center;
}
.ir-sec__head--center .ir-select {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .ir-sec__head--center {
    align-items: center;
  }
  .ir-sec__head--center .ir-select {
    position: static;
    transform: none;
  }
}
.ir-sec__title {
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .ir-sec__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.ir-sec__title {
  margin: 0;
  background-image: linear-gradient(132.923deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ir-sec__title--center {
  width: 100%;
  background-image: linear-gradient(164.05deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  text-align: center;
}

.ir-select {
  position: relative;
  z-index: 4;
  flex-shrink: 0;
}
.ir-select__toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  padding: 12px 22px;
  border: 1px solid #34b2cf;
  border-radius: 8px;
  background-color: #ffffff;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
  font-family: inherit;
  cursor: pointer;
}
@media (max-width: 767px) {
  .ir-select__toggle {
    gap: 40px;
  }
}
.ir-select__text {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-select__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.ir-select__text {
  color: #000000;
  text-align: center;
  white-space: nowrap;
}
.ir-select__arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 10px;
}
.ir-select__arrow img {
  width: 17px;
  height: 10px;
  transform: rotate(180deg);
}
.ir-select__list {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  display: none;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  padding: 12px 22px;
  border: 1px solid #34b2cf;
  border-radius: 8px;
  background-color: #ffffff;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
}
.ir-select__list.is-open {
  display: flex;
}
.ir-select__item {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-select__item {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.ir-select__item {
  display: block;
  width: 100%;
  color: #000000;
  white-space: nowrap;
  transition: color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .ir-select__item:hover {
    color: #0094b0;
  }
}
.ir-select__item.is-active {
  color: #0094b0;
}

.ir-each-content {
  display: none;
}
.ir-each-content.is-active {
  display: block;
}

.ir-info {
  width: 100%;
}
.ir-info table {
  width: 100%;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
}
.ir-info tbody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 40px;
}
@media (max-width: 1023px) {
  .ir-info tbody {
    grid-template-columns: 1fr;
    column-gap: 0;
  }
}
.ir-info tr {
  display: flex;
  align-items: center;
  min-height: 74px;
  border-radius: 20px;
}
@media (max-width: 767px) {
  .ir-info tr {
    flex-direction: column;
    align-items: flex-start;
    min-height: 0;
    padding: 12px 20px;
  }
}
.ir-info td {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-info td {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.ir-info td {
  border: 0;
  padding: 20px 32px;
  text-align: left;
}
.ir-info td:first-child {
  flex-shrink: 0;
  width: 200px;
  color: #054c72;
}
@media (max-width: 767px) {
  .ir-info td:first-child {
    width: auto;
    padding: 0;
  }
}
.ir-info td + td {
  flex: 1 0 0;
  min-width: 0;
  color: #2d2d2d;
}
@media (max-width: 767px) {
  .ir-info td + td {
    width: 100%;
    padding: 0;
  }
}
.ir-info td + td a {
  color: #005cb9;
  transition: opacity 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .ir-info td + td a:hover {
    opacity: 0.7;
  }
}
.ir-info tr:nth-child(4n+1),
.ir-info tr:nth-child(4n+2) {
  background-color: #ffffff;
}
@media (max-width: 1023px) {
  .ir-info tr:nth-child(odd) {
    background-color: #ffffff;
  }
  .ir-info tr:nth-child(even) {
    background-color: transparent;
  }
}

.ir-meta {
  display: flex;
  flex-wrap: wrap;
  column-gap: 40px;
}
.ir-meta__item {
  display: flex;
  align-items: center;
  width: calc(50% - 20px);
  min-height: 74px;
  border-bottom: 1px solid rgba(4, 59, 100, 0.2);
}
@media (max-width: 1023px) {
  .ir-meta__item {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ir-meta__item {
    min-height: 0;
  }
}
.ir-meta__label {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-meta__label {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.ir-meta__label {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 20px 0;
  color: #054c72;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .ir-meta__label {
    padding: 16px 0;
  }
}
.ir-meta__icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.ir-meta__value {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-meta__value {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.ir-meta__value {
  flex: 1 0 0;
  min-width: 0;
  margin: 0;
  padding: 20px 32px;
  color: #2d2d2d;
  word-break: break-word;
  overflow-wrap: anywhere;
}
@media (max-width: 767px) {
  .ir-meta__value {
    padding: 16px 0 16px 20px;
    line-height: 1.5;
  }
}
.ir-meta__value a {
  color: #005cb9;
  transition: opacity 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .ir-meta__value a:hover {
    opacity: 0.7;
  }
}

.ir-table {
  width: 100%;
}
@media (max-width: 1279px) {
  .ir-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.ir-table table {
  width: 100%;
  table-layout: fixed;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
}
@media (max-width: 1279px) {
  .ir-table table {
    min-width: 860px;
  }
}
.ir-table th,
.ir-table td {
  height: 74px;
  padding: 20px 32px;
  border: 0;
  text-align: left;
  vertical-align: middle;
}
@media (max-width: 767px) {
  .ir-table th,
  .ir-table td {
    padding: 16px 24px;
  }
}
.ir-table tr:first-child > * {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 700;
}
@media (max-width: 767px) {
  .ir-table tr:first-child > * {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.ir-table tr:first-child > *:first-child {
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
}
.ir-table tr:first-child > *:last-child {
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}
.ir-table tr:first-child > * {
  background-color: #0094b0;
  color: #ffffff;
}
.ir-table tr + tr > * {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-table tr + tr > * {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.ir-table tr + tr > * {
  font-weight: 400;
  color: #2d2d2d;
}
.ir-table tr:nth-child(2n+3) > *:first-child {
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
}
.ir-table tr:nth-child(2n+3) > *:last-child {
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}
.ir-table tr:nth-child(2n+3) > * {
  background-color: #ffffff;
}
.ir-table__file {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}
.ir-table__file img {
  width: 100%;
  height: 100%;
  transition: opacity 0.3s ease;
}
.ir-table__file img + img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .ir-table__file:hover img {
    opacity: 0;
  }
  .ir-table__file:hover img + img {
    opacity: 1;
  }
}
.ir-table--gov tr:first-child > *:nth-child(1),
.ir-table--gov tr:first-child > *:nth-child(2) {
  width: 23.6842%;
}
.ir-table--gov tr:first-child > *:nth-child(3) {
  width: 52.6316%;
}
.ir-table--gov tr + tr > *:first-child {
  color: #054c72;
}
.ir-table--dividends tr:first-child > * {
  height: 76px;
  border-radius: 0;
  text-align: center;
}
.ir-table--dividends tr:nth-child(2) > * {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 700;
}
@media (max-width: 767px) {
  .ir-table--dividends tr:nth-child(2) > * {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.ir-table--dividends tr:nth-child(2) > * {
  border-left: 1px solid #ffffff;
  border-radius: 0;
  background-color: #0094b0;
  color: #ffffff;
  text-align: center;
}
.ir-table--dividends tr:first-child > * + * {
  border-bottom: 1px solid #ffffff;
  border-left: 1px solid #ffffff;
}
.ir-table--dividends tr:first-child > *:first-child {
  width: 20%;
  border-radius: 20px 0 0 20px;
}
.ir-table--dividends tr:first-child > *:nth-child(2) {
  width: 40%;
}
.ir-table--dividends tr:first-child > *:last-child {
  width: 40%;
  border-radius: 0 20px 0 0;
}
.ir-table--dividends tr:nth-child(2) > *:last-child {
  border-bottom-right-radius: 20px;
}
.ir-table--dividends tr:nth-child(2n+3) > *,
.ir-table--dividends tr:nth-child(2n+3) > *:first-child,
.ir-table--dividends tr:nth-child(2n+3) > *:last-child {
  border-radius: 0;
  background-color: transparent;
}
.ir-table--dividends tr:nth-child(2n+4) > *:first-child {
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
}
.ir-table--dividends tr:nth-child(2n+4) > *:last-child {
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}
.ir-table--dividends tr:nth-child(2n+4) > * {
  background-color: #ffffff;
}
.ir-table--earnings tr > *:first-child {
  width: 26.3158%;
}
.ir-table--earnings tr > * + * {
  text-align: center;
}

.ir-report {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
}
@media (max-width: 1023px) {
  .ir-report {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .ir-report {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.ir-report__item {
  display: flex;
  align-items: center;
  gap: 36px;
  min-height: 180px;
  padding: 48px 60px;
  border: 1px solid transparent;
  border-radius: 0 50px 0 50px;
  background-color: #ffffff;
  transition: border-color 0.3s ease, filter 0.3s ease;
}
@media (max-width: 1023px) {
  .ir-report__item {
    gap: 24px;
    min-height: 0;
    padding: 32px 40px;
  }
}
@media (max-width: 767px) {
  .ir-report__item {
    gap: 20px;
    padding: 28px 30px;
  }
}
@media (hover: hover), (-ms-high-contrast: none) {
  .ir-report__item:hover {
    border-color: #34b2cf;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
  }
  .ir-report__item:hover .ir-report__icon img {
    opacity: 0;
  }
  .ir-report__item:hover .ir-report__icon img + img {
    opacity: 1;
  }
}
.ir-report__icon {
  position: relative;
  flex-shrink: 0;
  width: 60px;
  height: 60px;
}
@media (max-width: 767px) {
  .ir-report__icon {
    width: 48px;
    height: 48px;
  }
}
.ir-report__icon img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.3s ease;
}
.ir-report__icon img + img {
  opacity: 0;
}
.ir-report__text {
  flex: 1 0 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #2d2d2d;
}
.ir-report__date {
  width: 100%;
  font-size: 20px;
  line-height: 36px;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-report__date {
    font-size: 18px;
    line-height: 30px;
  }
}
.ir-report__name {
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .ir-report__name {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
.ir-report__name {
  width: 100%;
}

.gov-subnav {
  margin-top: 32px;
  margin-bottom: var(--space-sm);
}
@media (max-width: 1279px) {
  .gov-subnav {
    position: relative;
    z-index: 4;
    margin-top: 20px;
  }
}
.gov-subnav__toggle {
  display: none;
}
@media (max-width: 1279px) {
  .gov-subnav__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 12px 22px;
    border: 1px solid #34b2cf;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
    font-family: inherit;
    cursor: pointer;
  }
}
.gov-subnav__toggle-text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .gov-subnav__toggle-text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.gov-subnav__toggle-text {
  color: #054c72;
  text-align: left;
}
.gov-subnav__toggle-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 19.5px;
  height: 13px;
}
.gov-subnav__toggle-arrow img {
  width: 17px;
  height: 10px;
  transform: rotate(180deg);
}
.gov-subnav__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 28px;
}
@media (max-width: 1279px) {
  .gov-subnav__list {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    display: none;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    padding: 12px 22px;
    border: 1px solid #34b2cf;
    border-radius: 8px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
  }
  .gov-subnav__list.is-open {
    display: flex;
  }
}
@media (max-width: 1279px) {
  .gov-subnav__item {
    display: block;
    width: 100%;
  }
}
@media (min-width: 1280px) {
  .gov-subnav__item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 32px;
    border: 2px solid transparent;
    border-radius: 100px;
    background-color: #ffffff;
    filter: drop-shadow(0 0 10px rgba(201, 217, 232, 0.5));
    transition: border-color 0.3s ease;
  }
}
@media (min-width: 1280px) and (hover: hover), (min-width: 1280px) and (-ms-high-contrast: none) {
  .gov-subnav__item:hover {
    border-color: #83bfdf;
  }
}
@media (min-width: 1280px) {
  .gov-subnav__item.is-active {
    border-color: #83bfdf;
  }
}
.gov-subnav__dot {
  display: none;
}
@media (min-width: 1280px) {
  .gov-subnav__dot {
    flex-shrink: 0;
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #34b2cf;
  }
}
.gov-subnav__text {
  color: #054c72;
  transition: color 0.3s ease;
}
@media (max-width: 1279px) {
  .gov-subnav__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media (max-width: 1279px) and (max-width: 767px) {
  .gov-subnav__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 1280px) {
  .gov-subnav__text {
    font-size: 20px;
    line-height: 180%;
    letter-spacing: 0.08em;
    font-weight: 500;
    white-space: nowrap;
  }
}
@media (min-width: 1280px) and (max-width: 767px) {
  .gov-subnav__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 1279px) and (hover: hover), (max-width: 1279px) and (-ms-high-contrast: none) {
  .gov-subnav__item:hover .gov-subnav__text {
    color: #34b2cf;
  }
}

.gov-member {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px;
}
@media (max-width: 1279px) {
  .gov-member {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .gov-member {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.gov-member__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  padding: 48px 60px;
  border-radius: 100px 0 100px 0;
  background-color: #ffffff;
}
@media (max-width: 1023px) {
  .gov-member__item {
    gap: 32px;
    padding: 40px 32px;
  }
}
@media (max-width: 767px) {
  .gov-member__item {
    border-radius: 60px 0 60px 0;
    padding: 32px 24px;
  }
}
.gov-member__item:nth-child(even) {
  border-radius: 0 100px 0 100px;
}
@media (max-width: 767px) {
  .gov-member__item:nth-child(even) {
    border-radius: 0 60px 0 60px;
  }
}
.gov-member__name {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .gov-member__name {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.gov-member__name {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  white-space: nowrap;
}
.gov-member__role {
  color: #036a80;
}
.gov-member__person {
  color: #043b64;
}
.gov-member__blocks {
  display: flex;
  flex-direction: column;
  gap: 39px;
  width: 100%;
}
@media (max-width: 1023px) {
  .gov-member__blocks {
    gap: 32px;
  }
}
.gov-member__block {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.gov-member__block-head {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.gov-member__block-title {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .gov-member__block-title {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.gov-member__block-title {
  flex-shrink: 0;
  color: #338ca7;
  white-space: nowrap;
}
.gov-member__block-line {
  flex: 1 0 0;
  min-width: 0;
  height: 1px;
  background-color: #338ca7;
}
.gov-member__list {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .gov-member__list {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.gov-member__list {
  margin: 0;
  padding: 0;
  list-style: none;
  color: #2d2d2d;
}

.gov-committee {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.gov-committee .ir-sec__head {
  margin-bottom: 0;
}
.gov-committee__text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .gov-committee__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.gov-committee__text {
  margin: 0;
  color: #000000;
}

.ir-faq {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 767px) {
  .ir-faq {
    gap: 20px;
  }
}
.ir-faq__item {
  padding: 36px 40px;
  border: 1px solid transparent;
  border-radius: 20px;
  background-color: #ffffff;
  transition: border-color 0.3s ease, filter 0.3s ease;
}
@media (max-width: 1023px) {
  .ir-faq__item {
    padding: 28px 30px;
  }
}
.ir-faq__item.is-open {
  border-color: #34b2cf;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
}
.ir-faq__q {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  text-align: left;
  cursor: pointer;
}
.ir-faq__text {
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .ir-faq__text {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
.ir-faq__text {
  flex: 1 1 0;
  min-width: 0;
  color: #043b64;
}
.ir-faq__arrow {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  transition: transform 0.3s ease;
}
@media (max-width: 767px) {
  .ir-faq__arrow {
    width: 40px;
    height: 40px;
  }
}
.ir-faq__arrow img {
  display: block;
  width: 100%;
  height: 100%;
}
.ir-faq__item.is-open .ir-faq__arrow {
  transform: rotate(180deg);
}
.ir-faq__a {
  display: none;
  padding-top: 20px;
}
.ir-faq__desc {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ir-faq__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.ir-faq__desc {
  margin: 0;
  color: #2d2d2d;
}
.ir-faq__desc a {
  color: #005cb9;
  transition: opacity 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .ir-faq__desc a:hover {
    opacity: 0.7;
  }
}

.stock-pic {
  position: relative;
  aspect-ratio: 735/623;
}
.stock-pic > .stock-pic__circle,
.stock-pic > .stock-pic__img,
.stock-pic > .stock-pic__no {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.stock-pic > .stock-pic__circle {
  z-index: 0;
}
.stock-pic > .stock-pic__img {
  z-index: 1;
}
.stock-pic > .stock-pic__no {
  z-index: 2;
}

@keyframes stock-figure-circle {
  0%, 100% {
    scale: 1;
    translate: 0 0;
    rotate: 0deg;
  }
  50% {
    scale: 1.05;
    translate: 0 -10px;
    rotate: 2.5deg;
  }
}
@keyframes stock-figure-float {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 -12px;
  }
}
.stock-pic__circle {
  transform-origin: 50% 50%;
  animation: stock-figure-circle 8s ease-in-out infinite;
  will-change: transform;
}

.stock-pic__img {
  animation: stock-figure-float 5s ease-in-out infinite;
  will-change: transform;
}

@media (prefers-reduced-motion: reduce) {
  .stock-pic__circle,
  .stock-pic__img {
    animation: none;
  }
}
.no-js .stock-pic__circle,
.no-js .stock-pic__img {
  animation: none;
}

.stk-sec {
  --bleed: 30px;
  position: relative;
  margin-top: 80px;
}
@media (min-width: 1280px) {
  .stk-sec {
    --bleed: 60px;
    margin-top: 8.333vw;
  }
}
@media (min-width: 1440px) {
  .stk-sec {
    --bleed: 10.416666vw;
  }
}

.stk-sec__deco {
  position: absolute;
  top: 0;
  z-index: 0;
  display: block;
  width: min(15.3646vw, 295px);
  pointer-events: none;
}
@media (max-width: 1279px) {
  .stk-sec__deco {
    display: none;
  }
}
.stk-sec__deco--right {
  right: calc(-1 * var(--bleed));
}
.stk-sec__deco--left {
  left: calc(-1 * var(--bleed));
  transform: scaleX(-1);
}
.stk-sec__deco img {
  display: block;
  width: 100%;
  height: auto;
}

.stk-sec__title {
  font-size: 48px;
  line-height: 158%;
  letter-spacing: 0.12em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .stk-sec__title {
    font-size: 32px;
    line-height: 156%;
    letter-spacing: 0.08em;
  }
}
.stk-sec__title {
  position: relative;
  z-index: 1;
  margin: 0;
  background-image: linear-gradient(101.52deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  text-align: center;
}

.stk-sec__desc {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-sec__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-sec__desc {
  position: relative;
  z-index: 1;
  margin: 32px 0 0;
  color: #2d2d2d;
  text-align: center;
}

.stk-circles {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 3.125vw, 60px);
  margin-top: var(--space-sm-plus);
}
.stk-circles__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: clamp(155px, 11.9271vw, 229px);
  aspect-ratio: 1;
  padding: 0 8px;
  border-radius: 50%;
  text-align: center;
  background-image: linear-gradient(to top, #41949c, #04446b);
  filter: drop-shadow(4px 4px 5px rgba(0, 0, 0, 0.05));
}
.stk-circles__item:nth-child(even) {
  background-image: linear-gradient(180deg, #d9692e 0%, #f2c044 100%);
  filter: none;
  box-shadow: 4px 4px 10px 0 rgba(0, 0, 0, 0.05);
}
.stk-circles__icon {
  flex-shrink: 0;
  display: block;
  width: clamp(40px, 4.1667vw, 80px);
  height: clamp(40px, 4.1667vw, 80px);
}
.stk-circles__label {
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .stk-circles__label {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.stk-circles__label {
  margin: 0;
  color: #ffffff;
}
@media (max-width: 1279px) {
  .stk-circles__label {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}

.stk-reply {
  position: relative;
  z-index: 1;
  margin-top: var(--space-sm-plus);
}
.stk-reply__title {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .stk-reply__title {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.stk-reply__title {
  margin: 0;
  color: #043b64;
}
.stk-reply__list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 32px;
}
.stk-reply__item {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px;
  border-radius: 200px;
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .stk-reply__item {
    align-items: flex-start;
    border-radius: 20px;
  }
}
.stk-reply__no {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #34b2cf;
  font-family: "Inter", serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
  color: #ffffff;
}
.stk-reply__text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-reply__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.stk-reply__text {
  flex: 1 0 0;
  min-width: 0;
  margin: 0;
  color: #2d2d2d;
}

.stk-extra {
  position: relative;
  z-index: 1;
  margin-top: var(--space-sm-plus);
}
.stk-extra__title {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .stk-extra__title {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.stk-extra__title {
  margin: 0 0 40px;
  color: #043b64;
}
.stk-extra__group {
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .stk-extra__group {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.stk-extra__group {
  margin: 0;
  color: #043b64;
}
* + .stk-extra__group {
  margin-top: 1.89em;
}
.stk-extra__lead {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-extra__lead {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-extra__lead {
  margin: 0;
  font-weight: 500;
  color: #2d2d2d;
}
.stk-extra__text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-extra__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-extra__text {
  margin: 0;
  color: #2d2d2d;
}
.stk-extra ol,
.stk-extra li {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-extra ol,
  .stk-extra li {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-extra ol,
.stk-extra li {
  color: #2d2d2d;
}
.stk-extra ol,
.stk-extra ul {
  margin: 0;
}

.stk-band {
  position: relative;
  margin-right: calc(-1 * var(--bleed));
  margin-left: calc(-1 * var(--bleed));
  padding-top: 14.9479vw;
  padding-bottom: 5.026vw;
}
@media (max-width: 767px) {
  .stk-band {
    margin-top: var(--space-sm-plus);
    padding-top: 20.2564vw;
    padding-bottom: 10.5128vw;
  }
}
.stk-band--last .stk-band__yellow {
  z-index: -2;
}
.stk-band--last .stk-band__photo {
  z-index: -1;
}
.stk-band--last {
  padding-bottom: 21.5906vw;
  margin-bottom: -237px;
}
@media (max-width: 1279px) {
  .stk-band--last {
    margin-bottom: -50px;
  }
}
@media (max-width: 767px) {
  .stk-band--last {
    padding-bottom: 20.5128vw;
  }
}
.stk-band__yellow {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 33.0729vw;
  background: url("../img/ir/shareholder-content-banner-d.svg") no-repeat top center/100% 100%;
  pointer-events: none;
}
@media (max-width: 767px) {
  .stk-band__yellow {
    height: 35.0179vw;
    background-image: url("../img/ir/shareholder-content-banner-d-xs.svg");
  }
}
.stk-band__photo {
  position: absolute;
  top: 3.8542vw;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  -webkit-mask-image: url("../img/ir/shareholder-content-banner-mask.svg"), linear-gradient(#000, #000);
  mask-image: url("../img/ir/shareholder-content-banner-mask.svg"), linear-gradient(#000, #000);
  -webkit-mask-size: 100% 32.2917vw, 100% 100%;
  mask-size: 100% 32.2917vw, 100% 100%;
  -webkit-mask-position: top center, 0 5.9849vw;
  mask-position: top center, 0 5.9849vw;
  -webkit-mask-repeat: no-repeat, no-repeat;
  mask-repeat: no-repeat, no-repeat;
}
@media (max-width: 767px) {
  .stk-band__photo {
    -webkit-mask-image: url("../img/ir/shareholder-content-banner-mask-xs.svg"), linear-gradient(#000, #000);
    mask-image: url("../img/ir/shareholder-content-banner-mask-xs.svg"), linear-gradient(#000, #000);
    -webkit-mask-size: 100% 224.3518vw, 100% 100%;
    mask-size: 100% 224.3518vw, 100% 100%;
    -webkit-mask-position: top center, 0 6.1453vw;
    mask-position: top center, 0 6.1453vw;
  }
}
.stk-band__photo::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.4);
}
.stk-band__inner {
  width: 100%;
  max-width: calc(1520px + var(--container-padding) * 2);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  position: relative;
  z-index: 2;
  display: flex;
  gap: 40px;
}
@media (max-width: 1023px) {
  .stk-band__inner {
    flex-direction: column;
    gap: var(--space-xs);
  }
}
.stk-band__col {
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
  gap: 32px;
  min-width: 0;
}
@media (max-width: 1023px) {
  .stk-band__col {
    flex: none;
    width: 100%;
  }
}
.stk-band__head {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 700;
}
@media (max-width: 767px) {
  .stk-band__head {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.stk-band__head {
  margin: 0;
  color: #ffffff;
}
.stk-band__card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 48px 60px;
  border-radius: 0 100px 0 100px;
  background-color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 767px) {
  .stk-band__card {
    padding: 40px 30px;
    border-radius: 0 60px 0 60px;
  }
}
@media (min-width: 1024px) {
  .stk-band__card {
    flex: 1 0 auto;
  }
}
.stk-band__card--split {
  gap: 20px;
}
.stk-band__group {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.stk-band__line {
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(45, 45, 45, 0.2);
}
.stk-band__row {
  display: flex;
  align-items: center;
  gap: 8px;
}
@media (max-width: 767px) {
  .stk-band__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
}
.stk-band__key {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-band__key {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-band__key {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #054c72;
  white-space: nowrap;
}
.stk-band__icon {
  flex-shrink: 0;
  display: block;
  width: 24px;
  height: 24px;
}
.stk-band__val {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-band__val {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-band__val {
  margin: 0;
  color: #2d2d2d;
  word-break: break-word;
  overflow-wrap: anywhere;
}
@media (max-width: 767px) {
  .stk-band__val {
    width: 100%;
  }
}
.stk-band__fact {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.stk-band__spark {
  flex-shrink: 0;
  display: block;
  width: 20px;
  height: 20px;
  margin-top: 10px !important;
}
.stk-band__text {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .stk-band__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.stk-band__text {
  flex: 1 0 0;
  min-width: 0;
  margin: 0;
  color: #2d2d2d;
}
.stk-band__num {
  color: #054c72;
  font-style: normal;
}

#HRjoin,
#HRvalue,
#HRbenefit,
#HRshare,
#HRalbum {
  scroll-margin-top: 160px;
}
@media (max-width: 1279px) {
  #HRjoin,
  #HRvalue,
  #HRbenefit,
  #HRshare,
  #HRalbum {
    scroll-margin-top: 84px;
  }
}

.hr-arrow {
  --hr-arrow-size: 60px;
  flex-shrink: 0;
  display: block;
  width: var(--hr-arrow-size);
  height: var(--hr-arrow-size);
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (max-width: 767px) {
  .hr-arrow {
    --hr-arrow-size: 40px;
  }
}
.hr-arrow__icon {
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}
.hr-arrow--prev .hr-arrow__icon {
  transform: scaleX(-1);
}
@media (hover: hover), (-ms-high-contrast: none) {
  .hr-arrow:hover {
    opacity: 0.8;
  }
}
.hr-arrow.swiper-button-lock {
  visibility: hidden;
  pointer-events: none;
}
.hr-arrow.swiper-button-disabled {
  opacity: 0.35;
  pointer-events: none;
}

.hr-job {
  padding-top: var(--space-lg);
}
.hr-job__stage {
  position: relative;
  aspect-ratio: 1520/732;
}
@media (max-width: 1023px) {
  .hr-job__stage {
    aspect-ratio: auto;
  }
}
.hr-job__figure {
  position: absolute;
  inset: 0;
}
@media (max-width: 1023px) {
  .hr-job__figure {
    position: relative;
    inset: auto;
    width: 100%;
    aspect-ratio: 1033/732;
  }
}
.hr-job__deco {
  position: absolute;
}
.hr-job__deco--1 {
  top: 24.7268%;
  left: 0;
  width: 54.2105%;
  height: 75.2732%;
}
@media (max-width: 1023px) {
  .hr-job__deco--1 {
    width: 79.7677%;
  }
}
.hr-job__deco--2 {
  top: 51.2295%;
  left: 40.5921%;
  width: 27.3684%;
  height: 48.7705%;
}
@media (max-width: 1023px) {
  .hr-job__deco--2 {
    left: 59.729%;
    width: 40.2711%;
  }
}
.hr-job__pic {
  position: absolute;
  top: 0;
  left: 7.7632%;
  width: 38.6184%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
@media (max-width: 1023px) {
  .hr-job__pic {
    left: 11.4231%;
    width: 56.8248%;
  }
}
.hr-job__text {
  position: absolute;
  top: 24.7268%;
  left: 62.2368%;
  width: 37.8947%;
}
@media (max-width: 1023px) {
  .hr-job__text {
    position: static;
    width: 100%;
    margin-top: 20px;
  }
}
.hr-job__title {
  margin-bottom: var(--space-xs);
  color: #054c72;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-job__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.hr-job__desc {
  margin-bottom: var(--space-xs);
  color: #2d2d2d;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-job__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.hr-job__btns {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
}
@media (max-width: 1023px) {
  .hr-job__btns {
    gap: 20px;
  }
}
@media (max-width: 479px) {
  .hr-job__btns {
    gap: 10px;
  }
  .hr-job__btns .c-btn-arrow {
    gap: 10px;
    padding: 8px 16px 8px 8px;
  }
  .hr-job__btns .c-btn-arrow--next {
    padding: 8px 8px 8px 16px;
  }
}
.hr-job__btn-icon--104 {
  width: 24px;
  height: 11px;
  -webkit-mask-image: url("../img/career/i-104.svg");
  mask-image: url("../img/career/i-104.svg");
}
.hr-job__btn-icon--mail {
  -webkit-mask-image: url("../img/ir/i-mail.svg");
  mask-image: url("../img/ir/i-mail.svg");
}

.hr-band {
  position: relative;
  margin-top: -16.6281vw;
  height: 57.7344vw;
}
@media (max-width: 1279px) {
  .hr-band {
    margin-top: 0;
  }
}
.hr-band__yellow, .hr-band__photo {
  position: absolute;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
}
.hr-band__yellow img, .hr-band__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
}
.hr-band__yellow {
  top: 0;
  width: 110vw;
  height: 33.0729vw;
  background-image: linear-gradient(90deg, #f4efe4 0%, #f2cf91 50%, #f4efe4 100%);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-mask: url("../img/career/why-banner-yellow.svg") no-repeat center/100% 100%;
  mask: url("../img/career/why-banner-yellow.svg") no-repeat center/100% 100%;
  will-change: background-position, transform;
  animation: hrBandFlow 12s linear infinite, hrBandSwing 9s ease-in-out infinite alternate;
}
@media (prefers-reduced-motion: reduce) {
  .hr-band__yellow {
    animation: none;
  }
}
.hr-band__photo {
  top: 3.8542vw;
  height: 53.8802vw;
  -webkit-mask: url("../img/career/why-banner-mask.svg") no-repeat center/100% 100%;
  mask: url("../img/career/why-banner-mask.svg") no-repeat center/100% 100%;
}
.hr-band__photo::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.3);
}
.hr-band__photo img {
  object-fit: cover;
}

.hr-value {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 26px 1.7544%;
  margin-top: -9.5052vw;
}
@media (max-width: 1023px) {
  .hr-value {
    margin-top: -40px;
  }
}
@media (min-width: 1280px) {
  .hr-value {
    flex-wrap: nowrap;
  }
}
.hr-value__item {
  flex: 0 0 auto;
  width: calc(50% - 13px);
  min-height: 480px;
  perspective: 1200px;
}
@media (min-width: 1280px) {
  .hr-value__item {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
    min-height: 0;
    aspect-ratio: 360/540;
  }
}
@media (min-width: 1920px) {
  .hr-value__item {
    aspect-ratio: auto;
    height: 540px;
  }
}
@media (max-width: 767px) {
  .hr-value__item {
    width: 100%;
    min-height: 0;
  }
}
.hr-value__inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.hr-value__face {
  position: relative;
  inset: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
@media (min-width: 1280px) {
  .hr-value__face {
    position: absolute;
  }
}
.hr-value__face--front {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 60px 40px;
  background-image: linear-gradient(to bottom, #f4efe4, #f5e0b3);
}
@media (min-width: 1280px) {
  .hr-value__face--front {
    padding: min(3.125vw, 60px) min(2.0833vw, 40px);
  }
}
@media (max-width: 767px) {
  .hr-value__face--front {
    gap: 40px;
    padding: 40px 30px;
  }
}
.hr-value__face--back {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 60px 40px;
  background-image: linear-gradient(to bottom, #effeff, #83bfdf);
  transform: rotateY(180deg);
}
@media (min-width: 1280px) {
  .hr-value__face--back {
    padding: min(3.125vw, 60px) min(2.0833vw, 40px);
  }
}
@media (max-width: 1279px) {
  .hr-value__face--back {
    display: none;
  }
}
.hr-value__text {
  color: #2d2d2d;
  text-align: center;
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-value__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.hr-value__text--sm {
  margin-top: 20px;
}
@media (min-width: 1280px) {
  .hr-value__text--sm {
    display: none;
  }
}
.hr-value__item--a .hr-value__face {
  border-radius: 0 60px 0 60px;
}
.hr-value__item--b .hr-value__face {
  border-radius: 60px 0 60px 0;
}
@media (min-width: 1280px) {
  .hr-value__item:hover .hr-value__inner, .hr-value__item:focus-within .hr-value__inner {
    transform: rotateY(180deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hr-value__inner {
    transition: none;
  }
}
.hr-value__title {
  color: #2d2d2d;
  text-align: center;
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-value__title {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.hr-value__pic {
  display: block;
}
.hr-value__pic img {
  display: block;
  width: auto;
  height: 180px;
  max-width: 100%;
}
@media (min-width: 1280px) {
  .hr-value__pic img {
    height: min(9.375vw, 180px);
  }
}
@media (max-width: 767px) {
  .hr-value__pic img {
    height: 140px;
  }
}

.hr-why {
  position: relative;
  z-index: 1;
  margin-top: var(--space-2xl);
  text-align: center;
}
.hr-why__marquee {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: max-content;
  will-change: transform;
  animation: hrWhyMarquee 30s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .hr-why__marquee {
    animation: none;
  }
}
.hr-why__en {
  flex-shrink: 0;
  padding-right: 80px;
  font-family: "Outfit", sans-serif;
  font-size: 150px;
  font-weight: 700;
  line-height: 1;
  color: rgba(196, 235, 245, 0.5);
  white-space: nowrap;
}
.hr-why__head {
  width: 870px;
  max-width: 100%;
  margin: var(--space-md) auto 0;
}
.hr-why__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 36px;
  color: #054c72;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-why__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 767px) {
  .hr-why__title {
    gap: 16px;
    font-size: 24px;
  }
}
.hr-why__mark {
  flex-shrink: 0;
  display: block;
  width: 40px;
  height: 69px;
}
@media (max-width: 767px) {
  .hr-why__mark {
    width: 24px;
    height: 41px;
  }
}
.hr-why__subtitle {
  margin-top: var(--space-xs);
  color: #2d2d2d;
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-why__subtitle {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
.hr-why__desc {
  margin-top: 12px;
  color: #2d2d2d;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-why__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.hr-why__list {
  row-gap: 20px;
  column-gap: 0;
  display: flex;
  flex-direction: column;
  margin-top: 50px;
  align-items: center;
}
@media (min-width: 540px) {
  .hr-why__list {
    flex-direction: row;
    justify-content: center;
    row-gap: 0;
    column-gap: 20px;
  }
}
@media (min-width: 1280px) {
  .hr-why__list {
    gap: min(4.1667vw, 80px);
    gap: 80px;
    margin-top: var(--space-md);
  }
}
.hr-why__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 229px;
  height: 229px;
  border-radius: 50%;
  background-image: linear-gradient(to top, #41949c, #04446b);
  filter: drop-shadow(4px 4px 5px rgba(0, 0, 0, 0.05));
}
@media (min-width: 1280px) {
  .hr-why__item {
    width: min(11.9271vw, 229px);
    height: min(11.9271vw, 229px);
  }
}
@media (max-width: 767px) {
  .hr-why__item {
    width: 160px;
    height: 160px;
  }
}
.hr-why__icon {
  display: block;
  width: 80px;
  height: 80px;
}
@media (min-width: 1280px) {
  .hr-why__icon {
    width: min(4.1667vw, 80px);
    height: min(4.1667vw, 80px);
  }
}
@media (max-width: 767px) {
  .hr-why__icon {
    width: 56px;
    height: 56px;
  }
}
.hr-why__icon img {
  display: block;
  width: 100%;
  height: 100%;
}
.hr-why__label {
  margin-top: 4px;
  color: #ffffff;
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-why__label {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1280px) {
  .hr-why__label {
    font-size: min(1.4583vw, 28px);
  }
}

.hr-benefit {
  margin-top: var(--space-lg);
}
.hr-benefit__title {
  margin-bottom: var(--space-xs);
  color: #043b64;
  text-align: center;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-benefit__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.hr-benefit__list {
  display: flex;
  gap: 40px;
}
@media (max-width: 1023px) {
  .hr-benefit__list {
    flex-direction: column;
    gap: 30px;
  }
}
.hr-benefit__card {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  min-width: 0;
}
@media (max-width: 1023px) {
  .hr-benefit__card {
    flex: 0 0 auto;
    width: 100%;
  }
}
.hr-benefit__pic {
  aspect-ratio: 2048/1365;
  border-radius: 1.25rem 1.25rem 0 0;
  overflow: hidden;
}
.hr-benefit__pic img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hr-benefit__body {
  flex: 1 0 auto;
  min-height: 430px;
  padding: 40px 60px;
  border-bottom: 5px solid #0094b0;
  border-radius: 0 0 1.25rem 1.25rem;
  background: #ffffff;
}
@media (max-width: 1279px) {
  .hr-benefit__body {
    padding: 20px 30px;
  }
}
@media (max-width: 1023px) {
  .hr-benefit__body {
    min-height: 0;
  }
}
.hr-benefit__name {
  margin-bottom: 10px;
  color: #2d2d2d;
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-benefit__name {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.hr-benefit__items {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.hr-benefit__items img {
  flex-shrink: 0;
  display: block;
  width: 20px;
  height: 20px;
}
.hr-benefit__item {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #2d2d2d;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-benefit__item {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.hr-benefit__item span {
  flex: 1 1 auto;
  min-width: 0;
}

.hr-share > .hr-share__wave,
.hr-share > .hr-share-masked,
.hr-share > .hr-share__inner {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.hr-share.a-play > .hr-share__wave,
.hr-share.a-play > .hr-share-masked,
.hr-share.a-play > .hr-share__inner {
  clip-path: inset(0 0 0 0);
}
.hr-share.a-play > .hr-share__wave {
  transition-delay: 0.45s;
}
.hr-share__wave img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.hr-share-masked {
  -webkit-mask: url("../img/career/share-mask.svg") no-repeat center top/cover;
  mask: url("../img/career/share-mask.svg") no-repeat center top/cover;
}
@media (max-width: 1023px) {
  .hr-share-masked {
    -webkit-mask-image: url("../img/career/share-mask-xs.svg");
    mask-image: url("../img/career/share-mask-xs.svg");
  }
}
.hr-share__list .swiper {
  padding: 25px 0;
}
.hr-share__slide {
  height: auto;
}
.hr-share__card {
  border-radius: 0 100px 0 100px;
  transition: border-radius 0.3s ease;
}
.hr-share__slide.swiper-slide-next .hr-share__card {
  border-radius: 100px 0 100px 0;
}
.hr-share__arrow {
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.hr-share__arrow img {
  display: block;
  width: 100%;
  height: 100%;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .hr-share__arrow:hover {
    opacity: 0.8;
  }
}
.hr-share__arrow.swiper-button-lock {
  visibility: hidden;
  pointer-events: none;
}
.hr-share__arrow.swiper-button-disabled {
  opacity: 0.35;
  pointer-events: none;
}

.hr-share-modal .c-modal__overlay {
  background: rgba(0, 0, 0, 0.8);
}
.hr-share-modal .c-modal__main {
  max-width: none;
}
@media screen and (orientation: portrait) {
  .hr-share-modal .c-modal__main {
    margin: 1.875rem;
  }
}
@media screen and (orientation: landscape) {
  .hr-share-modal .c-modal__main {
    margin: 3.75rem 1.875rem;
  }
}
@media (min-width: 1024px) {
  .hr-share-modal .c-modal__main {
    width: 89.5833vw;
    max-width: 1720px;
    margin: 0 auto;
  }
}
.hr-share-modal__box {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 1.25rem;
  background: #ffffff;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .hr-share-modal__box {
    flex-direction: row;
    height: 81.4815vh;
    max-height: 880px;
    min-height: 560px;
  }
}
.hr-share-modal__aside {
  position: relative;
  flex-shrink: 0;
  padding: 2.5rem 1.875rem;
  background: #ffffff;
}
@media (min-width: 1024px) {
  .hr-share-modal__aside {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 41.8605%;
    padding: 0 4.6512%;
  }
}
.hr-share-modal__deco {
  display: none;
}
@media (min-width: 1024px) {
  .hr-share-modal__deco {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 44.0278%;
    height: auto;
    pointer-events: none;
  }
}
.hr-share-modal__figure {
  position: relative;
  width: 100%;
  max-width: 561px;
  margin: 0 auto;
  aspect-ratio: 561/361;
}
.hr-share-modal__figure-pic {
  position: absolute;
  top: 0;
  left: 15.1516%;
  z-index: 1;
  width: 81.9964%;
  height: 95.5679%;
  border-radius: 1.25rem;
  object-fit: cover;
}
.hr-share-modal__figure-d1 {
  position: absolute;
  top: 36.2881%;
  left: 10px;
  width: 40.9982%;
  aspect-ratio: 1;
  border-radius: 1.25rem;
  background: #04446b;
}
.hr-share-modal__figure-d2 {
  position: absolute;
  top: 54.2936%;
  left: 0;
  width: 30.303%;
  height: 41.5512%;
  border-radius: 1.25rem;
  background: #fdf3e0;
}
.hr-share-modal__caption {
  margin: 28px auto 0;
  width: 100%;
  max-width: 535px;
  text-align: center;
}
.hr-share-modal__quote {
  position: relative;
  display: block;
  padding: 0 48px;
  color: #054c72;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-share-modal__quote {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.hr-share-modal__quote::before, .hr-share-modal__quote::after {
  position: absolute;
  font-family: "Marcellus", serif;
  font-size: 44px;
  line-height: 44px;
  color: #80cad8;
}
.hr-share-modal__quote::before {
  content: "“";
  top: 0;
  left: 0;
}
.hr-share-modal__quote::after {
  content: "”";
  right: 0;
  bottom: 0;
}
.hr-share-modal__name {
  margin-top: 4px;
  color: #ca8c03;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-share-modal__name {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.hr-share-modal__title {
  margin-bottom: 40px;
  color: #054c72;
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-share-modal__title {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
.hr-share-modal__text {
  color: #2d2d2d;
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-share-modal__text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.hr-share-modal__close {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  width: 2.5rem;
  height: 2.5rem;
  z-index: 2;
  cursor: pointer;
  transition: transform 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .hr-share-modal__close:hover {
    transform: rotate(90deg);
  }
}
@media (min-width: 1024px) {
  .hr-share-modal__close {
    top: -3.75rem;
    right: -3.75rem;
    width: 3.75rem;
    height: 3.75rem;
  }
}
.hr-share-modal__close img {
  display: block;
  width: 100%;
  height: 100%;
}

@media (min-width: 1024px) {
  .hr-share-modal__box {
    overflow: visible;
  }
  .hr-share-modal__box .hr-share-modal__aside {
    border-radius: 1.25rem 0 0 1.25rem;
  }
  .hr-share-modal__box .hr-share-modal__body {
    border-radius: 0 1.25rem 1.25rem 0;
    background: #f1f7fd;
  }
}
.hr-album {
  --hr-album-slide: min(49.21875vw, 945px);
  position: relative;
  padding: 180px 0 var(--space-lg);
  overflow: hidden;
}
@media (max-width: 1023px) {
  .hr-album {
    --hr-album-slide: 84vw;
    padding: var(--space-md) 0;
  }
}
.hr-album__inner {
  display: flex;
  align-items: flex-start;
  gap: 80px;
  padding: 0 30px;
}
@media (min-width: 1024px) {
  .hr-album__inner {
    padding: 0 0 0 60px;
  }
}
@media (min-width: 1280px) {
  .hr-album__inner {
    padding: 0 0 0 10.416666vw;
  }
}
@media (max-width: 1279px) {
  .hr-album__inner {
    gap: 40px;
  }
}
@media (max-width: 1023px) {
  .hr-album__inner {
    flex-direction: column;
  }
}
.hr-album__intro {
  flex-shrink: 0;
  width: max(28.7791%, 360px);
}
@media (max-width: 1023px) {
  .hr-album__intro {
    width: 100%;
  }
}
.hr-album__title {
  margin-bottom: 32px;
  color: #043b64;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-album__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.hr-album__desc {
  margin-bottom: 92px;
  color: #2d2d2d;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-album__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 1023px) {
  .hr-album__desc {
    margin-bottom: 40px;
  }
}
.hr-album__tabs {
  display: flex;
  flex-direction: column;
}
.hr-album__tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  color: #959595;
  text-align: left;
  cursor: pointer;
  transition: color 0.3s ease;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .hr-album__tab {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.hr-album__tab + .hr-album__tab {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #d5d5d5;
}
.hr-album__tab.is-active, .hr-album__tab:hover {
  color: #043b64;
}
.hr-album__tab-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  transition: transform 0.3s ease;
}
@media (max-width: 1023px) {
  .hr-album__tab-icon {
    display: none;
  }
}
.hr-album__tab.is-active .hr-album__tab-icon, .hr-album__tab:hover .hr-album__tab-icon {
  transform: translateX(6px);
}
.hr-album__gallery {
  flex: 1 1 0;
  min-width: 0;
}
@media (max-width: 1023px) {
  .hr-album__gallery {
    width: 100%;
  }
}
.hr-album__gallery.is-hide {
  display: none;
}
.hr-album__item {
  display: block;
  width: var(--hr-album-slide);
  height: auto;
  cursor: pointer;
}
.hr-album__pic {
  display: block;
  border-radius: 1.25rem;
}
.hr-album__pic img {
  transition: transform 0.5s ease;
}
@media (hover: hover) {
  .hr-album__item:hover .hr-album__pic img {
    transform: translate(-50%, -50%) scale(1.05);
  }
}
.hr-album__caption {
  display: block;
  margin-top: 16px;
  color: #2d2d2d;
  text-align: center;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hr-album__caption {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.hr-album__stage {
  position: relative;
}
.hr-album__arrow {
  position: absolute;
  top: calc(var(--hr-album-slide) * 0.33333);
  z-index: 2;
  transform: translateY(-50%);
}
.hr-album__arrow--prev {
  left: -30px;
}
.hr-album__arrow--next {
  left: calc(var(--hr-album-slide) - var(--hr-arrow-size) + 30px);
}
@media (max-width: 1023px) {
  .hr-album__arrow--prev {
    left: -18px;
  }
  .hr-album__arrow--next {
    left: calc(var(--hr-album-slide) - var(--hr-arrow-size) + 18px);
  }
}

.lg-hr .lg-backdrop {
  background-color: rgba(0, 0, 0, 0.8);
}
.lg-hr .lg-img-wrap {
  padding: 84px 210px;
}
@media (max-width: 767px) {
  .lg-hr .lg-img-wrap {
    padding: 30px;
  }
}
.lg-hr .lg-object {
  border-radius: 1.25rem;
}
.lg-hr .lg-prev,
.lg-hr .lg-next {
  width: 60px;
  height: 60px;
  margin-top: -30px;
  padding: 0;
  border-radius: 50%;
  background: transparent;
  color: #ffffff;
  font-size: 0;
  transition: background-color 0.3s ease;
}
@media (max-width: 767px) {
  .lg-hr .lg-prev,
  .lg-hr .lg-next {
    width: 44px;
    height: 44px;
    margin-top: -22px;
  }
}
.lg-hr .lg-prev::before, .lg-hr .lg-prev::after,
.lg-hr .lg-next::before,
.lg-hr .lg-next::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  padding: 0;
  margin: 0;
  font-size: 0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .lg-hr .lg-prev:hover,
  .lg-hr .lg-next:hover {
    background-color: rgba(255, 255, 255, 0.2);
  }
}
.lg-hr .lg-prev {
  left: 90px;
}
.lg-hr .lg-prev::after {
  transform: translate(-35%, -50%) rotate(-135deg);
}
.lg-hr .lg-prev::before {
  display: none;
}
@media (max-width: 767px) {
  .lg-hr .lg-prev {
    left: 10px;
  }
}
.lg-hr .lg-next {
  right: 90px;
}
.lg-hr .lg-next::before {
  transform: translate(-65%, -50%) rotate(45deg);
}
.lg-hr .lg-next::after {
  display: none;
}
@media (max-width: 767px) {
  .lg-hr .lg-next {
    right: 10px;
  }
}
.lg-hr .lg-sub-html {
  padding: 20px 30px 40px;
  background: transparent;
}
.lg-hr .lg-sub-html h4 {
  margin-bottom: 4px;
  color: #ffffff;
  font-weight: 500;
  font-size: 18px !important;
}
.lg-hr .lg-sub-html p {
  color: #d9d9d9 !important;
  font-size: 18px !important;
}
.lg-hr .lg-toolbar {
  background: transparent;
}
.lg-hr .lg-toolbar .lg-icon {
  transition: transform 0.3s ease;
}
.lg-hr .lg-toolbar .lg-icon:hover {
  transform: rotate(90deg);
}
.lg-hr .lg-toolbar .lg-close {
  width: 60px;
  height: 60px;
  margin: 40px 40px 0 0;
  background: url("../img/about/i-team-close.svg") no-repeat center/100% 100%;
  font-size: 0;
}
.lg-hr .lg-toolbar .lg-close::after {
  content: none;
}
@media (max-width: 767px) {
  .lg-hr .lg-toolbar .lg-close {
    width: 44px;
    height: 44px;
    margin: 16px 16px 0 0;
  }
}

@keyframes hrWhyMarquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-33.3333%, 0, 0);
  }
}
@keyframes hrBandFlow {
  from {
    background-position: 0% 0;
  }
  to {
    background-position: 200% 0;
  }
}
@keyframes hrBandSwing {
  from {
    transform: translate3d(-50%, 0, 0) rotate(0deg);
  }
  to {
    transform: translate3d(-50%, 0, 0) rotate(4deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hr-share > .hr-share__wave,
  .hr-share > .hr-share-masked,
  .hr-share > .hr-share__inner,
  .hr-share.a-play > .hr-share__wave,
  .hr-share.a-play > .hr-share-masked,
  .hr-share.a-play > .hr-share__inner {
    clip-path: none;
    transition: none;
  }
}
.profile-intro,
.profile-vision-outer,
.profile-group {
  --bleed: 30px;
}
@media (min-width: 1280px) {
  .profile-intro,
  .profile-vision-outer,
  .profile-group {
    --bleed: 60px;
  }
}
@media (min-width: 1440px) {
  .profile-intro,
  .profile-vision-outer,
  .profile-group {
    --bleed: 10.416666vw;
  }
}

.profile-intro {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 6.4583vw;
  padding-bottom: 9.2865vw;
}
@media (max-width: 1023px) {
  .profile-intro {
    flex-direction: column;
    align-items: stretch;
    padding-top: 60px;
    padding-bottom: 55px;
  }
}

.profile-intro__deco {
  position: absolute;
  top: min(2.0833vw, 40px);
  right: calc(-1 * var(--bleed));
  z-index: 0;
  display: block;
  width: min(15.3646vw, 295px);
  pointer-events: none;
}
@media (max-width: 1279px) {
  .profile-intro__deco {
    display: none;
  }
}
.profile-intro__deco img {
  display: block;
  width: 100%;
  height: auto;
}

.profile-intro__text {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: min(3.125vw, 60px);
  width: 46.8421%;
  margin-top: 5.5921%;
}
@media (max-width: 1023px) {
  .profile-intro__text {
    gap: 40px;
    width: 100%;
    margin-top: 40px;
  }
}

.profile-intro__block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.profile-intro__title {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .profile-intro__title {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 1024px) {
  .profile-intro__title {
    font-size: clamp(24px, 100vw * 32 / 1920, 32px);
  }
}
.profile-intro__title {
  margin: 0;
  color: #054c72;
}

.profile-intro__p {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .profile-intro__p {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.profile-intro__p {
  margin: 0;
  color: #2d2d2d;
}

.profile-intro__figure {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 51.4033%;
  margin-right: -2.9145%;
}
@media (max-width: 1023px) {
  .profile-intro__figure {
    order: -1;
    width: 100%;
    margin-right: 0;
  }
}
.profile-intro__figure img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 1023px) {
  .profile-intro__figure img {
    aspect-ratio: 330/260;
    object-fit: cover;
  }
}

.profile-intro__figure {
  aspect-ratio: 782/616;
}
.profile-intro__figure > .profile-intro__bg,
.profile-intro__figure > .profile-intro__pic,
.profile-intro__figure > .profile-intro__since,
.profile-intro__figure > .profile-intro__year {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.profile-intro__figure > .profile-intro__bg {
  z-index: 0;
}
.profile-intro__figure > .profile-intro__pic {
  z-index: 1;
}
.profile-intro__figure > .profile-intro__since,
.profile-intro__figure > .profile-intro__year {
  z-index: 2;
}

@keyframes profile-figure-bg {
  0%, 100% {
    scale: 1;
    translate: 0 0;
    rotate: 0deg;
  }
  50% {
    scale: 1.05;
    translate: 0 -10px;
    rotate: 2.5deg;
  }
}
@keyframes profile-figure-float {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 -12px;
  }
}
.profile-intro__bg {
  transform-origin: 50% 50%;
  animation: profile-figure-bg 8s ease-in-out infinite;
  will-change: transform;
}

.profile-intro__pic {
  animation: profile-figure-float 5s ease-in-out infinite;
  will-change: transform;
}

@media (prefers-reduced-motion: reduce) {
  .profile-intro__bg,
  .profile-intro__pic {
    animation: none;
  }
}
.no-js .profile-intro__bg,
.no-js .profile-intro__pic {
  animation: none;
}

.profile-vision-outer {
  position: relative;
  display: flex;
  align-items: center;
  margin-right: calc(-1 * var(--bleed));
  margin-left: calc(-1 * var(--bleed));
  min-height: 50.625vw;
}
@media (max-width: 767px) {
  .profile-vision-outer {
    min-height: 177.6923vw;
  }
}
.profile-vision-outer > .profile-vision__yellow,
.profile-vision-outer > .profile-vision__scrim img,
.profile-vision-outer > .profile-vision__media,
.profile-vision-outer > .profile-vision__scrim {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  pointer-events: none;
}
.profile-vision-outer > .profile-vision__media,
.profile-vision-outer > .profile-vision__scrim,
.profile-vision-outer > .profile-vision__yellow,
.profile-vision-outer > .profile-vision__arc,
.profile-vision-outer > .profile-vision {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.profile-vision-outer.a-play > .profile-vision__media,
.profile-vision-outer.a-play > .profile-vision__scrim,
.profile-vision-outer.a-play > .profile-vision__yellow,
.profile-vision-outer.a-play > .profile-vision__arc,
.profile-vision-outer.a-play > .profile-vision {
  clip-path: inset(0 0 0 0);
}
.profile-vision-outer.a-play > .profile-vision__yellow {
  transition-delay: 0.45s;
}
.profile-vision-outer > .profile-vision__yellow {
  z-index: 0;
}
@media (max-width: 767px) {
  .profile-vision-outer > .profile-vision__yellow {
    display: none;
  }
}
.profile-vision-outer > .profile-vision__media {
  z-index: 1;
  -webkit-mask: url("../img/about/profile-s2-p1.png") no-repeat center top/cover;
  mask: url("../img/about/profile-s2-p1.png") no-repeat center top/cover;
}
@media (max-width: 767px) {
  .profile-vision-outer > .profile-vision__media {
    -webkit-mask-image: url("../img/about/profile-s2-p1-xs.png");
    mask-image: url("../img/about/profile-s2-p1-xs.png");
  }
}
.profile-vision-outer > .profile-vision__scrim {
  z-index: 2;
}

.profile-vision__arc {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  width: min(16.6667vw, 320px);
  height: min(16.6667vw, 320px);
  pointer-events: none;
}
@media (max-width: 1279px) {
  .profile-vision__arc {
    display: none;
  }
}

.profile-vision {
  position: relative;
  z-index: 4;
  flex: 1;
  min-width: 0;
  padding-top: min(6.25vw, 120px);
  padding-bottom: min(3.125vw, 60px);
}

.profile-vision__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: max(30.15625vw, 420px);
  max-width: 100%;
  color: #ffffff;
}
@media (max-width: 767px) {
  .profile-vision__body {
    width: 100%;
  }
}

.profile-vision__title {
  font-size: 32px;
  line-height: 175%;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .profile-vision__title {
    font-size: 24px;
    line-height: 167%;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 1024px) {
  .profile-vision__title {
    font-size: clamp(24px, 100vw * 32 / 1920, 32px);
  }
}
.profile-vision__title {
  margin: 0;
}

.profile-vision__p {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .profile-vision__p {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.profile-vision__p {
  margin: 0;
}

.profile-group {
  --badge: min(15.9375vw, 306px);
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-right: calc(-1 * var(--bleed));
  margin-left: calc(-1 * var(--bleed));
  margin-bottom: -113px;
}
@media (max-width: 1279px) {
  .profile-group {
    margin-bottom: -50px;
  }
}
@media (max-width: 1023px) {
  .profile-group {
    --badge: 185px;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
}

.profile-group__deco {
  position: absolute;
  top: min(16.6667vw, 320px);
  right: 0;
  z-index: 1;
  display: block;
  width: min(16.6667vw, 320px);
  height: min(16.6667vw, 320px);
  pointer-events: none;
}
@media (max-width: 1279px) {
  .profile-group__deco {
    display: none;
  }
}

.profile-group__badge {
  position: absolute;
  top: min(21.3542vw, 410px);
  left: 50%;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: var(--badge);
  height: var(--badge);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.4);
  transform: translateX(-50%);
  pointer-events: none;
  opacity: 0;
  scale: 0.86;
  transition: opacity 0.9s ease, scale 0.9s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.profile-group__badge.is-in {
  opacity: 1;
  scale: 1;
}
.profile-group__badge::before, .profile-group__badge::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.55);
  opacity: 0;
  pointer-events: none;
}
.profile-group__badge.is-in::before, .profile-group__badge.is-in::after {
  animation: home-ring-pulse 3.6s cubic-bezier(0.22, 0.61, 0.36, 1) 0.9s infinite;
}
.profile-group__badge.is-in::after {
  animation-delay: 2.7s;
}
@media (max-width: 1023px) {
  .profile-group__badge {
    top: auto;
    bottom: 0;
    grid-row: 1/2;
    grid-column: 1/2;
    transform: translate(-50%, 50%);
  }
}

.profile-group__badge-in {
  position: absolute;
  inset: 6.2092%;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 1023px) {
  .profile-group__badge-in {
    inset: 5.9459%;
  }
}

.profile-group__badge-txt {
  position: relative;
  margin-top: 20.5882%;
  opacity: 0;
  translate: 0 16px;
  transition: opacity 0.7s ease 0.25s, translate 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) 0.25s;
}
.profile-group__badge.is-in .profile-group__badge-txt {
  opacity: 1;
  translate: 0 0;
}
.profile-group__badge-txt {
  font-family: "Noto Serif TC", serif;
  font-size: calc(var(--badge) * 0.18301);
  line-height: calc(var(--badge) * 0.29412);
  letter-spacing: 0.12em;
  text-indent: 0.12em;
  font-weight: 600;
  text-align: center;
  background: linear-gradient(95.74deg, #043b64 10.531%, #054c72 38.574%, #65bfb5 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (max-width: 1023px) {
  .profile-group__badge-txt {
    margin-top: 14.5946%;
    font-size: calc(var(--badge) * 0.19459);
    line-height: calc(var(--badge) * 0.35135);
  }
}

.profile-group__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: min(6.25vw, 120px);
  padding-bottom: 11.0417vw;
}
.profile-group__panel--blue {
  background-image: linear-gradient(to top, #a4d4dd 17.788%, #dee9eb 80%, rgba(222, 233, 235, 0) 100%);
}
@media (max-width: 1023px) {
  .profile-group__panel--blue {
    padding-top: 60px;
    padding-bottom: calc(var(--badge) / 2 + 40px);
  }
}
.profile-group__panel--cream {
  background-image: linear-gradient(to top, #f5e0b3 20.673%, #f3eee3 80%, rgba(243, 238, 227, 0) 100%);
}
@media (max-width: 1023px) {
  .profile-group__panel--cream {
    padding-top: calc(var(--badge) / 2 + 40px);
    padding-bottom: 154px;
  }
}

.profile-group__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 75%;
  text-align: center;
}
@media (max-width: 1023px) {
  .profile-group__body {
    width: calc(100% - 60px);
  }
}

.profile-group__logo {
  display: block;
}
.profile-group__logo img {
  display: block;
  width: 100%;
  height: 100%;
}
.profile-group__logo--1 {
  width: min(3.4896vw, 67px);
  height: min(3.0208vw, 58px);
}
@media (max-width: 1023px) {
  .profile-group__logo--1 {
    width: 67px;
    height: 58px;
  }
}
.profile-group__logo--2 {
  width: min(2.7646vw, 53.08px);
  height: min(3.125vw, 60px);
}
@media (max-width: 1023px) {
  .profile-group__logo--2 {
    width: 53.08px;
    height: 60px;
  }
}

.profile-group__name {
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .profile-group__name {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .profile-group__name {
    font-size: clamp(28px, 100vw * 40 / 1920, 40px);
  }
}
.profile-group__name {
  margin: min(0.625vw, 12px) 0 0;
  color: #2d2d2d;
}
@media (max-width: 1023px) {
  .profile-group__name {
    margin-top: 12px;
  }
}

.profile-group__desc {
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .profile-group__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.profile-group__desc {
  margin: min(0.625vw, 12px) 0 0;
  color: #2d2d2d;
}
@media (max-width: 1023px) {
  .profile-group__desc {
    margin-top: 12px;
  }
}
@media (max-width: 767px) {
  .profile-group__desc {
    letter-spacing: 0.08em;
  }
}

.profile-group__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  margin-top: min(2.0833vw, 40px);
  padding: 12px 40px;
  border-radius: 9999px;
  background-color: #005cb9;
  font-size: 18px;
  line-height: normal;
  letter-spacing: 0.16em;
  font-weight: 500;
  color: #ffffff;
  white-space: nowrap;
  transition: background-color 0.3s;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .profile-group__btn:hover {
    background-color: #043b64;
  }
}
@media (max-width: 1023px) {
  .profile-group__btn {
    margin-top: 40px;
  }
}

.profile-group__pic {
  position: relative;
  z-index: 1;
  margin-top: min(3.125vw, 60px);
}
.profile-group__pic img {
  display: block;
  width: 100%;
  height: auto;
}
.profile-group__pic--1 {
  align-self: flex-start;
  width: 67.2917%;
}
@media (max-width: 1023px) {
  .profile-group__pic--1 {
    width: 92.3077%;
    margin-top: 40px;
  }
}
.profile-group__pic--2 {
  align-self: flex-start;
  width: 58.2292%;
  margin-top: min(3.6458vw, 70px);
  margin-left: 20.9375%;
}
@media (max-width: 1023px) {
  .profile-group__pic--2 {
    width: calc(100% - 60px);
    margin-top: 40px;
    margin-left: 0;
    align-self: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .profile-vision-outer > .profile-vision__media,
  .profile-vision-outer > .profile-vision__scrim,
  .profile-vision-outer > .profile-vision__yellow,
  .profile-vision-outer > .profile-vision__arc,
  .profile-vision-outer > .profile-vision,
  .profile-vision-outer.a-play > .profile-vision__media,
  .profile-vision-outer.a-play > .profile-vision__scrim,
  .profile-vision-outer.a-play > .profile-vision__yellow,
  .profile-vision-outer.a-play > .profile-vision__arc,
  .profile-vision-outer.a-play > .profile-vision {
    clip-path: none;
    transition: none;
  }
  .profile-group__badge,
  .profile-group__badge.is-in,
  .profile-group__badge-txt,
  .profile-group__badge.is-in .profile-group__badge-txt {
    opacity: 1;
    scale: 1;
    translate: none;
    transition: none;
  }
  .profile-group__badge.is-in::before,
  .profile-group__badge.is-in::after {
    animation: none;
  }
}
.no-js .profile-vision-outer > .profile-vision__media,
.no-js .profile-vision-outer > .profile-vision__scrim,
.no-js .profile-vision-outer > .profile-vision__yellow,
.no-js .profile-vision-outer > .profile-vision__arc,
.no-js .profile-vision-outer > .profile-vision,
.no-js .profile-vision-outer.a-play > .profile-vision__media,
.no-js .profile-vision-outer.a-play > .profile-vision__scrim,
.no-js .profile-vision-outer.a-play > .profile-vision__yellow,
.no-js .profile-vision-outer.a-play > .profile-vision__arc,
.no-js .profile-vision-outer.a-play > .profile-vision {
  clip-path: none;
  transition: none;
}
.no-js .profile-group__badge,
.no-js .profile-group__badge.is-in,
.no-js .profile-group__badge-txt,
.no-js .profile-group__badge.is-in .profile-group__badge-txt {
  opacity: 1;
  scale: 1;
  translate: none;
  transition: none;
}
.no-js .profile-group__badge.is-in::before,
.no-js .profile-group__badge.is-in::after {
  animation: none;
}

.esg-report__card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: min(18.3333vw, 352px);
  padding: 30px 40px;
  border: 1px solid rgba(0, 148, 176, 0.5);
  border-radius: 0 50px 0 50px;
  background-color: #effeff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  transition: translate 0.3s ease, box-shadow 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .esg-report__card:hover {
    translate: 0 -6px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
  }
}
@media (max-width: 1023px) {
  .esg-report__card {
    min-height: auto;
  }
}
@media (max-width: 767px) {
  .esg-report__card {
    padding: 24px;
  }
}
@media (max-width: 480px) {
  .esg-report__card {
    aspect-ratio: 1/1;
  }
}
.esg-report__wave {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  border-radius: 0 50px 0 50px;
  opacity: 0.4;
  pointer-events: none;
}
.esg-report__wave img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: none;
}
.esg-report__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
  justify-content: space-between;
  gap: 30px;
}
.esg-report__head {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}
.esg-report__year {
  margin: 0;
  font-size: 40px;
  font-weight: 500;
  line-height: normal;
  background-image: linear-gradient(107.34deg, #65bfb5 10.531%, #054c72 63.126%, #043b64 112.23%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
@media (min-width: 1024px) {
  .esg-report__year {
    font-size: clamp(48px, 100vw * 60 / 1920, 60px);
  }
}
.esg-report__title {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: #043b64;
}
.esg-report__title-en {
  margin: 0;
  font-size: 18px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.08em;
}
.esg-report__title-tw {
  margin: 0;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .esg-report__title-tw {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0.08em;
  }
}
.esg-report__links {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  justify-content: flex-end;
}
@media (min-width: 1280px) {
  .esg-report__links {
    gap: 36px;
  }
}
.esg-report__link {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  color: #0094b0;
  transition: opacity 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .esg-report__link:hover {
    opacity: 0.7;
  }
}
.esg-report__link-text {
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .esg-report__link-text {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
.esg-report__link-icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
}
.esg-report__link-icon img {
  display: block;
  width: 100%;
  height: 100%;
}

.esg-topic-sdg > .fade-up:nth-child(1) {
  animation-delay: 0s;
}
.esg-topic-sdg > .fade-up:nth-child(2) {
  animation-delay: 0.1s;
}
.esg-topic-sdg > .fade-up:nth-child(3) {
  animation-delay: 0.2s;
}
.esg-topic-sdg > .fade-up:nth-child(4) {
  animation-delay: 0.3s;
}
.esg-topic-sdg > .fade-up:nth-child(5) {
  animation-delay: 0.4s;
}
.esg-topic-sdg > .fade-up:nth-child(6) {
  animation-delay: 0.5s;
}
.esg-topic-sdg > .fade-up:nth-child(7) {
  animation-delay: 0.6s;
}
.esg-topic-sdg > .fade-up:nth-child(8) {
  animation-delay: 0.7s;
}
.esg-topic-sdg > .fade-up:nth-child(n+9) {
  animation-delay: 0.7s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(1) {
  animation-delay: 0.9s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(2) {
  animation-delay: 1s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(3) {
  animation-delay: 1.1s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(4) {
  animation-delay: 1.2s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(5) {
  animation-delay: 1.3s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(6) {
  animation-delay: 1.4s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(7) {
  animation-delay: 1.5s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(8) {
  animation-delay: 1.6s;
}
.esg-topic-sdg--banner > .fade-up:nth-child(n+9) {
  animation-delay: 1.6s;
}

.esg-topic-intro {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  padding-bottom: 40px;
  border-bottom: 3px solid #c4ebf5;
  text-align: center;
}
@media (max-width: 767px) {
  .esg-topic-intro {
    gap: 24px;
    padding-bottom: 24px;
  }
}
.esg-topic-intro__quote {
  display: block;
  width: min(4.1666vw, 80px);
}
@media (max-width: 1023px) {
  .esg-topic-intro__quote {
    width: 60px;
  }
}
@media (max-width: 767px) {
  .esg-topic-intro__quote {
    width: 48px;
  }
}
.esg-topic-intro__quote img {
  display: block;
  width: 100%;
  height: auto;
}
.esg-topic-intro__text {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  color: #043b64;
}
.esg-topic-intro__title {
  margin: 0;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .esg-topic-intro__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .esg-topic-intro__title {
    font-size: clamp(32px, 100vw * 40 / 1920, 40px);
  }
}
@media (max-width: 1023px) {
  .esg-topic-intro__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.esg-topic-intro__desc {
  margin: 0;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .esg-topic-intro__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}

@keyframes esg-topic-deco-float {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 -12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .esg-topic-hl__deco {
    animation: none;
  }
}
.esg-topic-hl {
  --bleed: 30px;
  position: relative;
  margin-top: min(6.25vw, 120px);
}
@media (min-width: 1280px) {
  .esg-topic-hl {
    --bleed: 60px;
  }
}
@media (min-width: 1440px) {
  .esg-topic-hl {
    --bleed: 10.416666vw;
  }
}
@media (max-width: 1279px) {
  .esg-topic-hl {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 60px;
  }
}
.esg-topic-hl__deco {
  position: absolute;
  top: min(12.03125vw, 231px);
  left: 14.8684%;
  z-index: 0;
  display: block;
  width: min(27.5vw, 528px);
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #d9eff4;
  animation: esg-topic-deco-float 5s ease-in-out infinite;
  pointer-events: none;
  will-change: transform;
}
@media (max-width: 1279px) {
  .esg-topic-hl__deco {
    top: -62px;
    left: calc(-173px - var(--bleed));
    width: 528px;
  }
}
.esg-topic-hl__pic {
  position: absolute;
  top: 0;
  right: calc(-1 * var(--bleed));
  left: 35.3947%;
  z-index: 0;
  overflow: hidden;
  height: min(32.4479vw, 623px);
  border-radius: min(3.125vw, 60px) 0 0 min(3.125vw, 60px);
}
@media (max-width: 1279px) {
  .esg-topic-hl__pic {
    top: 0;
    right: calc(-1 * var(--bleed));
    bottom: 100px;
    left: calc(-1 * var(--bleed));
    height: auto;
    border-radius: 0;
  }
}
.esg-topic-hl__pic img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.esg-topic-hl__head {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: calc(35.3947% - 20px);
  color: #043b64;
}
@media (max-width: 1279px) {
  .esg-topic-hl__head {
    position: relative;
    z-index: 2;
    align-items: center;
    width: 100%;
    max-width: 420px;
    margin-bottom: 40px;
    text-align: center;
  }
}
.esg-topic-hl__title {
  margin: 0;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .esg-topic-hl__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .esg-topic-hl__title {
    font-size: clamp(32px, 100vw * 40 / 1920, 40px);
  }
}
@media (max-width: 1279px) {
  .esg-topic-hl__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
.esg-topic-hl__desc {
  margin: 0;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media (max-width: 767px) {
  .esg-topic-hl__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 1279px) {
  .esg-topic-hl__desc {
    font-size: 20px;
    line-height: 180%;
    letter-spacing: 0.08em;
  }
}
.esg-topic-hl__body {
  position: relative;
  z-index: 1;
  width: 100%;
  padding-top: min(16.25vw, 312px);
  padding-bottom: min(4.2708vw, 82px);
}
@media (max-width: 1279px) {
  .esg-topic-hl__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 71px;
    padding-bottom: 0;
  }
}
.esg-topic-hl__arrows {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 32px;
  align-items: center;
  margin-bottom: 32px;
}
@media (max-width: 1279px) {
  .esg-topic-hl__arrows {
    order: 2;
    margin-top: 111px;
    margin-bottom: 0;
  }
}
.esg-topic-hl__arrow {
  display: block;
  flex-shrink: 0;
  width: min(3.125vw, 60px);
  height: min(3.125vw, 60px);
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: #34b2cf;
  transition: color 0.3s ease;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .esg-topic-hl__arrow:hover {
    color: #036a80;
  }
}
@media (max-width: 1279px) {
  .esg-topic-hl__arrow {
    width: 60px;
    height: 60px;
  }
}
.esg-topic-hl__arrow-icon {
  display: block;
  width: 100%;
  height: 100%;
}
.esg-topic-hl__arrow--next .esg-topic-hl__arrow-icon {
  transform: rotate(180deg);
}
.esg-topic-hl__arrow.swiper-button-lock {
  visibility: hidden;
}
.esg-topic-hl__arrow.swiper-button-disabled {
  opacity: 0.35;
  pointer-events: none;
}
@media (max-width: 1279px) {
  .esg-topic-hl__list {
    order: 1;
    width: 100%;
  }
}
.esg-topic-hl__list .swiper {
  width: auto;
  margin: -16px;
  padding: 16px;
}
.esg-topic-hl__list .swiper-slide {
  display: flex;
  height: auto;
}
.esg-topic-hl__card {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 12px;
  justify-content: space-between;
  min-height: min(14.21875vw, 273px);
  padding: min(2.0833vw, 40px);
  border-radius: 0 min(3.125vw, 60px) 0 min(3.125vw, 60px);
  background-color: #ffffff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(10px);
}
@media (max-width: 1279px) {
  .esg-topic-hl__card {
    min-height: 262px;
    padding: 40px;
    border-radius: 0 60px 0 60px;
  }
}
.esg-topic-hl__label {
  margin: 0;
  color: #043b64;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .esg-topic-hl__label {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
@media (max-width: 1279px) {
  .esg-topic-hl__label {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.esg-topic-hl__num {
  display: flex;
  gap: 6px;
  align-items: flex-end;
  margin: 0;
  color: #043b64;
}
.esg-topic-hl__value {
  font-size: 56px;
  font-weight: 600;
  line-height: normal;
}
@media (min-width: 1024px) {
  .esg-topic-hl__value {
    font-size: clamp(48px, 100vw * 60 / 1920, 60px);
  }
}
@media (max-width: 1279px) {
  .esg-topic-hl__value {
    font-size: 56px;
  }
}
.esg-topic-hl__unit {
  padding-bottom: 8px;
  font-size: 20px;
  font-weight: 400;
  line-height: 36px;
  letter-spacing: 0.12em;
}
@media (max-width: 1279px) {
  .esg-topic-hl__unit {
    font-size: 18px;
    line-height: 34px;
  }
}

.esg-topic-act {
  margin-top: min(6.25vw, 120px);
}
@media (max-width: 1279px) {
  .esg-topic-act {
    margin-top: 60px;
  }
}
.esg-topic-act__title {
  margin: 0 0 40px;
  color: #043b64;
  text-align: center;
  font-size: 40px;
  line-height: 165%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .esg-topic-act__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .esg-topic-act__title {
    font-size: clamp(32px, 100vw * 40 / 1920, 40px);
  }
}
@media (max-width: 1023px) {
  .esg-topic-act__title {
    font-size: 28px;
    line-height: 157%;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 767px) {
  .esg-topic-act__title {
    margin-bottom: 24px;
  }
}
.esg-topic-act__list {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 767px) {
  .esg-topic-act__list {
    gap: 20px;
  }
}
.esg-topic-act__q {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 20px 40px;
  border: 1px solid rgba(52, 178, 207, 0.4);
  border-radius: 20px;
  background-color: #ffffff;
  text-align: left;
  cursor: pointer;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
@media (max-width: 1023px) {
  .esg-topic-act__q {
    padding: 18px 30px;
  }
}
@media (max-width: 767px) {
  .esg-topic-act__q {
    gap: 12px;
    padding: 14px 20px;
  }
}
.esg-topic-act__text {
  flex: 1 1 0;
  min-width: 0;
  color: #043b64;
  font-size: 28px;
  line-height: 171%;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .esg-topic-act__text {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1024px) {
  .esg-topic-act__text {
    font-size: clamp(24px, 100vw * 28 / 1920, 28px);
  }
}
@media (max-width: 1023px) {
  .esg-topic-act__text {
    font-size: 21px;
    line-height: 162%;
    letter-spacing: 0.08em;
  }
}
.esg-topic-act__arrow {
  position: relative;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  transition: transform 0.3s ease;
}
@media (max-width: 767px) {
  .esg-topic-act__arrow {
    width: 36px;
    height: 36px;
  }
}
.esg-topic-act__arrow-off, .esg-topic-act__arrow-on {
  display: block;
  width: 100%;
  height: 100%;
}
.esg-topic-act__arrow-on {
  display: none;
}
.esg-topic-act__item.is-open .esg-topic-act__q {
  border-color: transparent;
  background-color: #0094b0;
}
.esg-topic-act__item.is-open .esg-topic-act__text {
  color: #ffffff;
}
.esg-topic-act__item.is-open .esg-topic-act__arrow {
  transform: rotate(180deg);
}
.esg-topic-act__item.is-open .esg-topic-act__arrow-off {
  display: none;
}
.esg-topic-act__item.is-open .esg-topic-act__arrow-on {
  display: block;
}
.esg-topic-act__a {
  display: none;
  padding-top: 32px;
}
@media (max-width: 767px) {
  .esg-topic-act__a {
    padding-top: 20px;
  }
}
.esg-topic-act__body {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
@media (max-width: 1023px) {
  .esg-topic-act__body {
    flex-direction: column;
    gap: 24px;
  }
}
.esg-topic-act__pic {
  flex: 1 1 0;
  overflow: hidden;
  width: 100%;
  min-width: 0;
  border-radius: 20px;
}
@media (max-width: 1023px) {
  .esg-topic-act__pic {
    flex: none;
  }
}
.esg-topic-act__pic {
  aspect-ratio: 740/416;
}
.esg-topic-act__pic img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
}
.esg-topic-act__info {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
@media (max-width: 1023px) {
  .esg-topic-act__info {
    flex: none;
    width: 100%;
  }
}
.esg-topic-act__desc {
  margin: 0;
  color: #2d2d2d;
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .esg-topic-act__desc {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.esg-topic-act__key {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.esg-topic-act__key-title {
  margin: 0;
  color: #338ca7;
  font-size: 24px;
  line-height: 183%;
  letter-spacing: 0;
  font-weight: 500;
}
@media (max-width: 767px) {
  .esg-topic-act__key-title {
    font-size: 20px;
    line-height: 170%;
    letter-spacing: 0;
  }
}
.esg-topic-act__key-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.esg-topic-act__key-item {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0;
  color: #2d2d2d;
  font-size: 18px;
  line-height: 189%;
  letter-spacing: 0;
  font-weight: 400;
}
@media (max-width: 767px) {
  .esg-topic-act__key-item {
    font-size: 18px;
    line-height: 189%;
    letter-spacing: 0;
  }
}
.esg-topic-act__key-icon {
  display: block;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.en-dump {
  font-family: "Lato", sans-serif;
}