@charset "UTF-8";
/*==========================================================================
Max Width
============================================================================*/
/*==========================================================================
Break Point
============================================================================*/
/*==========================================================================
Font
============================================================================*/
/*==========================================================================
Color
カラーコード変換 https://tech-unlimited.com/color.html
============================================================================*/
/*==========================================================================
box shadow
==========================================================================*/
/*==========================================================================
Line Height
==========================================================================*/
/*==========================================================================
Easing
Easingの動きが一覧でわかるチートシート https://easings.net/ja
Easingジェネレーター https://easings.co/
==========================================================================*/
main,
sub,
header,
footer,
figure,
fieldset {
  display: block;
}

html,
body,
figure,
fieldset {
  margin: 0;
  padding: 0;
}

div,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
dl,
dt,
dd,
table,
th,
td,
p,
span,
a,
input,
button,
textarea,
select,
option {
  margin: 0;
  padding: initial;
  box-sizing: border-box;
  font-size: inherit;
}

ul,
ol {
  list-style: none;
}

table {
  border-collapse: collapse;
  color: rgb(0, 0, 0);
}

fieldset {
  border: 0;
}

em {
  font-style: normal;
}

:root {
  color-scheme: light;
}

html {
  scroll-behavior: smooth;
}

body {
  position: relative;
  color: #3c4954;
  font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.04em;
  line-height: 1.71;
  font-feature-settings: "palt" on;
}

body,
input,
button,
textarea,
select,
option {
  -webkit-appearance: none;
  color: #3c4954;
  border: initial;
  font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  outline: transparent;
}

label:hover {
  cursor: pointer;
}

a,
i {
  text-decoration: none;
  transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

main a,
.main a {
  color: #267496;
}

.flexbox {
  display: flex;
}
.flexbox__inner {
  flex-grow: 1;
}
.flexbox-R {
  flex-direction: row;
}
.flexbox-C {
  flex-direction: column;
}

.display--narrowest {
  margin: 5rem auto 4rem;
  max-width: 40rem;
}
.display--narrower {
  margin: 5rem auto 4rem;
  max-width: 46.5rem;
}
.display--narrow {
  margin: 5rem auto 4rem;
  max-width: 60rem;
}
@media print, screen and (max-width:915px) {
  .display--narrow {
    margin: 5rem auto 3rem;
  }
}

.pagetop {
  margin: 4rem auto 5rem;
  text-align: center;
}

.sign {
  margin: 5rem 0;
  text-align: right;
}

@media print, screen and (max-width:767px) {
  .for-pc {
    display: none;
  }
}

.for-sp {
  display: none;
}
@media print, screen and (max-width:915px) {
  .for-sp {
    display: block;
  }
}

.layout--row, .layout--rowR {
  display: flex;
  flex-wrap: wrap;
}
.layout--rowR {
  flex-direction: row-reverse;
  justify-content: space-between;
}
@media print, screen and (max-width:915px) {
  .layout--row, .layout--rowR {
    flex-direction: column;
    padding: 0 1rem;
  }
}

.line--btn {
  display: flex;
  justify-content: center;
}
.line--border-top {
  position: relative;
  padding-top: 4rem;
}
.line--border-top::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 86%;
  height: 1px;
  background: rgba(5, 41, 70, 0.08);
}

.declaration {
  margin-bottom: 4rem;
  padding-bottom: 4rem;
  border-bottom: 1px solid rgba(5, 41, 70, 0.08);
  color: rgb(5, 41, 70);
}
.declaration__paragraph {
  margin-bottom: 2rem;
  font-size: 2.5rem;
  text-align: center;
  line-height: 1.3;
}
.declaration__paragraph em {
  font-weight: 700;
}
@media print, screen and (max-width:915px) {
  .declaration {
    margin-bottom: 5rem;
    padding-bottom: 5rem;
  }
  .declaration__paragraph {
    font-size: 1.75rem;
    line-height: 1.43;
  }
  .declaration .display--narrowest {
    margin: auto;
  }
}
@media print, screen and (max-width:767px) {
  .declaration {
    margin-bottom: 5rem;
    padding-bottom: 5rem;
  }
}

.text--declaration {
  font-size: 1.125rem;
  text-align: center;
  line-height: 2.45;
}
.text--declaration + .text--declaration {
  margin-top: 2em;
}
.text--lead {
  font-size: 1rem;
  line-height: 2.25;
}

@keyframes headingGradient {
  0% {
    background-position: 0% 31%;
  }
  50% {
    background-position: 100% 70%;
  }
  100% {
    background-position: 0% 31%;
  }
}
.heading {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.heading--en {
  font-family: "Plus Jakarta Sans", sans-serif;
}
.heading-size--XL {
  gap: 1.5rem;
  font-size: 2.25rem;
  line-height: 1.33;
}
.heading-size--XL::after {
  font-size: 0.39em;
  line-height: 1.33;
}
@media print, screen and (max-width:767px) {
  .heading-size--XL {
    gap: 0.75rem;
    font-size: 1.5rem;
    line-height: 1.4;
  }
}
.heading-size--L {
  gap: 1rem;
  font-size: 1.75rem;
}
.heading-size--L::after {
  font-size: 0.5em;
}
.heading-size--L.heading-form--column {
  margin-bottom: 2rem;
}
@media print, screen and (max-width:767px) {
  .heading-size--L {
    gap: 0;
    font-size: 1.25rem;
  }
}
.heading-size--M {
  font-size: 1.5rem;
  line-height: 1.43;
}
.heading-size--M::after {
  font-size: 0.5em;
}
.heading-size--M.heading-form--column {
  gap: 0.5em;
}
.heading-size--M.heading-form--row {
  gap: 1em;
  margin-bottom: 2rem;
}
.heading-size--S {
  gap: 0.5rem;
  font-size: 1.25rem;
}
.heading-size--S::after {
  font-size: 0.6em;
}
.heading-size--SS {
  font-size: 1.125rem;
}
.heading-size--SS.heading-form--row {
  gap: 0.75rem;
}
.heading-size--XS {
  font-size: 1rem;
}
.heading-size--XXS {
  font-size: 0.9375rem;
}
.heading-size--XXS.heading-form--row {
  gap: 1em;
  margin-top: 2rem;
}
.heading-form--column {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 4rem;
  color: rgb(5, 41, 70);
}
@media print, screen and (max-width:767px) {
  .heading-form--column {
    margin-bottom: 2.5rem;
  }
}
.heading-form--column[data-en]::after {
  content: attr(data-en);
  color: #51ACD4;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
}
.heading-form--row {
  display: flex;
  align-items: center;
  color: rgb(5, 41, 70);
}
.heading-type--normal {
  font-weight: 700;
}
.heading-type--dot {
  display: flex;
  margin-top: 4rem;
}
.heading-type--dot::before {
  content: "";
  flex-shrink: 0;
  width: 0.625rem;
  height: 0.625rem;
  background: #51ACD4;
  border-radius: 100%;
}
.heading-type--border {
  position: relative;
  margin-top: 4rem;
  margin-bottom: 2rem;
  padding-left: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
}
.heading-type--border::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 3px;
  height: 1.6em;
  height: 100%;
  background: #267496;
}

i {
  flex-shrink: 0;
}

.i-size--S {
  width: 1rem;
  height: 1rem;
}
.i-size--M {
  width: 1.125rem;
  height: 1.125rem;
}
.i-size--L {
  width: 1.5rem;
  height: 1.5rem;
}
.i-type--home {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.9939 3.4823L19.75 10.5139V20.2502L4.25 20.2486V10.6726L11.9939 3.4823ZM12.0061 5.51795L5.75 11.3267V18.7487L18.25 18.75V11.1787L12.0061 5.51795Z" fill="%23000"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.9939 3.4823L19.75 10.5139V20.2502L4.25 20.2486V10.6726L11.9939 3.4823ZM12.0061 5.51795L5.75 11.3267V18.7487L18.25 18.75V11.1787L12.0061 5.51795Z" fill="%23000"/></svg>');
}
.i-type--ex {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 3H3V13H13V11.5H4.5V3Z" fill="%23000"/><path d="M7.00391 3V4.5H10.4393L6.69325 8.24609L7.75391 9.30675L11.5 5.56066V8.99609H13V3H7.00391Z" fill="%23000"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 3H3V13H13V11.5H4.5V3Z" fill="%23000"/><path d="M7.00391 3V4.5H10.4393L6.69325 8.24609L7.75391 9.30675L11.5 5.56066V8.99609H13V3H7.00391Z" fill="%23000"/></svg>');
}
.i-type--close {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.0608 4.00011L12.0001 2.93945L8.00011 6.93945L4.00011 2.93945L2.93945 4.00011L6.93945 8.00011L2.93945 12.0001L4.00011 13.0608L8.00011 9.06077L12.0001 13.0608L13.0608 12.0001L9.06077 8.00011L13.0608 4.00011Z" fill="none"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.0608 4.00011L12.0001 2.93945L8.00011 6.93945L4.00011 2.93945L2.93945 4.00011L6.93945 8.00011L2.93945 12.0001L4.00011 13.0608L8.00011 9.06077L12.0001 13.0608L13.0608 12.0001L9.06077 8.00011L13.0608 4.00011Z" fill="none"/></svg>');
}
.i-type--chevL {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  -mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  transform: rotate(180deg);
}
.i-type--chevR {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  -mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
}
.i-type--chevU {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  -mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  transform: rotate(-90deg);
}
.i-type--chevD {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  -mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.25011 3.43945L16.8108 12.0001L8.25011 20.5608L7.18945 19.5001L14.6895 12.0001L7.18945 4.50011L8.25011 3.43945Z" fill="%23000"/></svg>');
  transform: rotate(90deg);
}
.i-type--arrowr {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.43933L14.0607 7.99999L7.5 14.5607L6.43934 13.5L11.1893 8.74999H1.25V7.24999H11.1893L6.43934 2.49999L7.5 1.43933Z" fill="%23000"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.43933L14.0607 7.99999L7.5 14.5607L6.43934 13.5L11.1893 8.74999H1.25V7.24999H11.1893L6.43934 2.49999L7.5 1.43933Z" fill="%23000"/></svg>');
}
.i-type--x {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.541 10.7596L19.5718 3.90002H18.1427L12.9062 9.85615L8.72382 3.90002H3.8999L10.2245 12.9067L3.8999 20.1H5.32914L10.8591 13.8102L15.276 20.1H20.0999L13.5408 10.7596H13.5413H13.541ZM11.5835 12.9859L10.9427 12.0891L5.84402 4.95271H8.0391L12.1539 10.712L12.7947 11.6088L18.1434 19.095H15.9483L11.5836 12.9862V12.9858L11.5835 12.9859Z" fill="%23000"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.541 10.7596L19.5718 3.90002H18.1427L12.9062 9.85615L8.72382 3.90002H3.8999L10.2245 12.9067L3.8999 20.1H5.32914L10.8591 13.8102L15.276 20.1H20.0999L13.5408 10.7596H13.5413H13.541ZM11.5835 12.9859L10.9427 12.0891L5.84402 4.95271H8.0391L12.1539 10.712L12.7947 11.6088L18.1434 19.095H15.9483L11.5836 12.9862V12.9858L11.5835 12.9859Z" fill="%23000"/></svg>');
}
.i-type--fb {
  display: block;
  background: currentColor;
  background: rgba(5, 41, 70, 0.5);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-position: center 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center 0;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.9999 2.40002C6.7199 2.40002 2.3999 6.74173 2.3999 12.0483C2.3999 16.8241 5.8559 20.7799 10.4159 21.6C10.4159 21.6 10.4639 21.5614 10.4735 21.5518C10.4735 21.5518 10.4687 21.5518 10.4639 21.5518V14.7498H8.0639V12.0483H10.4639V9.92565C10.4639 7.51359 11.9999 6.16284 14.2079 6.16284C14.8799 6.16284 15.6479 6.25932 16.3199 6.3558V8.81611H15.0719C13.9199 8.81611 13.6319 9.395 13.6319 10.1669V12.0483H16.1759L15.7439 14.7498H13.6319V21.5518C13.6031 21.5566 13.5695 21.5614 13.5407 21.5663L13.5839 21.6C18.1439 20.7799 21.5999 16.8241 21.5999 12.0483C21.5999 6.74173 17.2799 2.40002 11.9999 2.40002Z" fill="%23000"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.9999 2.40002C6.7199 2.40002 2.3999 6.74173 2.3999 12.0483C2.3999 16.8241 5.8559 20.7799 10.4159 21.6C10.4159 21.6 10.4639 21.5614 10.4735 21.5518C10.4735 21.5518 10.4687 21.5518 10.4639 21.5518V14.7498H8.0639V12.0483H10.4639V9.92565C10.4639 7.51359 11.9999 6.16284 14.2079 6.16284C14.8799 6.16284 15.6479 6.25932 16.3199 6.3558V8.81611H15.0719C13.9199 8.81611 13.6319 9.395 13.6319 10.1669V12.0483H16.1759L15.7439 14.7498H13.6319V21.5518C13.6031 21.5566 13.5695 21.5614 13.5407 21.5663L13.5839 21.6C18.1439 20.7799 21.5999 16.8241 21.5999 12.0483C21.5999 6.74173 17.2799 2.40002 11.9999 2.40002Z" fill="%23000"/></svg>');
}

.btn {
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding: 0 1.25rem;
  gap: 0.5rem;
  height: 56px;
  outline: 1px solid rgba(5, 41, 70, 0.12);
  border-radius: 100vh;
  cursor: pointer;
  transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.btn[data-lang=en] {
  font-family: "Plus Jakarta Sans";
}
.btn:disabled {
  pointer-events: none;
  background: #D9D9D9;
  color: #BBB;
}
.btn-size--S {
  min-width: 5.25rem;
  height: 2.25rem;
  font-size: 0.875rem;
}
.btn-size--M {
  min-width: 5.25rem;
  height: 44px;
  font-size: 0.9375rem;
}
.btn-size--L {
  width: max(100%, 248px);
  height: 4.5rem;
  font-weight: 700;
  font-size: 1rem;
}
@media print, screen and (max-width:767px) {
  .btn-size--L {
    height: 3.5rem;
  }
}
.btn-type--icon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
}
.btn-type--icon:hover {
  background: #F5F6F8;
}
.btn-type--icon:active {
  background: rgba(5, 41, 70, 0.16);
}
.btn-type--slide {
  display: inline-flex;
  position: relative;
  gap: 1rem;
  justify-content: flex-end;
  padding: 0 5.5rem 0 2rem;
  min-width: 163px;
  height: 5rem;
  max-height: initial;
  background: rgb(255, 255, 255);
  color: rgb(5, 41, 70);
  box-shadow: 0px 24px 8px rgba(5, 41, 70, 0.01), 0px 16px 6px rgba(5, 41, 70, 0.02), 0px 8px 6px rgba(5, 41, 70, 0.03), 0px 2px 4px rgba(5, 41, 70, 0.06);
  font-weight: 700;
}
.btn-type--slide::before, .btn-type--slide::after {
  position: absolute;
  right: 0.5rem;
  content: "";
  display: block;
  height: calc((100% + 2px) * 0.8);
  aspect-ratio: 1/1;
  background: currentColor url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.43933L14.0607 7.99999L7.5 14.5607L6.43934 13.5L11.1893 8.74999H1.25V7.24999H11.1893L6.43934 2.49999L7.5 1.43933Z" fill="%23fff"/></svg>') no-repeat center;
  border-radius: 100%;
  transition: 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.btn-type--slide::before {
  background-position: -200%;
}
.btn-type--slide:hover {
  background: #F5F6F8;
}
.btn-type--slide:hover::before {
  background-position: center;
}
.btn-type--slide:hover::after {
  background-position: 200%;
  opacity: 0;
}
.btn-type--slide:active {
  background: rgba(5, 41, 70, 0.16);
  box-shadow: 0px 6px 4px rgba(5, 41, 70, 0.02), 0px 4px 2px rgba(5, 41, 70, 0.03), 0px 1px 1px rgba(5, 41, 70, 0.06);
}
.btn-type--slide.btn-state--disabled::after, .btn-type--slide:disabled::after {
  background-color: initial;
  background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.43933L14.0607 7.99999L7.5 14.5607L6.43934 13.5L11.1893 8.74999H1.25V7.24999H11.1893L6.43934 2.49999L7.5 1.43933Z" fill="%23bbb"/></svg>');
}
.btn-type--filled {
  background: rgb(5, 41, 70);
  color: rgb(255, 255, 255);
}
a:hover .btn-type--filled, .btn-type--filled:hover {
  opacity: 0.7;
}
a:active .btn-type--filled, .btn-type--filled:active {
  opacity: 0.6;
}
.btn-type--outline {
  background: rgb(255, 255, 255);
  color: rgb(5, 41, 70);
}
a:hover .btn-type--outline, .btn-type--outline:hover {
  background: rgba(5, 41, 70, 0.04);
}
a:active .btn-type--outline, .btn-type--outline:active {
  background: rgba(5, 41, 70, 0.16);
}
.btn-type--text {
  background: none;
  color: #267496;
  outline: 0;
}
.btn-type--text i {
  margin: 0 -0.25rem;
}
a:hover .btn-type--text, .btn-type--text:hover {
  background: rgba(5, 41, 70, 0.08);
}
a:active .btn-type--text, .btn-type--text.js--active, .btn-type--text:active {
  background: rgba(5, 41, 70, 0.12);
}
.btn-type--text:disabled {
  pointer-events: none;
  background: none;
  color: #BBB;
}
.btn-type--text.btn-state--disabled {
  pointer-events: none;
  background: none;
  color: #BBB;
}
.btn-effect--elevated {
  box-shadow: 0px 24px 8px rgba(5, 41, 70, 0.01), 0px 16px 6px rgba(5, 41, 70, 0.02), 0px 8px 6px rgba(5, 41, 70, 0.03), 0px 2px 4px rgba(5, 41, 70, 0.06);
}
.btn-state--disabled {
  pointer-events: none;
  background: #D9D9D9;
  color: #BBB;
}

li {
  padding: 0.5rem 0;
}
li:first-child {
  padding-top: 0;
}
li:last-child {
  padding-bottom: 0;
}

.ordered {
  list-style-type: decimal;
  padding-left: 1.5rem;
}

.unordered {
  list-style-type: disc;
  padding-left: 1.5rem;
}

.list--second-layer {
  margin: 0.5rem 0;
  padding-left: 1.5rem;
}

.ordered--paren {
  counter-reset: paren;
}
.ordered--paren_item {
  position: relative;
  margin: 0.5rem 0;
  padding-left: 2.5em;
}
.ordered--paren_item:before {
  counter-increment: paren;
  content: "（" counter(paren) "）";
  position: absolute;
  left: 0;
}

.table--default + .table--default {
  margin-top: 1rem;
}
.table--default caption {
  font-weight: 700;
  text-align: left;
}
.table--default tr:nth-child(even) {
  background: initial;
}
.table--default th,
.table--default td {
  padding: 0;
  width: 50%;
  background: initial;
  color: rgb(0, 0, 0);
  border: initial;
  line-height: 1.6;
}
@media print, screen and (max-width:915px) {
  .table--default tr {
    display: flex;
    flex-direction: column;
  }
  .table--default th,
  .table--default td {
    width: auto;
  }
  .table--default td {
    padding-left: 1em;
  }
}
.table--normal th,
.table--normal td {
  padding: 0.85em 0;
  border-bottom: 1px solid rgba(5, 41, 70, 0.08);
  text-align: left;
}
.table--lined th,
.table--lined td {
  padding: 1rem;
  border: 1px solid rgba(5, 41, 70, 0.08);
  text-align: left;
}
.table--stripe {
  border-top: 1px solid rgba(5, 41, 70, 0.08);
}
.table--stripe tr:nth-child(even) {
  background: #FAFAF9;
}
.table--stripe th,
.table--stripe td {
  padding: 1rem;
  border-bottom: 1px solid rgba(5, 41, 70, 0.08);
  font-size: 0.9375rem;
  text-align: left;
  line-height: 1.6;
}
.table--stripe th {
  color: #6C7984;
  font-weight: 400;
  vertical-align: text-top;
}
@media print, screen and (max-width:915px) {
  .table--stripe tr {
    display: flex;
    flex-direction: column;
  }
  .table--stripe tr th {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .table--stripe tr td {
    padding-top: 0;
  }
}
.table--has-head {
  border-top: 1px solid rgba(5, 41, 70, 0.08);
}
.table--has-head th,
.table--has-head td {
  padding: 0.5rem;
  border: 1px solid rgba(5, 41, 70, 0.08);
}
.table--has-head th {
  background: rgba(5, 41, 70, 0.04);
}
.table--has-head thead th {
  padding: 0.9375rem;
  text-align: center;
}
.table--has-head tbody th {
  text-align: left;
}
.table--form {
  width: 100%;
  font-size: 0.938rem;
  line-height: 1.6;
}
.table--form th,
.table--form td {
  padding: 1rem 0;
  text-align: left;
  vertical-align: top;
}
.table--form td {
  width: min(61.25%, 24.5rem);
}
.table--form tr:last-child th,
.table--form tr:last-child td {
  padding-bottom: 0;
}

input[type=text],
textarea {
  padding: calc(0.875rem - 1px) 0.75rem;
  width: 100%;
  color: rgb(0, 0, 0);
  border: 1px solid rgba(5, 41, 70, 0.12);
  border-radius: 0.25rem;
  font-size: 1rem;
  line-height: 1.5;
}
input[type=text]:focus,
textarea:focus {
  border-color: currentColor;
}
input[type=text]:placeholder-shown,
textarea:placeholder-shown {
  background: rgb(248, 248, 248);
  color: rgba(0, 0, 0, 0.5);
}
input[type=text]:placeholder-shown:hover,
textarea:placeholder-shown:hover {
  background: rgba(5, 41, 70, 0.08);
}
input[type=text]:placeholder-shown:focus,
textarea:placeholder-shown:focus {
  background: rgba(5, 41, 70, 0.12);
}

.selector {
  position: relative;
  border: 1px solid rgba(5, 41, 70, 0.3);
  border-radius: 0.25rem;
  transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.selector:hover {
  background: rgba(5, 41, 70, 0.08);
}
.selector:has(select:focus) {
  background: rgba(5, 41, 70, 0.12);
}
.selector::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 0;
  transform: translateY(-50%);
  display: block;
  width: 2.75rem;
  height: 2.75rem;
  background: url('data:image/svg+xml;utf8,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.49081 5.39209L9.11581 11.0171L14.7408 5.39209L15.5363 6.18758L9.11581 12.6081L2.69531 6.18758L3.49081 5.39209Z" fill="%23052946"/></svg>') no-repeat center;
}
.selector select {
  position: relative;
  z-index: 1;
  padding: calc(1rem - 1px) 0.75rem;
  width: 100%;
  background: transparent;
  font-size: 0.875rem;
  line-height: 1.43;
  cursor: pointer;
}

.checker {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0.25rem;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 100%;
}
:hover > .checker {
  background: rgba(5, 41, 70, 0.08);
}
:active > .checker {
  background: rgba(5, 41, 70, 0.12);
}
.checker::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
}
.checker--radio input {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  background: rgb(255, 255, 255);
  border-radius: 100%;
}
.checker--radio::before {
  width: 1.25rem;
  height: 1.25rem;
  background: rgb(255, 255, 255);
  border: 1px solid rgba(5, 41, 70, 0.3);
  border-radius: 100%;
}
.checker--radio:has(:checked)::before {
  width: 0.75rem;
  height: 0.75rem;
  background: #267496;
  border: 0.25rem solid #267496;
  border-radius: 100%;
}
.checker--checkbox::before {
  width: 1.25rem;
  height: 1.25rem;
  background: rgb(5, 41, 70);
  border-radius: 0.25rem;
}
.checker--checkbox input {
  opacity: 0;
}
.checker--checkbox::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  background: url('data:image/svg+xml;utf8,<svg width="12" height="2" viewBox="0 0 12 2" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.75 1.5L0.25 1.5L0.25 0L11.75 5.02681e-07V1.5Z" fill="white"/></svg>') no-repeat center;
}
.checker--checkbox:has(:checked)::after {
  background-image: url('data:image/svg+xml;utf8,<svg width="10" height="8" viewBox="0 0 10 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.5589 1.43922L4.04545 7.62778L0.441101 3.58207L1.56109 2.58426L4.04545 5.37284L8.43891 0.441406L9.5589 1.43922Z" fill="white"/></svg>');
}

label:has(.checker) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.error {
  margin-bottom: 1rem;
  padding: 1rem 1rem 1rem 2rem;
  background: #FAFAF9;
  border-radius: 0.5rem;
  font-size: 0.938rem;
  line-height: 1.6;
}
.error li {
  padding: 0;
  color: #F38973;
}

.header li,
.footer li {
  padding: initial;
}
.header .menu--business__all,
.footer .menu--business__all {
  flex-direction: row-reverse;
  margin-bottom: 0.5rem;
}

#header-toggle {
  display: none;
}

.header {
  position: sticky;
  top: 1.5rem;
  z-index: 100;
  padding: 1.5rem 1rem 0;
  padding: 0 1rem;
  transition: 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
@media print, screen and (max-width:915px) {
  .header {
    top: 1rem;
  }
}
.header:not(.js--scrolled) {
  top: 0;
}
.header__contents {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: auto;
  padding: 1rem 1.5rem;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(12px);
  border-radius: 100vh;
  word-break: keep-all;
}
@media print, screen and (max-width:915px) {
  .header__contents {
    padding: 0.25rem 0.75rem;
  }
}
.header__logo {
  flex-shrink: 0;
  display: inline-flex;
  height: 3rem;
}
@media print, screen and (max-width:915px) {
  .header__logo {
    height: 2.5rem;
  }
}
.header__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.header__nav {
  display: flex;
}
.header__nav--narrow {
  display: none;
}
.header__menu {
  display: flex;
  gap: 0.25rem;
  align-items: center;
}

@media print, screen and (min-width:916px) {
  .header .menu--business__separate {
    width: calc((100% - 0.5rem) / 3);
  }
}
@media print, screen and (max-width:915px) {
  .js--navOpener,
  .js--navCloser {
    position: relative;
    display: block;
    overflow: hidden;
    transition: all 0.4s;
    cursor: pointer;
  }
  .js--navOpener {
    padding: 1rem 0.9375rem;
    width: 1.125rem;
    height: 1rem;
  }
  .js--navOpener span {
    display: block;
    content: "";
    position: absolute;
    left: 0.9375rem;
    width: 1.125rem;
    height: 2px;
    background: rgb(0, 0, 0);
    transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  }
  .js--navOpener span:nth-child(1) {
    top: 1rem;
  }
  .js--navOpener span:nth-child(2) {
    top: calc(1.5rem - 1px);
  }
  .js--navOpener span:nth-child(3) {
    top: calc(2rem - 2px);
  }
  .js--navOpen:checked + .js--navOpener span {
    left: 1rem;
    background: rgba(5, 41, 70, 0.5);
    width: 1rem;
    height: 1px;
  }
  .js--navOpen:checked + .js--navOpener span:nth-child(1) {
    transform: translateY(7px) rotate(-45deg);
  }
  .js--navOpen:checked + .js--navOpener span:nth-child(2) {
    transform: translateY(0) rotate(45deg);
  }
  .js--navOpen:checked + .js--navOpener span:nth-child(3) {
    opacity: 0;
  }
  .js--navOpen:checked + .js--navOpener + .header__nav {
    transition-delay: 0s;
    opacity: 1;
    visibility: visible;
  }
  .js--navCloser {
    padding: 0.75rem;
    width: 1rem;
    height: 1rem;
  }
  .js--navCloser span {
    display: block;
    content: "";
    position: absolute;
    left: 0.5rem;
    background: rgba(5, 41, 70, 0.5);
    width: 1rem;
    height: 1px;
    transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  }
  .js--navCloser span:nth-child(1) {
    top: 0.75rem;
    transform: translateY(7px) rotate(-45deg);
  }
  .js--navCloser span:nth-child(2) {
    top: calc(1.25rem - 1px);
    transform: translateY(0) rotate(45deg);
  }
  .header__nav--wide {
    display: none;
  }
  .header__nav--narrow {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.5rem 0 1rem;
    max-width: 359px;
    max-height: calc(100vh - 3.5rem);
    z-index: 10;
    margin: auto -0.5rem;
    background: rgb(255, 255, 255);
    box-shadow: 0px 40px 24px rgba(5, 41, 70, 0.02), 0px 24px 16px rgba(5, 41, 70, 0.03), 0px 12px 12px rgba(5, 41, 70, 0.06), 0px 8px 8px rgba(5, 41, 70, 0.08);
    border-radius: 0.5rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0s ease 1s;
  }
  .header__nav--narrow:has(:checked) {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s;
  }
  .header__nav--narrow__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 1.25rem;
  }
  .header__nav--narrow__body {
    padding: 0 1rem;
    overflow-y: scroll;
  }
  .header__menu {
    flex-direction: column;
    align-items: initial;
    gap: initial;
    padding: 1rem 0;
  }
  .header__menu.menu--main {
    padding-bottom: 0;
    border-bottom: 1px solid rgba(5, 41, 70, 0.08);
  }
  .header__menu.menu--main li {
    padding: 0.5rem 0;
    border-top: 1px solid rgba(5, 41, 70, 0.08);
  }
  .header__menu.menu--main .js--megamenu {
    position: relative;
    top: initial;
    left: initial;
    right: initial;
    max-height: 0;
    overflow: hidden;
    padding: initial;
    max-width: initial;
    background: initial;
    border: initial;
    box-shadow: initial;
  }
  .header__menu.menu--sub {
    display: none;
  }
  .header__menu.menu--meta {
    gap: 0.5rem;
    margin-top: 1rem;
    padding: 1rem 0;
  }
  .header__menu .js--active + .js--megamenu {
    z-index: initial;
    padding-top: 1rem;
    max-height: initial;
    overflow: initial;
    opacity: 1;
    pointer-events: initial;
  }
  .js--toggle {
    border-radius: 0.5rem;
    -webkit-tap-highlight-color: transparent;
  }
  .js--toggle .i-type--chevD {
    position: relative;
    display: block;
    width: 1rem;
    height: 1rem;
    background: initial;
    mask-image: initial;
    transform: rotate(0);
  }
  .js--toggle .i-type--chevD::before, .js--toggle .i-type--chevD::after {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(50% - 0.34375rem);
    display: block;
    width: 0.6875rem;
    height: 1px;
    background: rgba(5, 41, 70, 0.5);
  }
  .js--toggle .i-type--chevD::after {
    transform: rotate(90deg);
    transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  }
  .js--toggle.js--active {
    background: rgba(5, 41, 70, 0.08);
    font-weight: 700;
    transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  }
  .js--toggle.js--active .i-type--chevD::after {
    transform: rotate(0);
    opacity: 0;
  }
  .js--megamenu .is-child li {
    padding: initial;
    border: initial;
  }
  .header__menu .menu,
  .footer__menu .menu {
    /*&--business {
        flex-direction: column;
        &__separate {
            width: auto;
        }
    }*/
  }
}
.footer {
  display: flex;
  flex-direction: column;
  padding: 2.5rem;
  border-top: 1px solid rgba(5, 41, 70, 0.08);
}
.footer__logo {
  display: flex;
  margin-bottom: 5rem;
}
.footer__logo-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 0.5rem;
}
.footer__contents {
  display: flex;
  gap: 1.25rem;
  width: 100%;
  margin: auto;
  padding: 1rem 0 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.footer__contents > dl {
  display: contents;
}
.footer__contents .menu--business {
  gap: 1.25rem;
}
.footer__title {
  width: 144px;
  color: rgba(5, 41, 70, 0.3);
  font-size: 0.75rem;
  line-height: 1.6;
}
.footer__nav, .footer__meta {
  border: none;
}
.footer__nav {
  padding-top: 0;
}
.footer__nav .logos {
  flex-grow: 1;
}
.footer__nav .menu--business {
  flex-grow: 2;
}
.footer__nav .menu--business .menu__segment::before {
  margin-bottom: 0.5rem;
}
.footer__nav .links {
  flex-shrink: 0;
  width: 314px;
}
.footer__meta {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  padding: 1.75rem;
  background: #FAFAF9;
  border-radius: 0.5rem;
  font-size: 0.875rem;
}
.footer__meta .footer__menu {
  gap: 0;
}
.footer__meta a {
  color: rgba(5, 41, 70, 0.7);
}
.footer__meta .copyright {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.75rem;
  color: rgba(5, 41, 70, 0.5);
}
.footer__menu {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.footer__menu a {
  display: inline-flex;
}
.footer .list--group {
  flex-wrap: wrap;
}

@media print, screen and (min-width:1280px) {
  .footer .menu--business__separate {
    width: calc((100% - 1.25rem) / 2);
  }
}
@media print, screen and (max-width:915px) {
  .footer {
    padding: 1rem;
  }
  .footer__contents {
    flex-direction: column;
    gap: 1rem;
  }
  .footer__contents .menu--business {
    flex-direction: column;
  }
  .footer__logo {
    margin-bottom: 3rem;
    width: 164px;
    height: 56px;
  }
  .footer__logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .footer__logo-list {
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
    margin-bottom: 0.5rem;
  }
  .footer__logo-list img {
    width: auto;
    height: 2.5rem;
  }
  .footer__meta .footer__menu {
    flex-direction: column;
    align-items: flex-start;
  }
  .footer__title {
    width: auto;
  }
  .footer__menu.list--group {
    justify-content: center;
  }
  .footer__menu.list--partner img {
    width: auto;
    height: 34px;
  }
  .footer__menu .logo--tecmira {
    margin: auto;
    width: 100%;
    text-align: center;
  }
  .footer .links {
    display: flex;
    width: auto;
  }
  .footer .links .layout__wrapper {
    flex: 1 1 0;
  }
  .footer .links .layout__wrapper .menu__segment {
    margin-top: 1rem;
  }
  .footer .links .menu__segment__contents a {
    color: rgba(5, 41, 70, 0.7);
  }
}
.menu--main .btn {
  color: rgb(5, 41, 70);
}
.menu--main .btn i {
  pointer-events: none;
}
.menu--sub {
  margin-left: 0.25rem;
  padding-left: 0.25rem;
  border-left: 1px solid rgba(5, 41, 70, 0.08);
}
.menu--business {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}
.menu--business .menu__segment:not(:last-child) {
  padding-bottom: 2rem;
}
.menu--business .menu__segment::before {
  content: "";
  display: block;
  margin: 0 auto 1rem;
  width: calc(100% - 1.5rem);
  height: 4px;
  border-radius: 4px;
}
.menu--business .menu__segment[data-type=ai]::before {
  background: linear-gradient(90deg, #052946 0%, #E5E9ED 100%);
}
.menu--business .menu__segment[data-type=solution]::before {
  background: linear-gradient(90deg, #A2B7C7 0%, #EAEDF0 100%), #EAEDF0;
}
.menu--business .menu__segment[data-type=cloud]::before {
  background: linear-gradient(90deg, #8E9DA9 0%, #CAECEC 100%);
}
.menu--business .menu__segment[data-type=edtech]::before {
  background: linear-gradient(90deg, #86CBCB 0%, #EBF5F5 100%), #F4E8E2;
}
.menu--business .menu__segment[data-type=retail]::before {
  background: linear-gradient(90deg, #4EB1D2 0%, #EAEDF0 100%), #F4E8E2;
}
.menu--business .menu__segment[data-type=medical]::before {
  background: linear-gradient(90deg, #277596 0%, #E2F2F9 100%), #EAEDF0;
}
.menu--business .menu__segment[data-type=game]::before {
  background: linear-gradient(90deg, #C4ACF1 0%, #FDF6F5 100%), #EAEDF0;
}
.menu--business .menu__segment[data-type=contents]::before {
  background: linear-gradient(90deg, #F5B0A3 0%, #FAE0DB 100%);
}
.menu--business__wrapper {
  position: absolute;
  top: 4.5rem;
  left: 0;
  right: 0;
  z-index: -1;
  opacity: 0;
  pointer-events: none;
  margin: auto;
  padding: 1rem;
  max-width: 66%;
  max-width: clamp(66%, 59.5rem, 100%);
  max-height: calc(100vh - 7rem);
  background: rgb(255, 255, 255);
  border: 1px solid rgba(5, 41, 70, 0.04);
  box-shadow: 0px 24px 8px rgba(5, 41, 70, 0.01), 0px 16px 6px rgba(5, 41, 70, 0.02), 0px 8px 6px rgba(5, 41, 70, 0.03), 0px 2px 4px rgba(5, 41, 70, 0.06);
  border-radius: 1rem;
  overflow-y: auto;
  word-break: break-all;
  transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.menu--business__wrapper.js--active {
  z-index: 100;
  opacity: 1;
  pointer-events: initial;
}
.menu__segment__title {
  margin-bottom: 0.5rem;
}

@media print, screen and (max-width:915px) {
  .menu--business {
    flex-direction: column;
  }
  .menu--business .menu__separate {
    width: auto;
  }
  .menu--business .menu__segment::before {
    margin-bottom: 0.5rem;
    height: 2px;
  }
}
.modal-bg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 99;
  transition: 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.modal-bg.js--active {
  display: block;
}

.breadcrumbs {
  display: flex;
  align-items: center;
  padding: 1rem 2rem;
}
.breadcrumbs__item {
  flex-shrink: 0;
  padding: initial;
  color: rgba(5, 41, 70, 0.3);
  font-size: 0.875rem;
}
.breadcrumbs__item:last-child {
  flex-shrink: 1;
  flex-grow: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.breadcrumbs__item:not(:has(a)) {
  padding: 0.6875rem 0.5rem;
}
.breadcrumbs__item a {
  display: inline-block;
  color: #267496;
  padding: 0.6875rem 0.5rem;
  border-radius: 0.25rem;
}
.breadcrumbs__item a:hover {
  background: rgba(5, 41, 70, 0.04);
  opacity: 1;
}
.breadcrumbs__item a:active {
  background: rgba(5, 41, 70, 0.08);
  opacity: 1;
}
.breadcrumbs__item a i {
  margin-right: 0.5rem;
}
.breadcrumbs__item i {
  display: inline-block;
  vertical-align: -2px;
}
@media print, screen and (max-width:915px) {
  .breadcrumbs {
    padding: 0.5rem 1rem;
  }
  .breadcrumbs__item {
    font-size: 0.75rem;
  }
}

.pagetitle {
  color: rgb(255, 255, 255);
  background: linear-gradient(300deg, #f39dc1, #63cef4, #f39dc1, #63cef4);
  background-size: 400% 400%;
  animation: headingGradient 70s ease infinite;
  overflow: hidden;
}
.pagetitle__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6rem;
  font-weight: 700;
  font-size: 1.25rem;
}
.pagetitle .inner {
  display: flex;
  align-items: center;
  height: 100%;
}
.pagetitle .heading {
  margin: auto;
}

.hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-height: 20rem;
  border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 960/320;
}
@media print, screen and (max-width:767px) {
  .hero {
    aspect-ratio: 375/272;
  }
}

.card__thumbnail {
  display: inline-flex;
}
.card__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.card__box {
  display: flex;
  flex-direction: column;
}
.card__title {
  color: rgb(5, 41, 70);
  font-weight: 700;
}
.card .btn {
  align-self: center;
  margin-top: auto;
}
.card[href] {
  color: rgb(15, 51, 80);
}
.card[href]:hover {
  opacity: 1;
  box-shadow: 0px 24px 8px rgba(5, 41, 70, 0.01), 0px 16px 6px rgba(5, 41, 70, 0.02), 0px 8px 6px rgba(5, 41, 70, 0.03), 0px 2px 4px rgba(5, 41, 70, 0.06);
}
.card--company {
  display: flex;
  flex-direction: column;
  border-radius: 1rem;
  border: 1px solid rgba(5, 41, 70, 0.08);
  overflow: hidden;
  font-size: 0.875rem;
  text-align: center;
}
.card--company .btn {
  align-self: center;
  margin-top: auto;
}
.card--company[href] {
  color: rgb(15, 51, 80);
}
.card--company[href]:hover {
  opacity: 1;
  box-shadow: 0px 24px 8px rgba(5, 41, 70, 0.01), 0px 16px 6px rgba(5, 41, 70, 0.02), 0px 8px 6px rgba(5, 41, 70, 0.03), 0px 2px 4px rgba(5, 41, 70, 0.06);
}
.card--company .card__thumbnail {
  aspect-ratio: 360/196;
}
.card--company .card__box {
  padding: 1.5rem;
  gap: 1.5rem;
  height: 100%;
}
.card--company .card__title {
  font-size: 1rem;
}
.card--product {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-radius: 1rem;
  border: 1px solid rgba(5, 41, 70, 0.08);
  overflow: hidden;
  font-size: 0.875rem;
}
.card--product .card__logo {
  padding: 1.5rem 1.5rem 0;
  text-align: center;
}
.card--product .card__logo img {
  width: min(100%, 312px);
  height: auto;
  object-fit: cover;
  object-position: center;
  aspect-ratio: 312/88;
}
.card--product .card__box {
  padding: 0 1.5rem 1.5rem;
  gap: 1.5rem;
  height: 100%;
}
.card--product .card__title {
  font-size: 1rem;
}

.nav--aside {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  width: 28.3%;
}
@media print, screen and (max-width:915px) {
  .nav--aside {
    margin-top: 4rem;
    padding-top: 1rem;
    width: auto;
    border-top: 1px solid rgba(5, 41, 70, 0.08);
  }
}
.nav--aside li {
  padding: 0;
}

.with--aside {
  width: 66.7%;
}
@media print, screen and (max-width:915px) {
  .with--aside {
    width: auto;
  }
}

.navButton {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  padding: 1px 12px;
  gap: 2px;
  border-radius: 4px;
  color: rgb(5, 41, 70);
  font-size: 0.875rem;
  line-height: 1.71;
}
@media print, screen and (max-width:915px) {
  .navButton {
    display: flex;
    justify-content: space-between;
  }
}
.navButton:hover {
  background: rgba(5, 41, 70, 0.04);
  color: rgba(5, 41, 70, 0.7);
}
.navButton:active {
  background: rgba(5, 41, 70, 0.08);
}
.navButton--large {
  padding: 7px 12px;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5;
}
.navButton--medium {
  padding: 4px 12px;
  font-size: 15px;
  line-height: 1.6;
}
.navButton--medium.js--toggle {
  padding: 8px 12px;
}
.navButton--small {
  padding: 4px 12px;
  gap: 4px;
  color: rgba(5, 41, 70, 0.7);
}

.listNavButton {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 20px;
  gap: 4px;
  border-radius: 4px;
  font-size: 16px;
  line-height: 1.5;
  color: #3c4954;
}
.listNavButton:hover {
  background: rgba(5, 41, 70, 0.04);
  color: rgba(5, 41, 70, 0.7);
}
.listNavButton:active {
  background: rgba(5, 41, 70, 0.08);
}
.listNavButton--current {
  flex-direction: row-reverse;
  justify-content: start;
  color: rgb(5, 41, 70);
  font-weight: 700;
  pointer-events: none;
}
.listNavButton--current i {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  -webkit-mask-image: initial;
  mask-image: initial;
  background: initial;
}
.listNavButton--current i::before {
  content: "";
  display: block;
  top: 2px;
  width: 6px;
  height: 6px;
  background: currentColor;
  border-radius: 100%;
}

/*# sourceMappingURL=style.css.map */
