@charset "UTF-8";
/* style.scss
   FLOCSS structure: settings, tools, base, layout, component, project */
/**
 * uaplus.css version 0.0.1
 */
/**
 * Different box model
 * 
 * We use the traditional box model, where the padding and border 
 * of the element is drawn inside and not outside the specified 
 * width and height. That makes combining relative and absolute 
 * units in properties like <code>inline-size</code> and 
 * <code>block-size</code> easier.
 * 
 * See https://en.wikipedia.org/wiki/CSS_box_model
 */
*,
*::after,
*::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/**
 * Improve focus styles
 *
 * Add spacing between content and its focus outline.
 */
:focus-visible {
  outline-offset: 3px;
}

/**
 * Disable text size adjustment
 * 
 * To improve readability on non-mobile optimized websites, browsers
 * like mobile Safari increase the default font size when you switch
 * a website from portrait to landscape. We don't want that for our 
 * optimized sites.
 *
 * See https://kilianvalkhof.com/2022/css-html/your-css-reset-needs-text-size-adjust-probably/
 */
:where(html) {
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
   -ms-text-size-adjust: none;
       text-size-adjust: none;
}

/**
 * Increase line height
 *
 * Long paragraphs are easier to read if the line height is higher.
 */
:where(html) {
  line-height: 1.5;
}

/**
 * Add scrollbar gutter
 *
 * Prevent the page from “jumping” when switching from a long to a short page.
 *
 */
:where(html) {
  scrollbar-gutter: stable;
}

/**
 * Remove UA styles for h1s nested in sectioning content
 *
 * Nesting h1s in section, articles, etc., shouldn't influence the 
 * styling of the heading since nesting doesn't influence 
 * semantics either.
 * 
 * See https://github.com/whatwg/html/issues/7867#issuecomment-2632395167
 * See https://github.com/whatwg/html/pull/11102
 * See https://html.spec.whatwg.org/#sections-and-headings
 */
:where(h1) {
  font-size: 2em;
  margin-block: 0.67em;
}

/**
 * Improve abbreviations with titles
 * 
 * The abbr element with the title isn't helpful regarding 
 * accessibility because support is inconsistent, and it's only 
 * accessible to some users. Still, it's commonly used. 
 * This rule shows a dotted underline on abbreviations in all 
 * browsers (there's a bug in Safari) and changes the cursor.
 * 
 * See https://adrianroselli.com/2024/01/using-abbr-element-with-title-attribute.html
 */
:where(abbr[title]) {
  cursor: help;
  text-decoration-line: underline;
  text-decoration-style: dotted;
}

/**
 * Optimize mark element in Forced Colors Mode
 *
 * The colors of the mark element don't change in Forced Colors Mode,
 * which can be problematic. Use system colors instead.
 * 
 * See https://adrianroselli.com/2017/12/tweaking-text-level-styles.html#MarkWHCM
 */
@media (forced-colors: active) {
  mark {
    color: HighlightText;
    background-color: Highlight;
  }
}
/**
 * Announce del, ins, and s to screen readers
 * 
 * With the exception of NVDA (2024.4.2), which announces "deletion",
 * none of the common screen readers announces the <s> element.
 * Voice Over on macOS and iOS and Narrator don't announce 
 * <ins> and <del>. Usually, screen readers not announcing text-level
 * semantics is something we just accept, but devs using elements 
 * like <s> without knowing that they may not convey semantics is a 
 * common issue. We announce the start and end of stricken, inserted,
 * and deleted content with pseudo-elements. For languages other 
 * than English, you should provide translations, e.g. :lang(de) 
 * :where(s::before) { content: "Durchgestrichener Text Beginn "; }
 * 
 * See https://adrianroselli.com/2017/12/tweaking-text-level-styles.html
 */
:where(del, ins, s)::before,
:where(del, ins, s)::after {
  clip-path: inset(100%);
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  width: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  content: "test";
}

:where(s)::before {
  content: "stricken text start ";
}

:where(s)::after {
  content: " stricken text end";
}

:where(del)::before {
  content: "deletion start ";
}

:where(del)::after {
  content: " deletion end";
}

:where(ins)::before {
  content: "insertion start ";
}

:where(ins)::after {
  content: " insertion end";
}

/**
 * Avoid overflow caused by embedded content
 * 
 * Ensure that embedded content (audio, video, images, etc.) 
 * doesn't overflow its container.
 */
:where(audio, iframe, img, svg, video) {
  max-block-size: 100%;
  max-inline-size: 100%;
}

/**
 * Prevent fieldsets from causing overflow
 *
 * Reset the default `min-inline-size: min-content` to prevent
 * children from stretching fieldsets
 *
 * See https://github.com/twbs/bootstrap/issues/12359
 * and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
 */
:where(fieldset) {
  min-inline-size: 0;
}

/**
 * Turn labels into block elements
 * 
 * Labels for inputs, selects, and textarea should be block 
 * elements.
 */
:where(label):has(+ :where(textarea, input, select)) {
  display: block;
}

/**
 * Increase the block-size of textareas
 *
 * The default height of textareas is small. We increase it a bit.
 */
:where(textarea:not([rows])) {
  min-block-size: 6em;
}

/**
 * Inherit font styling in form elements
 * 
 * buttons, inputs, selects, and textarea should have the same font
 * family and size as the rest of the page.
 */
:where(button, input, select, textarea) {
  font-family: inherit;
  font-size: inherit;
}

/**
 * Normalize search input styles
 *  
 * Remove the rounded corners of search inputs on macOS and IOS 
 * and normalize the background color
 */
:where([type=search]) {
  -webkit-appearance: textfield;
}

/* iOS only */
@supports (-webkit-touch-callout: none) {
  :where([type=search]) {
    border: 1px solid -apple-system-secondary-label;
    background-color: canvas;
  }
}
/**
 * Maintain direction in some input types
 * 
 * Some input types should remain left-aligned in right-to-left
 * languages,but only if the value isn't empty because the 
 * placeholder should be right-aligned.
 *
 * See https://rtlstyling.com/posts/rtl-styling#form-inputs
 */
:where([type=tel], [type=url], [type=email], [type=number]):not(:-moz-placeholder) {
  direction: ltr;
}
:where([type=tel], [type=url], [type=email], [type=number]):not(:-ms-input-placeholder) {
  direction: ltr;
}
:where([type=tel], [type=url], [type=email], [type=number]):not(:placeholder-shown) {
  direction: ltr;
}

/**
 * Improve table styling
 *  
 * With the default styling, tables are hard to scan. These rules 
 * add padding and collapsed borders.
 */
:where(table) {
  border-collapse: collapse;
  border: 1px solid;
}

:where(th, td) {
  border: 1px solid;
  padding: 0.25em 0.5em;
}

/**
 * Fading dialogs
 *  
 * Add fade in and fade out transitions for the dialog element
 * and backdrops
 */
:where(dialog)::-ms-backdrop {
  background: oklch(0% 0 0deg / 0.3);
}
:where(dialog)::backdrop {
  background: oklch(0% 0 0deg / 0.3);
}

:where(dialog)::-ms-backdrop {
  opacity: 0;
  -ms-transition: opacity 300ms ease-out, display 300ms allow-discrete, overlay 300ms allow-discrete;
  transition: opacity 300ms ease-out, display 300ms allow-discrete, overlay 300ms allow-discrete;
}

:where(dialog),
:where(dialog)::backdrop {
  opacity: 0;
  -webkit-transition: opacity 300ms ease-out, display 300ms allow-discrete, overlay 300ms allow-discrete;
  transition: opacity 300ms ease-out, display 300ms allow-discrete, overlay 300ms allow-discrete;
}

:where(dialog[open])::-ms-backdrop {
  opacity: 1;
}

:where(dialog[open]),
:where(dialog[open])::backdrop {
  opacity: 1;
}

@starting-style {
  :where(dialog[open])::-ms-backdrop {
    opacity: 0;
  }
  :where(dialog[open]),
  :where(dialog[open])::backdrop {
    opacity: 0;
  }
}
/**
 * Increase specificity of [hidden]
 *  
 * Make it harder to accidentally unhide elements with the 
 * [hidden] attribute while still maintaining the until-found 
 * functionality.
 */
[hidden]:not([hidden=until-found]) {
  display: none !important;
}

.example-text {
  font-size: clamp(1.125rem, 0.8846rem + 1.0256vw, 1.5rem);
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  height: auto;
}
html * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  position: relative;
  margin: 0;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #333333;
  background-color: #ffffff;
}

a {
  text-decoration: underline;
  color: #333333;
}
a:hover {
  text-decoration: none;
}

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

::-moz-selection {
  background-color: #447FE0;
  color: #fff;
}

::selection {
  background-color: #447FE0;
  color: #fff;
}

blockquote {
  position: relative;
  padding: 30px 15px 8px 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-style: italic;
  background: #efefef;
  color: #555;
}

blockquote:before {
  display: inline-block;
  position: absolute;
  top: 13px;
  left: 15px;
  content: "“";
  color: #cfcfcf;
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
}

blockquote p {
  padding: 0;
  margin: 10px 0;
  line-height: 1.7;
}

blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

figure {
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  max-width: 100%;
}

pre {
  overflow: auto;
  background: #efefef;
  padding: 1rem;
}

address {
  font-style: normal;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 180%;
  color: #333333;
}
@media (min-width: 769px) {
  address {
    font-size: 1rem;
  }
}

h1, h2, h3, h4 {
  color: #333333;
}

h2 {
  background: #447FE0;
  color: #fff;
  margin-block: 1.25rem;
  font-size: 1.25rem;
  line-height: 130%;
  padding: 1rem;
  border-radius: 0.3125rem;
}
@media (min-width: 769px) {
  h2 {
    padding: 1.25rem;
    margin-block: 1.875rem;
    font-size: 1.75rem;
  }
}
h2 small {
  font-size: 0.75rem;
  line-height: 1.4;
  display: inline-block;
}
@media (min-width: 769px) {
  h2 small {
    font-size: 1rem;
  }
}
h2:has(small) {
  padding-top: 0.625rem;
}

h3 {
  background-color: transparent;
  color: #333333;
  margin-block: 1rem;
  padding: 1rem 0;
  font-size: 1.25rem;
  line-height: 130%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-image: url(../images/line_dashed02.svg);
  background-repeat: repeat-x;
  background-size: 10px 3px;
  background-position: left bottom;
}
@media (min-width: 769px) {
  h3 {
    margin-block: 2rem;
    font-size: 1.5625rem;
  }
  h3 small {
    font-size: 1.125rem;
  }
}

h4 {
  background-color: transparent;
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 130%;
  color: #333333;
}
@media (min-width: 769px) {
  h4 {
    font-size: 1.25rem;
  }
}

p {
  font-style: normal;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 180%;
  color: #333333;
}
@media (min-width: 769px) {
  p {
    font-size: 1rem;
  }
}

ul, ol {
  font-style: normal;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 180%;
  color: #333333;
  list-style: none;
  padding: 0;
}
ul li, ol li {
  position: relative;
}
ul li::before, ol li::before {
  content: "";
  position: absolute;
}
@media (min-width: 769px) {
  ul, ol {
    font-size: 1rem;
  }
}
ul li + li, ol li + li {
  margin-top: 0.625rem;
}

ul li {
  padding-left: 0.875rem;
}
@media (min-width: 769px) {
  ul li {
    padding-left: 1rem;
  }
}
ul li::before {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 100%;
  background-color: #447FE0;
  top: 8.6px;
  left: 0;
}
@media (min-width: 769px) {
  ul li::before {
    top: 10.4px;
  }
}

ol {
  counter-reset: listnum;
}
ol li {
  padding-left: 1.75rem;
  counter-increment: listnum;
}
@media (min-width: 769px) {
  ol li {
    padding-left: 2rem;
  }
}
ol li::before {
  content: counter(listnum) ".";
  display: block;
  color: #447FE0;
  font-size: 1.125rem;
  font-weight: 700;
  left: 0;
}
@media (min-width: 769px) {
  ol li::before {
    font-size: 1.25rem;
  }
}

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

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

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

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

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

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

.d-grid {
  display: grid !important;
}

.d-inline-grid {
  display: inline-grid !important;
}

.d-table {
  display: table !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-table-row {
  display: table-row !important;
}

.d-xs-none {
  display: none !important;
}

.d-xs-inline {
  display: inline !important;
}

.d-xs-block {
  display: block !important;
}

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

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

.d-xs-inline-flex {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

.d-xs-grid {
  display: grid !important;
}

.d-xs-inline-grid {
  display: inline-grid !important;
}

.d-xs-table {
  display: table !important;
}

.d-xs-table-cell {
  display: table-cell !important;
}

.d-xs-table-row {
  display: table-row !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-inline-grid {
    display: inline-grid !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
}
@media (min-width: 769px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-inline-grid {
    display: inline-grid !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
}
@media (min-width: 1024px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-inline-grid {
    display: inline-grid !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
}
@media (min-width: 1440px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-inline-grid {
    display: inline-grid !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
}
@media (min-width: 1920px) {
  .d-xxl-none {
    display: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-inline-grid {
    display: inline-grid !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
}
@media (min-width: 769px) {
  .d-mobile-only {
    display: none !important;
  }
}

.d-desktop-only {
  display: none !important;
}
@media (min-width: 769px) {
  .d-desktop-only {
    display: block !important;
  }
}

.d-tablet-up {
  display: none !important;
}
@media (min-width: 576px) {
  .d-tablet-up {
    display: block !important;
  }
}

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

.l-wrapper {
  overflow: hidden;
  position: relative;
}
.l-wrapper--bg-blue {
  background-color: #DAF3F2;
}

.l-header {
  position: absolute;
  inset: 0;
  height: 220px;
}
.l-header__inner {
  position: relative;
  max-width: 1240px;
  margin-inline: auto;
  padding-inline: 20px;
  z-index: 1;
}
.l-header__inner::before, .l-header__inner::after {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
.l-header__inner::before {
  background-image: url(../images/img_cloud01.svg);
  aspect-ratio: 6/5;
  width: max(100px, 31.25vw);
  height: 200px;
  left: 0;
  top: max(-40px, -5.2083333333vw);
  -webkit-transform: translateX(-20%);
          transform: translateX(-20%);
}
@media (min-width: 769px) {
  .l-header__inner::before {
    width: 240px;
    height: 200px;
    top: 160px;
    -webkit-transform: translateX(-80%);
            transform: translateX(-80%);
  }
}
.l-header__inner::after {
  background-image: url(../images/img_cloud02.svg);
  aspect-ratio: 15/13;
  width: max(100px, 36.4583333333vw);
  height: auto;
  right: 0;
  top: max(-80px, -10.4166666667vw);
  -webkit-transform: translateX(20%);
          transform: translateX(20%);
}
@media (min-width: 769px) {
  .l-header__inner::after {
    width: 300px;
    height: 260px;
    top: -100px;
    -webkit-transform: translateX(80%);
            transform: translateX(80%);
  }
}
.l-header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.l-container {
  max-width: 1240px;
  margin-inline: auto;
  padding-inline: 20px;
}

.l-section {
  width: 100%;
  position: relative;
  padding: 40px 0;
}
@media (min-width: 769px) {
  .l-section {
    padding: 80px 0;
  }
}
.l-section--bg-yellow {
  border-radius: min(8.3333333333vw, 100px);
  background-color: #FFF1AC;
  padding-bottom: 260px;
}
@media (min-width: 769px) {
  .l-section--bg-yellow {
    padding-bottom: 300px;
  }
}
.l-section--bg-yellow:has(.c-bg--chara01--top) {
  padding-bottom: 260px;
}
@media (min-width: 769px) {
  .l-section--bg-yellow:has(.c-bg--chara01--top) {
    padding-bottom: 360px;
  }
}
.l-section--bg-blue {
  margin-top: -200px;
  border-radius: min(8.3333333333vw, 100px);
  background-color: #DAF3F2;
}

.l-content {
  padding-bottom: 16.25rem;
}
.l-content > .l-container {
  position: relative;
  max-width: 1000px;
}
.l-content--equipment01 {
  padding-bottom: 5rem;
}
.l-content--equipment02 {
  background-color: #f5f6f8;
  padding-top: 1.5rem;
  padding-bottom: 16.25rem;
}
.l-content--recruit01 {
  padding-bottom: 5rem;
}
.l-content--recruit02 {
  background-color: #f5f6f8;
  padding-top: 1.5rem;
  padding-bottom: 16.25rem;
}
@media (min-width: 769px) {
  .l-content--recruit02 {
    padding-bottom: 20rem;
  }
}
.l-content--products {
  padding-bottom: 18.75rem;
}
@media (min-width: 769px) {
  .l-content--products {
    padding-bottom: 25rem;
  }
}
.l-content--products > .l-container {
  max-width: 1000px;
}
.l-content--privacy {
  padding-bottom: 16.25rem;
}
@media (min-width: 769px) {
  .l-content--privacy {
    padding-bottom: 20rem;
  }
}
.l-content--privacy > .l-container {
  max-width: 840px;
}

@media (min-width: 769px) {
  .l-split {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 20px;
  }
}
@media (min-width: 769px) {
  .l-split__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 764px;
  }
}

.l-footer {
  position: relative;
  background-color: #fff;
}
@media (min-width: 769px) {
  .l-footer {
    margin-top: -100px;
  }
}
.l-footer::before {
  content: "";
  width: 100%;
  height: min(21.3333333333vw, 256px);
  display: block;
  background-image: url(../images/l-footer__bg01.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center bottom;
}
.l-footer__inner {
  background-color: #FFF1AC;
  padding: 20px 0 15px;
  text-align: center;
  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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}
@media (min-width: 769px) {
  .l-footer__inner {
    gap: 60px;
    padding: 60px 0 30px;
  }
}
.l-footer__inner small {
  font-style: normal;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 0.7058823529;
  text-align: center;
  color: #333333;
}

.c-logo {
  display: block;
  font-weight: 700;
  font-size: clamp(1rem, 0.6818rem + 2.4242vw, 2.5rem);
  line-height: 120%;
  color: #333333;
  text-align: left;
  text-decoration: none;
}
.c-logo a {
  text-decoration: none;
}
@media (min-width: 1024px) {
  .c-logo br {
    display: none;
  }
}
@media (min-width: 769px) {
  .c-logo {
    margin-top: 50px;
    margin-bottom: 30px;
  }
}

.c-logo--bland {
  display: block;
  font-weight: 700;
  color: #333333;
  line-height: 0;
  display: none;
}
.c-logo--bland a {
  line-height: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(1rem, 0.6818rem + 2.4242vw, 2.5rem);
  line-height: 120%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 769px) {
  .c-logo--bland {
    display: block;
    text-align: center;
    margin-top: 50px;
    margin-bottom: 30px;
    width: 100%;
    max-width: 90px;
  }
}

:root {
  --drawer-width: 300px; /* ドロワー幅 */
  --drawer-z: 1100;
  --scrim-z: 1090;
  --transition-ms: 240ms; /* 開閉速度 */
  --bp-desktop: 1024px; /* PC時はそもそもドロワーを使わない想定ならJS側で解除可 */
}

/* トグルボタン（お好みで） */
.c-drawer__btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
  position: fixed;
  top: 12px;
  right: 0; /* 画面右端に貼り付け */
  -webkit-transform: translateX(0);
          transform: translateX(0); /* 閉時：右端 */
  -webkit-transition: -webkit-transform var(--transition-ms) ease;
  transition: -webkit-transform var(--transition-ms) ease;
  transition: transform var(--transition-ms) ease;
  transition: transform var(--transition-ms) ease, -webkit-transform var(--transition-ms) ease;
  z-index: calc(var(--drawer-z) + 1); /* スクラムより前に */
  display: inline-flex;
  align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 44px;
  height: 44px; /* タップしやすいサイズ */
  border: 0;
  background: #447FE0;
  -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 8px rgba(0, 0, 0, 0.15);
  border-radius: 8px 0 0 8px; /* 右端に馴染む形 */
  cursor: pointer;
}
@media (min-width: 769px) {
  .c-drawer__btn {
    display: none;
  }
}
@media (min-width: 769px) {
  .c-drawer__btn {
    opacity: 0;
    pointer-events: none;
  }
}

.c-drawer__icon {
  position: relative;
  width: 20px;
  height: 14px;
  cursor: pointer;
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-drawer__icon span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
}
.c-drawer__icon span {
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-drawer__icon span:nth-of-type(1) {
  top: 0;
}
.c-drawer__icon span:nth-of-type(2) {
  top: 6px;
}
.c-drawer__icon span:nth-of-type(3) {
  bottom: 0;
}
.c-drawer__icon span:nth-of-type(1) {
  -webkit-animation: btn07-bar01 0.75s forwards;
  animation: btn07-bar01 0.75s forwards;
}
.c-drawer__icon span:nth-of-type(2) {
  -webkit-transition: all 0.25s 0.25s;
  transition: all 0.25s 0.25s;
  opacity: 1;
}
.c-drawer__icon span:nth-of-type(3) {
  -webkit-animation: btn07-bar03 0.75s forwards;
  animation: btn07-bar03 0.75s forwards;
}

.c-drawer {
  position: fixed;
  inset: 0 0 0 auto; /* 右基準に変更 */
  width: var(--drawer-width);
  -webkit-transform: translateX(100%);
          transform: translateX(100%); /* 初期状態は右に隠す */
  -webkit-transition: -webkit-transform var(--transition-ms) ease;
  transition: -webkit-transform var(--transition-ms) ease;
  transition: transform var(--transition-ms) ease;
  transition: transform var(--transition-ms) ease, -webkit-transform var(--transition-ms) ease;
  background: #447FE0;
  z-index: var(--drawer-z);
  will-change: transform;
  -webkit-box-shadow: -2px 0 16px rgba(0, 0, 0, 0.2);
          box-shadow: -2px 0 16px rgba(0, 0, 0, 0.2);
}

.c-drawer[aria-hidden=false] {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.c-drawer__panel {
  height: 100%;
  overflow: auto;
  padding: 16px;
}

.c-drawer__close {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  background: transparent;
  font-size: 1.125rem;
  line-height: 1;
}

.c-drawer__menu {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}

.c-drawer__menu a {
  color: #fff;
  display: block;
  padding: 12px 8px;
  text-decoration: none;
}

.c-drawer__scrim {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.36);
  opacity: 0;
  -webkit-transition: opacity var(--transition-ms) ease;
  transition: opacity var(--transition-ms) ease;
  z-index: var(--scrim-z);
}

.c-drawer__scrim[aria-hidden=false] {
  opacity: 1;
}

.c-drawer__scrim[hidden] {
  display: none;
}

/* アニメーションを好まない設定に配慮 */
@media (prefers-reduced-motion: reduce) {
  .c-drawer, .c-drawer__scrim {
    -webkit-transition: none;
    transition: none;
  }
}
/* PCでは常時水平ナビにするなら、以下のように上書きしてもOK
@media (min-width: var(--bp-desktop)) {
  .c-drawer, .c-drawer__scrim { display:none !important; }
}
*/
/* “外側左上にくっつく”トグルボタン */
/* ドロワーが開いたら、ボタンもドロワー幅ぶん左へ移動 */
.c-drawer[aria-hidden=false] ~ .c-drawer__btn {
  -webkit-transform: translateX(calc(-1 * var(--drawer-width)));
          transform: translateX(calc(-1 * var(--drawer-width)));
}
.c-drawer[aria-hidden=false] ~ .c-drawer__btn .c-drawer__icon span:nth-of-type(1) {
  -webkit-animation: active-btn07-bar01 0.75s forwards;
  animation: active-btn07-bar01 0.75s forwards;
}
.c-drawer[aria-hidden=false] ~ .c-drawer__btn .c-drawer__icon span:nth-of-type(2) {
  opacity: 0;
}
.c-drawer[aria-hidden=false] ~ .c-drawer__btn .c-drawer__icon span:nth-of-type(3) {
  -webkit-animation: active-btn07-bar03 0.75s forwards;
  animation: active-btn07-bar03 0.75s forwards;
}

@-webkit-keyframes btn07-bar01 {
  0% {
    -webkit-transform: translateY(6px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes btn07-bar01 {
  0% {
    -webkit-transform: translateY(6px) rotate(45deg);
            transform: translateY(6px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
            transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes btn07-bar03 {
  0% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes btn07-bar03 {
  0% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
            transform: translateY(-6px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
            transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes active-btn07-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(6px) rotate(45deg);
  }
}
@keyframes active-btn07-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
            transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(6px) rotate(45deg);
            transform: translateY(6px) rotate(45deg);
  }
}
@-webkit-keyframes active-btn07-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
  }
}
@keyframes active-btn07-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
            transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
            transform: translateY(-6px) rotate(-45deg);
  }
}
.c-breadcrumb {
  position: relative;
  z-index: 2;
}
.c-breadcrumb__list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.75rem 2rem;
  margin: 0;
  padding: 0;
}
.c-breadcrumb li {
  font-weight: 400;
  font-size: 0.875rem;
  position: relative;
  padding: 0;
  font-weight: 700;
  line-height: 100%;
  color: #8E8E93;
}
@media (min-width: 769px) {
  .c-breadcrumb li {
    font-size: 0.75rem;
  }
}
.c-breadcrumb li + li {
  margin-top: 0;
}
.c-breadcrumb li::before {
  content: none;
}
.c-breadcrumb li:not(:first-child)::before {
  content: "";
  width: 6px;
  height: 17px;
  position: absolute;
  left: -19px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_arrow02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-breadcrumb a {
  color: #858585;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.c-breadcrumb a:hover {
  text-decoration: none;
}

.c-text-en {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

.c-text--lead {
  font-weight: 500;
  font-size: 1.5rem;
  font-size: clamp(1.125rem, 0.8846rem + 1.0256vw, 1.5rem);
  line-height: 1.5;
}

.c-text--company {
  font-weight: 700;
  font-size: 2rem;
  font-size: clamp(1.5rem, 1.1795rem + 1.3675vw, 2rem);
  line-height: 1.1875;
  text-align: center;
}

.c-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem 3rem;
  margin: 0 auto 4rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 769px) {
  .c-card {
    width: auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin: 0 0 5.5rem;
  }
}
@media (min-width: 769px) {
  .c-card.--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media (min-width: 769px) {
  .c-card.--reverse .c-card__image {
    text-align: left;
  }
}
@media (min-width: 769px) {
  .c-card.--reverse .c-card__inner {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 0 0 auto;
  }
}
@media (min-width: 769px) {
  .c-card__image {
    width: 50%;
    text-align: right;
  }
}
@media (min-width: 769px) {
  .c-card__body {
    width: 50%;
  }
}
.c-card__inner {
  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;
}
@media (min-width: 769px) {
  .c-card__inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.c-card__title {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.c-card__title-wrap {
  font-weight: 500;
  font-size: 2rem;
  line-height: 1;
  color: #447FE0;
}
.c-card__title-wrap span {
  margin-top: 0.875rem;
  display: block;
  font-size: 1rem;
  line-height: 1;
}
.c-card__text {
  margin-top: 1.125rem;
  margin-bottom: 1.5rem;
  font-size: 1.625rem;
  font-weight: 400;
  line-height: 1.5;
  color: #447FE0;
}
@media (min-width: 769px) {
  .c-card__text {
    margin-top: 1.25rem;
    margin-bottom: 2.5rem;
    font-size: 2rem;
  }
}

.c-card__image {
  opacity: 0;
  -webkit-transform: translateX(-10%);
          transform: translateX(-10%);
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.c-card__body {
  opacity: 0;
  -webkit-transform: translateX(10%);
          transform: translateX(10%);
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.c-card.js-view .c-card__image {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.c-card.js-view .c-card__body {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.c-btn {
  text-decoration: none;
  cursor: pointer;
  color: #fff;
  display: inline-block;
  min-width: 300px;
  text-align: center;
  font-size: 1rem;
  font-weight: bold;
  background: transparent;
  padding: 16px 48px 16px 24px;
  border: 3px solid #447FE0;
  background: #447FE0;
  border-radius: 2.15625rem;
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
@media (min-width: 769px) {
  .c-btn {
    padding: 18px 64px 18px 30px;
    font-size: 1.125rem;
  }
}
.c-btn::after {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 100%;
  background-color: #fff;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_arrow01--primary.svg);
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .c-btn::after {
    right: 20px;
  }
}
.c-btn:hover {
  color: #447FE0;
  background-color: #fff;
}
.c-btn:hover::after {
  background-color: #447FE0;
  background-image: url(../images/icon_arrow01--white.svg);
}
.c-btn--window::after {
  background-image: url(../images/icon_external02--blue.svg);
}
.c-btn--window:hover::after {
  background-image: url(../images/icon_external02--white.svg);
}
.c-btn--doc::after {
  background-image: url(../images/icon_doc01--blue.svg);
  background-size: 20px auto;
}
.c-btn--doc:hover::after {
  background-image: url(../images/icon_doc01--white.svg);
}
.c-btn--excel::after {
  background-image: url(../images/icon_excel01--blue.svg);
  background-size: 20px auto;
}
.c-btn--excel:hover::after {
  background-image: url(../images/icon_excel01--white.svg);
}
.c-btn--pdf::after {
  background-image: url(../images/icon_pdf01--blue.svg);
  background-size: 20px auto;
}
.c-btn--pdf:hover::after {
  background-image: url(../images/icon_pdf01--white.svg);
}
.c-btn--secondary, .c-btn--yellow {
  border: 3px solid #FFC311;
  background: #FFC311;
}
.c-btn--secondary::after, .c-btn--yellow::after {
  background-color: #fff;
  background-image: url(../images/icon_arrow01--secondary.svg);
}
.c-btn--secondary:hover, .c-btn--yellow:hover {
  color: #FFC311;
  background-color: #fff;
}
.c-btn--secondary:hover::after, .c-btn--yellow:hover::after {
  background-color: #FFC311;
  background-image: url(../images/icon_arrow01--white.svg);
}
.c-btn--tertiary, .c-btn--green {
  border: 3px solid #4AC77C;
  background: #4AC77C;
}
.c-btn--tertiary::after, .c-btn--green::after {
  background-color: #fff;
  background-image: url(../images/icon_arrow01--tertiary.svg);
}
.c-btn--tertiary:hover, .c-btn--green:hover {
  color: #4AC77C;
  background-color: #fff;
}
.c-btn--tertiary:hover::after, .c-btn--green:hover::after {
  background-color: #4AC77C;
  background-image: url(../images/icon_arrow01--white.svg);
}
.c-btn--purple {
  border: 3px solid #7C6FC5;
  background: #7C6FC5;
}
.c-btn--purple::after {
  background-color: #fff;
  background-image: url(../images/icon_arrow01--purple.svg);
}
.c-btn--purple:hover {
  color: #7C6FC5;
  background-color: #fff;
}
.c-btn--purple:hover::after {
  background-color: #7C6FC5;
  background-image: url(../images/icon_arrow01--white.svg);
}
.c-btn--outline {
  background: #FFFFFF;
  -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  border-color: #fff;
  color: #333333;
  text-align: left;
  padding-left: 20px;
}
@media (min-width: 769px) {
  .c-btn--outline {
    border-radius: 20px;
    font-size: 1.25rem;
    padding-left: 50px;
  }
}
.c-btn--outline::after {
  right: 20px;
  background-color: #fff;
  background-image: url(../images/icon_external01.svg);
  background-size: 48px auto;
}
@media (min-width: 769px) {
  .c-btn--outline::after {
    right: 40px;
  }
}
.c-btn--outline:hover {
  border-color: #447FE0;
}
.c-btn--outline:hover::after {
  background-color: inherit;
  background-image: url(../images/icon_external01--blue.svg);
}
.c-btn--pamphlet {
  padding: 16px 0 16px 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  border-radius: 10px;
}
@media (min-width: 769px) {
  .c-btn--pamphlet {
    border-radius: 20px;
    padding: 18px 0 18px 70px;
  }
}
.c-btn--pamphlet::before {
  content: "";
  position: absolute;
  width: 26px;
  height: 31px;
  left: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_pamphlet01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .c-btn--pamphlet::before {
    left: 30px;
  }
}
.c-btn--pamphlet:hover::before {
  background-image: url(../images/icon_pamphlet01--blue.svg);
}
.c-btn--video {
  padding: 16px 0 16px 20px;
  text-align: left;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
}
@media (min-width: 769px) {
  .c-btn--video {
    border-radius: 20px;
    padding: 18px 0 18px 45px;
  }
}
.c-btn--video::before {
  content: "";
  width: 35px;
  height: 27px;
  background-image: url(../images/icon_video01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.c-btn--video:hover::before {
  background-image: url(../images/icon_video01--blue.svg);
}
.c-btn--tel {
  padding: 16px 0;
  text-align: left;
  border-radius: 10px;
  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;
}
@media (min-width: 769px) {
  .c-btn--tel {
    border-radius: 20px;
    padding: 18px 0;
  }
}
.c-btn--tel::after {
  content: none;
}
.c-btn--tel .title {
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 130%;
  margin-bottom: 5px;
}
.c-btn--tel .num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
  font-size: 2.125rem;
  line-height: 1;
  gap: 5px;
  margin-bottom: 8px;
}
.c-btn--tel .num::before {
  content: "";
  width: 23px;
  height: 25px;
  background-image: url(../images/icon_tel01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.c-btn--tel .note {
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 130%;
}
.c-btn--tel:hover .num::before {
  background-image: url(../images/icon_tel01--blue.svg);
}
.c-btn--local {
  min-width: 0;
  padding: 6px 48px 7px 20px;
  font-size: 0.875rem;
}
@media (min-width: 769px) {
  .c-btn--local {
    padding: 6px 54px 7px 20px;
    font-size: 1.125rem;
  }
}
.c-btn--local::after {
  right: 6px;
  width: 1.5rem;
  height: 1.5rem;
  background-image: url(../images/icon_arrow05--blue.svg);
  background-size: 12px auto;
}
@media (min-width: 769px) {
  .c-btn--local::after {
    right: 10px;
    width: 1.75rem;
    height: 1.75rem;
  }
}
.c-btn--local:hover::after {
  background-image: url(../images/icon_arrow05--white.svg);
}

.c-btn-list {
  margin: 0 auto;
  list-style: none;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
}
.c-btn-list + .c-btn-list {
  margin-top: 1rem;
}
.c-btn-list li + li {
  margin-top: 0;
}
.c-btn-list li::before {
  content: none;
}

.c-bg--chara01 {
  position: relative;
}
.c-bg--chara01::before {
  content: "";
  position: absolute;
  display: block;
  width: 220px;
  height: 220px;
  right: 20px;
  top: -140px;
  background-image: url(../images/chara_illust_f.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-bg--chara01 .c-heading {
  position: relative;
  z-index: 3;
}
@media (min-width: 769px) {
  .c-bg--chara01--def::before {
    width: 280px;
    height: 280px;
    right: auto;
    left: 0;
    top: auto;
    bottom: -60px;
  }
}
@media (min-width: 769px) {
  .c-bg--chara01--top::before {
    width: 260px;
    height: 260px;
    top: -260px;
  }
}
.c-bg--chara02 {
  position: relative;
}
.c-bg--chara02::before {
  content: "";
  position: absolute;
  display: block;
  width: 220px;
  height: 220px;
  right: 20px;
  top: -140px;
  background-image: url(../images/chara_illust_e.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-bg--chara02 .c-heading {
  position: relative;
  z-index: 3;
}
@media (min-width: 769px) {
  .c-bg--chara02--def::before {
    width: 300px;
    height: 300px;
    right: auto;
    left: 0;
    top: auto;
    bottom: -70px;
  }
}
@media (min-width: 769px) {
  .c-bg--chara02--top::before {
    width: 280px;
    height: 280px;
    top: -250px;
  }
}

.c-bg--chara01--bottom-top .p-updates__list {
  margin-bottom: 110px;
}

.c-date {
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 100%;
  color: #8E8E93;
}
@media (min-width: 769px) {
  .c-date {
    font-size: 1.125rem;
  }
}

.c-footer-copy {
  font-weight: 700;
  font-size: clamp(1.5rem, 1.0455rem + 1.9394vw, 2.5rem);
  line-height: 120%;
  text-align: center;
  color: #333333;
  margin: 0;
}

.c-pagetop {
  display: inline-block;
  font-family: "Roboto";
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.2857142857;
  border-bottom: 1px solid #515151;
  color: #515151;
  position: absolute;
  padding: 0.625rem 0 0.25rem;
}

:root {
  --category-color: #000;
}

.c-news-item {
  background: #FFFFFF;
  -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
  border-radius: 8px;
  padding: 1rem 1.25rem;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.c-news-item:hover {
  -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4);
}
@media (min-width: 769px) {
  .c-news-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1.875rem;
  }
}
.c-news-item__header {
  margin-bottom: 0.625rem;
}
@media (min-width: 769px) {
  .c-news-item__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 1rem;
  }
}
.c-news-item__date {
  font-size: 1rem;
  margin-right: 0.625rem;
  line-height: 100%;
  font-weight: 500;
  color: #333333;
  display: inline-block;
}
@media (min-width: 769px) {
  .c-news-item__date {
    font-size: 1.25rem;
    margin-right: 0;
  }
}
.c-news-item__category {
  background-color: var(--category-color);
  color: #fff;
  width: 6.875rem;
  height: 1.75rem;
  border-radius: 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.c-news-item__category:hover {
  opacity: 0.7;
}
@media (min-width: 769px) {
  .c-news-item__category {
    width: 8rem;
    height: 2rem;
    font-size: 0.875rem;
  }
}
.c-news-item__title {
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.6;
  color: #447FE0;
  margin-bottom: 0.375rem;
}
.c-news-item__title a {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.c-news-item__title a:hover {
  color: #FFC311;
}
.c-news-item__summary {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  color: #333333;
}

.c-list--pdf {
  list-style: none;
}
.c-list--pdf li {
  padding-left: 2.25rem;
  position: relative;
  font-weight: 700;
  color: #333333;
}
.c-list--pdf li::before {
  content: "";
  background-color: transparent;
  border-radius: 0;
  width: 2rem;
  height: 2rem;
  position: absolute;
  left: 0;
  top: 0;
  background-image: url(../images/icon_pdf01--blue.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
}

.c-heading {
  background-color: inherit;
  background-image: none;
  padding: 0;
  margin: 0;
  font-weight: 700;
  font-size: clamp(1.5rem, 0.8182rem + 2.9091vw, 3rem);
  line-height: 130%;
  color: #333333;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 1.25rem;
}
.c-heading--xs {
  font-size: clamp(1.25rem, 1.0227rem + 0.9697vw, 1.75rem);
}
.c-heading--sm {
  font-size: clamp(1.25rem, 0.7955rem + 1.9394vw, 2.25rem);
}
.c-heading--dashed {
  background-image: url(../images/line_dashed02.svg);
  background-repeat: repeat-x;
  background-size: auto 3px;
  background-position: left bottom;
  padding-bottom: 0.75rem;
}
.c-heading--center {
  margin: 0 auto;
}
.c-heading--bg-blue {
  color: #fff;
  background-color: #447FE0;
  border-radius: 3px;
  padding: 0.2em 0.5em;
}
.c-heading--blue {
  color: #447FE0;
}

.c-heading--h2 {
  background: #447FE0;
  background-image: none;
  color: #fff;
  margin-block: 1.25rem;
  font-size: 1.25rem;
  line-height: 130%;
  padding: 1rem;
  border-radius: 0.3125rem;
  width: auto;
}
@media (min-width: 769px) {
  .c-heading--h2 {
    padding: 1.25rem;
    margin-block: 1.875rem;
    font-size: 1.75rem;
  }
}

.c-heading--h3 {
  background-color: transparent;
  color: #333333;
  margin-block: 1rem;
  padding: 1rem 0;
  font-size: 1.25rem;
  line-height: 130%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-image: url(../images/line_dashed02.svg);
  background-repeat: repeat-x;
  background-size: 10px 3px;
  background-position: left bottom;
}
@media (min-width: 769px) {
  .c-heading--h3 {
    margin-block: 2rem;
    font-size: 1.5625rem;
  }
  .c-heading--h3 small {
    font-size: 1.125rem;
  }
}
.c-heading--h3.c-heading--blue {
  color: #447FE0;
}

.c-heading--h4 {
  background-color: transparent;
  padding: 0;
  width: auto;
  background-image: none;
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 130%;
  color: #333333;
}
@media (min-width: 769px) {
  .c-heading--h4 {
    font-size: 1.25rem;
  }
}
.c-heading--h4.c-heading--blue {
  color: #447FE0;
}

.c-map-container {
  position: relative;
}
.c-map-container iframe {
  width: 100%;
}

.c-hr01,
hr {
  border: none;
  border-bottom: 1px solid #dedede;
  margin-block: 3rem;
}

.c-hr02 {
  height: 3px;
  border: none;
  background-image: url(../images/line_dashed02.svg);
  background-repeat: repeat-x;
  background-size: contain;
  background-position: center;
}

table {
  border-color: #fff;
  border-collapse: collapse;
  width: 100%;
  margin-block: 2rem;
}

table thead th {
  background-color: #447FE0;
  text-align: center;
  color: #fff;
  border: solid 2px #fff;
}

table thead th a {
  color: #fff;
}

table th, table td {
  border: solid 2px #fff;
  word-break: break-all;
  padding: 2px 10px;
}
@media (min-width: 769px) {
  table th, table td {
    padding: 1rem;
  }
}

td {
  background: rgba(68, 127, 224, 0.1);
  font-weight: 500;
  font-size: 0.875rem;
}
@media (min-width: 769px) {
  td {
    font-size: 1.125rem;
  }
}

th {
  background-color: #447FE0;
  font-size: 0.875rem;
}
@media (min-width: 769px) {
  th {
    font-size: 1.125rem;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.table-responsive > .table-bordered {
  border: 0;
}

.text-nowrap {
  white-space: nowrap !important;
}

a.window,
.window a {
  display: inline-block;
  padding-right: 2rem;
  background-image: url(../images/icon_external02--blue.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 1.25rem;
}

a.doc,
.doc a {
  display: inline-block;
  padding-right: 2rem;
  background-image: url(../images/icon_doc01--blue.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
}

a.excel,
.excel a {
  display: inline-block;
  padding-right: 2rem;
  background-image: url(../images/icon_excel01--blue.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
}

a.pdf,
.pdf a {
  display: inline-block;
  padding-right: 2rem;
  background-image: url(../images/icon_pdf01--blue.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
}

.c-panel {
  background-color: #efefef;
  padding: 1rem;
  border-radius: 0.375rem;
}
@media (min-width: 769px) {
  .c-panel {
    padding: 1.5rem;
    border-radius: 0.625rem;
  }
}
.c-panel > :first-child {
  margin-top: 0;
}
.c-panel--yellow {
  background-color: #FFF1AC;
  padding: 1rem;
  border-radius: 0.375rem;
}
@media (min-width: 769px) {
  .c-panel--yellow {
    padding: 1.5rem;
    border-radius: 0.625rem;
  }
}
.c-panel--yellow > :first-child {
  margin-top: 0;
}
.c-panel--blue {
  background-color: #DAF3F2;
  padding: 1rem;
  border-radius: 0.375rem;
}
@media (min-width: 769px) {
  .c-panel--blue {
    padding: 1.5rem;
    border-radius: 0.625rem;
  }
}
.c-panel--blue > :first-child {
  margin-top: 0;
}

:root {
  --acc-bg:#fff;
  --acc-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  --acc-radius-sp: 14px;
  --acc-radius-pc: 20px;
  --text: #333333;
  --muted:#6b7280;
  --panel:#F4F4F4;
}

/* 本体カード */
.c-accordion {
  background: var(--acc-bg);
  border-radius: var(--acc-radius-sp);
  -webkit-box-shadow: var(--acc-shadow);
          box-shadow: var(--acc-shadow);
  overflow: hidden;
  /* summary行 */
  /* パネル（初期は閉） */
}
@media (min-width: 769px) {
  .c-accordion {
    border-radius: var(--acc-radius-pc);
  }
}
.c-accordion__summary {
  display: block;
  position: relative;
  padding: 1.25rem 3.375rem 1.25rem 1.25rem;
  font-weight: 700;
  color: var(--text);
  cursor: pointer;
  list-style: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 0.875rem;
}
@media (min-width: 769px) {
  .c-accordion__summary {
    font-size: 1.125rem;
    padding: 1.875rem 4.25rem 1.875rem 1.875rem;
  }
}
.c-accordion__summary::-webkit-details-marker {
  display: none;
}
.c-accordion__summary:focus {
  outline: none;
}
.c-accordion__summary:focus-visible {
  -webkit-box-shadow: 0 0 0 3px rgba(71, 125, 230, 0.35) inset;
          box-shadow: 0 0 0 3px rgba(71, 125, 230, 0.35) inset;
  border-radius: 8px;
}
.c-accordion__summary::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 9px;
  right: 1.25rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_arrow04.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
@media (min-width: 769px) {
  .c-accordion__summary::after {
    right: 1.875rem;
  }
}
.c-accordion__summary .c-date {
  display: block;
  margin-bottom: 0.4375rem;
}
.c-accordion[open] .c-accordion__summary::after {
  -webkit-transform: translateY(-50%) scale(1, -1);
          transform: translateY(-50%) scale(1, -1);
}
.c-accordion__body {
  overflow: hidden;
  height: 0;
  opacity: 0;
  padding: 0 20px;
  -webkit-transition: height 0.34s ease, opacity 0.24s ease, padding 0.34s ease;
  transition: height 0.34s ease, opacity 0.24s ease, padding 0.34s ease;
}
@media (min-width: 769px) {
  .c-accordion__body {
    padding: 0 30px;
  }
}
.c-accordion__inner {
  position: relative;
  background: var(--panel);
  border-radius: 0.625rem;
  padding: 0.375rem 1.25rem;
  margin: 0 0 14px;
  line-height: 1.9;
  color: var(--text);
}
@media (min-width: 769px) {
  .c-accordion__inner {
    margin: 0 0 24px;
    border-radius: 0.9375rem;
    padding: 0.625rem 1.875rem;
  }
}
.c-accordion__inner p {
  font-size: 0.875rem;
}
@media (min-width: 769px) {
  .c-accordion__inner p {
    font-size: 1.125rem;
  }
}
.c-accordion.is-open .c-accordion__body {
  opacity: 1;
  padding: 0 20px 6px;
}
@media (min-width: 769px) {
  .c-accordion.is-open .c-accordion__body {
    opacity: 1;
    padding: 0 30px 12px;
  }
}
.c-accordion__icon {
  position: absolute;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: top;
      -ms-flex-align: top;
          align-items: top;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.875rem;
  height: auto;
  font-style: normal;
  font-weight: 700;
  font-size: 1.25rem;
  border-radius: 100%;
  line-height: 1;
  left: 1rem;
  top: 1rem;
}
@media (min-width: 769px) {
  .c-accordion__icon {
    width: 3.125rem;
    font-size: 1.875rem;
    left: 1.875rem;
    top: 1.125rem;
  }
}
.c-accordion__icon--q {
  background-color: #447FE0;
  color: #fff;
  padding-top: 0.25rem;
}
@media (min-width: 769px) {
  .c-accordion__icon--q {
    padding-top: 0.5rem;
  }
}
.c-accordion__icon--a {
  border: solid 2px #447FE0;
  color: #447FE0;
  padding-top: 0.125rem;
}
@media (min-width: 769px) {
  .c-accordion__icon--a {
    border: solid 3px #447FE0;
    padding-top: 0.3125rem;
  }
}

.c-accordion .c-date {
  color: var(--muted);
  font-size: 0.95rem;
  white-space: nowrap;
  margin-right: 8px;
}

@media (prefers-reduced-motion: reduce) {
  .c-accordion__summary::after,
  .c-accordion__body {
    -webkit-transition: none;
    transition: none;
  }
}
.c-accordion--qa .c-accordion__summary {
  padding-left: 60px;
}
@media (min-width: 769px) {
  .c-accordion--qa .c-accordion__summary {
    padding-left: 100px;
  }
}
.c-accordion--qa .c-accordion__inner {
  padding-left: 60px;
}
@media (min-width: 769px) {
  .c-accordion--qa .c-accordion__inner {
    padding-left: 100px;
  }
}

.p-gnav {
  display: none;
}
@media (min-width: 769px) {
  .p-gnav {
    display: block;
    background-color: #fff;
    height: 90px;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
    border-radius: 999px;
  }
}
.p-gnav__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0;
  height: 100%;
}
.p-gnav__list li {
  position: relative;
  width: 100%;
  height: 100%;
  padding: inherit;
}
.p-gnav__list li + li {
  margin-top: inherit;
}
.p-gnav__list li::before {
  content: none;
}
.p-gnav__list li:not(:last-child)::after {
  content: "";
  width: 2px;
  height: calc(100% - 20px);
  display: block;
  position: absolute;
  background-image: url(../images/line_dashed01.svg);
  background-repeat: repeat-y;
  background-size: contain;
  background-position: left top;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-gnav__list li a {
  text-decoration: none;
  height: 100%;
  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;
  text-align: center;
  margin: 0;
  padding: 0;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 130%;
  color: #333333;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.p-gnav__list li a:hover {
  color: #447FE0;
}

.p-gnav-sp {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  opacity: 0;
  z-index: 90;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(#f0f8ff), color-stop(#e6f3ff), to(#cce7ff));
  background: linear-gradient(180deg, #ffffff, #f0f8ff, #e6f3ff, #cce7ff);
  visibility: hidden;
  -webkit-transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@media (min-width: 769px) {
  .p-gnav-sp {
    display: none;
  }
}
.p-gnav-sp.is-active {
  opacity: 1;
  visibility: visible;
}
.p-gnav-sp__content {
  padding-top: 80px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.26);
}
.p-gnav-sp__list {
  list-style: none;
  font-weight: 500;
  font-size: 0.9375rem;
  letter-spacing: 0.09em;
  line-height: 2.6666666667;
  color: #447FE0;
  padding: 0;
  margin: 0;
}
.p-gnav-sp__list li {
  -webkit-transform: translateX(50px);
          transform: translateX(50px);
  opacity: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.p-gnav-sp__list li a {
  display: block;
  padding: 10px 30px;
}
.p-gnav-sp__list li a.is-external::after {
  content: "";
  display: inline-block;
  margin-left: 5px;
  width: 12px;
  height: 12px;
  background-image: url(../images/ico-external01.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.p-gnav-sp.is-active .p-gnav-sp__item {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

/* 遅延アニメーション */
.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(1) {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(2) {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(3) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(4) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(5) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(6) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(7) {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(8) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(9) {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.p-gnav-sp.is-active .p-gnav-sp__item:nth-child(10) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

body.menu-open {
  overflow: hidden;
}

.p-hero {
  padding-top: 120px;
  background: url(../images/p-hero__bg01.png) center bottom 94%/contain no-repeat, -webkit-gradient(linear, left top, left bottom, from(#DAF3F2), color-stop(20%, #DAF3F2), color-stop(20%, #fff), to(#fff));
  background: url(../images/p-hero__bg01.png) center bottom 94%/contain no-repeat, linear-gradient(180deg, #DAF3F2 0%, #DAF3F2 20%, #fff 20%, #fff 100%);
  position: relative;
}
@media (min-width: 769px) {
  .p-hero {
    background: url(../images/p-hero__bg01.png) center bottom 70%/contain no-repeat, -webkit-gradient(linear, left top, left bottom, from(#DAF3F2), color-stop(30%, #DAF3F2), color-stop(30%, #fff), to(#fff));
    background: url(../images/p-hero__bg01.png) center bottom 70%/contain no-repeat, linear-gradient(180deg, #DAF3F2 0%, #DAF3F2 30%, #fff 30%, #fff 100%);
    padding-top: 220px;
  }
}
@media (min-width: 1024px) {
  .p-hero {
    background: url(../images/p-hero__bg01.png) center bottom 100%/contain no-repeat, -webkit-gradient(linear, left top, left bottom, from(#DAF3F2), color-stop(30%, #DAF3F2), color-stop(30%, #fff), to(#fff));
    background: url(../images/p-hero__bg01.png) center bottom 100%/contain no-repeat, linear-gradient(180deg, #DAF3F2 0%, #DAF3F2 30%, #fff 30%, #fff 100%);
  }
}
.p-hero__inner {
  position: relative;
  z-index: 3;
}
@media (min-width: 769px) {
  .p-hero__inner {
    height: 580px;
  }
}
.p-hero__illust {
  position: absolute;
  padding: 0;
  margin: 0;
  bottom: 80px;
}
@media (min-width: 769px) {
  .p-hero__illust {
    bottom: min(6.6666666667vw, 80px);
  }
}
.p-hero__illust:first-child {
  left: 20px;
  width: min(23.3333333333vw, 280px);
}
@media (min-width: 769px) {
  .p-hero__illust:first-child {
    left: 0;
  }
}
.p-hero__illust:last-child {
  right: 20px;
  width: min(25vw, 300px);
}
@media (min-width: 769px) {
  .p-hero__illust:last-child {
    right: 0;
  }
}
.p-hero__content {
  margin: 0 auto;
  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;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  height: 100%;
}
@media (min-width: 769px) {
  .p-hero__content {
    width: 100%;
  }
}
.p-hero__catch {
  background-color: transparent;
  padding: 0;
  background-image: none;
  font-weight: 700;
  font-size: clamp(1.625rem, 0.6591rem + 4.1212vw, 3.75rem);
  font-size: clamp(1.625rem, 0.9432rem + 2.9091vw, 3.125rem);
  font-size: clamp(1.625rem, 1rem + 2.6667vw, 3rem);
  font-size: clamp(1.5rem, 0.8182rem + 2.9091vw, 3rem);
  font-size: clamp(1.375rem, 0.6364rem + 3.1515vw, 3rem);
  line-height: 130%;
  text-align: center;
  color: #333333;
  margin-top: 0;
  margin-bottom: 1.5rem;
}
.p-hero__text {
  margin: 0 auto 42.6666666667vw;
}
@media (min-width: 769px) {
  .p-hero__text {
    margin-bottom: 2.5rem;
    max-width: min(45vw, 540px);
  }
}
.p-hero__text p {
  margin: 0;
  font-weight: 700;
  font-size: clamp(1.125rem, 0.9545rem + 0.7273vw, 1.5rem);
  line-height: 180%;
  color: #333333;
}
@media (min-width: 769px) {
  .p-hero__btn--right {
    margin-left: auto;
  }
}

.p-hero + .p-updates,
.p-hero + .p-press {
  margin-top: 120px;
}
@media (min-width: 769px) {
  .p-hero + .p-updates,
  .p-hero + .p-press {
    margin-top: 240px;
  }
}

.p-about {
  background: #fff;
  padding: 40px 0 100px;
}
.p-about__text {
  font-weight: 700;
  font-size: clamp(1rem, 0.9432rem + 0.2424vw, 1.125rem);
  line-height: 180%;
  color: #333333;
}
@media (min-width: 769px) {
  .p-about__text {
    text-align: center;
  }
}
.p-about__links {
  max-width: 800px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2.75rem;
}
.p-about__split {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-block: 1.875rem;
  gap: 1.5rem;
}
@media (min-width: 1024px) {
  .p-about__split {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.875rem;
  }
}
.p-about__image {
  text-align: center;
}
.p-about__image img {
  max-width: 80%;
}
@media (min-width: 769px) {
  .p-about__image image {
    max-width: auto;
  }
}
@media (min-width: 1024px) {
  .p-about__image {
    width: 40vw;
  }
}

.p-links {
  background-color: #fff;
}
.p-links__image {
  width: 80%;
  max-width: 500px;
  height: auto;
  aspect-ratio: 25/4;
  background-image: url(../images/chara_illust_g.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center bottom;
  margin: 1.875rem auto -1.25rem;
  position: relative;
  z-index: 10;
}
@media (min-width: 769px) {
  .p-links__image {
    margin: 2.5rem auto 0;
  }
}
.p-links__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 900px;
  width: 0 auto;
}
@media (min-width: 769px) {
  .p-links__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
  }
}
.p-links__list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: inherit;
}
@media (min-width: 769px) {
  .p-links__list li {
    max-width: 435px;
    min-width: 300px;
  }
}
.p-links__list li + li {
  margin-top: inherit;
}
.p-links__list li::before {
  content: none;
}
.p-links__list .c-btn {
  min-width: 0;
  width: 100%;
}
.p-links__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 900px;
  margin: 20px auto 0;
}
.p-links__bottom a {
  width: 100%;
}
@media (min-width: 769px) {
  .p-links__bottom {
    margin: 60px auto 0;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .p-links__bottom a {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .p-links__bottom a {
    width: 33%;
  }
}
.p-links__bottom .c-btn {
  min-width: 0;
}

.p-top-services {
  position: relative;
}
.p-top-services .l-container {
  padding-top: 5.625rem;
  position: relative;
  z-index: 3;
}
.p-top-services .c-card {
  position: relative;
}

.p-top-news {
  background: #F5F6F8;
  padding: 0 0 4rem;
  position: relative;
  z-index: 2;
}
.p-top-news .l-container {
  padding-top: 3.75rem;
  position: relative;
  z-index: 3;
  max-width: 1016px;
}
.p-top-news__title {
  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;
  gap: 2.625rem 0;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1;
  color: #447FE0;
  text-align: center;
  margin: 0;
  position: relative;
}
.p-top-news__title span {
  display: block;
  font-size: 1rem;
  position: relative;
}
.p-top-news__title span::before {
  content: "";
  width: 2.4375rem;
  height: 1px;
  position: absolute;
  left: 50%;
  top: -1.3125rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #4DA8DA;
}
.p-top-news__title::after {
  position: absolute;
  content: "";
  width: 5.625rem;
  height: 9.8125rem;
  display: block;
  left: calc(50% + 6rem);
  bottom: 0;
  background-image: url(../images/top/p-top-news__title.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.p-top-news__list {
  list-style: none;
  margin: 3rem 0 2rem;
  padding: 0;
}
.p-top-news__list li {
  margin: 0.5rem;
  opacity: 0;
  -webkit-transform: translateX(10%);
          transform: translateX(10%);
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.p-top-news.js-view li {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.p-top-news.js-view li:nth-of-type(1) {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.p-top-news.js-view li:nth-of-type(2) {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.p-top-news.js-view li:nth-of-type(3) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.p-top-news.js-view li:nth-of-type(4) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.p-top-news.js-view li:nth-of-type(5) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.p-top-news.js-view li:nth-of-type(6) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.p-top-news.js-view li:nth-of-type(7) {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}
.p-top-news.js-view li:nth-of-type(8) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.p-top-news.js-view li:nth-of-type(9) {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
.p-top-news.js-view li:nth-of-type(10) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.p-top-company {
  background: -webkit-gradient(linear, left top, left bottom, from(#4DA8DA), to(#F0F5FF));
  background: linear-gradient(180deg, #4DA8DA 0%, #F0F5FF 100%);
  padding: 0 0 18.75rem;
  position: relative;
  z-index: 3;
}
.p-top-company .l-container {
  position: relative;
  max-width: 840px;
  padding-top: 4rem;
}
.p-top-company__title {
  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;
  gap: 2.625rem 0;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1;
  color: #fff;
  text-align: center;
  margin: 0;
}
.p-top-company__title span {
  display: block;
  font-size: 1rem;
  position: relative;
}
.p-top-company__title span::before {
  content: "";
  width: 2.4375rem;
  height: 1px;
  position: absolute;
  left: 50%;
  top: -1.3125rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #FFFFFF;
}
.p-top-company__subtitle {
  color: #fff;
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.6;
  text-align: center;
}
@media (min-width: 769px) {
  .p-top-company__subtitle {
    font-size: 2rem;
    line-height: 1.1875;
  }
}
.p-top-company__movie {
  margin: 3rem 0;
}
.p-top-company hr {
  border: none;
  border-top: 1px solid #4DA8DA;
  margin: 1.5rem 0;
}
@media (min-width: 769px) {
  .p-top-company hr {
    margin: 3rem 0;
  }
}
.p-top-company__bnr a {
  position: relative;
  display: block;
  line-height: 0;
  margin: -4px;
}
.p-top-company__bnr a span {
  display: block;
  position: absolute;
  inset: 4px;
  overflow: hidden;
}
.p-top-company__bnr a span::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.3)));
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
          transform: skewX(-25deg);
}
.p-top-company__bnr a:hover span::before {
  -webkit-animation: shine 0.75s;
          animation: shine 0.75s;
}

@-webkit-keyframes shine {
  100% {
    left: 125%;
  }
}
@keyframes shine {
  100% {
    left: 125%;
  }
}
/* ローディングスクリーン */
#loadingScreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(#f0f8ff), color-stop(#e6f3ff), to(#cce7ff));
  background: linear-gradient(180deg, #ffffff, #f0f8ff, #e6f3ff, #cce7ff);
  -webkit-transition: opacity 0.8s ease-out;
  transition: opacity 0.8s ease-out;
  z-index: 1000;
}

/* フェードアウト用クラス */
#loadingScreen.fade-out {
  opacity: 0;
}

/* SVGローダー */
.loader {
  width: 120px;
  height: auto;
}

.loader path {
  fill-opacity: 0;
  stroke-width: 1;
  stroke-dasharray: var(--path-length);
  stroke-dashoffset: var(--path-length);
  -webkit-animation: draw 2s ease forwards, fillFade 0.6s ease forwards 2s, hideStroke 0.4s ease forwards 2.2s;
          animation: draw 2s ease forwards, fillFade 0.6s ease forwards 2s, hideStroke 0.4s ease forwards 2.2s;
}

.loader path:nth-child(1) {
  stroke: #2D436C;
}

.loader path:nth-child(n+2) {
  stroke: #8ECAD2;
}

@-webkit-keyframes draw {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes draw {
  to {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes fillFade {
  to {
    fill-opacity: 1;
  }
}
@keyframes fillFade {
  to {
    fill-opacity: 1;
  }
}
@-webkit-keyframes hideStroke {
  to {
    stroke-opacity: 0;
  }
}
@keyframes hideStroke {
  to {
    stroke-opacity: 0;
  }
}
/* プログレスバー */
.progress-bar {
  width: 200px;
  height: 4px;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 2px;
  margin: 30px auto 0;
  overflow: hidden;
  position: relative;
}

.progress-fill {
  height: 100%;
  width: 0%;
  background: -webkit-gradient(linear, left top, right top, from(#2d436c), color-stop(#8ecad2), to(#2d436c));
  background: linear-gradient(90deg, #2d436c, #8ecad2, #2d436c);
  background-size: 200% 100%;
  border-radius: 2px;
  -webkit-animation: progress 4s ease-in-out forwards, shimmer 2s linear infinite;
          animation: progress 4s ease-in-out forwards, shimmer 2s linear infinite;
}

@-webkit-keyframes progress {
  0% {
    width: 0%;
  }
  50% {
    width: 80%;
  }
  100% {
    width: 100%;
  }
}

@keyframes progress {
  0% {
    width: 0%;
  }
  50% {
    width: 80%;
  }
  100% {
    width: 100%;
  }
}
@-webkit-keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
@keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.p-updates__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-updates__item {
  padding: inherit;
}
.p-updates__item::before {
  content: none;
}
.p-updates__item + .p-updates__item {
  margin-top: 10px;
}
@media (min-width: 769px) {
  .p-updates__item + .p-updates__item {
    margin-top: 20px;
  }
}
.p-updates__wrap {
  text-decoration: none;
  display: block;
  position: relative;
  background-color: #fff;
  border-radius: 10px;
  padding: 15px 64px 15px 24px;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
  border: 3px solid #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (min-width: 769px) {
  .p-updates__wrap {
    border-radius: 20px;
    padding: 27px 97px 27px 47px;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  }
}
.p-updates__wrap.is-pdf::after, .p-updates__wrap.is-url::after {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 100%;
  background-color: #447FE0;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_arrow01--white.svg);
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .p-updates__wrap.is-pdf::after, .p-updates__wrap.is-url::after {
    width: 50px;
    height: 50px;
    right: 20px;
    background-size: 24px auto;
  }
}
.p-updates__wrap.is-pdf::after {
  background-image: url(../images/icon_pdf01--white.svg);
  background-size: 15px auto;
}
@media (min-width: 769px) {
  .p-updates__wrap.is-pdf::after {
    background-size: 24px auto;
  }
}
.p-updates__wrap.is-url::after {
  background-image: url(../images/icon_arrow01--white.svg);
  background-size: 15px auto;
}
@media (min-width: 769px) {
  .p-updates__wrap.is-url::after {
    background-size: 24px auto;
  }
}
.p-updates__text {
  margin: 0;
  padding: 0;
  font-size: 1rem;
}
@media (min-width: 769px) {
  .p-updates__text {
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 150%;
    color: #333333;
  }
}

a.p-updates__wrap:hover {
  border-color: #447FE0;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
@media (min-width: 769px) {
  a.p-updates__wrap:hover {
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
            box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
  }
}

.p-press__sub-title {
  margin-bottom: 1.5rem;
}
.p-press__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-press__item {
  padding: inherit;
}
.p-press__item::before {
  content: none;
}
.p-press__item + .p-press__item {
  margin-top: 10px;
}
@media (min-width: 769px) {
  .p-press__item + .p-press__item {
    margin-top: 20px;
  }
}
.p-press__wrap {
  text-decoration: none;
  display: block;
  position: relative;
  background-color: #fff;
  border-radius: 10px;
  padding: 15px 64px 15px 24px;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
  border: 3px solid #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (min-width: 769px) {
  .p-press__wrap {
    border-radius: 20px;
    padding: 27px 97px 27px 47px;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  }
}
.p-press__wrap.is-pdf::after, .p-press__wrap.is-url::after {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 100%;
  background-color: #447FE0;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_arrow01--white.svg);
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .p-press__wrap.is-pdf::after, .p-press__wrap.is-url::after {
    width: 50px;
    height: 50px;
    right: 20px;
    background-size: 24px auto;
  }
}
.p-press__wrap.is-pdf::after {
  background-image: url(../images/icon_pdf01--white.svg);
  background-size: 15px auto;
}
@media (min-width: 769px) {
  .p-press__wrap.is-pdf::after {
    background-size: 24px auto;
  }
}
.p-press__wrap.is-url::after {
  background-image: url(../images/icon_arrow01--white.svg);
  background-size: 15px auto;
}
@media (min-width: 769px) {
  .p-press__wrap.is-url::after {
    background-size: 24px auto;
  }
}
.p-press__text {
  margin: 0;
  padding: 0;
  font-size: 1rem;
}
@media (min-width: 769px) {
  .p-press__text {
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 150%;
    color: #333333;
  }
}

a.p-press__wrap:hover {
  border-color: #447FE0;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
@media (min-width: 769px) {
  a.p-press__wrap:hover {
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
            box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
  }
}

.p-news-list {
  list-style: none;
  margin: 3rem 0 2rem;
  padding: 0;
}
.p-news-list li {
  margin: 0.5rem;
  opacity: 0;
  -webkit-transform: translateX(10%);
          transform: translateX(10%);
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.p-news-list.js-view li {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.p-news-list.js-view li:nth-of-type(1) {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.p-news-list.js-view li:nth-of-type(2) {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.p-news-list.js-view li:nth-of-type(3) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.p-news-list.js-view li:nth-of-type(4) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.p-news-list.js-view li:nth-of-type(5) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.p-news-list.js-view li:nth-of-type(6) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.p-news-list.js-view li:nth-of-type(7) {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}
.p-news-list.js-view li:nth-of-type(8) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.p-news-list.js-view li:nth-of-type(9) {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
.p-news-list.js-view li:nth-of-type(10) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.p-news-list.js-view li:nth-of-type(11) {
  -webkit-transition-delay: 1.1s;
          transition-delay: 1.1s;
}
.p-news-list.js-view li:nth-of-type(12) {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.p-news-list.js-view li:nth-of-type(13) {
  -webkit-transition-delay: 1.3s;
          transition-delay: 1.3s;
}
.p-news-list.js-view li:nth-of-type(14) {
  -webkit-transition-delay: 1.4s;
          transition-delay: 1.4s;
}
.p-news-list.js-view li:nth-of-type(15) {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
.p-news-list.js-view li:nth-of-type(16) {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.p-news-list.js-view li:nth-of-type(17) {
  -webkit-transition-delay: 1.7s;
          transition-delay: 1.7s;
}
.p-news-list.js-view li:nth-of-type(18) {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}
.p-news-list.js-view li:nth-of-type(19) {
  -webkit-transition-delay: 1.9s;
          transition-delay: 1.9s;
}
.p-news-list.js-view li:nth-of-type(20) {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}

.p-news-detail {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  border-radius: 8px;
  -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
  margin-bottom: 3rem;
  padding: 1rem;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.p-news-detail.js-view {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media (min-width: 769px) {
  .p-news-detail {
    margin-bottom: 3rem;
    padding: 2.5rem;
  }
}

.p-news-detail__header {
  border-bottom: 1px solid #dedede;
  padding-bottom: 1.5rem;
  margin-bottom: 2.25rem;
}
.p-news-detail__header .wp-block-post-title {
  text-align: left;
  margin-top: 0;
  margin-bottom: 1rem;
  color: #447FE0;
}
.p-news-detail__date {
  font-size: 1rem;
  margin-right: 0.625rem;
  line-height: 100%;
  font-weight: 500;
  color: #333333;
  display: inline-block;
}
@media (min-width: 769px) {
  .p-news-detail__date {
    font-size: 1.25rem;
    line-height: 1.6;
  }
}
.p-news-detail__category {
  background-color: var(--category-color);
  color: #fff;
  width: 6.875rem;
  height: 1.75rem;
  border-radius: 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.p-news-detail__category:hover {
  opacity: 0.7;
}
@media (min-width: 769px) {
  .p-news-detail__category {
    width: 8rem;
    height: 2rem;
    font-size: 0.875rem;
  }
}
.p-news__list .c-accordion + .c-accordion {
  margin-top: 0.625rem;
}
@media (min-width: 769px) {
  .p-news__list .c-accordion + .c-accordion {
    margin-top: 1.25rem;
  }
}

.p-edit {
  font-size: 1rem;
  line-height: 1.5;
}
.p-edit ul,
.p-edit ol {
  padding-left: 2rem;
}
.p-edit li {
  margin-bottom: 0.5rem;
}
.p-edit li::marker {
  color: #FFC311;
}
.p-edit li > ul, .p-edit li ol {
  margin-top: 0.5rem;
}
.p-edit a {
  text-decoration: underline;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.p-edit a:hover {
  color: #FFC311;
}

.p-page-header {
  margin-top: 120px;
  margin-bottom: 1.5rem;
  padding-top: 0.625rem;
  position: relative;
  z-index: 3;
}
@media (min-width: 769px) {
  .p-page-header {
    margin-top: 220px;
    margin-bottom: 3rem;
    padding-top: 5rem;
  }
}
.p-page-header__title {
  position: relative;
  z-index: 2;
  font-style: normal;
  font-weight: 700;
  font-size: clamp(1.375rem, 0.6364rem + 3.1515vw, 3rem);
  line-height: 130%;
  color: #333333;
  margin: 0;
}
.p-page-header__lead {
  margin-top: 1rem;
}
.p-page-header--bg-a .l-container, .p-page-header--bg-b .l-container, .p-page-header--bg-c .l-container, .p-page-header--bg-d .l-container, .p-page-header--bg-e .l-container, .p-page-header--bg-f .l-container {
  position: relative;
}
.p-page-header--bg-a .l-container::before, .p-page-header--bg-b .l-container::before, .p-page-header--bg-c .l-container::before, .p-page-header--bg-d .l-container::before, .p-page-header--bg-e .l-container::before, .p-page-header--bg-f .l-container::before {
  content: "";
  position: absolute;
  display: block;
  height: calc(100% + 40px);
  right: -20px;
  bottom: -20px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media (min-width: 769px) {
  .p-page-header--bg-a .l-container::before, .p-page-header--bg-b .l-container::before, .p-page-header--bg-c .l-container::before, .p-page-header--bg-d .l-container::before, .p-page-header--bg-e .l-container::before, .p-page-header--bg-f .l-container::before {
    height: calc(100% + 80px);
    right: 20px;
    bottom: -40px;
  }
}
.p-page-header--bg-a .l-container::before {
  width: 220px;
  background-image: url(../images/chara_illust_a.svg);
}
.p-page-header--bg-b .l-container::before {
  width: 220px;
  background-image: url(../images/chara_illust_b.svg);
}
.p-page-header--bg-c .l-container::before {
  width: 220px;
  background-image: url(../images/chara_illust_c.svg);
}
.p-page-header--bg-d .l-container::before {
  width: 220px;
  background-image: url(../images/chara_illust_d.svg);
}
.p-page-header--bg-e .l-container::before {
  width: 220px;
  background-image: url(../images/chara_illust_e.svg);
}
.p-page-header--bg-f .l-container::before {
  width: 220px;
  background-image: url(../images/chara_illust_f.svg);
}

.p-article {
  background-color: #fff;
  border-radius: 20px;
  padding: 1.25rem;
  max-width: 980px;
  margin: 0 auto;
}
.p-article > :first-child {
  margin-top: 0;
}
@media (min-width: 769px) {
  .p-article {
    padding: 1.875rem;
    border-radius: 30px;
  }
}
@media (min-width: 1024px) {
  .p-article {
    padding: 2.5rem;
    border-radius: 50px;
  }
}
.p-article--wide {
  max-width: 1200px;
}

.p-archive__title {
  margin-top: 3.75rem;
  margin-bottom: 1.875rem;
}
.p-archive__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(156px, 1fr));
  gap: 1rem;
}
@media (min-width: 576px) {
  .p-archive__list {
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  }
}
@media (min-width: 769px) {
  .p-archive__list {
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
    gap: 1.25rem;
  }
}
.p-archive__item {
  padding: 0;
}
.p-archive__item::before {
  content: none;
}
.p-archive__item + li {
  margin-top: 0;
}
.p-archive__item a {
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 3.75rem;
  position: relative;
  background-color: #fff;
  border-radius: 10px;
  padding: 0 2rem 0 1rem;
  -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  border: 3px solid #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 150%;
  color: #333333;
}
@media (min-width: 769px) {
  .p-archive__item a {
    height: 5.625rem;
    font-size: 1.5rem;
    border-radius: 20px;
    padding: 0 80px 0 40px;
  }
}
.p-archive__item a::after {
  content: "";
  width: 24px;
  height: 24px;
  border-radius: 100%;
  background-color: #447FE0;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon_arrow03--white.svg);
  background-size: 12px auto;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .p-archive__item a::after {
    width: 34px;
    height: 34px;
    right: 20px;
    background-size: 17px auto;
  }
}
.p-archive__item a:hover {
  border-color: #447FE0;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
@media (min-width: 769px) {
  .p-archive__item a:hover {
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
            box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
  }
}
.p-archive__item + .p-press__item {
  margin-top: 10px;
}
@media (min-width: 769px) {
  .p-archive__item + .p-press__item {
    margin-top: 20px;
  }
}
.p-archive__text {
  margin: 0;
  padding: 0;
  font-size: 1rem;
}
@media (min-width: 769px) {
  .p-archive__text {
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 150%;
    color: #333333;
  }
}

.p-qa__list .c-accordion + .c-accordion {
  margin-top: 0.625rem;
}
@media (min-width: 769px) {
  .p-qa__list .c-accordion + .c-accordion {
    margin-top: 1.25rem;
  }
}

:root {
  --c-link: #2953EF;
  --c-link-hover: #6886f3;
  --c-graybox-bg: #e9f4fb; /* 外側の水色背景 */
  --c-graybox-bd: #cfe3f3;
  --c-whitebox-bd: #dcdcdc; /* 内側の白枠ボーダー */
  --c-dt-frame: #d6e6ff; /* 見出しの外枠ボーダー */
  --c-dt-accent: #2b58ef; /* 見出しの左アオリ線 */
  --c-muted: #666;
  --gap: 12px;
}

#support {
  /* ===== ベース ===== */
  /* ===== 見出し行（dt） ===== */
  /* ===== 開閉領域（dd） ===== */
  /* 「議事概要（PDF…）」1行 */
  /* ===== 白い内枠（配布資料） ===== */
  /* ===== PDF一覧 ===== */
  /* 「資料◯」ラベル（span） */
  /* ===== 開閉アニメ（任意：フェード） ===== */
  /* JSで .is-open を付与/除去する想定。使わないなら削除OK */
  /* ===== レスポンシブ微調整 ===== */
}
#support h2:first-child {
  display: none;
}
#support .toggle {
  margin: 20px 0;
}
#support .toggle a {
  color: var(--c-link);
  text-decoration: underline;
}
#support .toggle a:hover {
  color: var(--c-link-hover);
  text-decoration: none;
}
#support .toggle .dt-support {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3px;
  padding: 12px 16px;
  border-bottom: 1px dashed #ccc;
  line-height: 1.6;
}
@media (min-width: 769px) {
  #support .toggle .dt-support {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
}
#support .toggle .dt-support em {
  font-style: normal;
  color: var(--c-muted);
}
#support .toggle .dt-support span {
  cursor: pointer;
  color: var(--c-link);
  text-decoration: underline;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#support .toggle .dt-support span:hover {
  color: var(--c-link-hover);
  text-decoration: none;
}
#support .toggle .graybox {
  margin-left: 0;
  margin-top: 6px;
  padding: 14px 16px;
  background: var(--c-graybox-bg);
}
#support .toggle .graybox .pdf {
  margin: 0 0 10px;
}
#support .toggle .whitebox {
  background: #fff;
  padding: 0.875rem 1rem;
}
#support .toggle .whitebox h3 {
  margin: 0 0 10px;
  padding: 0;
  line-height: 1;
  position: relative;
  width: auto;
  background-image: none;
}
#support .toggle .whitebox h3::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  height: 1px;
  width: 100%;
  border-bottom: 1px dashed #ccc;
  left: 0;
  top: 50%;
}
#support .toggle .whitebox h3 img {
  display: block;
  background-image: none;
  position: relative;
  z-index: 2;
}
#support .toggle .list-pdf {
  list-style: none;
  margin: 0;
  padding: 0;
}
#support .toggle .list-pdf li {
  position: relative;
  padding-left: 2rem;
  line-height: 1.9;
  word-break: break-word; /* 長いURL対策 */
}
#support .toggle .list-pdf li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1.5rem;
  height: 2rem;
  background-color: transparent;
  background-image: url(../images/icon_pdf01--blue.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 0;
}
#support .toggle .list-pdf li > span {
  display: inline-block;
  min-width: 4em; /* 「資料◯」の幅をそろえる */
  color: var(--c-muted);
  margin-right: 4px;
}
#support .toggle dd {
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
#support .toggle dd.is-open {
  display: block;
  opacity: 1;
}
@media (max-width: 640px) {
  #support .toggle .dt-support {
    padding: 10px 12px;
  }
  #support .toggle .graybox {
    padding: 12px;
  }
  #support .toggle .whitebox {
    padding: 12px;
  }
}

#regulation h2:first-child {
  display: none;
}
#regulation .box-regulation ol li ol li::before, #regulation .box-regulation-outline ol li ol li::before {
  content: counter(listnum, lower-alpha) ".";
}
#regulation h3 span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0rem 0.625rem;
  margin-right: 0.9375rem;
  background-color: #ECECEC;
}

#regulation2 h2:first-child {
  display: none;
}
#regulation2 .box-regulation ol li ol li::before, #regulation2 .box-regulation-outline ol li ol li::before {
  content: counter(listnum, lower-alpha) ".";
}
#regulation2 h3 {
  width: 100%;
  background: #447FE0;
  color: #fff;
  margin-block: 1.25rem;
  font-size: 1.25rem;
  line-height: 130%;
  padding: 1rem;
  border-radius: 0.3125rem;
}
@media (min-width: 769px) {
  #regulation2 h3 {
    padding: 1.25rem;
    margin-block: 1.875rem;
    font-size: 1.75rem;
  }
}
#regulation2 h3 small {
  font-size: 0.75rem;
  line-height: 1.4;
  display: inline-block;
}
@media (min-width: 769px) {
  #regulation2 h3 small {
    font-size: 1rem;
  }
}
#regulation2 h3:has(small) {
  padding-top: 0.625rem;
}
#regulation2 h4 {
  background-color: transparent;
  color: #333333;
  margin-block: 1rem;
  padding: 1rem 0;
  font-size: 1.25rem;
  line-height: 130%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-image: url(../images/line_dashed02.svg);
  background-repeat: repeat-x;
  background-size: 10px 3px;
  background-position: left bottom;
}
@media (min-width: 769px) {
  #regulation2 h4 {
    margin-block: 2rem;
    font-size: 1.5625rem;
  }
  #regulation2 h4 small {
    font-size: 1.125rem;
  }
}
#regulation2 h4.c-heading--blue {
  color: #447FE0;
}
#regulation2 h4 span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0rem 0.625rem;
  margin-right: 0.9375rem;
  background-color: #ECECEC;
}

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

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

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

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

.u-text-start {
  text-align: start !important;
}

.u-text-end {
  text-align: end !important;
}

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

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

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

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

.u-text-xs-start {
  text-align: start !important;
}

.u-text-xs-end {
  text-align: end !important;
}

@media (min-width: 576px) {
  .u-text-sm-left {
    text-align: left !important;
  }
  .u-text-sm-center {
    text-align: center !important;
  }
  .u-text-sm-right {
    text-align: right !important;
  }
  .u-text-sm-justify {
    text-align: justify !important;
  }
  .u-text-sm-start {
    text-align: start !important;
  }
  .u-text-sm-end {
    text-align: end !important;
  }
}
@media (min-width: 769px) {
  .u-text-md-left {
    text-align: left !important;
  }
  .u-text-md-center {
    text-align: center !important;
  }
  .u-text-md-right {
    text-align: right !important;
  }
  .u-text-md-justify {
    text-align: justify !important;
  }
  .u-text-md-start {
    text-align: start !important;
  }
  .u-text-md-end {
    text-align: end !important;
  }
}
@media (min-width: 1024px) {
  .u-text-lg-left {
    text-align: left !important;
  }
  .u-text-lg-center {
    text-align: center !important;
  }
  .u-text-lg-right {
    text-align: right !important;
  }
  .u-text-lg-justify {
    text-align: justify !important;
  }
  .u-text-lg-start {
    text-align: start !important;
  }
  .u-text-lg-end {
    text-align: end !important;
  }
}
@media (min-width: 1440px) {
  .u-text-xl-left {
    text-align: left !important;
  }
  .u-text-xl-center {
    text-align: center !important;
  }
  .u-text-xl-right {
    text-align: right !important;
  }
  .u-text-xl-justify {
    text-align: justify !important;
  }
  .u-text-xl-start {
    text-align: start !important;
  }
  .u-text-xl-end {
    text-align: end !important;
  }
}
@media (min-width: 1920px) {
  .u-text-xxl-left {
    text-align: left !important;
  }
  .u-text-xxl-center {
    text-align: center !important;
  }
  .u-text-xxl-right {
    text-align: right !important;
  }
  .u-text-xxl-justify {
    text-align: justify !important;
  }
  .u-text-xxl-start {
    text-align: start !important;
  }
  .u-text-xxl-end {
    text-align: end !important;
  }
}
.u-text-mobile-center {
  text-align: center !important;
}
@media (min-width: 769px) {
  .u-text-mobile-center {
    text-align: left !important;
  }
}

.u-text-mobile-left {
  text-align: left !important;
}
@media (min-width: 769px) {
  .u-text-mobile-left {
    text-align: center !important;
  }
}

@media (min-width: 576px) {
  .u-text-tablet-center {
    text-align: center !important;
  }
}

@media (min-width: 769px) {
  .u-text-desktop-right {
    text-align: right !important;
  }
}

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

.u-m-1 {
  margin: 0.25rem !important;
}

.u-m-2 {
  margin: 0.5rem !important;
}

.u-m-3 {
  margin: 1rem !important;
}

.u-m-4 {
  margin: 1.5rem !important;
}

.u-m-5 {
  margin: 2rem !important;
}

.u-m-6 {
  margin: 3rem !important;
}

.u-m-7 {
  margin: 4rem !important;
}

.u-m-8 {
  margin: 5rem !important;
}

.u-m-9 {
  margin: 6rem !important;
}

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

.u-mt-1 {
  margin-top: 0.25rem !important;
}

.u-mt-2 {
  margin-top: 0.5rem !important;
}

.u-mt-3 {
  margin-top: 1rem !important;
}

.u-mt-4 {
  margin-top: 1.5rem !important;
}

.u-mt-5 {
  margin-top: 2rem !important;
}

.u-mt-6 {
  margin-top: 3rem !important;
}

.u-mt-7 {
  margin-top: 4rem !important;
}

.u-mt-8 {
  margin-top: 5rem !important;
}

.u-mt-9 {
  margin-top: 6rem !important;
}

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

.u-mr-1 {
  margin-right: 0.25rem !important;
}

.u-mr-2 {
  margin-right: 0.5rem !important;
}

.u-mr-3 {
  margin-right: 1rem !important;
}

.u-mr-4 {
  margin-right: 1.5rem !important;
}

.u-mr-5 {
  margin-right: 2rem !important;
}

.u-mr-6 {
  margin-right: 3rem !important;
}

.u-mr-7 {
  margin-right: 4rem !important;
}

.u-mr-8 {
  margin-right: 5rem !important;
}

.u-mr-9 {
  margin-right: 6rem !important;
}

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

.u-mb-1 {
  margin-bottom: 0.25rem !important;
}

.u-mb-2 {
  margin-bottom: 0.5rem !important;
}

.u-mb-3 {
  margin-bottom: 1rem !important;
}

.u-mb-4 {
  margin-bottom: 1.5rem !important;
}

.u-mb-5 {
  margin-bottom: 2rem !important;
}

.u-mb-6 {
  margin-bottom: 3rem !important;
}

.u-mb-7 {
  margin-bottom: 4rem !important;
}

.u-mb-8 {
  margin-bottom: 5rem !important;
}

.u-mb-9 {
  margin-bottom: 6rem !important;
}

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

.u-ml-1 {
  margin-left: 0.25rem !important;
}

.u-ml-2 {
  margin-left: 0.5rem !important;
}

.u-ml-3 {
  margin-left: 1rem !important;
}

.u-ml-4 {
  margin-left: 1.5rem !important;
}

.u-ml-5 {
  margin-left: 2rem !important;
}

.u-ml-6 {
  margin-left: 3rem !important;
}

.u-ml-7 {
  margin-left: 4rem !important;
}

.u-ml-8 {
  margin-left: 5rem !important;
}

.u-ml-9 {
  margin-left: 6rem !important;
}

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

.u-mx-1 {
  margin-left: 0.25rem !important;
  margin-right: 0.25rem !important;
}

.u-mx-2 {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.u-mx-3 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.u-mx-4 {
  margin-left: 1.5rem !important;
  margin-right: 1.5rem !important;
}

.u-mx-5 {
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}

.u-mx-6 {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.u-mx-7 {
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}

.u-mx-8 {
  margin-left: 5rem !important;
  margin-right: 5rem !important;
}

.u-mx-9 {
  margin-left: 6rem !important;
  margin-right: 6rem !important;
}

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

.u-my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.u-my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.u-my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.u-my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.u-my-5 {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}

.u-my-6 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.u-my-7 {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}

.u-my-8 {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}

.u-my-9 {
  margin-top: 6rem !important;
  margin-bottom: 6rem !important;
}

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

.u-p-1 {
  padding: 0.25rem !important;
}

.u-p-2 {
  padding: 0.5rem !important;
}

.u-p-3 {
  padding: 1rem !important;
}

.u-p-4 {
  padding: 1.5rem !important;
}

.u-p-5 {
  padding: 2rem !important;
}

.u-p-6 {
  padding: 3rem !important;
}

.u-p-7 {
  padding: 4rem !important;
}

.u-p-8 {
  padding: 5rem !important;
}

.u-p-9 {
  padding: 6rem !important;
}

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

.u-pt-1 {
  padding-top: 0.25rem !important;
}

.u-pt-2 {
  padding-top: 0.5rem !important;
}

.u-pt-3 {
  padding-top: 1rem !important;
}

.u-pt-4 {
  padding-top: 1.5rem !important;
}

.u-pt-5 {
  padding-top: 2rem !important;
}

.u-pt-6 {
  padding-top: 3rem !important;
}

.u-pt-7 {
  padding-top: 4rem !important;
}

.u-pt-8 {
  padding-top: 5rem !important;
}

.u-pt-9 {
  padding-top: 6rem !important;
}

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

.u-pr-1 {
  padding-right: 0.25rem !important;
}

.u-pr-2 {
  padding-right: 0.5rem !important;
}

.u-pr-3 {
  padding-right: 1rem !important;
}

.u-pr-4 {
  padding-right: 1.5rem !important;
}

.u-pr-5 {
  padding-right: 2rem !important;
}

.u-pr-6 {
  padding-right: 3rem !important;
}

.u-pr-7 {
  padding-right: 4rem !important;
}

.u-pr-8 {
  padding-right: 5rem !important;
}

.u-pr-9 {
  padding-right: 6rem !important;
}

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

.u-pb-1 {
  padding-bottom: 0.25rem !important;
}

.u-pb-2 {
  padding-bottom: 0.5rem !important;
}

.u-pb-3 {
  padding-bottom: 1rem !important;
}

.u-pb-4 {
  padding-bottom: 1.5rem !important;
}

.u-pb-5 {
  padding-bottom: 2rem !important;
}

.u-pb-6 {
  padding-bottom: 3rem !important;
}

.u-pb-7 {
  padding-bottom: 4rem !important;
}

.u-pb-8 {
  padding-bottom: 5rem !important;
}

.u-pb-9 {
  padding-bottom: 6rem !important;
}

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

.u-pl-1 {
  padding-left: 0.25rem !important;
}

.u-pl-2 {
  padding-left: 0.5rem !important;
}

.u-pl-3 {
  padding-left: 1rem !important;
}

.u-pl-4 {
  padding-left: 1.5rem !important;
}

.u-pl-5 {
  padding-left: 2rem !important;
}

.u-pl-6 {
  padding-left: 3rem !important;
}

.u-pl-7 {
  padding-left: 4rem !important;
}

.u-pl-8 {
  padding-left: 5rem !important;
}

.u-pl-9 {
  padding-left: 6rem !important;
}

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

.u-px-1 {
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
}

.u-px-2 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.u-px-3 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.u-px-4 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.u-px-5 {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.u-px-6 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.u-px-7 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.u-px-8 {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}

.u-px-9 {
  padding-left: 6rem !important;
  padding-right: 6rem !important;
}

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

.u-py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.u-py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.u-py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.u-py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.u-py-5 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.u-py-6 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.u-py-7 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.u-py-8 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

.u-py-9 {
  padding-top: 6rem !important;
  padding-bottom: 6rem !important;
}

@media (max-width: 768px) {
  .u-sp-m-0 {
    margin: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-1 {
    margin: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-2 {
    margin: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-3 {
    margin: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-4 {
    margin: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-5 {
    margin: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-6 {
    margin: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-7 {
    margin: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-8 {
    margin: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-m-9 {
    margin: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-0 {
    margin-top: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-1 {
    margin-top: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-2 {
    margin-top: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-3 {
    margin-top: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-4 {
    margin-top: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-5 {
    margin-top: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-6 {
    margin-top: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-7 {
    margin-top: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-8 {
    margin-top: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt-9 {
    margin-top: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-0 {
    margin-right: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-1 {
    margin-right: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-2 {
    margin-right: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-3 {
    margin-right: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-4 {
    margin-right: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-5 {
    margin-right: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-6 {
    margin-right: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-7 {
    margin-right: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-8 {
    margin-right: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mr-9 {
    margin-right: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-0 {
    margin-bottom: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-1 {
    margin-bottom: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-2 {
    margin-bottom: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-3 {
    margin-bottom: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-4 {
    margin-bottom: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-5 {
    margin-bottom: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-6 {
    margin-bottom: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-7 {
    margin-bottom: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-8 {
    margin-bottom: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mb-9 {
    margin-bottom: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-0 {
    margin-left: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-1 {
    margin-left: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-2 {
    margin-left: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-3 {
    margin-left: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-4 {
    margin-left: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-5 {
    margin-left: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-6 {
    margin-left: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-7 {
    margin-left: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-8 {
    margin-left: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-ml-9 {
    margin-left: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-5 {
    margin-left: 2rem !important;
    margin-right: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-6 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-7 {
    margin-left: 4rem !important;
    margin-right: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-8 {
    margin-left: 5rem !important;
    margin-right: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mx-9 {
    margin-left: 6rem !important;
    margin-right: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-5 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-6 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-7 {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-8 {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-my-9 {
    margin-top: 6rem !important;
    margin-bottom: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-0 {
    padding: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-1 {
    padding: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-2 {
    padding: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-3 {
    padding: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-4 {
    padding: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-5 {
    padding: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-6 {
    padding: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-7 {
    padding: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-8 {
    padding: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-p-9 {
    padding: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-0 {
    padding-top: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-1 {
    padding-top: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-2 {
    padding-top: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-3 {
    padding-top: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-4 {
    padding-top: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-5 {
    padding-top: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-6 {
    padding-top: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-7 {
    padding-top: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-8 {
    padding-top: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pt-9 {
    padding-top: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-0 {
    padding-right: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-1 {
    padding-right: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-2 {
    padding-right: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-3 {
    padding-right: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-4 {
    padding-right: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-5 {
    padding-right: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-6 {
    padding-right: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-7 {
    padding-right: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-8 {
    padding-right: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pr-9 {
    padding-right: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-0 {
    padding-bottom: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-1 {
    padding-bottom: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-2 {
    padding-bottom: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-3 {
    padding-bottom: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-4 {
    padding-bottom: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-5 {
    padding-bottom: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-6 {
    padding-bottom: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-7 {
    padding-bottom: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-8 {
    padding-bottom: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pb-9 {
    padding-bottom: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-0 {
    padding-left: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-1 {
    padding-left: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-2 {
    padding-left: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-3 {
    padding-left: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-4 {
    padding-left: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-5 {
    padding-left: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-6 {
    padding-left: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-7 {
    padding-left: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-8 {
    padding-left: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-pl-9 {
    padding-left: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-3 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-4 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-5 {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-6 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-7 {
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-8 {
    padding-left: 5rem !important;
    padding-right: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-px-9 {
    padding-left: 6rem !important;
    padding-right: 6rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-5 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-6 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-7 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-8 {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
}

@media (max-width: 768px) {
  .u-sp-py-9 {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
}

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

@media (max-width: 768px) {
  .u-sp-pb-50 {
    padding-bottom: 50px;
  }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-ml100 {
  margin-left: 100px !important;
}/*# sourceMappingURL=style.css.map */