@charset "UTF-8";
/* ==========================================================================
   1. 外部リソースの読み込み
   ========================================================================== */
@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap";
@import "https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp_s-noto.min.css";
@import "https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900&display=swap";
/* ==========================================================================
   2. Sass設定
   ========================================================================== */
/* ==========================================================================
   global/_function.scss
   ========================================================================== */
/* ==========================================================================
   global/_mixin.scss
   ========================================================================== */
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  border-width: 0;
  border-style: solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  clear: both;
  height: 0; /* 1 */
  margin: 0;
  overflow: visible; /* 2 */
  border-top-width: 1px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: button; /* 1 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

:root {
  /* ==========================================================================
     スペーシング
     ========================================================================== */
  --space-none: 0;
  --space-3xs: clamp(4px, 4px + (4 - 4) * (100vw - 375px) / (1440 - 375), 4px);
  --space-2xs: clamp(6px, 6px + (8 - 6) * (100vw - 375px) / (1440 - 375), 8px);
  --space-xs: clamp(8px, 8px + (12 - 8) * (100vw - 375px) / (1440 - 375), 12px);
  --space-sm: clamp(10px, 10px + (16 - 10) * (100vw - 375px) / (1440 - 375), 16px);
  --space-md: clamp(12px, 12px + (24 - 12) * (100vw - 375px) / (1440 - 375), 24px);
  --space-lg: clamp(16px, 16px + (32 - 16) * (100vw - 375px) / (1440 - 375), 32px);
  --space-xl: clamp(20px, 20px + (40 - 20) * (100vw - 375px) / (1440 - 375), 40px);
  --space-2xl: clamp(30px, 30px + (60 - 30) * (100vw - 375px) / (1440 - 375), 60px);
  --space-3xl: clamp(40px, 40px + (80 - 40) * (100vw - 375px) / (1440 - 375), 80px);
  /* ==========================================================================
     レイアウト
     ========================================================================== */
  --gap-none: 0;
  --gap-3xs: clamp(4px, 4px + (4 - 4) * (100vw - 375px) / (1440 - 375), 4px);
  --gap-2xs: clamp(6px, 6px + (8 - 6) * (100vw - 375px) / (1440 - 375), 8px);
  --gap-xs: clamp(8px, 8px + (12 - 8) * (100vw - 375px) / (1440 - 375), 12px);
  --gap-sm: clamp(10px, 10px + (16 - 10) * (100vw - 375px) / (1440 - 375), 16px);
  --gap-md: clamp(12px, 12px + (24 - 12) * (100vw - 375px) / (1440 - 375), 24px);
  --gap-lg: clamp(16px, 16px + (32 - 16) * (100vw - 375px) / (1440 - 375), 32px);
  --gap-xl: clamp(20px, 20px + (40 - 20) * (100vw - 375px) / (1440 - 375), 40px);
  --gap-2xl: clamp(30px, 30px + (60 - 30) * (100vw - 375px) / (1440 - 375), 60px);
  --gap-3xl: clamp(40px, 40px + (80 - 40) * (100vw - 375px) / (1440 - 375), 80px);
  --layout-max-width: 1120px;
  --layout-gutter: clamp(10px, 10px + (10 - 10) * (100vw - 375px) / (1440 - 375), 10px);
  --header-height-sp: 50px;
  --header-height-pc: 60px;
  /* ==========================================================================
     タイポグラフィ
     ========================================================================== */
  --font-family-base: "YakuHanJPs_Noto", "Noto Sans JP", sans-serif;
  --font-family-en: "Roboto", sans-serif;
  --font-size-body: var(--font-size-md);
  --font-size-main: var(--font-size-lg);
  --font-size-xs: clamp(10px, 10px + (12 - 10) * (100vw - 375px) / (1440 - 375), 12px);
  --font-size-sm: clamp(12px, 12px + (14 - 12) * (100vw - 375px) / (1440 - 375), 14px);
  --font-size-md: clamp(14px, 14px + (16 - 14) * (100vw - 375px) / (1440 - 375), 16px);
  --font-size-lg: clamp(16px, 16px + (18 - 16) * (100vw - 375px) / (1440 - 375), 18px);
  --font-size-xl: clamp(18px, 18px + (20 - 18) * (100vw - 375px) / (1440 - 375), 20px);
  --font-size-2xl: clamp(20px, 20px + (24 - 20) * (100vw - 375px) / (1440 - 375), 24px);
  --font-size-3xl: clamp(24px, 24px + (32 - 24) * (100vw - 375px) / (1440 - 375), 32px);
  --font-size-4xl: clamp(28px, 28px + (40 - 28) * (100vw - 375px) / (1440 - 375), 40px);
  --line-height-none: 1;
  --line-height-tight: 1.4;
  --line-height-base: 1.6;
  --line-height-loose: 1.8;
  /* ==========================================================================
     アニメーション
     ========================================================================== */
  --duration-fast: 0.15s;
  --duration-normal: 0.3s;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  /* ==========================================================================
     セマンティックカラー
     ========================================================================== */
  /* Text */
  --color-text-base: #222;
  --color-text-muted: #797979;
  --color-text-inverse: #fff;
  /* Background */
  --color-bg-base: #fcfcfc;
  --color-bg-surface: #f5f5f5;
  --color-modal-overlay: rgb(0 0 0 / 60%);
  /* Border */
  --color-border-base: #ccc;
  --color-border-outline: #555;
  /* Brand */
  --color-brand-primary: #231815;
  --color-brand-primary-light: color-mix(in srgb, var(--color-brand-primary) 84%, white);
  --color-brand-primary-text: #fff;
  /* Accent */
  --color-brand-accent: #e60012;
  --color-brand-accent-light: color-mix(in srgb, var(--color-brand-accent) 20%, white);
  --color-brand-accent-text: #fff;
  /* Button */
  --color-button: #222;
  --color-button-hover: color-mix(in srgb, var(--color-button) 80%, black);
  --color-button-border: color-mix(in srgb, var(--color-button) 80%, black);
  --color-button-accent: #c00;
  --color-button-accent-hover: color-mix(in srgb, var(--color-button-accent) 80%, black);
  --color-button-accent-border: color-mix(in srgb, var(--color-button-accent) 80%, black);
  /* Link */
  --color-link: #008ddb;
  --color-link-hover: color-mix(in srgb, var(--color-link) 85%, black);
  /* Status */
  --color-status-success: #28a745;
  --color-status-error: #dc3545;
  /* ==========================================================================
     パレットカラー
     ========================================================================== */
  --color-white: #fff;
  --color-black: #222;
  --color-red: #dc3545;
  --color-blue: #008ddb;
  --color-green: #28a745;
  --color-pink: #e83e8c;
  --color-purple: #6f42c1;
  --color-brown: #795548;
  --color-orange: #fd7e14;
  --color-gray-50: #fafafa;
  --color-gray-100: #f5f5f5;
  --color-gray-200: #e0e0e0;
  --color-gray-300: #ccc;
  --color-gray-400: #999;
  --color-gray-500: #797979;
  --color-gray-600: #555;
  --color-gray-900: #333;
  /* ==========================================================================
     サイト専用
     ========================================================================== */
  /* ==========================================================================
     シャドウ
     ========================================================================== */
  --shadow-sm: 0 1px 3px rgb(15 23 42 / 25%);
  --shadow-md: 0 8px 24px rgb(15 23 42 / 12%);
  --shadow-glow: 0 0 32px rgb(47 164 231 / 25%);
  /* ==========================================================================
     Radius
     ========================================================================== */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-full: 9999px;
  /* ==========================================================================
     Z-index
     ========================================================================== */
  --z-index-back: -1;
  --z-index-base: 1;
  --z-index-header: 100;
  --z-index-dropdown: 200;
  --z-index-modal: 1000;
  --z-index-modal-button: 1100;
}

/* ==========================================================================
   Base
   ========================================================================== */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 0;
  min-height: 0;
}

html {
  scroll-behavior: smooth;
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

body {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
  overflow-x: hidden;
  font-family: var(--font-family-base);
  font-size: var(--font-size-body);
  font-weight: 400;
  line-height: var(--line-height-base);
  color: var(--color-text-base);
  letter-spacing: 0.05em;
  background-color: var(--color-bg-base);
  background-repeat: repeat-y;
  background-position: 0 -400px;
  background-size: 100% auto;
  text-rendering: optimizelegibility;
  -webkit-font-smoothing: antialiased;
}
body.is-fixed {
  position: fixed;
  width: 100%;
  overflow: hidden;
}

a {
  color: var(--color-link);
  text-decoration: none;
  -webkit-transition: color 0.3s, opacity 0.3s;
  transition: color 0.3s, opacity 0.3s;
}
@media (hover: hover) {
  a:hover {
    color: var(--color-link-hover);
  }
}

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

iframe {
  width: 100%;
  border: 0;
}

pre {
  overflow-x: auto;
  white-space: pre-wrap;
}

.l-page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
  overflow: clip;
  color: var(--color-text-base);
  background-color: var(--color-bg-base);
}
@media screen and (max-width: 1023px) {
  .l-page {
    padding-top: var(--header-height-sp);
  }
}

.l-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: var(--z-index-header);
  width: 100%;
  padding: var(--space-sm) 0;
  background-color: var(--color-white);
}
@media screen and (max-width: 1023px) {
  .l-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--z-index-modal-button);
    width: 100%;
    height: var(--header-height-sp);
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    border-bottom: 1px solid var(--color-border-base);
  }
}
.l-header .l-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
}

.l-header__logo {
  width: 54px;
  line-height: 1;
}
@media screen and (max-width: 1023px) {
  .l-header__logo {
    width: auto;
    margin-top: var(--space-sm);
  }
}
.l-header__logo a {
  display: inline-block;
  line-height: 1;
}
@media screen and (max-width: 1023px) {
  .l-header__logo .c-logo {
    height: 40px;
  }
}

.l-header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: auto;
}

.l-gnav {
  font-size: var(--font-size-sm);
}
@media screen and (max-width: 1279px) {
  .l-gnav {
    font-size: var(--font-size-xs);
  }
}
@media screen and (max-width: 1023px) {
  .l-gnav {
    display: none;
  }
}
.l-gnav .c-nav {
  height: 100%;
}
.l-gnav .c-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: calc(var(--space-xs) * -1);
}
.l-gnav .c-nav__item {
  margin-left: var(--space-xs);
}
.l-gnav .c-nav__item .c-nav__link {
  display: block;
  position: relative;
  width: 100%;
  padding: var(--space-xs) var(--space-sm);
  font-weight: 700;
  line-height: var(--line-height-tight);
  text-decoration: none;
  text-align: center;
}
.l-gnav .c-nav__item .c-nav__link span {
  display: block;
  margin-top: var(--space-2xs);
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-family: var(--font-family-en);
}
.l-gnav .c-nav__item .c-nav__link:link, .l-gnav .c-nav__item .c-nav__link:visited, .l-gnav .c-nav__item .c-nav__link:active {
  color: var(--color-text-base);
}
.l-gnav .c-nav__item .c-nav__link:hover {
  color: var(--color-text-muted);
}
.l-gnav .c-nav__item--home {
  display: none;
}
.l-gnav .c-nav__item--contact {
  margin-left: var(--space-xl);
}
.l-gnav .c-nav__item--contact .c-nav__link:link, .l-gnav .c-nav__item--contact .c-nav__link:visited, .l-gnav .c-nav__item--contact .c-nav__link:active {
  background-color: var(--color-brand-primary);
  color: var(--color-text-inverse);
}
.l-gnav .c-nav__item--contact .c-nav__link:hover {
  background-color: var(--color-button-hover);
  color: var(--color-text-inverse);
}

.l-inner {
  position: relative;
  width: 100%;
  max-width: var(--layout-max-width);
  margin: 0 auto;
  padding-inline: var(--layout-gutter);
}

.l-inner--s {
  max-width: 800px;
}

.l-content-block > * + * {
  margin-top: var(--space-md);
}
.l-content-block--sm > * + * {
  margin-top: var(--space-sm);
}
.l-content-block--lg > * + * {
  margin-top: var(--space-lg);
}

.c-heading, .l-entry h2, .l-entry h3 {
  font-weight: bold;
}
.c-heading:first-child, .l-entry h2:first-child, .l-entry h3:first-child {
  margin-top: 0;
}
.c-heading--article-title {
  font-weight: bold;
  line-height: var(--line-height-tight);
  font-size: var(--font-size-2xl);
}
.c-heading--xl, .l-entry h2 {
  position: relative;
  padding: var(--space-xs) var(--space-sm);
  margin-top: var(--space-2xl);
  margin-bottom: var(--space-xl);
  font-size: var(--font-size-2xl);
  line-height: var(--line-height-tight);
  color: var(--color-brand-primary);
  border: 2px var(--color-brand-primary) solid;
  font-weight: bold;
  line-height: var(--line-height-tight);
  text-align: center;
}
.c-heading--lg, .l-entry h3 {
  padding: var(--space-2xs);
  margin-top: var(--space-xl);
  margin-bottom: var(--space-lg);
  font-size: var(--font-size-xl);
  line-height: var(--line-height-tight);
  color: var(--color-black);
  background-color: var(--color-gray-100);
  border-left: 4px var(--color-brand-primary) solid;
}
.c-heading--md {
  font-size: var(--font-size-2xl);
}
@media screen and (max-width: 767px) {
  .c-heading--md {
    font-size: var(--font-size-lg);
  }
}

.c-list, .l-entry ul {
  list-style-type: none;
}
.c-list li, .l-entry ul li {
  padding-left: 1.2em;
  text-indent: -1.2em;
}
.c-list li:not(:first-child), .l-entry ul li:not(:first-child) {
  margin-top: 0.25em;
}
.c-list li::before, .l-entry ul li::before {
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.5em;
  margin-left: 0.3em;
  border-radius: var(--radius-full);
  background: var(--color-gray-900);
  vertical-align: middle;
  content: "";
}

.c-list--circle li {
  padding-left: 1.3em;
  text-indent: -1.3em;
}
.c-list--circle li::before {
  width: 0.8em;
  height: 0.8em;
  margin-left: 0.1em;
  background: var(--color-brand-primary);
}

.c-list--circle-gray li {
  padding-left: 1em;
  text-indent: -1em;
}
.c-list--circle-gray li::before {
  background: var(--color-gray-700);
}

.c-list--indent li::before {
  display: none;
}

.l-container {
  margin-bottom: var(--space-lg);
}

.l-container--col2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--gap-md) 300px;
  grid-template-columns: 1fr 300px;
  gap: var(--gap-md);
}
@media screen and (max-width: 1023px) {
  .l-container--col2 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}

.l-container--home {
  margin-top: 0;
}
.l-main {
  position: relative;
  width: 100%;
  margin: 0 auto 0;
  padding-bottom: var(--space-3xl);
}
.l-main--home {
  padding-bottom: 0;
}

.l-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--grid-gap);
  --grid-gap: var(--gap-md);
}
.l-grid > * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.l-grid--col1 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col1 > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
      flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
  max-width: calc((100% - var(--grid-gap) * 0) / 1);
}
.l-grid--col1-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-grid--col1-center > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
      flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
  max-width: calc((100% - var(--grid-gap) * 0) / 1);
}
.l-grid--col1-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col1-left > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
      flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
  max-width: calc((100% - var(--grid-gap) * 0) / 1);
}
.l-grid--col2 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col2 > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
      flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
  max-width: calc((100% - var(--grid-gap) * 1) / 2);
}
.l-grid--col2-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-grid--col2-center > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
      flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
  max-width: calc((100% - var(--grid-gap) * 1) / 2);
}
.l-grid--col2-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col2-left > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
      flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
  max-width: calc((100% - var(--grid-gap) * 1) / 2);
}
.l-grid--col3 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col3 > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
      flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
  max-width: calc((100% - var(--grid-gap) * 2) / 3);
}
.l-grid--col3-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-grid--col3-center > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
      flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
  max-width: calc((100% - var(--grid-gap) * 2) / 3);
}
.l-grid--col3-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col3-left > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
      flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
  max-width: calc((100% - var(--grid-gap) * 2) / 3);
}
.l-grid--col4 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col4 > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
      flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
  max-width: calc((100% - var(--grid-gap) * 3) / 4);
}
.l-grid--col4-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-grid--col4-center > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
      flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
  max-width: calc((100% - var(--grid-gap) * 3) / 4);
}
.l-grid--col4-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col4-left > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
      flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
  max-width: calc((100% - var(--grid-gap) * 3) / 4);
}
.l-grid--col5 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col5 > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
      flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
  max-width: calc((100% - var(--grid-gap) * 4) / 5);
}
.l-grid--col5-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-grid--col5-center > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
      flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
  max-width: calc((100% - var(--grid-gap) * 4) / 5);
}
.l-grid--col5-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col5-left > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
      flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
  max-width: calc((100% - var(--grid-gap) * 4) / 5);
}
.l-grid--col6 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col6 > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
      flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
  max-width: calc((100% - var(--grid-gap) * 5) / 6);
}
.l-grid--col6-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-grid--col6-center > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
      flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
  max-width: calc((100% - var(--grid-gap) * 5) / 6);
}
.l-grid--col6-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.l-grid--col6-left > * {
  -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
      flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
  max-width: calc((100% - var(--grid-gap) * 5) / 6);
}
@media screen and (max-width: 1439px) {
  .l-grid--col1-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-center-xpc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col1-center-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-left-xpc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col1-left-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col2-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-center-xpc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col2-center-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-left-xpc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col2-left-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col3-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-center-xpc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col3-center-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-left-xpc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col3-left-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col4-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-center-xpc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col4-center-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-left-xpc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col4-left-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col5-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-center-xpc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col5-center-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-left-xpc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col5-left-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col6-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-center-xpc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col6-center-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-left-xpc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col6-left-xpc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
}
@media screen and (max-width: 1279px) {
  .l-grid--col1-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-center-pc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col1-center-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-left-pc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col1-left-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col2-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-center-pc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col2-center-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-left-pc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col2-left-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col3-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-center-pc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col3-center-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-left-pc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col3-left-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col4-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-center-pc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col4-center-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-left-pc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col4-left-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col5-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-center-pc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col5-center-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-left-pc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col5-left-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col6-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-center-pc {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col6-center-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-left-pc {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col6-left-pc > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
}
@media screen and (max-width: 1023px) {
  .l-grid--col1-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-center-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col1-center-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-left-tab {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col1-left-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col2-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-center-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col2-center-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-left-tab {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col2-left-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col3-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-center-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col3-center-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-left-tab {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col3-left-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col4-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-center-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col4-center-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-left-tab {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col4-left-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col5-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-center-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col5-center-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-left-tab {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col5-left-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col6-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-center-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col6-center-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-left-tab {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col6-left-tab > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
}
@media screen and (max-width: 767px) {
  .l-grid--col1-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-center-sp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col1-center-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-left-sp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col1-left-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col2-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-center-sp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col2-center-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-left-sp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col2-left-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col3-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-center-sp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col3-center-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-left-sp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col3-left-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col4-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-center-sp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col4-center-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-left-sp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col4-left-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col5-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-center-sp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col5-center-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-left-sp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col5-left-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col6-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-center-sp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col6-center-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-left-sp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col6-left-sp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
}
@media screen and (max-width: 479px) {
  .l-grid--col1-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-center-xsp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col1-center-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col1-left-xsp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col1-left-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 0) / 1);
        flex-basis: calc((100% - var(--grid-gap) * 0) / 1);
    max-width: calc((100% - var(--grid-gap) * 0) / 1);
  }
  .l-grid--col2-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-center-xsp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col2-center-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col2-left-xsp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col2-left-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 1) / 2);
        flex-basis: calc((100% - var(--grid-gap) * 1) / 2);
    max-width: calc((100% - var(--grid-gap) * 1) / 2);
  }
  .l-grid--col3-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-center-xsp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col3-center-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col3-left-xsp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col3-left-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 2) / 3);
        flex-basis: calc((100% - var(--grid-gap) * 2) / 3);
    max-width: calc((100% - var(--grid-gap) * 2) / 3);
  }
  .l-grid--col4-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-center-xsp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col4-center-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col4-left-xsp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col4-left-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 3) / 4);
        flex-basis: calc((100% - var(--grid-gap) * 3) / 4);
    max-width: calc((100% - var(--grid-gap) * 3) / 4);
  }
  .l-grid--col5-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-center-xsp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col5-center-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col5-left-xsp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col5-left-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 4) / 5);
        flex-basis: calc((100% - var(--grid-gap) * 4) / 5);
    max-width: calc((100% - var(--grid-gap) * 4) / 5);
  }
  .l-grid--col6-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-center-xsp {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-grid--col6-center-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
  .l-grid--col6-left-xsp {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-grid--col6-left-xsp > * {
    -ms-flex-preferred-size: calc((100% - var(--grid-gap) * 5) / 6);
        flex-basis: calc((100% - var(--grid-gap) * 5) / 6);
    max-width: calc((100% - var(--grid-gap) * 5) / 6);
  }
}

.l-split {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: var(--space-md);
}

.l-split--6-6 {
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
}

.l-split--4-8 {
  -ms-grid-columns: 4fr 8fr;
  grid-template-columns: 4fr 8fr;
}

.l-split--3-9 {
  -ms-grid-columns: 3fr 9fr;
  grid-template-columns: 3fr 9fr;
}

.l-split--5-7 {
  -ms-grid-columns: 5fr 7fr;
  grid-template-columns: 5fr 7fr;
}

@media screen and (max-width: 479px) {
  .l-split.l-split--6-6-xsp {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .l-split.l-split--4-8-xsp {
    -ms-grid-columns: 4fr 8fr;
    grid-template-columns: 4fr 8fr;
  }
  .l-split.l-split--3-9-xsp {
    -ms-grid-columns: 3fr 9fr;
    grid-template-columns: 3fr 9fr;
  }
  .l-split.l-split--5-7-xsp {
    -ms-grid-columns: 5fr 7fr;
    grid-template-columns: 5fr 7fr;
  }
  .l-split.l-split--12-xsp {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 767px) {
  .l-split.l-split--6-6-sp {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .l-split.l-split--4-8-sp {
    -ms-grid-columns: 4fr 8fr;
    grid-template-columns: 4fr 8fr;
  }
  .l-split.l-split--3-9-sp {
    -ms-grid-columns: 3fr 9fr;
    grid-template-columns: 3fr 9fr;
  }
  .l-split.l-split--5-7-sp {
    -ms-grid-columns: 5fr 7fr;
    grid-template-columns: 5fr 7fr;
  }
  .l-split.l-split--12-sp {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 1023px) {
  .l-split.l-split--6-6-tab {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .l-split.l-split--4-8-tab {
    -ms-grid-columns: 4fr 8fr;
    grid-template-columns: 4fr 8fr;
  }
  .l-split.l-split--3-9-tab {
    -ms-grid-columns: 3fr 9fr;
    grid-template-columns: 3fr 9fr;
  }
  .l-split.l-split--5-7-tab {
    -ms-grid-columns: 5fr 7fr;
    grid-template-columns: 5fr 7fr;
  }
  .l-split.l-split--12-tab {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 1279px) {
  .l-split.l-split--6-6-pc {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .l-split.l-split--4-8-pc {
    -ms-grid-columns: 4fr 8fr;
    grid-template-columns: 4fr 8fr;
  }
  .l-split.l-split--3-9-pc {
    -ms-grid-columns: 3fr 9fr;
    grid-template-columns: 3fr 9fr;
  }
  .l-split.l-split--5-7-pc {
    -ms-grid-columns: 5fr 7fr;
    grid-template-columns: 5fr 7fr;
  }
  .l-split.l-split--12-pc {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 1439px) {
  .l-split.l-split--6-6-xpc {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .l-split.l-split--4-8-xpc {
    -ms-grid-columns: 4fr 8fr;
    grid-template-columns: 4fr 8fr;
  }
  .l-split.l-split--3-9-xpc {
    -ms-grid-columns: 3fr 9fr;
    grid-template-columns: 3fr 9fr;
  }
  .l-split.l-split--5-7-xpc {
    -ms-grid-columns: 5fr 7fr;
    grid-template-columns: 5fr 7fr;
  }
  .l-split.l-split--12-xpc {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.l-split--gap-xs {
  gap: var(--space-xs);
}

.l-split--gap-sm {
  gap: var(--space-sm);
}

.l-split--gap-md {
  gap: var(--space-md);
}

.l-split--gap-lg {
  gap: var(--space-lg);
}

.l-split--gap-xl {
  gap: var(--space-xl);
}

.l-drawer-btn {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  z-index: var(--z-index-modal-button);
  width: 50px;
  height: 50px;
  margin-left: auto;
  background: var(--color-gray-900);
  cursor: pointer;
}
@media screen and (max-width: 1023px) {
  .l-drawer-btn {
    display: block;
  }
}
.l-drawer-btn span:nth-of-type(1),
.l-drawer-btn span:nth-of-type(2),
.l-drawer-btn span:nth-of-type(3) {
  position: absolute;
  top: 15px;
  left: 15px;
  width: 22px;
  height: 2px;
  border-radius: var(--radius-xs);
  background: var(--color-text-inverse);
  -webkit-transition: all var(--duration-normal);
  transition: all var(--duration-normal);
}
.l-drawer-btn span:nth-of-type(2) {
  top: 23px;
}
.l-drawer-btn span:nth-of-type(3) {
  top: 31px;
}

.l-drawer-btn.is-open span:nth-of-type(1) {
  left: 14px;
  transform: translateY(8px) rotate(-45deg);
  width: 23px;
  height: 3px;
  -webkit-transform: translateY(8px) rotate(-45deg);
}
.l-drawer-btn.is-open span:nth-of-type(2) {
  opacity: 0;
}
.l-drawer-btn.is-open span:nth-of-type(3) {
  left: 14px;
  transform: translateY(-8px) rotate(45deg);
  width: 23px;
  height: 3px;
  -webkit-transform: translateY(-8px) rotate(45deg);
}

.l-drawer-content {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--z-index-modal);
  width: 100%;
  height: 100%;
  padding-top: var(--header-height-sp);
  padding-bottom: var(--header-height-sp);
  overflow: auto;
  background-color: var(--color-bg-surface);
}
.l-drawer-content .l-snav__title {
  display: none;
}
@media screen and (max-width: 1023px) {
  .l-drawer-content .l-snav__title {
    display: block;
    position: relative;
    z-index: 7777;
    width: 100%;
    padding: var(--space-xs) var(--space-sm);
    background: var(--color-gray-900);
    color: var(--color-text-inverse);
    text-align: center;
  }
}

.l-drawer-content__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: var(--space-xl);
}

.l-drawer-content__button-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 40px;
  height: 40px;
  padding: var(--space-xs) var(--space-md);
  background-color: var(--color-brand-primary);
  color: var(--color-text-base);
  font-weight: 700;
  font-size: var(--font-size-md);
  line-height: 1;
}
.l-drawer-content__button-item:not(:first-child) {
  margin-left: var(--space-xs);
}
.l-drawer-content__button-item:link, .l-drawer-content__button-item:visited, .l-drawer-content__button-item:active {
  color: var(--color-text-inverse);
  text-decoration: none;
}
.l-drawer-content__button-item:hover {
  background-color: var(--color-brand-primary-light);
}
.l-drawer-content__button-item--wa {
  background-color: #40c351;
  font-size: var(--font-size-2xl);
}
.l-drawer-content__button-item--wa:link, .l-drawer-content__button-item--wa:visited, .l-drawer-content__button-item--wa:active {
  color: var(--color-text-inverse);
  text-decoration: none;
}
.l-drawer-content__button-item--wa:hover {
  background-color: #329e40;
}

.l-drawer-content__language {
  margin-top: var(--space-xl);
  text-align: center;
}

.l-snav .c-nav .c-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  width: 100%;
  background: var(--color-white);
}
.l-snav .c-nav .c-nav__items .c-nav__item {
  width: 100%;
  height: auto;
  border-bottom: 1px solid var(--color-border-base);
  font-size: var(--font-size-xs);
  line-height: 1;
  -webkit-overflow-scrolling: touch;
}
.l-snav .c-nav .c-nav__items .c-nav__item:nth-child(even) {
  border-right: 0;
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link {
  display: block;
  position: relative;
  padding: var(--space-xl) var(--space-lg) var(--space-xl) var(--space-sm);
  background-repeat: no-repeat;
  font-weight: bold;
  font-size: var(--font-size-md);
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link br {
  display: none;
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link span {
  display: block;
  margin-top: var(--space-xs);
  color: var(--color-text-muted);
  font-weight: normal;
  font-size: var(--font-size-xs);
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link span br {
  display: none;
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link:link, .l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link:visited, .l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link:active {
  color: var(--color-gray-900);
  text-decoration: none;
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link:hover {
  color: var(--color-gray-900);
  text-decoration: none;
}
.l-snav .c-nav .c-nav__items .c-nav__item .c-nav__link:before {
  position: absolute;
  top: 50%;
  right: var(--space-lg);
  margin-top: -8px;
  color: var(--color-brand-primary);
  font: var(--fa-font-solid);
  font-weight: 900;
  font-size: var(--font-size-md);
  content: "\f105";
}

.l-snav-sub .c-nav .c-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  width: 100%;
  border-bottom: 1px solid var(--color-border-base);
  background: var(--color-bg-surface);
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item {
  width: 50%;
  height: auto;
  border-bottom: 1px solid var(--color-border-base);
  font-size: var(--font-size-xs);
  line-height: 1;
  -webkit-overflow-scrolling: touch;
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item:nth-child(odd) {
  border-right: 1px solid var(--color-border-base);
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item:nth-last-child(-n+1) {
  border-bottom: 0;
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link {
  display: block;
  position: relative;
  padding: var(--space-sm);
  background-repeat: no-repeat;
  font-weight: bold;
  font-size: var(--font-size-xs);
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link span {
  display: block;
  margin-top: var(--space-xs);
  color: var(--color-text-muted);
  font-weight: normal;
  font-size: var(--font-size-xs);
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link span br {
  display: none;
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link:link, .l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link:visited, .l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link:active {
  color: var(--color-gray-900);
  text-decoration: none;
}
.l-snav-sub .c-nav .c-nav__items .c-nav__item .c-nav__link:hover {
  color: var(--color-gray-900);
  text-decoration: none;
}

.l-fnav {
  text-align: left;
}
@media screen and (max-width: 1023px) {
  .l-fnav {
    display: block;
    margin-top: 0;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-bottom: 0;
    background: var(--color-white);
  }
}
@media screen and (max-width: 1023px) {
  .l-fnav .c-nav {
    text-align: left;
  }
}
.l-fnav .c-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1023px) {
  .l-fnav .c-nav__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    background-color: var(--color-white);
  }
}
.l-fnav .c-nav__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: var(--font-size-sm);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .l-fnav .c-nav__item {
    width: 100%;
    margin-top: 0;
    padding: var(--space-xs);
    border-bottom: 1px solid var(--color-gray-900);
    text-align: left;
    font-size: var(--font-size-md);
  }
}
.l-fnav .c-nav__item:nth-child(1) {
  border-left: 0;
}
.l-fnav .c-nav__link {
  display: block;
  position: relative;
  width: 100%;
  line-height: var(--line-height-tight);
}
@media screen and (max-width: 1023px) {
  .l-fnav .c-nav__link:before {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -8px;
    color: var(--color-brand-primary);
    font: var(--fa-font-solid);
    font-weight: 900;
    font-size: var(--font-size-md);
    content: "\f105";
  }
  .l-fnav .c-nav__link br {
    display: none;
  }
}
.l-fnav .c-nav__link:link, .l-fnav .c-nav__link:visited, .l-fnav .c-nav__link:active {
  padding: var(--space-3xs) var(--space-sm);
  color: var(--color-text-base);
  font-weight: bold;
  text-decoration: none;
}
@media screen and (max-width: 1023px) {
  .l-fnav .c-nav__link:link, .l-fnav .c-nav__link:visited, .l-fnav .c-nav__link:active {
    display: block;
    padding: var(--space-sm) 0;
    color: var(--color-gray-900);
  }
}
.l-fnav .c-nav__link:hover {
  text-decoration: underline;
}
.l-fnav span {
  display: none;
}

.l-fnav__title {
  display: none;
}
@media screen and (max-width: 1023px) {
  .l-fnav__title {
    display: block;
    padding: var(--space-xs) var(--space-sm);
    background: var(--color-gray-900);
    color: var(--color-text-inverse);
    font-weight: 600;
    text-align: center;
  }
}

.l-footer {
  position: relative;
  margin-top: auto;
  padding: 0 0 var(--space-md);
  border-top: 2px solid var(--color-brand-primary);
  background: var(--color-white);
  font-size: var(--font-size-sm);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .l-footer {
    padding-top: 0;
    padding-bottom: var(--space-xs);
  }
}
.l-footer--home {
  margin-top: 0;
}
.l-footer .l-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: var(--space-xl);
}
@media screen and (max-width: 1023px) {
  .l-footer .l-inner {
    padding-top: 0;
  }
}
.l-footer .l-inner::before {
  display: block;
  position: absolute;
  top: -15px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  height: 15px;
  background-repeat: repeat-x;
  background-color: var(--color-gray-900);
  content: "";
  -webkit-mask-image: url(../images/common/zigzag.svg);
          mask-image: url(../images/common/zigzag.svg);
}

@media screen and (max-width: 1023px) {
  .l-footer--home {
    margin-top: 1px;
  }
}

.l-footer__logo {
  margin: var(--space-xl) auto 0;
}
@media screen and (max-width: 1023px) {
  .l-footer__logo {
    margin-top: var(--space-xl);
    margin-bottom: 0;
  }
}
.l-footer__logo a {
  display: block;
}
.l-footer__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1023px) {
  .l-footer__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

.l-footer__sns {
  margin-top: var(--space-3xl);
}

.l-footer__copyright {
  width: 100%;
  margin-top: var(--space-xl);
}
@media screen and (max-width: 1023px) {
  .l-footer__copyright {
    margin-top: var(--space-xl);
  }
}

.c-button-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--gap-sm);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .c-button-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-button-group--left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.c-button-group--right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.c-button,
input[type=submit].c-button,
input[type=button].c-button,
button.c-button {
  text-align: center;
  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-width: 350px;
  padding: var(--space-sm) var(--space-sm);
  font-size: var(--font-size-md);
  font-weight: bold;
  line-height: var(--line-height-base);
  color: var(--color-white);
  text-decoration: none;
  cursor: pointer;
  background: none;
  background-color: var(--color-button);
  border: 1px solid var(--color-button-border);
  border-radius: 4px;
  -webkit-transition: background-color 0.2s, color 0.2s, opacity 0.2s;
  transition: background-color 0.2s, color 0.2s, opacity 0.2s;
}
@media screen and (max-width: 1023px) {
  .c-button,
  input[type=submit].c-button,
  input[type=button].c-button,
  button.c-button {
    width: 90%;
    min-width: auto;
  }
}
.c-button:visited,
input[type=submit].c-button:visited,
input[type=button].c-button:visited,
button.c-button:visited {
  color: var(--color-white);
}
.c-button:hover,
input[type=submit].c-button:hover,
input[type=button].c-button:hover,
button.c-button:hover {
  color: var(--color-white);
  background-color: var(--color-button-hover);
  -webkit-box-shadow: none;
          box-shadow: none;
}
.c-button--center,
input[type=submit].c-button--center,
input[type=button].c-button--center,
button.c-button--center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .c-button--center,
  input[type=submit].c-button--center,
  input[type=button].c-button--center,
  button.c-button--center {
    width: 90%;
  }
}
.c-button--center,
input[type=submit].c-button--center,
input[type=button].c-button--center,
button.c-button--center {
  margin-inline: auto;
}
.c-button--full,
input[type=submit].c-button--full,
input[type=button].c-button--full,
button.c-button--full {
  width: 100%;
  min-width: 0;
}
.c-button--entry,
input[type=submit].c-button--entry,
input[type=button].c-button--entry,
button.c-button--entry {
  color: var(--color-white);
  background-color: var(--color-button-accent);
  border: 1px solid var(--color-button-accent-border);
}
.c-button--entry:hover,
input[type=submit].c-button--entry:hover,
input[type=button].c-button--entry:hover,
button.c-button--entry:hover {
  color: var(--color-white);
  background-color: var(--color-button-accent-hover);
}
.c-button--form-reset,
input[type=submit].c-button--form-reset,
input[type=button].c-button--form-reset,
button.c-button--form-reset {
  color: var(--color-white);
  background-color: var(--color-gray-500);
  border: 1px solid var(--color-gray-600);
}
.c-button--form-reset:hover,
input[type=submit].c-button--form-reset:hover,
input[type=button].c-button--form-reset:hover,
button.c-button--form-reset:hover {
  color: var(--color-white);
  background-color: var(--color-gray-600);
}
.c-button--sm,
input[type=submit].c-button--sm,
input[type=button].c-button--sm,
button.c-button--sm {
  min-width: 140px;
  padding: var(--space-2xs) var(--space-xs);
  font-size: var(--font-size-sm);
}
@media screen and (max-width: 767px) {
  .c-button--sm,
  input[type=submit].c-button--sm,
  input[type=button].c-button--sm,
  button.c-button--sm {
    width: 100%;
    min-width: 0;
    padding: 8px;
  }
}
.c-button--lg,
input[type=submit].c-button--lg,
input[type=button].c-button--lg,
button.c-button--lg {
  min-width: 260px;
  padding: 18px 36px;
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .c-button--lg,
  input[type=submit].c-button--lg,
  input[type=button].c-button--lg,
  button.c-button--lg {
    width: 100%;
    min-width: 0;
    padding: 14px 20px;
    font-size: 1.6rem;
  }
}
.c-button--disabled,
input[type=submit].c-button--disabled,
input[type=button].c-button--disabled,
button.c-button--disabled {
  color: #fff;
  pointer-events: none;
  cursor: default;
}
.c-button--arrow,
input[type=submit].c-button--arrow,
input[type=button].c-button--arrow,
button.c-button--arrow {
  position: relative;
  padding-right: 3em;
}
.c-button--arrow::after,
input[type=submit].c-button--arrow::after,
input[type=button].c-button--arrow::after,
button.c-button--arrow::after {
  position: absolute;
  top: 50%;
  right: 1.2em;
  width: 0.6em;
  height: 0.6em;
  content: "";
  border-top: 2px solid currentcolor;
  border-right: 2px solid currentcolor;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transition: right 0.2s, -webkit-transform 0.2s;
  transition: right 0.2s, -webkit-transform 0.2s;
  transition: right 0.2s, transform 0.2s;
  transition: right 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
.c-button--arrow:hover::after,
input[type=submit].c-button--arrow:hover::after,
input[type=button].c-button--arrow:hover::after,
button.c-button--arrow:hover::after {
  right: 1em;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

.c-form {
  display: block;
  padding: 0 !important;
}
.c-form__item:not(:first-child) {
  margin-top: 16px;
}

.c-form__title {
  font-weight: bold;
}
.c-form__content {
  margin-top: 8px;
}
@media screen and (max-width: 767px) {
  .c-form__content {
    margin-top: 4px;
  }
}

.c-form__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .c-form__button {
    margin-top: 40px;
  }
}
.c-form__button > *:not(:first-child) {
  margin-top: 16px;
}

.c-form-input {
  width: 100%;
  max-width: 100%;
  padding: 0.4em 0.8em;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
}

.c-form-input--w50 {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .c-form-input--w50 {
    width: 100%;
  }
}

.c-form-input--postcode {
  width: 7em;
}

.c-form-input--tel {
  width: 14em;
}

.c-form-textarea {
  width: 100% !important;
  max-width: 100%;
  min-height: 10em !important;
  padding: 0.4em 0.8em;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
}

.c-form-select {
  position: relative;
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
}
.c-form-select::after {
  position: absolute;
  right: 15px;
  width: 10px;
  height: 7px;
  pointer-events: none;
  content: "";
  background-color: #535353;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.c-form-select select {
  width: 100%;
  height: 2.8em;
  padding: 0.4em calc(0.8em + 30px) 0.4em 0.8em;
  font-size: 1em;
  color: #333;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
}

.c-form-checkbox {
  /* チェックボックス01 */
}
.c-form-checkbox input[type=checkbox] {
  display: none;
}
.c-form-checkbox .c-form-checkbox__label {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  width: auto;
  padding: 5px 30px;
  cursor: pointer;
}
.c-form-checkbox .c-form-checkbox__label::before {
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  content: "";
  background: #fff;
  border: 1px solid #231815;
}
.c-form-checkbox .c-form-checkbox__label::after {
  position: absolute;
  top: 50%;
  left: 11px;
  display: block;
  width: 5px;
  height: 9px;
  margin-top: -6px;
  content: "";
  border-right: 3px solid #231815;
  border-bottom: 3px solid #231815;
  opacity: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-form-checkbox input[type=checkbox]:checked + .c-form-checkbox__label::after,
.c-form-checkbox input[type=checkbox]:checked + input + .c-form-checkbox__label::after {
  opacity: 1;
}

.c-form-radio {
  /* ラジオボタン01 */
}
.c-form-radio input[type=radio] {
  display: none;
}
.c-form-radio .c-form-radio__label {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  width: auto;
  padding: 5px 30px;
  cursor: pointer;
}
.c-form-radio .c-form-radio__label::before {
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  content: "";
  background: #fff;
  border: 1px solid #231815;
  border-radius: 50%;
}
.c-form-radio .c-form-radio__label::after {
  position: absolute;
  top: 50%;
  left: 8px;
  display: block;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  content: "";
  background: #231815;
  border-radius: 50%;
  opacity: 0;
}
.c-form-radio input[type=radio]:checked + .c-form-radio__label::after,
.c-form-radio input[type=radio]:checked + input + .c-form-radio__label::after {
  opacity: 1;
}

.c-breadcrumb {
  padding: var(--space-xs) 0;
  font-size: var(--font-size-xs);
  background-color: var(--color-bg-surface);
  border-radius: var(--radius-sm);
}
.c-breadcrumb ul {
  padding: 0;
  margin: 0 auto;
}
.c-breadcrumb ul li {
  display: inline;
  list-style-type: none;
}
.c-breadcrumb ul li::after {
  display: inline;
  margin: 0 var(--space-3xs);
  color: var(--color-text-muted);
  content: " > ";
}
.c-breadcrumb ul li:last-child::after {
  content: none;
}
.c-breadcrumb ul li a {
  color: var(--color-text-main);
  text-decoration: underline;
}
.c-breadcrumb ul li a:hover {
  text-decoration: none;
}
.c-breadcrumb ul li a:visited, .c-breadcrumb ul li a:active {
  color: var(--color-text-main);
}

.c-table {
  width: 100%;
  font-size: var(--font-size-md);
  background-color: var(--color-white);
}
.c-table thead th {
  color: var(--color-white);
  background: var(--color-black);
}
.c-table tbody th {
  width: 20%;
  background: var(--color-gray-100);
}
.c-table:not(:has(thead)) tbody th {
  background: var(--color-gray-200);
}
.c-table th,
.c-table td {
  padding: var(--space-2xs);
  border: 1px solid var(--color-gray-500);
}

.c-googlemap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
.c-googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-figure__caption {
  margin-top: var(--space-3xs);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-base);
  color: var(--color-text-muted);
  text-align: left;
}

.c-image--max-h-380 {
  max-height: 380px;
}
.c-image--center {
  display: block;
  margin-inline: auto;
  -o-object-position: center;
     object-position: center;
}

.c-pager {
  margin-top: var(--space-xl);
}
.c-pager__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--space-xs);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
}
.c-pager .page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 var(--space-xs);
  font-size: var(--font-size-md);
  font-weight: bold;
  color: var(--color-text-main);
  text-decoration: none;
  background-color: var(--color-bg-surface);
  border: 1px solid var(--color-border-main);
  border-radius: var(--radius-sm);
  -webkit-transition: all var(--duration-normal) var(--ease-out);
  transition: all var(--duration-normal) var(--ease-out);
}
.c-pager .page-numbers:hover:not(.current) {
  color: var(--color-text-inverse);
  background-color: var(--color-brand-primary);
  border-color: var(--color-brand-primary);
}
.c-pager .page-numbers.current {
  color: var(--color-text-inverse);
  cursor: default;
  background-color: var(--color-brand-primary);
  border-color: var(--color-brand-primary);
}
.c-pager .page-numbers.prev, .c-pager .page-numbers.next {
  padding: 0 var(--space-sm);
}

.c-video {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.c-video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.c-post-nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--gap-sm) auto var(--gap-sm) 1fr;
  grid-template-columns: 1fr auto 1fr;
  gap: var(--gap-sm);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: var(--space-3xl);
}
@media screen and (max-width: 1023px) {
  .c-post-nav {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    text-align: center;
  }
}

.c-post-nav__prev {
  text-align: left;
}
@media screen and (max-width: 1023px) {
  .c-post-nav__prev {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: center;
  }
}

.c-post-nav__archive {
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-post-nav__archive {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.c-post-nav__next {
  text-align: right;
}
@media screen and (max-width: 1023px) {
  .c-post-nav__next {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    text-align: center;
  }
}

.c-post-nav a {
  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-width: 140px;
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--font-size-sm);
  color: var(--color-black);
  text-decoration: none;
  border: 1px solid var(--color-black);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
@media screen and (max-width: 1023px) {
  .c-post-nav a {
    width: 100%;
    max-width: 280px;
  }
}
.c-post-nav a:hover {
  color: var(--color-white);
  background: var(--color-black);
}

.p-page-header {
  position: relative;
  padding: var(--space-xl) var(--space-none);
  background-image: url(../images/common/heading01_bg.png);
  background-position: 100% 50%;
  background-size: contain;
  background-repeat: no-repeat;
  background-color: var(--color-brand-primary);
  margin-bottom: var(--space-xl);
}
.p-page-header__title {
  color: var(--color-brand-primary-text);
  font-weight: bold;
  font-size: var(--font-size-4xl);
  line-height: var(--line-height-tight);
}
@media screen and (max-width: 1023px) {
  .p-page-header__title {
    font-size: var(--font-size-2xl);
  }
}

.p-cs-news-list {
  border-top: 1px solid #ddd;
}

.p-cs-news-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 0;
  border-bottom: 1px solid #ddd;
  gap: 8px;
}
@media screen and (max-width: 1023px) {
  .p-cs-news-list__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4px;
  }
}

.p-cs-news-list__date {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 9em;
}
@media screen and (max-width: 1023px) {
  .p-cs-news-list__date {
    width: auto;
  }
}

.p-card-video {
  position: relative;
  padding: var(--space-xs);
  background-color: var(--color-white);
  border: 1px solid #ccc;
}
.p-card-video__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-card-video__label {
  padding: var(--space-2xs) var(--space-2xs);
  font-size: var(--font-size-xs);
  font-weight: bold;
  line-height: var(--line-height-none);
  color: var(--color-white);
  background-color: var(--color-black);
}
.p-card-video__label--official {
  color: var(--color-brand-accent-text);
  background-color: var(--color-brand-accent);
}
.p-card-video__date {
  font-size: var(--font-size-xs);
}
.p-card-video__media {
  margin-top: var(--space-2xs);
}
.p-card-video__title {
  margin-top: var(--space-2xs);
  font-weight: bold;
  line-height: var(--line-height-tight);
}

.pg-home-mv {
  position: relative;
  margin: 0 calc(50% - 50vw);
}

.pg-home-mv__catchphrase {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: rgba(255, 255, 255, 0.7);
  font-weight: bold;
  font-size: 7vw;
  line-height: 1;
  font-family: var(--font-family-en);
  text-align: center;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 1023px) {
  .pg-home-mv__catchphrase {
    font-size: 14vw;
  }
}

/* 右側（三角形 → ）*/
/* 左側（三角形 ← ）*/
.pg-home-mv-slider {
  position: relative;
}

.pg-home-mv-slider__item {
  min-height: 600px;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1023px) {
  .pg-home-mv-slider__item {
    height: 40vh;
  }
}
@media screen and (max-width: 479px) {
  .pg-home-mv-slider__item {
    min-height: 320px;
  }
}

.pg-home-about {
  position: relative;
  margin: 0 calc(50% - 50vw);
  padding: 40px calc(50vw - 50%) 60px;
}
@media screen and (max-width: 1023px) {
  .pg-home-about {
    padding-top: 30px;
  }
}
.pg-home-about .wave {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 2;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100vw - 3%);
  height: 46px;
  padding: var(--space-xs, 20px);
}
.pg-home-about .wave::before,
.pg-home-about .wave::after {
  display: block;
  position: absolute;
  border-radius: 50% 100%;
  content: "";
}
.pg-home-about .wave::before {
  top: 40%;
  right: -1.5%;
  width: 55%;
  height: 100%;
  background-color: var(--color-white, #fff);
}
.pg-home-about .wave::after {
  top: 60%;
  left: -1.5%;
  width: 55%;
  height: 109%;
  background-color: var(--color-brand-primary);
}

.pg-home-about__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
}

.pg-home-social-expt {
  position: relative;
  margin: 0 calc(50% - 50vw);
  padding: 60px calc(50vw - 50%) 80px;
  background: var(--color-brand-primary);
  color: var(--color-text-inverse, #fff);
}
.pg-home-social-expt .wave {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 2;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100vw - 3%);
  height: 46px;
  padding: var(--space-xs, 20px);
}
.pg-home-social-expt .wave::before,
.pg-home-social-expt .wave::after {
  display: block;
  position: absolute;
  border-radius: 50% 100%;
  content: "";
}
.pg-home-social-expt .wave::before {
  top: 40%;
  right: -1.5%;
  width: 55%;
  height: 100%;
  background-color: var(--color-brand-primary);
}
.pg-home-social-expt .wave::after {
  top: 60%;
  left: -1.5%;
  width: 55%;
  height: 109%;
  background-color: var(--color-white, #fff);
}

.pg-home-social-expt__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
}

.pg-home-bosyu {
  position: relative;
  margin: 0 calc(50% - 50vw);
  padding: 60px calc(50vw - 50%) 80px;
}

.pg-home-bosyu__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
}

.pg-company-ceo__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1023px) {
  .pg-company-ceo__row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

.pg-company-ceo__image {
  width: 300px;
}
@media screen and (max-width: 1023px) {
  .pg-company-ceo__image {
    margin: 0 auto;
  }
}

.pg-company-ceo__data {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 40px;
}
@media screen and (max-width: 1023px) {
  .pg-company-ceo__data {
    margin-top: 16px;
    margin-left: 0;
  }
}

.pg-company-ceo__name {
  font-weight: bold;
  font-size: var(--font-size-2xl);
}
@media screen and (max-width: 1023px) {
  .pg-company-ceo__name {
    text-align: center;
  }
}

.pg-company-ceo__text {
  margin-top: 16px;
}

.wpcf7-radio .wpcf7-list-item {
  margin: 0;
}
.wpcf7-radio label {
  line-height: 1;
}
.wpcf7-radio label span {
  display: inline-block;
  margin: 0 10px 10px 0;
  padding: 8px 15px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
}
.wpcf7-radio label input[type=radio] {
  display: none;
}
.wpcf7-radio label input[type=radio]:checked + span {
  background: #f4a166;
}
.wpcf7-radio label input[type=radio]:checked + input + span {
  padding: 0;
  border: none;
  background: none;
  cursor: default;
}
.wpcf7-radio .wpcf7c-conf + span {
  display: none;
}

body.wp-autoresize.l-content-block,
body.mce-content-body.l-content-block {
  padding-top: 10px !important;
  padding-right: 10px !important;
  padding-left: 10px !important;
}

.u-m-0 {
  margin: 0 !important;
}

.u-mt-0 {
  margin-top: 0 !important;
}

.u-mb-0 {
  margin-bottom: 0 !important;
}

.u-ml-0 {
  margin-left: 0 !important;
}

.u-mr-0 {
  margin-right: 0 !important;
}

.u-mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.u-my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.u-p-0 {
  padding: 0 !important;
}

.u-pt-0 {
  padding-top: 0 !important;
}

.u-pb-0 {
  padding-bottom: 0 !important;
}

.u-pl-0 {
  padding-left: 0 !important;
}

.u-pr-0 {
  padding-right: 0 !important;
}

.u-px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.u-py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.u-m-2xs {
  margin: var(--space-2xs) !important;
}

.u-mt-2xs {
  margin-top: var(--space-2xs) !important;
}

.u-mb-2xs {
  margin-bottom: var(--space-2xs) !important;
}

.u-ml-2xs {
  margin-left: var(--space-2xs) !important;
}

.u-mr-2xs {
  margin-right: var(--space-2xs) !important;
}

.u-mx-2xs {
  margin-right: var(--space-2xs) !important;
  margin-left: var(--space-2xs) !important;
}

.u-my-2xs {
  margin-top: var(--space-2xs) !important;
  margin-bottom: var(--space-2xs) !important;
}

.u-p-2xs {
  padding: var(--space-2xs) !important;
}

.u-pt-2xs {
  padding-top: var(--space-2xs) !important;
}

.u-pb-2xs {
  padding-bottom: var(--space-2xs) !important;
}

.u-pl-2xs {
  padding-left: var(--space-2xs) !important;
}

.u-pr-2xs {
  padding-right: var(--space-2xs) !important;
}

.u-px-2xs {
  padding-right: var(--space-2xs) !important;
  padding-left: var(--space-2xs) !important;
}

.u-py-2xs {
  padding-top: var(--space-2xs) !important;
  padding-bottom: var(--space-2xs) !important;
}

.u-m-xs {
  margin: var(--space-xs) !important;
}

.u-mt-xs {
  margin-top: var(--space-xs) !important;
}

.u-mb-xs {
  margin-bottom: var(--space-xs) !important;
}

.u-ml-xs {
  margin-left: var(--space-xs) !important;
}

.u-mr-xs {
  margin-right: var(--space-xs) !important;
}

.u-mx-xs {
  margin-right: var(--space-xs) !important;
  margin-left: var(--space-xs) !important;
}

.u-my-xs {
  margin-top: var(--space-xs) !important;
  margin-bottom: var(--space-xs) !important;
}

.u-p-xs {
  padding: var(--space-xs) !important;
}

.u-pt-xs {
  padding-top: var(--space-xs) !important;
}

.u-pb-xs {
  padding-bottom: var(--space-xs) !important;
}

.u-pl-xs {
  padding-left: var(--space-xs) !important;
}

.u-pr-xs {
  padding-right: var(--space-xs) !important;
}

.u-px-xs {
  padding-right: var(--space-xs) !important;
  padding-left: var(--space-xs) !important;
}

.u-py-xs {
  padding-top: var(--space-xs) !important;
  padding-bottom: var(--space-xs) !important;
}

.u-m-sm {
  margin: var(--space-sm) !important;
}

.u-mt-sm {
  margin-top: var(--space-sm) !important;
}

.u-mb-sm {
  margin-bottom: var(--space-sm) !important;
}

.u-ml-sm {
  margin-left: var(--space-sm) !important;
}

.u-mr-sm {
  margin-right: var(--space-sm) !important;
}

.u-mx-sm {
  margin-right: var(--space-sm) !important;
  margin-left: var(--space-sm) !important;
}

.u-my-sm {
  margin-top: var(--space-sm) !important;
  margin-bottom: var(--space-sm) !important;
}

.u-p-sm {
  padding: var(--space-sm) !important;
}

.u-pt-sm {
  padding-top: var(--space-sm) !important;
}

.u-pb-sm {
  padding-bottom: var(--space-sm) !important;
}

.u-pl-sm {
  padding-left: var(--space-sm) !important;
}

.u-pr-sm {
  padding-right: var(--space-sm) !important;
}

.u-px-sm {
  padding-right: var(--space-sm) !important;
  padding-left: var(--space-sm) !important;
}

.u-py-sm {
  padding-top: var(--space-sm) !important;
  padding-bottom: var(--space-sm) !important;
}

.u-m-md {
  margin: var(--space-md) !important;
}

.u-mt-md {
  margin-top: var(--space-md) !important;
}

.u-mb-md {
  margin-bottom: var(--space-md) !important;
}

.u-ml-md {
  margin-left: var(--space-md) !important;
}

.u-mr-md {
  margin-right: var(--space-md) !important;
}

.u-mx-md {
  margin-right: var(--space-md) !important;
  margin-left: var(--space-md) !important;
}

.u-my-md {
  margin-top: var(--space-md) !important;
  margin-bottom: var(--space-md) !important;
}

.u-p-md {
  padding: var(--space-md) !important;
}

.u-pt-md {
  padding-top: var(--space-md) !important;
}

.u-pb-md {
  padding-bottom: var(--space-md) !important;
}

.u-pl-md {
  padding-left: var(--space-md) !important;
}

.u-pr-md {
  padding-right: var(--space-md) !important;
}

.u-px-md {
  padding-right: var(--space-md) !important;
  padding-left: var(--space-md) !important;
}

.u-py-md {
  padding-top: var(--space-md) !important;
  padding-bottom: var(--space-md) !important;
}

.u-m-lg {
  margin: var(--space-lg) !important;
}

.u-mt-lg {
  margin-top: var(--space-lg) !important;
}

.u-mb-lg {
  margin-bottom: var(--space-lg) !important;
}

.u-ml-lg {
  margin-left: var(--space-lg) !important;
}

.u-mr-lg {
  margin-right: var(--space-lg) !important;
}

.u-mx-lg {
  margin-right: var(--space-lg) !important;
  margin-left: var(--space-lg) !important;
}

.u-my-lg {
  margin-top: var(--space-lg) !important;
  margin-bottom: var(--space-lg) !important;
}

.u-p-lg {
  padding: var(--space-lg) !important;
}

.u-pt-lg {
  padding-top: var(--space-lg) !important;
}

.u-pb-lg {
  padding-bottom: var(--space-lg) !important;
}

.u-pl-lg {
  padding-left: var(--space-lg) !important;
}

.u-pr-lg {
  padding-right: var(--space-lg) !important;
}

.u-px-lg {
  padding-right: var(--space-lg) !important;
  padding-left: var(--space-lg) !important;
}

.u-py-lg {
  padding-top: var(--space-lg) !important;
  padding-bottom: var(--space-lg) !important;
}

.u-m-xl {
  margin: var(--space-xl) !important;
}

.u-mt-xl {
  margin-top: var(--space-xl) !important;
}

.u-mb-xl {
  margin-bottom: var(--space-xl) !important;
}

.u-ml-xl {
  margin-left: var(--space-xl) !important;
}

.u-mr-xl {
  margin-right: var(--space-xl) !important;
}

.u-mx-xl {
  margin-right: var(--space-xl) !important;
  margin-left: var(--space-xl) !important;
}

.u-my-xl {
  margin-top: var(--space-xl) !important;
  margin-bottom: var(--space-xl) !important;
}

.u-p-xl {
  padding: var(--space-xl) !important;
}

.u-pt-xl {
  padding-top: var(--space-xl) !important;
}

.u-pb-xl {
  padding-bottom: var(--space-xl) !important;
}

.u-pl-xl {
  padding-left: var(--space-xl) !important;
}

.u-pr-xl {
  padding-right: var(--space-xl) !important;
}

.u-px-xl {
  padding-right: var(--space-xl) !important;
  padding-left: var(--space-xl) !important;
}

.u-py-xl {
  padding-top: var(--space-xl) !important;
  padding-bottom: var(--space-xl) !important;
}

.u-m-2xl {
  margin: var(--space-2xl) !important;
}

.u-mt-2xl {
  margin-top: var(--space-2xl) !important;
}

.u-mb-2xl {
  margin-bottom: var(--space-2xl) !important;
}

.u-ml-2xl {
  margin-left: var(--space-2xl) !important;
}

.u-mr-2xl {
  margin-right: var(--space-2xl) !important;
}

.u-mx-2xl {
  margin-right: var(--space-2xl) !important;
  margin-left: var(--space-2xl) !important;
}

.u-my-2xl {
  margin-top: var(--space-2xl) !important;
  margin-bottom: var(--space-2xl) !important;
}

.u-p-2xl {
  padding: var(--space-2xl) !important;
}

.u-pt-2xl {
  padding-top: var(--space-2xl) !important;
}

.u-pb-2xl {
  padding-bottom: var(--space-2xl) !important;
}

.u-pl-2xl {
  padding-left: var(--space-2xl) !important;
}

.u-pr-2xl {
  padding-right: var(--space-2xl) !important;
}

.u-px-2xl {
  padding-right: var(--space-2xl) !important;
  padding-left: var(--space-2xl) !important;
}

.u-py-2xl {
  padding-top: var(--space-2xl) !important;
  padding-bottom: var(--space-2xl) !important;
}

.u-m-3xl {
  margin: var(--space-3xl) !important;
}

.u-mt-3xl {
  margin-top: var(--space-3xl) !important;
}

.u-mb-3xl {
  margin-bottom: var(--space-3xl) !important;
}

.u-ml-3xl {
  margin-left: var(--space-3xl) !important;
}

.u-mr-3xl {
  margin-right: var(--space-3xl) !important;
}

.u-mx-3xl {
  margin-right: var(--space-3xl) !important;
  margin-left: var(--space-3xl) !important;
}

.u-my-3xl {
  margin-top: var(--space-3xl) !important;
  margin-bottom: var(--space-3xl) !important;
}

.u-p-3xl {
  padding: var(--space-3xl) !important;
}

.u-pt-3xl {
  padding-top: var(--space-3xl) !important;
}

.u-pb-3xl {
  padding-bottom: var(--space-3xl) !important;
}

.u-pl-3xl {
  padding-left: var(--space-3xl) !important;
}

.u-pr-3xl {
  padding-right: var(--space-3xl) !important;
}

.u-px-3xl {
  padding-right: var(--space-3xl) !important;
  padding-left: var(--space-3xl) !important;
}

.u-py-3xl {
  padding-top: var(--space-3xl) !important;
  padding-bottom: var(--space-3xl) !important;
}

.u-mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.u-my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.u-d-n {
  display: none !important;
}

.u-d-b {
  display: block !important;
}

.u-d-ib {
  display: inline-block !important;
}

.u-d-i {
  display: inline !important;
}

.u-d-f {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.u-d-rv {
  display: revert !important;
}

@media screen and (max-width: 479px) {
  .u-d-n-xsp {
    display: none !important;
  }
  .u-d-b-xsp {
    display: block !important;
  }
  .u-d-ib-xsp {
    display: inline-block !important;
  }
  .u-d-f-xsp {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-d-rv-xsp {
    display: revert !important;
  }
}
@media screen and (max-width: 767px) {
  .u-d-n-sp {
    display: none !important;
  }
  .u-d-b-sp {
    display: block !important;
  }
  .u-d-ib-sp {
    display: inline-block !important;
  }
  .u-d-f-sp {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-d-rv-sp {
    display: revert !important;
  }
}
@media screen and (max-width: 1023px) {
  .u-d-n-tab {
    display: none !important;
  }
  .u-d-b-tab {
    display: block !important;
  }
  .u-d-ib-tab {
    display: inline-block !important;
  }
  .u-d-f-tab {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-d-rv-tab {
    display: revert !important;
  }
}
@media screen and (max-width: 1279px) {
  .u-d-n-pc {
    display: none !important;
  }
  .u-d-b-pc {
    display: block !important;
  }
  .u-d-ib-pc {
    display: inline-block !important;
  }
  .u-d-f-pc {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-d-rv-pc {
    display: revert !important;
  }
}
@media screen and (max-width: 1439px) {
  .u-d-n-xpc {
    display: none !important;
  }
  .u-d-b-xpc {
    display: block !important;
  }
  .u-d-ib-xpc {
    display: inline-block !important;
  }
  .u-d-f-xpc {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-d-rv-xpc {
    display: revert !important;
  }
}
.u-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
}

.u-maw-base {
  max-width: var(--layout-max-width) !important;
}

.u-maw-full {
  max-width: 100% !important;
}

.u-maw-none {
  max-width: none !important;
}

.u-max-w200 {
  max-width: 200px !important;
}

.u-max-w300 {
  max-width: 300px !important;
}

.u-max-w400 {
  max-width: 400px !important;
}

.u-max-w600 {
  max-width: 600px !important;
}

.u-max-w800 {
  max-width: 800px !important;
}

.u-max-w600 {
  max-width: 600px !important;
}

.u-bgc-white {
  background-color: var(--color-white) !important;
}

.u-bgc-gray-50 {
  background-color: var(--color-gray-50) !important;
}

.u-bgc-gray-100 {
  background-color: var(--color-gray-100) !important;
}

.u-bgc-gray-200 {
  background-color: var(--color-gray-200) !important;
}

.u-bgc-gray-500 {
  background-color: var(--color-gray-500) !important;
}

.u-bgc-gray-900 {
  background-color: var(--color-gray-900) !important;
}

.u-bgc-primary {
  background-color: var(--color-brand-primary) !important;
}

.u-bgc-accent {
  background-color: var(--color-brand-accent) !important;
}

.u-c-base {
  color: var(--color-text-base) !important;
}

.u-c-muted {
  color: var(--color-text-muted) !important;
}

.u-c-white {
  color: var(--color-white) !important;
}

.u-c-primary {
  color: var(--color-brand-primary) !important;
}

.u-c-accent {
  color: var(--color-brand-accent) !important;
}

.u-c-error {
  color: var(--color-status-error) !important;
}

.u-c-link {
  color: var(--color-link) !important;
}

.u-bdrs-xs {
  border-radius: var(--radius-xs) !important;
}

.u-bdrs-sm {
  border-radius: var(--radius-sm) !important;
}

.u-bdrs-md {
  border-radius: var(--radius-md) !important;
}

.u-bdrs-lg {
  border-radius: var(--radius-lg) !important;
}

.u-bdrs-full {
  border-radius: var(--radius-full) !important;
}

.u-bdrs0 {
  border-radius: 0 !important;
}

.u-ta-l {
  text-align: left !important;
}

.u-ta-c {
  text-align: center !important;
}

.u-ta-r {
  text-align: right !important;
}

.u-ta-j {
  text-align: justify !important;
}

@media screen and (max-width: 479px) {
  .u-ta-l-xsp {
    text-align: left !important;
  }
  .u-ta-c-xsp {
    text-align: center !important;
  }
  .u-ta-r-xsp {
    text-align: right !important;
  }
}
@media screen and (max-width: 767px) {
  .u-ta-l-sp {
    text-align: left !important;
  }
  .u-ta-c-sp {
    text-align: center !important;
  }
  .u-ta-r-sp {
    text-align: right !important;
  }
}
@media screen and (max-width: 1023px) {
  .u-ta-l-tab {
    text-align: left !important;
  }
  .u-ta-c-tab {
    text-align: center !important;
  }
  .u-ta-r-tab {
    text-align: right !important;
  }
}
@media screen and (max-width: 1279px) {
  .u-ta-l-pc {
    text-align: left !important;
  }
  .u-ta-c-pc {
    text-align: center !important;
  }
  .u-ta-r-pc {
    text-align: right !important;
  }
}
@media screen and (max-width: 1439px) {
  .u-ta-l-xpc {
    text-align: left !important;
  }
  .u-ta-c-xpc {
    text-align: center !important;
  }
  .u-ta-r-xpc {
    text-align: right !important;
  }
}
[class^=u-bdc-] {
  border-style: solid !important;
  border-width: 1px !important;
}

.u-bdc-base {
  border-color: var(--color-border-base) !important;
}

.u-bdc-gray-200 {
  border-color: var(--color-gray-200) !important;
}

.u-bdc-primary {
  border-color: var(--color-brand-primary) !important;
}

.u-bd-t-1s {
  border-top: 1px solid transparent !important;
}

.u-bd-t-1d {
  border-top: 1px dashed transparent !important;
}

.u-bd-t-2s {
  border-top: 2px solid transparent !important;
}

.u-bd-t-2d {
  border-top: 2px dashed transparent !important;
}

.u-bd-t-4s {
  border-top: 4px solid transparent !important;
}

.u-bd-t-4d {
  border-top: 4px dashed transparent !important;
}

.u-bd-b-1s {
  border-bottom: 1px solid transparent !important;
}

.u-bd-b-1d {
  border-bottom: 1px dashed transparent !important;
}

.u-bd-b-2s {
  border-bottom: 2px solid transparent !important;
}

.u-bd-b-2d {
  border-bottom: 2px dashed transparent !important;
}

.u-bd-b-4s {
  border-bottom: 4px solid transparent !important;
}

.u-bd-b-4d {
  border-bottom: 4px dashed transparent !important;
}

.u-bd-l-1s {
  border-left: 1px solid transparent !important;
}

.u-bd-l-1d {
  border-left: 1px dashed transparent !important;
}

.u-bd-l-2s {
  border-left: 2px solid transparent !important;
}

.u-bd-l-2d {
  border-left: 2px dashed transparent !important;
}

.u-bd-l-4s {
  border-left: 4px solid transparent !important;
}

.u-bd-l-4d {
  border-left: 4px dashed transparent !important;
}

.u-bd-r-1s {
  border-right: 1px solid transparent !important;
}

.u-bd-r-1d {
  border-right: 1px dashed transparent !important;
}

.u-bd-r-2s {
  border-right: 2px solid transparent !important;
}

.u-bd-r-2d {
  border-right: 2px dashed transparent !important;
}

.u-bd-r-4s {
  border-right: 4px solid transparent !important;
}

.u-bd-r-4d {
  border-right: 4px dashed transparent !important;
}

.u-bd-a-1s {
  border: 1px solid transparent !important;
}

.u-bd-a-1d {
  border: 1px dashed transparent !important;
}

.u-bd-a-2s {
  border: 2px solid transparent !important;
}

.u-bd-a-2d {
  border: 2px dashed transparent !important;
}

.u-bd-a-4s {
  border: 4px solid transparent !important;
}

.u-bd-a-4d {
  border: 4px dashed transparent !important;
}

.u-gap-0 {
  --grid-gap: 0px;
  gap: 0px !important;
}

.u-gap-2xs {
  --grid-gap: var(--gap-2xs);
  gap: var(--gap-2xs) !important;
}

.u-gap-xs {
  --grid-gap: var(--gap-xs);
  gap: var(--gap-xs) !important;
}

.u-gap-sm {
  --grid-gap: var(--gap-sm);
  gap: var(--gap-sm) !important;
}

.u-gap-md {
  --grid-gap: var(--gap-md);
  gap: var(--gap-md) !important;
}

.u-gap-lg {
  --grid-gap: var(--gap-lg);
  gap: var(--gap-lg) !important;
}

.u-gap-xl {
  --grid-gap: var(--gap-xl);
  gap: var(--gap-xl) !important;
}

.u-gap-2xl {
  --grid-gap: var(--gap-2xl);
  gap: var(--gap-2xl) !important;
}

.u-gap-3xl {
  --grid-gap: var(--gap-3xl);
  gap: var(--gap-3xl) !important;
}

.u-fz-xs {
  font-size: var(--font-size-) !important;
}

.u-fz-sm {
  font-size: var(--font-size-) !important;
}

.u-fz-md {
  font-size: var(--font-size-) !important;
}

.u-fz-lg {
  font-size: var(--font-size-) !important;
}

.u-fz-xl {
  font-size: var(--font-size-) !important;
}

.u-fz-2xl {
  font-size: var(--font-size-) !important;
}

.u-fz-3xl {
  font-size: var(--font-size-) !important;
}

.u-fz-4xl {
  font-size: var(--font-size-) !important;
}