@charset "UTF-8";
/* stylelint-disable-next-line scss/dollar-variable-pattern */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* もちろん、より直感的なbox-sizingに設定 */
  padding: 0; /* パディングも常に0に */
  margin: 0; /* マージンは0に */
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important; /* hiddenは非表示を意味します */
}

:where(html) {
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none; /* iOSのランドスケープでテキストが調整されないようにする */
  color-scheme: dark light; /* ユーザーがダークテーマを好む場合、自動的にダークテーマになる */
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
:where(body) { /* サファリ以外のブラウザのフォールバック */
  block-size: 100dvb; /* 1dvbは動的ビューポートの長さの1%、100dvbで高さいっぱいに */
  font-family: system-ui, sans-serif; /* timeの代わりにシステムフォントを使用 */
  line-height: 1.5; /* アクセシブルな行の高さ */
  -webkit-font-smoothing: antialiased; /* テキストのレンダリングを改善 */
}

:where(input, button, textarea, select) {
  font: inherit; /* フォーム コントロールは親フォントを継承 */
  color: inherit; /* カラーも継承 */
}

:where(textarea) { /* テキストエリアの水平リサイズを無効に */
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer; /* インタラクティブなものにカーソルを合わせる */
}

:where(:disabled) {
  cursor: not-allowed; /* フォームコントロール無効時のカーソルを許可しない */
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed; /* ラベルにもカーソルを許可しない */
}

:where(button) {
  border-style: solid; /* ボタンのボーダーのスタイルを設定しやすくする */
}

:where(a) {
  text-underline-offset: 0.2ex; /* 下線の上にスペースを追加する */
}

:where(ul, ol) {
  list-style: none; /* ビュレットを削除、必要に応じて手動で追加する */
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block; /* 置換された要素をより予測可能にする */
}

:where(p, h1, h2, h3, h4, h5, h6) {
  font-size: 1em;
  overflow-wrap: break-word; /* 長い単語は改行 */
}

:where(hr) { /* より一貫性のある、スタイリッシュなhr */
  block-size: 0;
  overflow: visible;
  color: inherit;
  border: none;
  -webkit-border-before: #cbcbcb 1px solid;
          border-block-start: #cbcbcb 1px solid;
}

:where(:focus-visible) { /* より一貫性のある、カスタマイズ可能なフォーカスのアウトライン */
  outline: 2px solid var(--focus-color, #f00);
  outline-offset: 2px;
}

/* .visually-hiddenは後のカスケードレイヤーを上書きするために!importantを使用 */
:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeout {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeout {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes up-motion {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes up-motion {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes image {
  0% {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}
@keyframes image {
  0% {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}
* {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; /* animation時のにじみ防止 */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-font-smoothing: antialiased; /* animation時の文字にじみ防止 */
  -moz-osx-font-smoothing: grayscale; /* animation時の文字にじみ防止 */
}

:root {
  --font-size: 62.5;
  --color-base-bg: #fff;
  --color-base-text: #1A1A1A;
  --color-pri: #2751C2;
  --color-sr: #94F8FF;
  --color-te: #0D318D;
  --color-pri2: #9C2142;
  --color-gray01: #EAEDEF;
  --color-gray02: #BDC3C7;
  --color-gray03: #6C6C6C;
  --color-link: #9C2142;
  --color-link-hover: #d20038;
  --color-red: #EA0000;
  --font-jp:Noto Sans JP, sans-serif;
  --font-en:roboto, sans-serif;
  --font-size1014:clamp(1rem, 0.818rem + 0.78vw, 1.4rem);
  --font-size1113:clamp(1.1rem, 1.009rem + 0.39vw, 1.3rem);
  --font-size1213:clamp(1.2rem, 1.155rem + 0.19vw, 1.3rem);
  --font-size1214:clamp(1.2rem, 1.109rem + 0.39vw, 1.4rem);
  --font-size1215:clamp(1.2rem, 1.091rem + 0.55vw, 1.5rem);
  --font-size1416:clamp(1.4rem, 1.309rem + 0.39vw, 1.6rem);
  --font-size1517:clamp(1.5rem, 1.409rem + 0.39vw, 1.7rem);
  --font-size1618:clamp(1.6rem, 1.509rem + 0.39vw, 1.8rem);
  --font-size1820:clamp(1.8rem, 1.709rem + 0.39vw, 2rem);
  /* CJK言語（中国語、日本語、韓国語）での句読点の間隔を変更。 */
  -webkit-font-variant-ligatures: none;
          font-variant-ligatures: none;
}

html {
  height: -webkit-fill-available;
  height: -moz-available;
  height: fill-available;
  font-size: calc(var(--font-size) * 0.9%);
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  scroll-padding-top: 0;
  background: #fff;
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: rgba(12, 106, 238, 0.2);
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

html,
body {
  width: 100%;
  min-height: -webkit-fill-available;
  min-height: -moz-available;
  min-height: fill-available;
  padding: 0;
  margin: 0;
  -ms-scroll-chaining: none;
      overscroll-behavior: none;
  -webkit-font-smoothing: antialiased;
}

body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.4rem, 1.309rem + 0.39vw, 1.6rem);
  font-weight: 400;
  font-optical-sizing: auto;
  line-height: 1;
  color: var(--color-base-text);
  overflow-wrap: anywhere;
  background: #fff;
  -webkit-animation: fadein ease-out 0.3s both 0.1s;
          animation: fadein ease-out 0.3s both 0.1s;
}
body.is-gnav-open {
  height: 100%;
  overflow: hidden;
}
body:lang(en) {
  font-family: "roboto", sans-serif;
  font-size: clamp(1.4rem, 1.309rem + 0.39vw, 1.6rem);
}

body:has(#js-globalnav-sp.is-open) .l-container {
  overflow: auto;
  scrollbar-gutter: stable;
}

:where(section) {
  position: relative;
  text-align: left;
  letter-spacing: min(0.5vw, 0.1em);
}

:where(p, dl, dt, dd, ol, ul, li) {
  padding: 0;
  margin: 0;
}

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

strong {
  font-weight: 700;
}

sup {
  font-size: 55%;
  vertical-align: super;
}

sub {
  font-size: 55%;
  vertical-align: sub;
}

:where(p + *) {
  margin-top: 2em;
}

:where(p:not(:first-child)) {
  margin-top: 2em;
}

a[href^="tel:"] {
  font-weight: 700;
}
a:not([class]) {
  color: #9C2142;
  text-decoration: underline;
}

:where(a:not([class])) i:first-child {
  margin-right: 0.5em;
}

picture:has([loading=lazy]) {
  overflow: hidden;
}

a:focus-visible,
button:focus-visible {
  outline: 2px solid #2751C2;
  outline-offset: 2px;
}

.sr-only {
  position: absolute !important;
  width: 4px !important;
  height: 4px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
}

.l-container {
  position: relative;
  z-index: 1;
  width: 100%;
  min-height: 100dvh;
  padding: 0;
  text-align: center;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

main,
.l-main,
article,
section {
  position: relative;
  display: block;
}

.l-main {
  z-index: 3;
  grid-row: 1 2;
  line-height: 1.8;
  text-align: center;
  letter-spacing: clamp(0.05em, 0.1vw, 0.1em);
}
.l-main:lang(en) {
  letter-spacing: 0;
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 888888;
  width: 100%;
  height: 5.5rem;
  -webkit-box-shadow: 0 3px 6px rga(13, 49, 141, 0.12);
          box-shadow: 0 3px 6px rga(13, 49, 141, 0.12);
  opacity: 0;
  -webkit-backdrop-filter: blur(25px);
          backdrop-filter: blur(25px);
  -webkit-animation: 1.5s fadein cubic-bezier(0.215, 0.61, 0.355, 1) 0s both;
          animation: 1.5s fadein cubic-bezier(0.215, 0.61, 0.355, 1) 0s both;
  --webkit-backdrop-filter: blur(25px);
}
.l-header__inner {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
}
.l-header__logo {
  position: absolute;
  top: 50%;
  left: 15px;
  z-index: 3;
  display: block;
  width: min(35%, 10.5rem);
  height: auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.l-header__logo svg {
  display: block;
  width: 100%;
  height: 100%;
}
.l-header .c-button01--mail {
  position: absolute;
  top: 0;
  right: 5.5rem;
  height: 5.5rem;
  min-height: 5.5rem;
  padding: 0 min(2.5vw, 1rem) 0 min(4vw, 1.5rem);
  -webkit-box-shadow: none;
          box-shadow: none;
}
.l-header .c-button01--mail > span {
  font-size: min(5vw, 1.4rem);
  white-space: nowrap;
}
.l-header .c-button01--mail i {
  width: min(6vw, 2.4rem);
  height: 1.8rem;
}

.l-footer {
  position: relative;
  z-index: 4;
  padding: min(5vw, 2.4rem) 0;
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
  background: #fff;
}
.l-footer__inner {
  position: relative;
  width: min(90%, 120rem);
  margin-right: auto;
  margin-left: auto;
}
.l-footer__logo-text {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: min(37vw, 17.2rem) 1rem auto;
  grid-template-columns: min(37vw, 17.2rem) auto;
  gap: 0 1rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  text-decoration: none;
}
.l-footer__logo {
  position: relative;
  width: 100%;
  height: auto;
}
.l-footer__logo svg {
  display: block;
  width: 100%;
  height: auto;
}
.l-footer__text {
  -ms-flex-item-align: end;
      -ms-grid-row-align: end;
      align-self: end;
  padding-bottom: 0.5em;
  font-size: 1.3rem;
  color: #000;
  text-align: left;
  letter-spacing: 0.01em;
}
.l-footer__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1em 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: min(5vw, 9rem);
  margin-top: 0.5rem;
  font-size: 1.3rem;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.01em;
}
.l-footer__menu li {
  position: relative;
  padding: 1em 1.5em;
}
.l-footer__menu a {
  color: #9C2142;
}
.l-footer__menu li:not(:first-child)::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 1px;
  height: 1em;
  content: "";
  background-color: #333;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.l-footer__copyright {
  position: relative;
  z-index: 3;
  display: block;
  padding: 0;
  margin: 3.5em auto;
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  text-align: center;
  letter-spacing: 0.1em;
}

@-webkit-keyframes pagetop {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(0%) scale(1.15);
            transform: translateY(0%) scale(1.15);
  }
  50% {
    opacity: 1;
    -webkit-transform: translateY(50%) scale(0.1);
            transform: translateY(50%) scale(0.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-300%) scale(0.05);
            transform: translateY(-300%) scale(0.05);
  }
}

@keyframes pagetop {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(0%) scale(1.15);
            transform: translateY(0%) scale(1.15);
  }
  50% {
    opacity: 1;
    -webkit-transform: translateY(50%) scale(0.1);
            transform: translateY(50%) scale(0.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-300%) scale(0.05);
            transform: translateY(-300%) scale(0.05);
  }
}
.p-globalnav-triger {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 888889;
  display: block;
  width: 5.5rem;
  height: 5.5rem;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  outline: none;
  background-color: #F1F6F9;
  border: none;
}
.p-globalnav-triger:focus-visible {
  outline: 2px solid #2751C2;
  outline-offset: -2px;
}
.p-globalnav-triger__ic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}
.p-globalnav-triger__ic span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.4rem;
  height: 3px;
  background: #2751C2;
  border-radius: 1.5px;
  -webkit-transform: translate(-55%, 0);
          transform: translate(-55%, 0);
  -webkit-transition: ease-out 0.1s;
  transition: ease-out 0.1s;
}
.p-globalnav-triger__ic span::before, .p-globalnav-triger__ic span::after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  height: 3px;
  content: "";
  background: #2751C2;
  border-radius: 1.5px;
}
.p-globalnav-triger__ic span::before {
  width: 3rem;
  margin-top: -1.1rem;
  -webkit-transition: ease-out 0.4s 0.1s;
  transition: ease-out 0.4s 0.1s;
}
.p-globalnav-triger__ic span::after {
  width: 1.8rem;
  margin-top: 0.8rem;
  -webkit-transition: ease-out 0.3s 0.2s;
  transition: ease-out 0.3s 0.2s;
}
.p-globalnav-triger.is-open span {
  background: transparent !important;
}
.p-globalnav-triger.is-open span::before, .p-globalnav-triger.is-open span::after {
  top: 0%;
  left: -2.5px;
  width: 3rem;
  height: 3px;
  margin-top: 0;
}
.p-globalnav-triger.is-open span::before {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.p-globalnav-triger.is-open span::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}

.p-globalnav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  width: 100vw;
  pointer-events: none;
  background: rgba(13, 49, 141, 0.9);
  opacity: 0;
  -webkit-transform: translateY(-10em);
          transform: translateY(-10em);
  -webkit-transition: 0.5s ease 0.1s;
  transition: 0.5s ease 0.1s;
}
.p-globalnav.is-open {
  visibility: visible;
  pointer-events: all;
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.p-globalnav__inner {
  position: relative;
  display: none;
  padding: max(10vh, 10rem) 5vw 10rem;
  overflow-y: scroll;
}
.is-open .p-globalnav__inner {
  display: -ms-grid;
  display: grid;
  place-items: center;
}
.p-globalnav__menu01 {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  width: clamp(28rem, 80%, 42rem);
  margin: 1em auto 0;
  text-align: center;
}
.p-globalnav__menu01 > li {
  position: relative;
  z-index: 2;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.p-globalnav__menu01 a, .p-globalnav__menu01 button {
  position: relative;
  z-index: 2;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  margin: 0 auto;
  color: #fff;
  text-decoration: none;
  text-underline-offset: 0.3em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  pointer-events: all;
  cursor: pointer;
  outline: none;
  background-color: transparent;
  border: none;
}
.p-globalnav__menu01 a span, .p-globalnav__menu01 button span {
  position: relative;
  z-index: 3;
  display: inline-block;
}
.p-globalnav__menu01 a:focus-visible, .p-globalnav__menu01 button:focus-visible {
  outline: 2px solid #fff !important;
  outline-offset: 0 4px;
}

.p-cta {
  position: relative;
  width: 100%;
  min-height: 28.4rem;
  padding: 5rem 5vw;
}
.p-cta__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: #0D318D;
}
.p-cta__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-cta__bg::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  content: "";
  background: linear-gradient(125deg, rgb(18, 63, 223) 0%, rgb(40, 185, 195) 50%, rgb(6, 59, 166) 100%);
  mix-blend-mode: lighten;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  -webkit-animation: cta-bg 10s ease-in-out forwards infinite;
          animation: cta-bg 10s ease-in-out forwards infinite;
}
.p-cta__inner {
  position: relative;
  z-index: 2;
  color: #fff;
  text-align: center;
}
.p-cta__text01 {
  margin: 0;
  font-size: clamp(1.7rem, 2.5vw, 3.2rem);
  line-height: 1.88;
  letter-spacing: 0.25em;
}
.p-cta__button {
  width: min(100%, 49rem);
}
.p-cta.is-active .p-cta__bg {
  -webkit-animation: cta1 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.1s;
          animation: cta1 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.1s;
}
.p-cta.is-active .p-cta__text01 {
  -webkit-animation: cta1 2s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.4s;
          animation: cta1 2s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.4s;
}
.p-cta.is-active .p-cta__button {
  -webkit-animation: cta2 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards 1.1s;
          animation: cta2 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards 1.1s;
}

@-webkit-keyframes cta-bg {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 0.5;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes cta-bg {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 0.5;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes cta1 {
  0% {
    opacity: 1;
    clip-path: inset(0 100% 0 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0);
  }
}
@keyframes cta1 {
  0% {
    opacity: 1;
    clip-path: inset(0 100% 0 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0);
  }
}
@-webkit-keyframes cta2 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes cta2 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.c-title01 {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-size: clamp(2.5rem, 3.6vw, 3.6rem);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-indent: 0;
  letter-spacing: 0.05em;
  background: -webkit-gradient(linear, right top, left top, from(#14B0FF), to(#0A3CC3));
  background: linear-gradient(-90deg, #14B0FF 0%, #0A3CC3 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
}

:where(.c-title01 + *) {
  margin-top: clamp(3rem, 5vw, 5rem);
}

.c-button-area {
  text-align: center;
}

.c-button01 {
  position: relative;
  z-index: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 7rem;
  padding-right: 3rem;
  padding-left: 3rem;
  overflow: hidden;
  color: #fff;
  text-decoration: none !important;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  outline: none;
  background: -webkit-gradient(linear, left top, right top, from(#14b0ff), to(#0a3cc3));
  background: linear-gradient(90deg, #14b0ff 0%, #0a3cc3 100%);
  border: none;
  -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.25);
          box-shadow: 0 1px 10px rgba(0, 0, 0, 0.25);
}
.c-button01 > span {
  position: relative;
  z-index: 2;
  padding: 0.5em;
  font-size: clamp(1.4rem, 1.182rem + 1.09vw, 2rem);
  font-weight: 700;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.25;
  text-align: center;
  text-indent: 0;
  letter-spacing: 0;
}
.c-button01 > span::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  display: block;
  width: 110%;
  height: 110%;
  content: "";
  background: rgba(0, 87, 201, 0.4);
  -webkit-transform: translate(-50%, -50%) scale(0, 0);
          transform: translate(-50%, -50%) scale(0, 0);
  -webkit-transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.c-button01.is-disabled, .c-button01:disabled {
  pointer-events: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: 0.5;
}
.c-button01.is-disabled::after, .c-button01:disabled::after {
  opacity: 0;
}
.c-button01 > i {
  position: absolute;
  top: 50%;
  z-index: 2;
  font-size: 1.6rem;
}
.c-button01 > i:first-child {
  left: 0;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}
.c-button01 > i:last-child {
  right: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-button01--mail {
  height: 6.5rem;
}
.c-button01--mail > span {
  padding-left: 2em;
  font-size: 2.2rem;
}
.c-button01--mail > span i {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  display: block;
  width: 28px;
  height: 21px;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2222%22%20viewBox%3D%220%200%2030%2022%22%20width%3D%2230%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20d%3D%22m0%200h30v22h-30z%22%2F%3E%3C%2FclipPath%3E%3Cg%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20d%3D%22m4.295%200h21.41a4.225%204.225%200%200%201%204.295%204.135v13.731a4.225%204.225%200%200%201%20-4.295%204.134h-21.41a4.221%204.221%200%200%201%20-4.295-4.132v-13.734a4.224%204.224%200%200%201%204.295-4.134zm1.191%203.314%209.035%208.3a.738.738%200%200%200%20.976%200l9.026-8.3zm21.073%202.7-8.698%207.986a4.226%204.226%200%200%201%20-5.706%200l-8.713-8v11.868a.842.842%200%200%200%20.853.821h21.41a.842.842%200%200%200%20.853-.821z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
  -webkit-transform: translate(0%, -49%);
          transform: translate(0%, -49%);
}

.c-list01,
.l-main section ul:not([class]),
.l-main article ul:not([class]) {
  text-align: left;
  counter-reset: li;
}
.c-list01 > li,
.l-main section ul:not([class]) > li,
.l-main article ul:not([class]) > li {
  position: relative;
  padding-left: 1em;
  margin-top: 0.5em;
  line-height: inherit;
}
.c-list01 > li::before,
.l-main section ul:not([class]) > li::before,
.l-main article ul:not([class]) > li::before {
  position: absolute;
  top: 0;
  left: -0.25em;
  display: inline;
  content: "・";
}

.c-list01--gap li + li,
.l-main section ul:not([class]) li + li,
.l-main article ul:not([class]) li + li {
  margin-top: 1em;
}

.c-list02,
.l-main section ol:not([class]),
.l-main article ol:not([class]) {
  text-align: left;
  counter-reset: li;
}
.c-list02 > li,
.l-main section ol:not([class]) > li,
.l-main article ol:not([class]) > li {
  position: relative;
  padding-left: 1.6em;
  line-height: inherit;
}
.c-list02 > li::before,
.l-main section ol:not([class]) > li::before,
.l-main article ol:not([class]) > li::before {
  position: absolute;
  top: 0;
  left: 0.3em;
  display: inline;
  width: 2em;
  font-weight: 700;
  color: #2751C2;
  content: counter(li);
  counter-increment: li;
}
.c-list02 > li:nth-child(n+10)::before,
.l-main section ol:not([class]) > li:nth-child(n+10)::before,
.l-main article ol:not([class]) > li:nth-child(n+10)::before {
  left: -0.3em;
  letter-spacing: -0.05em;
}

.c-list02--gap > li + li,
.l-main section ol:not([class]) > li + li,
.l-main article ol:not([class]) > li + li {
  margin-top: 1em;
}

:where(.c-list01:not(:first-child), .c-list02:not(:first-child)) {
  margin-top: 2em;
}

/* u-font */
.u-font-wn {
  font-weight: 400;
}
.u-font-wm {
  font-weight: 500;
}
.u-font-wb {
  font-weight: 700;
}
.u-font-size-xs {
  font-size: 80%;
}
.u-font-size-s {
  font-size: 90%;
}
.u-font-size-l {
  font-size: 110%;
}
.u-font-size-xl {
  font-size: 120%;
}

.u-visible-sp {
  display: inline-block;
}

.u-visible-pc {
  display: none;
}

.u-visible-s,
.u-visible-sm,
.u-visible-md,
.u-visible-lg,
.u-visible-xl,
.u-visible-xxl {
  display: none;
}

[class^=u-ic-] {
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: middle;
}

.u-ic-arrow-p {
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20enable-background%3D%22new%200%200%2024%2024%22%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m8.8%205.5%206.5%206.5-6.5%206.5%22%20fill%3D%22none%22%20stroke%3D%22%235084d7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-arrow-w {
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20enable-background%3D%22new%200%200%2024%2024%22%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m8.8%205.5%206.5%206.5-6.5%206.5%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-arrow-b {
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20enable-background%3D%22new%200%200%2024%2024%22%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m8.8%205.5%206.5%206.5-6.5%206.5%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-blank {
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23777%22%20stroke-linecap%3D%22round%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22m21%2018.231v2.769h-18v-18h2.769%22%2F%3E%3Cpath%20d%3D%22m11.308%203h9.692v9.692%22%2F%3E%3Cpath%20d%3D%22m21%203-9%209%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-blank-w {
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22m21%2018.231v2.769h-18v-18h2.769%22%2F%3E%3Cpath%20d%3D%22m11.308%203h9.692v9.692%22%2F%3E%3Cpath%20d%3D%22m21%203-9%209%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-blank-b {
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%230375D8%22%20stroke-linecap%3D%22round%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22m21%2018.231v2.769h-18v-18h2.769%22%2F%3E%3Cpath%20d%3D%22m11.308%203h9.692v9.692%22%2F%3E%3Cpath%20d%3D%22m21%203-9%209%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-pdf-p {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m6.954%2011.467c.075-.036.143-.085.2-.145.063-.065.098-.152.1-.242-.01-.103-.045-.202-.1-.29-.086-.077-.192-.128-.306-.145-.254-.029-.509-.046-.765-.049h-.302v.92h.357c.273.003.546-.013.816-.049m4.795%201.839c.342.033.68-.091.918-.339.266-.306.395-.708.357-1.112.041-.361-.092-.72-.357-.968-.242-.203-.552-.305-.867-.287h-.2v2.71zm-9.181%203.194h18.871c.301.005.551-.232.561-.533v-7.935c-.011-.301-.26-.537-.561-.532h-18.871c-.301-.005-.55.231-.561.532v7.887c-.041.279.152.538.43.579.043.006.087.007.131.002m13.21-7.21h4.131v1.355h-2.4v.726h2.191v1.258h-2.188v2.032h-1.683zm-5.764.145.2-.048c.491-.061.985-.094%201.48-.1.742-.046%201.479.158%202.091.581.59.505.911%201.256.867%202.032.057.806-.263%201.593-.867%202.129-.68.491-1.509.73-2.346.677-.427-.006-.853-.039-1.276-.1l-.255-.049.1-5.129m-5.961-.138h2.193c.478-.009.956.024%201.428.1.372.096.709.297.969.58.267.309.412.705.408%201.113.018.303-.051.606-.2.871-.148.228-.338.425-.561.581-.215.146-.458.245-.714.29-.405.066-.814.1-1.224.1h-.565v1.839h-1.734z%22%20fill%3D%22%23#51A644%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
  -webkit-transform: translateY(-5%);
          transform: translateY(-5%);
}

.u-ic-pdf-g {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m6.954%2011.467c.075-.036.143-.085.2-.145.063-.065.098-.152.1-.242-.01-.103-.045-.202-.1-.29-.086-.077-.192-.128-.306-.145-.254-.029-.509-.046-.765-.049h-.302v.92h.357c.273.003.546-.013.816-.049m4.795%201.839c.342.033.68-.091.918-.339.266-.306.395-.708.357-1.112.041-.361-.092-.72-.357-.968-.242-.203-.552-.305-.867-.287h-.2v2.71zm-9.181%203.194h18.871c.301.005.551-.232.561-.533v-7.935c-.011-.301-.26-.537-.561-.532h-18.871c-.301-.005-.55.231-.561.532v7.887c-.041.279.152.538.43.579.043.006.087.007.131.002m13.21-7.21h4.131v1.355h-2.4v.726h2.191v1.258h-2.188v2.032h-1.683zm-5.764.145.2-.048c.491-.061.985-.094%201.48-.1.742-.046%201.479.158%202.091.581.59.505.911%201.256.867%202.032.057.806-.263%201.593-.867%202.129-.68.491-1.509.73-2.346.677-.427-.006-.853-.039-1.276-.1l-.255-.049.1-5.129m-5.961-.138h2.193c.478-.009.956.024%201.428.1.372.096.709.297.969.58.267.309.412.705.408%201.113.018.303-.051.606-.2.871-.148.228-.338.425-.561.581-.215.146-.458.245-.714.29-.405.066-.814.1-1.224.1h-.565v1.839h-1.734z%22%20fill%3D%22%2376706c%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
  -webkit-transform: translateY(-5%);
          transform: translateY(-5%);
}

.u-ic-pdf-w {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m6.954%2011.467c.075-.036.143-.085.2-.145.063-.065.098-.152.1-.242-.01-.103-.045-.202-.1-.29-.086-.077-.192-.128-.306-.145-.254-.029-.509-.046-.765-.049h-.302v.92h.357c.273.003.546-.013.816-.049m4.795%201.839c.342.033.68-.091.918-.339.266-.306.395-.708.357-1.112.041-.361-.092-.72-.357-.968-.242-.203-.552-.305-.867-.287h-.2v2.71zm-9.181%203.194h18.871c.301.005.551-.232.561-.533v-7.935c-.011-.301-.26-.537-.561-.532h-18.871c-.301-.005-.55.231-.561.532v7.887c-.041.279.152.538.43.579.043.006.087.007.131.002m13.21-7.21h4.131v1.355h-2.4v.726h2.191v1.258h-2.188v2.032h-1.683zm-5.764.145.2-.048c.491-.061.985-.094%201.48-.1.742-.046%201.479.158%202.091.581.59.505.911%201.256.867%202.032.057.806-.263%201.593-.867%202.129-.68.491-1.509.73-2.346.677-.427-.006-.853-.039-1.276-.1l-.255-.049.1-5.129m-5.961-.138h2.193c.478-.009.956.024%201.428.1.372.096.709.297.969.58.267.309.412.705.408%201.113.018.303-.051.606-.2.871-.148.228-.338.425-.561.581-.215.146-.458.245-.714.29-.405.066-.814.1-1.224.1h-.565v1.839h-1.734z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
  -webkit-transform: translateY(-5%);
          transform: translateY(-5%);
}

.u-ic-mail {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2222%22%20viewBox%3D%220%200%2030%2022%22%20width%3D%2230%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20d%3D%22m0%200h30v22h-30z%22%2F%3E%3C%2FclipPath%3E%3Cg%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20d%3D%22m4.295%200h21.41a4.225%204.225%200%200%201%204.295%204.135v13.731a4.225%204.225%200%200%201%20-4.295%204.134h-21.41a4.221%204.221%200%200%201%20-4.295-4.132v-13.734a4.224%204.224%200%200%201%204.295-4.134zm1.191%203.314%209.035%208.3a.738.738%200%200%200%20.976%200l9.026-8.3zm21.073%202.7-8.698%207.986a4.226%204.226%200%200%201%20-5.706%200l-8.713-8v11.868a.842.842%200%200%200%20.853.821h21.41a.842.842%200%200%200%20.853-.821z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-check-skyblue {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20width%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20d%3D%22m0%200h24v24h-24z%22%2F%3E%3C%2FclipPath%3E%3Cg%20clip-path%3D%22url(%23a)%22%20fill%3D%22%2394F8FF%22%3E%3Cpath%20d%3D%22m23.578%2017.317a1.354%201.354%200%200%200%20-.969-.429%201.5%201.5%200%200%200%20-1.341.937%201.347%201.347%200%200%200%20.32%201.5l5.062%205.1a1.4%201.4%200%200%200%201.99%200l11.138-11.225a1.348%201.348%200%200%200%20.321-1.5%201.5%201.5%200%200%200%20-1.341-.937%201.354%201.354%200%200%200%20-.97.429l-10.142%2010.224z%22%20transform%3D%22translate(-16.203%20-8.224)%22%2F%3E%3Cpath%20d%3D%22m23.686%2011.712h-2.345a.235.235%200%200%200%20-.234.236%209.147%209.147%200%201%201%20-9.122-9.225%209.017%209.017%200%200%201%202.491.353.232.232%200%200%200%20.23-.06l1.876-1.89a.237.237%200%200%200%20-.092-.391%2013.88%2013.88%200%200%200%20-4.428-.735%2011.742%2011.742%200%200%200%20-12.062%2011.948%2012.02%2012.02%200%200%200%2011.96%2012.052%2012.02%2012.02%200%200%200%2011.96-12.052.235.235%200%200%200%20-.234-.236%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

.u-ic-check-red {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20width%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20d%3D%22m0%200h24v24h-24z%22%2F%3E%3C%2FclipPath%3E%3Cg%20clip-path%3D%22url(%23a)%22%20fill%3D%22%239c2142%22%3E%3Cpath%20d%3D%22m23.578%2017.317a1.354%201.354%200%200%200%20-.969-.429%201.5%201.5%200%200%200%20-1.341.937%201.347%201.347%200%200%200%20.32%201.5l5.062%205.1a1.4%201.4%200%200%200%201.99%200l11.138-11.225a1.348%201.348%200%200%200%20.321-1.5%201.5%201.5%200%200%200%20-1.341-.937%201.354%201.354%200%200%200%20-.97.429l-10.142%2010.224z%22%20transform%3D%22translate(-16.203%20-8.224)%22%2F%3E%3Cpath%20d%3D%22m23.686%2011.712h-2.345a.235.235%200%200%200%20-.234.236%209.147%209.147%200%201%201%20-9.122-9.225%209.017%209.017%200%200%201%202.491.353.232.232%200%200%200%20.23-.06l1.876-1.89a.237.237%200%200%200%20-.092-.391%2013.88%2013.88%200%200%200%20-4.428-.735%2011.742%2011.742%200%200%200%20-12.062%2011.948%2012.02%2012.02%200%200%200%2011.96%2012.052%2012.02%2012.02%200%200%200%2011.96-12.052.235.235%200%200%200%20-.234-.236%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}

/* text */
.u-text-al {
  text-align: left;
}
.u-text-ac {
  text-align: center;
}
.u-text-ar {
  text-align: right;
}
.u-text-aj {
  text-align: justify;
}
.u-text-du {
  text-decoration: underline;
}
.u-text-dl {
  text-decoration: line-through;
}

.u-text-underline {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

.u-pt0 {
  padding-top: 0px;
}

.u-pt5 {
  padding-top: 5px;
}

.u-pt10 {
  padding-top: 10px;
}

.u-pt15 {
  padding-top: 15px;
}

.u-pt20 {
  padding-top: 20px;
}

.u-pt25 {
  padding-top: 25px;
}

.u-pt30 {
  padding-top: 30px;
}

.u-pt35 {
  padding-top: 35px;
}

.u-pt40 {
  padding-top: 40px;
}

.u-pt45 {
  padding-top: 45px;
}

.u-pt50 {
  padding-top: 50px;
}

.u-pt55 {
  padding-top: 55px;
}

.u-pt60 {
  padding-top: 60px;
}

.u-pt65 {
  padding-top: 65px;
}

.u-pt70 {
  padding-top: 70px;
}

.u-pt75 {
  padding-top: 75px;
}

.u-pt80 {
  padding-top: 80px;
}

.u-pt85 {
  padding-top: 85px;
}

.u-pt90 {
  padding-top: 90px;
}

.u-pt95 {
  padding-top: 95px;
}

.u-pt100 {
  padding-top: 100px;
}

.u-pb0 {
  padding-bottom: 0px;
}

.u-pb5 {
  padding-bottom: 5px;
}

.u-pb10 {
  padding-bottom: 10px;
}

.u-pb15 {
  padding-bottom: 15px;
}

.u-pb20 {
  padding-bottom: 20px;
}

.u-pb25 {
  padding-bottom: 25px;
}

.u-pb30 {
  padding-bottom: 30px;
}

.u-pb35 {
  padding-bottom: 35px;
}

.u-pb40 {
  padding-bottom: 40px;
}

.u-pb45 {
  padding-bottom: 45px;
}

.u-pb50 {
  padding-bottom: 50px;
}

.u-pb55 {
  padding-bottom: 55px;
}

.u-pb60 {
  padding-bottom: 60px;
}

.u-pb65 {
  padding-bottom: 65px;
}

.u-pb70 {
  padding-bottom: 70px;
}

.u-pb75 {
  padding-bottom: 75px;
}

.u-pb80 {
  padding-bottom: 80px;
}

.u-pb85 {
  padding-bottom: 85px;
}

.u-pb90 {
  padding-bottom: 90px;
}

.u-pb95 {
  padding-bottom: 95px;
}

.u-pb100 {
  padding-bottom: 100px;
}

.u-pl0 {
  padding-left: 0px;
}

.u-pl5 {
  padding-left: 5px;
}

.u-pl10 {
  padding-left: 10px;
}

.u-pl15 {
  padding-left: 15px;
}

.u-pl20 {
  padding-left: 20px;
}

.u-pl25 {
  padding-left: 25px;
}

.u-pl30 {
  padding-left: 30px;
}

.u-pl35 {
  padding-left: 35px;
}

.u-pl40 {
  padding-left: 40px;
}

.u-pl45 {
  padding-left: 45px;
}

.u-pl50 {
  padding-left: 50px;
}

.u-pl55 {
  padding-left: 55px;
}

.u-pl60 {
  padding-left: 60px;
}

.u-pl65 {
  padding-left: 65px;
}

.u-pl70 {
  padding-left: 70px;
}

.u-pl75 {
  padding-left: 75px;
}

.u-pl80 {
  padding-left: 80px;
}

.u-pl85 {
  padding-left: 85px;
}

.u-pl90 {
  padding-left: 90px;
}

.u-pl95 {
  padding-left: 95px;
}

.u-pl100 {
  padding-left: 100px;
}

.u-pr0 {
  padding-right: 0px;
}

.u-pr5 {
  padding-right: 5px;
}

.u-pr10 {
  padding-right: 10px;
}

.u-pr15 {
  padding-right: 15px;
}

.u-pr20 {
  padding-right: 20px;
}

.u-pr25 {
  padding-right: 25px;
}

.u-pr30 {
  padding-right: 30px;
}

.u-pr35 {
  padding-right: 35px;
}

.u-pr40 {
  padding-right: 40px;
}

.u-pr45 {
  padding-right: 45px;
}

.u-pr50 {
  padding-right: 50px;
}

.u-pr55 {
  padding-right: 55px;
}

.u-pr60 {
  padding-right: 60px;
}

.u-pr65 {
  padding-right: 65px;
}

.u-pr70 {
  padding-right: 70px;
}

.u-pr75 {
  padding-right: 75px;
}

.u-pr80 {
  padding-right: 80px;
}

.u-pr85 {
  padding-right: 85px;
}

.u-pr90 {
  padding-right: 90px;
}

.u-pr95 {
  padding-right: 95px;
}

.u-pr100 {
  padding-right: 100px;
}

.u-mt0 {
  margin-top: 0px;
}

.u-mt5 {
  margin-top: 5px;
}

.u-mt10 {
  margin-top: 10px;
}

.u-mt15 {
  margin-top: 15px;
}

.u-mt20 {
  margin-top: 20px;
}

.u-mt25 {
  margin-top: 25px;
}

.u-mt30 {
  margin-top: 30px;
}

.u-mt35 {
  margin-top: 35px;
}

.u-mt40 {
  margin-top: 40px;
}

.u-mt45 {
  margin-top: 45px;
}

.u-mt50 {
  margin-top: 50px;
}

.u-mt55 {
  margin-top: 55px;
}

.u-mt60 {
  margin-top: 60px;
}

.u-mt65 {
  margin-top: 65px;
}

.u-mt70 {
  margin-top: 70px;
}

.u-mt75 {
  margin-top: 75px;
}

.u-mt80 {
  margin-top: 80px;
}

.u-mt85 {
  margin-top: 85px;
}

.u-mt90 {
  margin-top: 90px;
}

.u-mt95 {
  margin-top: 95px;
}

.u-mt100 {
  margin-top: 100px;
}

.u-mb0 {
  margin-bottom: 0px;
}

.u-mb5 {
  margin-bottom: 5px;
}

.u-mb10 {
  margin-bottom: 10px;
}

.u-mb15 {
  margin-bottom: 15px;
}

.u-mb20 {
  margin-bottom: 20px;
}

.u-mb25 {
  margin-bottom: 25px;
}

.u-mb30 {
  margin-bottom: 30px;
}

.u-mb35 {
  margin-bottom: 35px;
}

.u-mb40 {
  margin-bottom: 40px;
}

.u-mb45 {
  margin-bottom: 45px;
}

.u-mb50 {
  margin-bottom: 50px;
}

.u-mb55 {
  margin-bottom: 55px;
}

.u-mb60 {
  margin-bottom: 60px;
}

.u-mb65 {
  margin-bottom: 65px;
}

.u-mb70 {
  margin-bottom: 70px;
}

.u-mb75 {
  margin-bottom: 75px;
}

.u-mb80 {
  margin-bottom: 80px;
}

.u-mb85 {
  margin-bottom: 85px;
}

.u-mb90 {
  margin-bottom: 90px;
}

.u-mb95 {
  margin-bottom: 95px;
}

.u-mb100 {
  margin-bottom: 100px;
}

.u-ml0 {
  margin-left: 0px;
}

.u-ml5 {
  margin-left: 5px;
}

.u-ml10 {
  margin-left: 10px;
}

.u-ml15 {
  margin-left: 15px;
}

.u-ml20 {
  margin-left: 20px;
}

.u-ml25 {
  margin-left: 25px;
}

.u-ml30 {
  margin-left: 30px;
}

.u-ml35 {
  margin-left: 35px;
}

.u-ml40 {
  margin-left: 40px;
}

.u-ml45 {
  margin-left: 45px;
}

.u-ml50 {
  margin-left: 50px;
}

.u-ml55 {
  margin-left: 55px;
}

.u-ml60 {
  margin-left: 60px;
}

.u-ml65 {
  margin-left: 65px;
}

.u-ml70 {
  margin-left: 70px;
}

.u-ml75 {
  margin-left: 75px;
}

.u-ml80 {
  margin-left: 80px;
}

.u-ml85 {
  margin-left: 85px;
}

.u-ml90 {
  margin-left: 90px;
}

.u-ml95 {
  margin-left: 95px;
}

.u-ml100 {
  margin-left: 100px;
}

.u-mr0 {
  margin-right: 0px;
}

.u-mr5 {
  margin-right: 5px;
}

.u-mr10 {
  margin-right: 10px;
}

.u-mr15 {
  margin-right: 15px;
}

.u-mr20 {
  margin-right: 20px;
}

.u-mr25 {
  margin-right: 25px;
}

.u-mr30 {
  margin-right: 30px;
}

.u-mr35 {
  margin-right: 35px;
}

.u-mr40 {
  margin-right: 40px;
}

.u-mr45 {
  margin-right: 45px;
}

.u-mr50 {
  margin-right: 50px;
}

.u-mr55 {
  margin-right: 55px;
}

.u-mr60 {
  margin-right: 60px;
}

.u-mr65 {
  margin-right: 65px;
}

.u-mr70 {
  margin-right: 70px;
}

.u-mr75 {
  margin-right: 75px;
}

.u-mr80 {
  margin-right: 80px;
}

.u-mr85 {
  margin-right: 85px;
}

.u-mr90 {
  margin-right: 90px;
}

.u-mr95 {
  margin-right: 95px;
}

.u-mr100 {
  margin-right: 100px;
}

.p-home-information {
  padding-top: clamp(5rem, 10vw, 8rem);
  padding-bottom: clamp(5rem, 11vw, 10rem);
}
.p-home-information__text-lead {
  width: min(95%, 120rem);
  margin: 0 auto;
  font-size: clamp(2.2rem, 3.7vw, 3.2rem);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.p-home-information__grid {
  display: -ms-grid;
  display: grid;
  gap: 2.5rem;
  width: min(81%, 110rem);
  margin: 3rem auto 0;
}
.p-home-information__grid img {
  width: 100%;
  height: auto;
}
.p-home-information__text-caption {
  width: min(95%, 120rem);
  margin: 1.5rem auto 0;
  font-size: clamp(1.6rem, 2.7vw, 2.4rem);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.02em;
}
.p-home-information__text01 {
  margin-top: 1rem;
  font-size: clamp(1.4rem, 1.25vw, 1.6rem);
  line-height: 2;
  text-align: justify;
}
.p-home-information__texts {
  width: min(81%, 110rem);
  margin: 0 auto;
  text-align: center;
}
.p-home-information__text02 {
  margin-top: 1rem;
  font-size: clamp(1.8rem, 2.6vw, 2.8rem);
  font-weight: 500;
  line-height: 1.75;
  text-align: justify;
}
.p-home-information__text03 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 1em auto 0;
  font-size: clamp(1.1rem, 1.25vw, 1.6rem);
  line-height: 2;
  text-align: left;
}
.p-home-information__arrow {
  padding: 3rem 0 2rem;
  text-align: center;
}
.p-home-information__arrow svg {
  width: clamp(20rem, 20vw, 30.2rem);
  height: auto;
  margin: 0 auto;
  -webkit-animation: information-arrow 4s ease-in-out infinite;
          animation: information-arrow 4s ease-in-out infinite;
}

.p-home-information__box:nth-of-type(1).is-active {
  -webkit-animation: up-motion 1s ease-out 0.2s forwards;
          animation: up-motion 1s ease-out 0.2s forwards;
}

.p-home-information__box:nth-of-type(2).is-active {
  -webkit-animation: up-motion 1s ease-out 0.2s forwards;
          animation: up-motion 1s ease-out 0.2s forwards;
}

.p-home-information__box:nth-of-type(3).is-active {
  -webkit-animation: up-motion 1s ease-out 0.2s forwards;
          animation: up-motion 1s ease-out 0.2s forwards;
}

@-webkit-keyframes information-arrow {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
}

@keyframes information-arrow {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
}
.p-home-service {
  padding: clamp(5rem, 10vw, 8rem) 0 clamp(5rem, 11vw, 10rem);
  background-color: #F1F6F9;
}
.p-home-service .c-title01 {
  margin-bottom: min(5vw, 5.5rem);
  font-size: clamp(2.4rem, 3.6vw, 3.6rem);
}
.p-home-service__grid-wrap {
  position: relative;
  width: min(90%, 120rem);
  padding-bottom: min(7.5vw, 6rem);
  margin: 0 auto;
  overflow: hidden;
  background-color: #2751C2;
}
.p-home-service__arrow-sp {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: min(75vw, 35rem);
}
.p-home-service__arrow-pc {
  display: none;
}
.p-home-service__grid {
  position: relative;
  z-index: 2;
  display: -ms-grid;
  display: grid;
  gap: 0;
  width: min(100%, 98rem);
  margin: 0 auto;
}
.p-home-service__grid > div {
  position: relative;
}
.p-home-service__grid > div:first-child {
  padding-top: min(3vw, 3rem);
  padding-bottom: 6rem;
}
.p-home-service__photo {
  display: block;
  padding-right: min(5vw, 5rem);
  padding-left: min(5vw, 5rem);
  margin: 0;
}
.p-home-service__photo img {
  width: 100%;
  height: auto;
}
.p-home-service__text01 {
  padding: 0.5em 0 1em;
  margin: 0;
  font-size: clamp(1.6rem, 2.2vw, 2.2rem);
  font-weight: 700;
  line-height: 1.75;
  color: #fff;
  text-align: center;
  letter-spacing: 0.02em;
}
.p-home-service__text01 span span {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.p-home-service-example {
  width: 90%;
  padding: 2rem 1.5rem;
  margin: min(7.5vw, 3rem) auto 0;
  color: #1A1A1A;
  background-color: #fff;
}
.p-home-service-example__title {
  font-size: clamp(1.6rem, 2.2vw, 2.2rem);
  font-weight: 700;
  line-height: 1.25;
  color: #0D318D;
  text-align: center;
}
.p-home-service-example__list {
  margin: 1em 0 0;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  line-height: 1.5;
  text-align: left;
  letter-spacing: 0.02em;
}
.p-home-service-example__list li {
  position: relative;
  padding-left: 1.75em;
  margin-bottom: 0.5em;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
  page-break-inside: avoid; /* 印刷対応 */
  -webkit-column-break-inside: avoid; /* Safari対応 */
}
.p-home-service-example__list li i {
  position: absolute;
  top: 0.1em;
  left: 0;
  width: 1.2em;
  height: 1.2em;
}

.p-home-service-subsection01 {
  margin-top: min(10vw, 10rem);
}
.p-home-service-subsection01__title {
  width: min(90%, 110rem);
  margin: 0 auto;
  font-size: clamp(2.2rem, 3.2vw, 3.2rem);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}
.p-home-service-subsection01__lead {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 90%;
  margin: 1em auto;
  font-size: clamp(1.4rem, 1.309rem + 0.39vw, 1.6rem);
  line-height: 2;
  text-align: left;
}
.p-home-service-subsection01__grid {
  display: -ms-grid;
  display: grid;
  gap: 1rem;
  width: min(81%, 110rem);
  margin: 2rem auto 0;
}
.p-home-service-subsection01__card {
  position: relative;
  padding: 1em 1em 1.5em;
  margin-top: 7.5rem;
  text-align: center;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 6px rgba(13, 49, 141, 0.12);
          box-shadow: 0 3px 6px rgba(13, 49, 141, 0.12);
}
.p-home-service-subsection01__card img {
  width: 125px;
  height: 125px;
  margin: 0 auto;
}
.p-home-service-subsection01__card figcaption {
  margin-top: 1em;
  text-align: justify;
}
.p-home-service-subsection01__card figcaption strong {
  display: block;
  padding-bottom: 0.75em;
  font-size: clamp(2.2rem, 2.4vw, 2.4rem);
  font-weight: 700;
  line-height: 1.25;
  color: #2751C2;
  text-align: center;
}
.p-home-service-subsection01__category {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  font-family: "roboto", sans-serif;
  font-weight: 700;
  color: #fff;
  -webkit-transform: translateY(-85%);
          transform: translateY(-85%);
}
.p-home-service-subsection01__category > span:nth-child(1) {
  display: block;
  padding: 0;
  font-size: clamp(1.1rem, 1.3vw, 1.5rem);
  line-height: 1;
  text-align: center;
  letter-spacing: -0.02em;
  background: -webkit-gradient(linear, right top, left top, from(#14B0FF), to(#0A3CC3));
  background: linear-gradient(-90deg, #14B0FF 0%, #0A3CC3 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
}
.p-home-service-subsection01__category > span:nth-child(2) {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0;
  font-size: clamp(5.9rem, 7vw, 7.5rem);
  line-height: 1;
  letter-spacing: -0.02em;
  background: -webkit-gradient(linear, right top, left top, from(#14B0FF), to(#0A3CC3));
  background: linear-gradient(-90deg, #14B0FF 0%, #0A3CC3 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
}

.p-home-service-subsection02 {
  margin-top: min(10vw, 10rem);
}
.p-home-service-subsection02__title {
  width: min(90%, 110rem);
  margin: 0 auto;
  font-size: clamp(1.8rem, 3.2vw, 3.2rem);
  font-weight: 700;
  line-height: 1.775;
  text-align: center;
  letter-spacing: 0.08em;
}
.p-home-service-subsection02__block {
  position: relative;
  width: 100%;
  padding-top: 58vw;
  padding-bottom: 0.5rem;
  margin-top: min(7.5vw, 4rem);
  overflow: hidden;
}
.p-home-service-subsection02__block + .p-home-service-subsection02__block {
  margin-top: min(9vw, 9rem);
}
.p-home-service-subsection02__block-inner {
  width: min(90%, 110rem);
  margin: 0 auto;
}
.p-home-service-subsection02__block-photo {
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 1;
  width: min(100%, 78rem);
  height: auto;
}
.p-home-service-subsection02__block-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-home-service-subsection02__block-texts {
  position: relative;
  z-index: 2;
  width: min(100%, 78rem);
  padding: min(7vw, 7.5rem) min(5vw, 5rem) min(5vw, 5rem);
  letter-spacing: 0.02em;
  -webkit-box-shadow: 0 10px 10px -13px rgba(13, 49, 141, 0.3);
          box-shadow: 0 10px 10px -13px rgba(13, 49, 141, 0.3);
}
.p-home-service-subsection02__block-texts::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  display: block;
  content: "";
  background-color: #fff;
  clip-path: polygon(0 0, calc(100% - 25px) 0, 100% 25px, 100% 100%, 0 100%);
}
.p-home-service-subsection02__block-texts::after {
  position: absolute;
  top: 0%;
  right: 0%;
  z-index: -1;
  width: 25px;
  height: 25px;
  content: "";
  background-color: #94F8FF;
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
}
.p-home-service-subsection02__title02 {
  position: relative;
  padding-bottom: 0.4em;
  margin: 0;
  font-size: clamp(1.6rem, 2.2vw, 2.2rem);
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
}
.p-home-service-subsection02__title02::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: -webkit-gradient(linear, right top, left top, from(#94f8ff), to(#2751c2));
  background: linear-gradient(-90deg, #94f8ff 0%, #2751c2 100%);
}
.p-home-service-subsection02__title02:not(:nth-of-type(1)) {
  margin-top: 1.5em;
}
.p-home-service-subsection02__title02 + * {
  margin-top: 1.5rem;
}
.p-home-service-subsection02__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1.5rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
  letter-spacing: 0.02em;
  counter-reset: li;
}
.p-home-service-subsection02__list > li {
  position: relative;
  padding: 0.25em 1em;
  padding-left: 2em;
  line-height: inherit;
  color: #2751C2;
  background-color: #DEFDFF;
}
.p-home-service-subsection02__list > li::before {
  position: absolute;
  top: 0.25em;
  left: 0.5em;
  display: inline;
  width: 2em;
  font-weight: 700;
  color: #2751C2;
  content: "0" counter(li);
  counter-increment: li;
}
.p-home-service-subsection02__list > li:nth-child(n+10)::before {
  left: -0.3em;
  letter-spacing: -0.05em;
}
.p-home-service-subsection02__list + p {
  margin-top: 1em;
}
.p-home-service-subsection02__text02 {
  margin-top: 0.5em;
  font-size: clamp(1.1rem, 1.4vw, 1.4rem);
  color: #9C2142;
}
.p-home-service-subsection02__grid2 {
  display: -ms-grid;
  display: grid;
  gap: 2rem;
  margin-top: 1.5em;
}
.p-home-service-subsection02__grid2 p {
  margin-top: 1em;
}
.p-home-service-subsection02__title03 {
  position: relative;
  padding-left: 2em;
  margin: 0;
  font-size: clamp(1.5rem, 1.8vw, 1.8rem);
  font-weight: 700;
  line-height: 1.25;
  color: #2751C2;
  text-align: left;
}
.p-home-service-subsection02__title03 i {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.4em;
  height: 1.4em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-home-service-subsection02__title03 + * {
  margin-top: 1rem !important;
}
.p-home-service-subsection02 .c-list01 {
  margin-top: 1em;
}
.p-home-service-subsection02 .c-list01 li {
  margin-top: 0;
}

.p-home-service.is-active svg.js-observer-target {
  -webkit-animation: servervice-arrow-sp 4s ease-in-out 1s infinite;
          animation: servervice-arrow-sp 4s ease-in-out 1s infinite;
}

.p-home-service.is-active .p-home-service__text-photo {
  -webkit-animation: fadein 1s ease-out 0.1s forwards;
          animation: fadein 1s ease-out 0.1s forwards;
}

.p-home-service.is-active .p-home-service__text-photo:nth-of-type(2) {
  -webkit-animation: fadein 1s ease-out 0.3s forwards;
          animation: fadein 1s ease-out 0.3s forwards;
}

.p-home-service-example.is-active {
  -webkit-animation: fadein 1s ease-out 0.2s forwards;
          animation: fadein 1s ease-out 0.2s forwards;
}

.p-home-service-subsection01__card:nth-of-type(1).is-active {
  -webkit-animation: up-motion 1s ease-out 0.1s forwards;
          animation: up-motion 1s ease-out 0.1s forwards;
}

.p-home-service-subsection01__card:nth-of-type(2).is-active {
  -webkit-animation: up-motion 1s ease-out 0.1s forwards;
          animation: up-motion 1s ease-out 0.1s forwards;
}

.p-home-service-subsection01__card:nth-of-type(3).is-active {
  -webkit-animation: up-motion 1s ease-out 0.1s forwards;
          animation: up-motion 1s ease-out 0.1s forwards;
}

.p-home-service-subsection02__block.is-active .p-home-service-subsection02__block-photo .js-observer-target {
  -webkit-animation: up-motion 1s ease-out 0.1s forwards;
          animation: up-motion 1s ease-out 0.1s forwards;
}

.p-home-service-subsection02__block.is-active .p-home-service-subsection02__block-texts.js-observer-target {
  -webkit-animation: up-motion 1s ease-out 0.3s forwards;
          animation: up-motion 1s ease-out 0.3s forwards;
}

@-webkit-keyframes servervice-arrow-sp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2.5%);
            transform: translateY(-2.5%);
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
    -webkit-transform: translateY(2.5%);
            transform: translateY(2.5%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2.5%);
            transform: translateY(2.5%);
  }
}

@keyframes servervice-arrow-sp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2.5%);
            transform: translateY(-2.5%);
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
    -webkit-transform: translateY(2.5%);
            transform: translateY(2.5%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2.5%);
            transform: translateY(2.5%);
  }
}
@-webkit-keyframes servervice-arrow-pc {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-5%);
            transform: translateX(-5%);
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}
@keyframes servervice-arrow-pc {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-5%);
            transform: translateX(-5%);
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}
.p-home-plan {
  padding: clamp(5rem, 10vw, 8rem) 0 clamp(5rem, 11vw, 10rem);
}
.p-home-plan .c-title01 {
  margin-bottom: min(5vw, 5.5rem);
}
.p-home-plan__lead {
  width: min(90%, 110rem);
  margin: 0 auto;
  font-size: clamp(1.4rem, 1.309rem + 0.39vw, 1.6rem);
  line-height: 2;
  text-align: left;
}
.p-home-plan__grid {
  display: -ms-grid;
  display: grid;
  gap: 1rem;
  width: min(81%, 110rem);
  margin: 2rem auto 0;
}
.p-home-plan__box-half {
  background-color: #F1F6F9;
}
.p-home-plan__box-half .p-home-plan__text01 {
  background-color: #0D318D;
}
.p-home-plan__box-year {
  background-color: #F1F6F9;
}
.p-home-plan__box-year .p-home-plan__text01 {
  background-color: #1A1A1A;
}
.p-home-plan__text01 {
  padding: 0.75em;
  font-size: clamp(1.6rem, 2.2vw, 2.2rem);
  font-weight: 700;
  line-height: 1.25;
  color: #fff;
  text-align: center;
}
.p-home-plan__text02 {
  padding: 1em;
  margin: 0;
  font-size: clamp(2rem, 2.4vw, 2.4rem);
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
}
.p-home-plan__text02 span:nth-child(1) {
  font-family: "roboto", sans-serif;
  font-size: clamp(3rem, 3.8vw, 3.8rem);
  font-weight: 500;
  vertical-align: -0.05em;
}
.p-home-plan__text02 span:nth-child(2) {
  font-weight: 700;
}
.p-home-plan__table {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: min(81%, 98rem);
  margin: 0 auto;
  margin-top: 3rem;
  letter-spacing: 0.02em;
  border-collapse: collapse;
  border-top: #D6D6D6 1px solid;
  border-bottom: #D6D6D6 1px solid;
}
.p-home-plan__table th {
  display: block;
  padding: 0.75em 1em;
  line-height: 1.25;
  text-align: center;
  background-color: #F2F2F2;
}
.p-home-plan__table td {
  display: block;
  padding: 0.5em 1em;
}
.p-home-plan__table td p {
  margin: 0;
}
.p-home-plan__text03 {
  margin: 0;
  font-size: clamp(1.8rem, 2.2vw, 2.2rem);
  text-align: center;
}
.p-home-plan__text03 span:first-child {
  font-family: "roboto", sans-serif;
  font-size: clamp(2.6rem, 3.2vw, 3.2rem);
  font-weight: 700;
  vertical-align: -0.05em;
}
.p-home-plan__text04 {
  width: min(81%, 98rem);
  margin: 1em auto 0;
  font-size: clamp(1.1rem, 2.2vw, 1.4rem);
  line-height: 1.25;
  text-align: left;
  letter-spacing: 0.02em;
}

.p-home-plan__box-half.is-active {
  -webkit-animation: up-motion 1s ease-out 0.2s forwards;
          animation: up-motion 1s ease-out 0.2s forwards;
}

.p-home-plan__box-year.is-active {
  -webkit-animation: up-motion 1s ease-out 0.2s forwards;
          animation: up-motion 1s ease-out 0.2s forwards;
}

.p-home-case {
  position: relative;
  padding: clamp(5rem, 10vw, 8rem) 0 clamp(5rem, 11vw, 10rem);
  background-color: #F1F6F9;
}
.p-home-case .c-title01 {
  margin-bottom: min(5vw, 5.5rem);
}
.p-home-case-card {
  display: -ms-grid;
  display: grid;
  gap: min(2.5vw, 2.5rem) 0;
  width: min(90%, 110rem);
  padding: min(5vw, 6rem);
  margin: 0 auto;
  background: #fff;
  -webkit-box-shadow: 0 3px 6px rgba(13, 49, 141, 0.12);
          box-shadow: 0 3px 6px rgba(13, 49, 141, 0.12);
}
.p-home-case-card + .p-home-case-card {
  margin-top: min(4vw, 4rem);
}
.p-home-case-card__title {
  font-size: clamp(1.5rem, 1.364rem + 0.58vw, 1.8rem);
  font-weight: 700;
  color: #2751C2;
  text-align: center;
}
.p-home-case-card__photo-area {
  text-align: center;
}
.p-home-case-card__photo-area img {
  width: 100%;
  height: auto;
}
.p-home-case-card__text01 {
  font-size: clamp(1.4rem, 1.309rem + 0.39vw, 1.6rem);
  line-height: 2;
  text-align: justify;
  letter-spacing: 0.02em;
}
.p-home-case .p-home-case-solution + .p-home-case-card__text01 {
  margin-top: 1em;
}
.p-home-case-problem, .p-home-case-solution {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 6rem min(4vw, 1.2rem) auto;
  grid-template-columns: 6rem auto;
  gap: min(4vw, 1.2rem);
}
.p-home-case-problem > div:first-child, .p-home-case-solution > div:first-child {
  padding-top: 0.5em;
}
.p-home-case-solution {
  margin-top: 1rem;
}
.p-home-case-problem__tag {
  display: block;
  width: 6.2rem;
  height: 6.2rem;
  font-size: clamp(1.5rem, 1.5vw, 1.6rem);
  font-weight: 700;
  line-height: 6.2rem;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #000;
  border-radius: 50%;
}
.p-home-case-solution__tag {
  display: block;
  width: 6.2rem;
  height: 6.2rem;
  font-size: clamp(1.5rem, 1.5vw, 1.6rem);
  font-weight: 700;
  line-height: 6.2rem;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #2751C2;
  border-radius: 50%;
}
.p-home-case-problem__text {
  font-size: clamp(1.5rem, 1.455rem + 0.19vw, 1.6rem);
  font-weight: 500;
  line-height: 1.86;
}
.p-home-case-solution__text {
  font-size: clamp(2rem, 1.909rem + 0.39vw, 2.2rem);
  font-weight: 700;
  line-height: 1.45;
  color: #2751C2;
}

.p-home-case-card.is-active {
  -webkit-animation: up-motion 1s ease-out 0.2s forwards;
          animation: up-motion 1s ease-out 0.2s forwards;
}

@media screen and (-ms-high-contrast: active) and (min-width: 992px), screen and (-ms-high-contrast: none) and (min-width: 992px){
  .p-globalnav__menu01 a:hover, .p-globalnav__menu01 button:hover {
    color: #d20038;
    text-decoration: none;
  }
}

@media (hover: hover) and (pointer: fine){
  a:not([class]) {
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
  }
  a:not([class]):hover {
    color: #d20038;
  }
  a:not([class]) i,
  a:not([class]) img {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  a:not([class]) i:hover,
  a:not([class]) img:hover {
    opacity: 0.6;
  }
  .p-globalnav__menu01 a, .p-globalnav__menu01 button {
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .p-globalnav__menu01 a:hover, .p-globalnav__menu01 button:hover {
    color: #fff;
    text-decoration: underline;
  }
  .p-globalnav__menu01 a:hover::before, .p-globalnav__menu01 button:hover::before {
    width: 100%;
    opacity: 1;
  }
  .c-button01:hover > span::before {
    -webkit-transform: translate(-50%, -50%) scale(2.5, 2.5);
            transform: translate(-50%, -50%) scale(2.5, 2.5);
  }
  .c-button01:hover {
    color: #fff;
  }
}

@media (pointer: fine), (hover: hover){
  a[href^="tel:"] {
    color: #1A1A1A;
    text-decoration: none;
    pointer-events: none;
  }
}

@media (prefers-reduced-motion: no-preference){
  :where(html:focus-within) {
    scroll-behavior: smooth; /* 何かにフォーカスがある場合のみスムーズスクロール */
  }
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none){
  a:not([class]) {
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
  }
  a:not([class]):hover {
    color: #d20038;
  }
  a:not([class]) i,
  a:not([class]) img {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  a:not([class]) i:hover,
  a:not([class]) img:hover {
    opacity: 0.6;
  }
  .p-globalnav__menu01 a, .p-globalnav__menu01 button {
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .p-globalnav__menu01 a:hover, .p-globalnav__menu01 button:hover {
    color: #fff;
    text-decoration: underline;
  }
  .p-globalnav__menu01 a:hover::before, .p-globalnav__menu01 button:hover::before {
    width: 100%;
    opacity: 1;
  }
  .c-button01:hover > span::before {
    -webkit-transform: translate(-50%, -50%) scale(2.5, 2.5);
            transform: translate(-50%, -50%) scale(2.5, 2.5);
  }
  .c-button01:hover {
    color: #fff;
  }
}

@media print and (hover: hover) and (pointer: fine), screen and (hover: hover) and (pointer: fine) and (min-width: 992px){
  .p-globalnav__menu01 a:hover, .p-globalnav__menu01 button:hover {
    color: #d20038;
    text-decoration: none;
  }
}

@media print, screen and (min-width: 375px){
  html {
    font-size: calc(var(--font-size) * 1%);
  }
}

@media print, screen and (min-width: 768px){
  html {
    scroll-padding-top: 80px;
  }
  html,
  body {
    min-width: 768px;
  }
  .l-main {
    line-height: 2;
  }
  .l-header .c-button01--mail > span {
    font-size: min(1.5vw, 2rem);
  }
  .l-footer__menu li {
    padding: 0.55em 1.5em;
  }
  .l-footer__copyright {
    padding-bottom: 0.5em;
    margin: 0 0 0 auto;
    font-size: 1.4rem;
  }
  .p-cta {
    padding: 6rem min(10vw, 10rem);
  }
  .p-cta__text01 {
    line-height: 1.75;
  }
  .c-button01--mail {
    height: 9rem;
  }
  .c-button01--mail > span {
    padding-left: 2.1em;
    font-size: 2.5rem;
  }
  .c-button01--mail > span i {
    width: 36px;
    height: 27px;
  }
  .u-visible-sp {
    display: none;
  }
  .u-visible-pc {
    display: inline-block;
  }
  .p-home-information__grid {
    -ms-grid-columns: 1fr min(3.5vw, 5.5rem) 1fr min(3.5vw, 5.5rem) 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: 5rem min(3.5vw, 5.5rem);
    width: min(90%, 110rem);
    margin-top: min(5vw, 6rem);
  }
  .p-home-information__text-caption {
    margin-top: 1.75rem;
    font-size: clamp(1.5rem, 1.6vw, 2rem);
    white-space: nowrap;
  }
  .p-home-information__text01 {
    margin-top: 1rem;
    font-size: min(1.6vw, 1.6rem);
  }
  .p-home-information__text02 {
    margin-top: 1rem;
    line-height: 2;
    text-align: center;
  }
  .p-home-information__arrow {
    padding: 5.5rem 0 3rem;
  }
  .p-home-information__box:nth-of-type(2).is-active {
    -webkit-animation: up-motion 1s ease-out 0.4s forwards;
            animation: up-motion 1s ease-out 0.4s forwards;
  }
  .p-home-information__box:nth-of-type(3).is-active {
    -webkit-animation: up-motion 1s ease-out 0.6s forwards;
            animation: up-motion 1s ease-out 0.6s forwards;
  }
  .p-home-service__grid-wrap {
    padding-right: min(5vw, 11rem);
    padding-left: min(5vw, 11rem);
  }
  .p-home-service__arrow-sp {
    display: none;
  }
  .p-home-service__arrow-pc {
    position: absolute;
    top: 0;
    right: -25%;
    z-index: -1;
    display: block;
    width: auto;
    height: 100%;
    -webkit-animation: servervice-arrow-pc 4s ease-in-out infinite;
            animation: servervice-arrow-pc 4s ease-in-out infinite;
  }
  .p-home-service__grid {
    -ms-grid-rows: auto 0 auto;
        grid-template-areas: "area1 area2" "area3 area3";
    -ms-grid-columns: 1fr min(10vw, 18rem) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 min(10vw, 18rem);
  }
  .p-home-service__grid > div:first-child {
    grid-area: area1;
    padding-bottom: min(5vw, 5rem);
  }
  .p-home-service__grid > div:nth-child(2) {
    grid-area: area2;
    padding-top: min(3vw, 3rem);
    padding-bottom: min(5vw, 5rem);
  }
  .p-home-service__grid > div:nth-child(3) {
    grid-area: area3;
  }
  .p-home-service__grid > div:first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-home-service__grid > div:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-home-service__grid > div:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .p-home-service__photo {
    padding: 0;
  }
  .p-home-service__text01 {
    display: -ms-grid;
    display: grid;
    place-content: center;
    height: 5em;
    font-size: min(1.8vw, 2.2rem);
  }
  .p-home-service-example {
    width: min(100%, 98rem);
    padding: min(3vw, 3rem) min(5vw, 5rem);
    margin-top: 0;
  }
  .p-home-service-example__list {
    margin-top: 1.5em;
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
  .p-home-service-example__list li {
    margin-bottom: 0.75em;
  }
  .p-home-service-subsection01__title {
    margin-top: 1em;
  }
  .p-home-service-subsection01__lead {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 110rem;
    margin-top: 2em;
  }
  .p-home-service-subsection01__grid {
    -ms-grid-columns: 1fr min(5vw, 5.5rem) 1fr min(5vw, 5.5rem) 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: min(5vw, 5.5rem);
    width: min(90%, 98rem);
    margin-top: min(4vw, 4rem);
  }
  .p-home-service-subsection02__block {
    padding-top: 3rem;
    padding-bottom: 3rem;
    margin-top: min(6vw, 6rem);
  }
  .p-home-service-subsection02__block + .p-home-service-subsection02__block {
    margin-top: min(9vw, 9rem);
  }
  .p-home-service-subsection02__block--type01 .p-home-service-subsection02__block-texts {
    margin: 0 0 0 auto;
  }
  .p-home-service-subsection02__block--type01 .p-home-service-subsection02__block-photo {
    top: 50%;
    left: 45%;
    width: min(55%, 66rem);
    -webkit-transform: translate(-100%, -50%);
            transform: translate(-100%, -50%);
  }
  .p-home-service-subsection02__block--type02 .p-home-service-subsection02__block-texts {
    margin: 0 auto 0 0;
  }
  .p-home-service-subsection02__block--type02 .p-home-service-subsection02__block-photo {
    top: 50%;
    left: 55%;
    width: min(55%, 66rem);
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  .p-home-service-subsection02__block-photo {
    height: 100%;
  }
  .p-home-service-subsection02__block-texts {
    width: min(71%, 78rem);
    padding: min(4vw, 4rem) min(6vw, 6rem);
    font-size: min(1.6vw, 1.6rem);
  }
  .p-home-service-subsection02__block-texts::before {
    clip-path: polygon(0 0, calc(100% - 45px) 0, 100% 45px, 100% 100%, 0 100%);
  }
  .p-home-service-subsection02__block-texts::after {
    width: 45px;
    height: 45px;
  }
  .p-home-service-subsection02__title02 {
    font-size: min(2vw, 2.2rem);
  }
  .p-home-service-subsection02__title02::before {
    background-color: #2751C2;
  }
  .p-home-service-subsection02__list {
    font-size: min(1.8vw, 2rem);
  }
  .p-home-service-subsection02__grid2 {
    -ms-grid-columns: 1fr min(3vw, 3rem) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(3vw, 3rem);
    font-size: min(1.6vw, 1.6rem);
  }
  .p-home-service-subsection02__title03 {
    font-size: min(1.8vw, 1.8rem);
  }
  .p-home-service.is-active svg.js-observer-target {
    -webkit-animation: servervice-arrow-pc 4s ease-in-out 1s infinite;
            animation: servervice-arrow-pc 4s ease-in-out 1s infinite;
  }
  .p-home-service.is-active .p-home-service__text-photo {
    -webkit-animation: fadein 1s ease-out 0.1s forwards;
            animation: fadein 1s ease-out 0.1s forwards;
  }
  .p-home-service.is-active .p-home-service__text-photo:nth-of-type(2) {
    -webkit-animation: fadein 1s ease-out 0.3s forwards;
            animation: fadein 1s ease-out 0.3s forwards;
  }
  .p-home-service-example.is-active {
    -webkit-animation: fadein 1s ease-out 0.4s forwards;
            animation: fadein 1s ease-out 0.4s forwards;
  }
  .p-home-service-subsection01__card:nth-of-type(1).is-active {
    -webkit-animation: up-motion 1s ease-out 0.2s forwards;
            animation: up-motion 1s ease-out 0.2s forwards;
  }
  .p-home-service-subsection01__card:nth-of-type(2).is-active {
    -webkit-animation: up-motion 1s ease-out 0.4s forwards;
            animation: up-motion 1s ease-out 0.4s forwards;
  }
  .p-home-service-subsection01__card:nth-of-type(3).is-active {
    -webkit-animation: up-motion 1s ease-out 0.6s forwards;
            animation: up-motion 1s ease-out 0.6s forwards;
  }
  .p-home-plan__lead {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 110rem;
  }
  .p-home-plan__grid {
    -ms-grid-columns: 1fr min(5vw, 8rem) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(5vw, 8rem);
    width: min(90%, 98rem);
    margin-top: min(4vw, 4rem);
  }
  .p-home-plan__text02 {
    padding: 2em 1em;
  }
  .p-home-plan__table {
    width: min(90%, 98rem);
    margin-top: 5rem;
  }
  .p-home-plan__table th {
    display: table-cell;
    width: 20%;
    vertical-align: middle;
  }
  .p-home-plan__table td {
    display: table-cell;
    padding: 1em;
    vertical-align: middle;
  }
  .p-home-plan__text04 {
    width: min(90%, 98rem);
    margin-top: 1.5em;
  }
  .p-home-plan__box-half.is-active {
    -webkit-animation: up-motion 1s ease-out 0.4s forwards;
            animation: up-motion 1s ease-out 0.4s forwards;
  }
  .p-home-plan__box-year.is-active {
    -webkit-animation: up-motion 1s ease-out 0.4s forwards;
            animation: up-motion 1s ease-out 0.4s forwards;
  }
  .p-home-case-card {
    -ms-grid-rows: auto min(2.5vw, 2.5rem) auto;
        grid-template-areas: "title title" "photo text";
    -ms-grid-columns: min(44%, 43.6rem) min(3vw, 5rem) auto;
    grid-template-columns: min(44%, 43.6rem) auto;
    gap: min(2.5vw, 2.5rem) min(3vw, 5rem);
    padding: min(4vw, 5rem);
  }
  .p-home-case-card__title {
    grid-area: title;
  }
  .p-home-case-card__photo-area {
    grid-area: photo;
  }
  .p-home-case-card__text-area {
    grid-area: text;
  }
  .p-home-case-card__title {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .p-home-case-card__photo-area {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .p-home-case-card__text-area {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .p-home-case-card.is-active {
    -webkit-animation: up-motion 1s ease-out 0.4s forwards;
            animation: up-motion 1s ease-out 0.4s forwards;
  }
}

@media print, screen and (min-width: 992px){
  body.is-gnav-open {
    height: auto;
    overflow: visible;
  }
  .l-header {
    height: clamp(5.5rem, 12vh, 8rem);
  }
  .l-header__logo {
    left: min(5vw, 5rem);
    width: min(20%, 14.6rem);
    height: clamp(5rem, 10vh, 7rem);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .l-header .c-button01--mail {
    right: 0;
    width: min(18vw, 25rem);
    height: 8rem;
    min-height: 8rem;
  }
  .l-header .c-button01--mail i {
    width: 3rem;
    height: 2.2rem;
  }
  .l-footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    width: min(95%, 120rem);
  }
  .l-footer__logo-text {
    -ms-grid-columns: min(17vw, 17.2rem) auto;
    grid-template-columns: min(17vw, 17.2rem) auto;
  }
  .l-footer__text {
    font-size: 1.4rem;
    letter-spacing: 0.02em;
  }
  .l-footer__menu {
    margin-top: 0;
    font-size: 1.4rem;
    letter-spacing: 0.02em;
  }
  .p-globalnav-triger {
    display: none;
  }
  .p-globalnav {
    position: absolute;
    top: 0;
    right: min(18vw, 25rem);
    left: auto;
    z-index: 1;
    display: block;
    visibility: visible;
    width: auto;
    height: clamp(5.5rem, 12vh, 8rem);
    pointer-events: all;
    background: transparent;
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    -webkit-transition: none;
    transition: none;
  }
  .p-globalnav.is-open {
    display: block !important;
  }
  .p-globalnav__inner {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: auto;
    height: auto;
    padding: 0;
    overflow: visible;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .p-globalnav__menu01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 min(0.5vw, 0.5rem);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: auto;
    width: 100%;
    height: auto;
    padding: 0 min(2.5vw, 4rem);
    margin: 0;
  }
  .p-globalnav__menu01 > li {
    padding-right: min(0.5vw, 1rem);
    padding-left: min(0.5vw, 1rem);
    font-size: min(1.4vw, 1.7rem);
    letter-spacing: 0.05em;
    white-space: nowrap;
    opacity: 0;
    -webkit-animation: fadein 0.5s ease-out 0.3s forwards;
            animation: fadein 0.5s ease-out 0.3s forwards;
  }
  .p-globalnav__menu01 a, .p-globalnav__menu01 button {
    padding: 0.5em;
    line-height: 1.5;
    color: #1A1A1A;
  }
  .p-globalnav__menu01 a:focus-visible, .p-globalnav__menu01 button:focus-visible {
    outline: 2px solid #9C2142 !important;
  }
}

@media print, screen and (width <= 575px){
  .u-visible-s {
    display: inline-block;
  }
}

@media print, screen and (width >= 1200px) and (width <= 1365px){
  .u-visible-xl {
    display: inline-block;
  }
}

@media print, screen and (width >= 1366px){
  .u-visible-xxl {
    display: inline-block;
  }
}

@media print, screen and (width >= 576px) and (width <= 767.98px){
  .u-visible-sm {
    display: inline-block;
  }
}

@media print, screen and (width >= 768px) and (width <= 991px){
  .u-visible-md {
    display: inline-block;
  }
}

@media print, screen and (width >= 992px) and (width <= 1199px){
  .u-visible-lg {
    display: inline-block;
  }
}