@charset "UTF-8";
/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-container {
  overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
  background: transparent;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
  max-width: none !important;
  max-height: none !important;
}

.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
  max-width: none !important;
  max-height: none !important;
  width: auto;
  padding: 0;
}

.leaflet-container img.leaflet-tile {
  /* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
  mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
  -ms-touch-action: pan-x pan-y;
  touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
  -ms-touch-action: pinch-zoom;
  /* Fallback for FF which doesn't support pinch-zoom */
  touch-action: none;
  touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  -ms-touch-action: none;
  touch-action: none;
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
  filter: inherit;
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none;
}

.leaflet-pane {
  z-index: 400;
}

.leaflet-tile-pane {
  z-index: 200;
}

.leaflet-overlay-pane {
  z-index: 400;
}

.leaflet-shadow-pane {
  z-index: 500;
}

.leaflet-marker-pane {
  z-index: 600;
}

.leaflet-tooltip-pane {
  z-index: 650;
}

.leaflet-popup-pane {
  z-index: 700;
}

.leaflet-map-pane canvas {
  z-index: 100;
}

.leaflet-map-pane svg {
  z-index: 200;
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top {
  top: 0;
}

.leaflet-right {
  right: 0;
}

.leaflet-bottom {
  bottom: 0;
}

.leaflet-left {
  left: 0;
}

.leaflet-control {
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}

.leaflet-zoom-animated {
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
}

svg.leaflet-zoom-animated {
  will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}

/* cursors */
.leaflet-interactive {
  cursor: pointer;
}

.leaflet-grab {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline-offset: 1px;
}

.leaflet-container a {
  color: #0078A8;
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
}

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}

.leaflet-bar a {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}

.leaflet-bar a:hover,
.leaflet-bar a:focus {
  background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px "Lucida Console", Monaco, monospace;
  text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}

.leaflet-control-layers-toggle {
  background-image: url(./leaflet/layers.png);
  width: 36px;
  height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(./leaflet/layers-2x.png);
  background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}

.leaflet-control-layers label {
  display: block;
  font-size: 13px;
  font-size: 1.08333em;
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
  background-image: url(./leaflet/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
  margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
  line-height: 1.4;
}

.leaflet-control-attribution a {
  text-decoration: none;
}

.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
  text-decoration: underline;
}

.leaflet-attribution-flag {
  display: inline !important;
  vertical-align: baseline !important;
  width: 1em;
  height: 0.6669em;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  white-space: nowrap;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.8);
  text-shadow: 1px 1px #fff;
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}

.leaflet-popup-content {
  margin: 13px 24px 13px 20px;
  line-height: 1.3;
  font-size: 13px;
  font-size: 1.08333em;
  min-height: 1px;
}

.leaflet-popup-content p {
  margin: 17px 0;
  margin: 1.3em 0;
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-top: -1px;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  pointer-events: auto;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  text-align: center;
  width: 24px;
  height: 24px;
  font: 16px/24px Tahoma, Verdana, sans-serif;
  color: #757575;
  text-decoration: none;
  background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
  color: #585858;
}

.leaflet-popup-scrolled {
  overflow: auto;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  -ms-zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-interactive {
  cursor: pointer;
  pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}

.leaflet-tooltip-top {
  margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}

.leaflet-tooltip-left {
  margin-left: -6px;
}

.leaflet-tooltip-right {
  margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}

/* Printing */
@media print {
  /* Prevent printers from removing background-images of controls. */
  .leaflet-control {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}
@font-face {
  font-family: "lg";
  src: url("fonts/lg.ttf?22t19m") format("truetype"), url("fonts/lg.woff?22t19m") format("woff"), url("fonts/lg.svg?22t19m#lg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.lg-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "lg" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

.lg-actions .lg-next.disabled, .lg-actions .lg-prev.disabled {
  pointer-events: none;
  opacity: 0.5;
}

.lg-actions .lg-next:hover, .lg-actions .lg-prev:hover {
  color: #FFF;
}

.lg-actions .lg-next {
  right: 20px;
}

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

.lg-actions .lg-prev {
  left: 20px;
}

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

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

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

.lg-toolbar {
  z-index: 1082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.45);
}

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

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

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

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

.lg-sub-html {
  background-color: rgba(0, 0, 0, 0.45);
  bottom: 0;
  color: #EEE;
  font-size: 16px;
  left: 0;
  padding: 10px 40px;
  position: fixed;
  right: 0;
  text-align: center;
  z-index: 1080;
}

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

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

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

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

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

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

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

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object {
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
  -webkit-transition: -webkit-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -moz-transition: -moz-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -o-transition: -o-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  opacity: 1;
}

.lg-outer .lg-thumb-outer {
  background-color: #0d0a0a;
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 1080;
  max-height: 350px;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}

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

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

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

.lg-outer.lg-thumb-open .lg-thumb-outer {
  -webkit-transform: translate3d(0, 0%, 0);
  transform: translate3d(0, 0%, 0);
}

.lg-outer .lg-thumb {
  padding: 10px 0;
  height: 100%;
  margin-bottom: -5px;
}

.lg-outer .lg-thumb-item {
  border-radius: 5px;
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border: 2px solid #FFF;
  border-radius: 4px;
  margin-bottom: 5px;
}

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

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

.lg-outer.lg-has-thumb .lg-item {
  padding-bottom: 120px;
}

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

.lg-outer.lg-pull-caption-up .lg-sub-html {
  -webkit-transition: bottom 0.25s ease;
  -o-transition: bottom 0.25s ease;
  transition: bottom 0.25s ease;
}

.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html {
  bottom: 100px;
}

.lg-outer .lg-toggle-thumb {
  background-color: #0D0A0A;
  border-radius: 2px 2px 0 0;
  color: #999;
  cursor: pointer;
  font-size: 24px;
  height: 39px;
  line-height: 27px;
  padding: 5px 0;
  position: absolute;
  right: 20px;
  text-align: center;
  top: -39px;
  width: 50px;
  outline: medium none;
  border: none;
}

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

.lg-outer .lg-toggle-thumb:hover {
  color: #FFF;
}

.lg-outer .lg-video-cont {
  display: inline-block;
  vertical-align: middle;
  max-width: 1140px;
  max-height: 100%;
  width: 100%;
  padding: 0 5px;
}

.lg-outer .lg-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative;
}

.lg-outer .lg-video .lg-object {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.lg-outer .lg-video .lg-video-play {
  width: 84px;
  height: 59px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -42px;
  margin-top: -30px;
  z-index: 1080;
  cursor: pointer;
}

.lg-outer .lg-has-vimeo .lg-video-play {
  background: url("lightgallery/vimeo-play.png") no-repeat scroll 0 0 transparent;
}

.lg-outer .lg-has-vimeo:hover .lg-video-play {
  background: url("lightgallery/vimeo-play.png") no-repeat scroll 0 -58px transparent;
}

.lg-outer .lg-has-html5 .lg-video-play {
  background: transparent url("lightgallery/video-play.png") no-repeat scroll 0 0;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  width: 64px;
  opacity: 0.8;
}

.lg-outer .lg-has-html5:hover .lg-video-play {
  opacity: 1;
}

.lg-outer .lg-has-youtube .lg-video-play {
  background: url("lightgallery/youtube-play.png") no-repeat scroll 0 0 transparent;
}

.lg-outer .lg-has-youtube:hover .lg-video-play {
  background: url("lightgallery/youtube-play.png") no-repeat scroll 0 -60px transparent;
}

.lg-outer .lg-video-object {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

.lg-outer .lg-has-video .lg-video-object {
  visibility: hidden;
}

.lg-outer .lg-has-video.lg-video-playing .lg-object, .lg-outer .lg-has-video.lg-video-playing .lg-video-play {
  display: none;
}

.lg-outer .lg-has-video.lg-video-playing .lg-video-object {
  visibility: visible;
}

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

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

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

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

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

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

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

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

.lg-outer.lg-use-left-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
}

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

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -moz-transition: -moz-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -o-transition: -o-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  transition: transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

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

#lg-actual-size {
  font-size: 20px;
}

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

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

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

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

.lg-outer .lg-pager-outer {
  bottom: 60px;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: 1080;
  height: 10px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.lg-outer #lg-share-googleplus .lg-icon {
  color: #dd4b39;
}

.lg-outer #lg-share-googleplus .lg-icon:after {
  content: "\e905";
}

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

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

.lg-outer .lg-img-rotate {
  position: absolute;
  padding: 0 5px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
  -moz-transition: -moz-transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
  -o-transition: -o-transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
  transition: transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
}

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

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

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

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

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

.lg-group {
  *zoom: 1;
}

.lg-group:before, .lg-group:after {
  display: table;
  content: "";
  line-height: 0;
}

.lg-group:after {
  clear: both;
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  opacity: 0;
  outline: none;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

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

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

.lg-outer.lg-css3 .lg-item.lg-prev-slide, .lg-outer.lg-css3 .lg-item.lg-next-slide, .lg-outer.lg-css3 .lg-item.lg-current {
  -webkit-transition-duration: inherit !important;
  transition-duration: inherit !important;
  -webkit-transition-timing-function: inherit !important;
  transition-timing-function: inherit !important;
}

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

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

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

.lg-outer .lg {
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  max-height: 100%;
}

.lg-outer .lg-inner {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
}

.lg-outer .lg-item {
  background: url("lightgallery/loading.gif") no-repeat scroll center center transparent;
  display: none !important;
}

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

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

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

.lg-outer .lg-item:before, .lg-outer .lg-img-wrap:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

.lg-outer .lg-img-wrap {
  position: absolute;
  padding: 0 5px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

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

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

.lg-outer .lg-image {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto !important;
  height: auto !important;
}

.lg-outer.lg-show-after-load .lg-item .lg-object, .lg-outer.lg-show-after-load .lg-item .lg-video-play {
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object, .lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play {
  opacity: 1;
}

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

.lg-outer.lg-hide-download #lg-download {
  display: none;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide {
  left: -100%;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide {
  left: 100%;
}

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

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

.swal2-popup.swal2-toast {
  box-sizing: border-box;
  grid-column: 1/4 !important;
  grid-row: 1/4 !important;
  grid-template-columns: min-content auto min-content;
  padding: 1em;
  overflow-y: hidden;
  background: #fff;
  box-shadow: 0 0 1px hsla(0, 0%, 0%, 0.075), 0 1px 2px hsla(0, 0%, 0%, 0.075), 1px 2px 4px hsla(0, 0%, 0%, 0.075), 1px 3px 8px hsla(0, 0%, 0%, 0.075), 2px 4px 16px hsla(0, 0%, 0%, 0.075);
  pointer-events: all;
}

.swal2-popup.swal2-toast > * {
  grid-column: 2;
}

.swal2-popup.swal2-toast .swal2-title {
  margin: 0.5em 1em;
  padding: 0;
  font-size: 1em;
  text-align: initial;
}

.swal2-popup.swal2-toast .swal2-loading {
  justify-content: center;
}

.swal2-popup.swal2-toast .swal2-input {
  height: 2em;
  margin: 0.5em;
  font-size: 1em;
}

.swal2-popup.swal2-toast .swal2-validation-message {
  font-size: 1em;
}

.swal2-popup.swal2-toast .swal2-footer {
  margin: 0.5em 0 0;
  padding: 0.5em 0 0;
  font-size: 0.8em;
}

.swal2-popup.swal2-toast .swal2-close {
  grid-column: 3/3;
  grid-row: 1/99;
  align-self: center;
  width: 0.8em;
  height: 0.8em;
  margin: 0;
  font-size: 2em;
}

.swal2-popup.swal2-toast .swal2-html-container {
  margin: 0.5em 1em;
  padding: 0;
  overflow: initial;
  font-size: 1em;
  text-align: initial;
}

.swal2-popup.swal2-toast .swal2-html-container:empty {
  padding: 0;
}

.swal2-popup.swal2-toast .swal2-loader {
  grid-column: 1;
  grid-row: 1/99;
  align-self: center;
  width: 2em;
  height: 2em;
  margin: 0.25em;
}

.swal2-popup.swal2-toast .swal2-icon {
  grid-column: 1;
  grid-row: 1/99;
  align-self: center;
  width: 2em;
  min-width: 2em;
  height: 2em;
  margin: 0 0.5em 0 0;
}

.swal2-popup.swal2-toast .swal2-icon .swal2-icon-content {
  display: flex;
  align-items: center;
  font-size: 1.8em;
  font-weight: bold;
}

.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring {
  width: 2em;
  height: 2em;
}

.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line] {
  top: 0.875em;
  width: 1.375em;
}

.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left] {
  left: 0.3125em;
}

.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right] {
  right: 0.3125em;
}

.swal2-popup.swal2-toast .swal2-actions {
  justify-content: flex-start;
  height: auto;
  margin: 0;
  margin-top: 0.5em;
  padding: 0 0.5em;
}

.swal2-popup.swal2-toast .swal2-styled {
  margin: 0.25em 0.5em;
  padding: 0.4em 0.6em;
  font-size: 1em;
}

.swal2-popup.swal2-toast .swal2-success {
  border-color: #a5dc86;
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line] {
  position: absolute;
  width: 1.6em;
  height: 3em;
  border-radius: 50%;
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left] {
  top: -0.8em;
  left: -0.5em;
  transform: rotate(-45deg);
  transform-origin: 2em 2em;
  border-radius: 4em 0 0 4em;
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right] {
  top: -0.25em;
  left: 0.9375em;
  transform-origin: 0 1.5em;
  border-radius: 0 4em 4em 0;
}

.swal2-popup.swal2-toast .swal2-success .swal2-success-ring {
  width: 2em;
  height: 2em;
}

.swal2-popup.swal2-toast .swal2-success .swal2-success-fix {
  top: 0;
  left: 0.4375em;
  width: 0.4375em;
  height: 2.6875em;
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line] {
  height: 0.3125em;
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip] {
  top: 1.125em;
  left: 0.1875em;
  width: 0.75em;
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long] {
  top: 0.9375em;
  right: 0.1875em;
  width: 1.375em;
}

.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip {
  animation: swal2-toast-animate-success-line-tip 0.75s;
}

.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long {
  animation: swal2-toast-animate-success-line-long 0.75s;
}

.swal2-popup.swal2-toast.swal2-show {
  animation: swal2-toast-show 0.5s;
}

.swal2-popup.swal2-toast.swal2-hide {
  animation: swal2-toast-hide 0.1s forwards;
}

div:where(.swal2-container) {
  display: grid;
  position: fixed;
  z-index: 1060;
  inset: 0;
  box-sizing: border-box;
  grid-template-areas: "top-start     top            top-end" "center-start  center         center-end" "bottom-start  bottom-center  bottom-end";
  grid-template-rows: minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);
  height: 100%;
  padding: 0.625em;
  overflow-x: hidden;
  transition: background-color 0.1s;
  -webkit-overflow-scrolling: touch;
}

div:where(.swal2-container).swal2-backdrop-show, div:where(.swal2-container).swal2-noanimation {
  background: rgba(0, 0, 0, 0.4);
}

div:where(.swal2-container).swal2-backdrop-hide {
  background: transparent !important;
}

div:where(.swal2-container).swal2-top-start, div:where(.swal2-container).swal2-center-start, div:where(.swal2-container).swal2-bottom-start {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

div:where(.swal2-container).swal2-top, div:where(.swal2-container).swal2-center, div:where(.swal2-container).swal2-bottom {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

div:where(.swal2-container).swal2-top-end, div:where(.swal2-container).swal2-center-end, div:where(.swal2-container).swal2-bottom-end {
  grid-template-columns: auto auto minmax(0, 1fr);
}

div:where(.swal2-container).swal2-top-start > .swal2-popup {
  align-self: start;
}

div:where(.swal2-container).swal2-top > .swal2-popup {
  grid-column: 2;
  place-self: start center;
}

div:where(.swal2-container).swal2-top-end > .swal2-popup, div:where(.swal2-container).swal2-top-right > .swal2-popup {
  grid-column: 3;
  place-self: start end;
}

div:where(.swal2-container).swal2-center-start > .swal2-popup, div:where(.swal2-container).swal2-center-left > .swal2-popup {
  grid-row: 2;
  align-self: center;
}

div:where(.swal2-container).swal2-center > .swal2-popup {
  grid-column: 2;
  grid-row: 2;
  place-self: center center;
}

div:where(.swal2-container).swal2-center-end > .swal2-popup, div:where(.swal2-container).swal2-center-right > .swal2-popup {
  grid-column: 3;
  grid-row: 2;
  place-self: center end;
}

div:where(.swal2-container).swal2-bottom-start > .swal2-popup, div:where(.swal2-container).swal2-bottom-left > .swal2-popup {
  grid-column: 1;
  grid-row: 3;
  align-self: end;
}

div:where(.swal2-container).swal2-bottom > .swal2-popup {
  grid-column: 2;
  grid-row: 3;
  place-self: end center;
}

div:where(.swal2-container).swal2-bottom-end > .swal2-popup, div:where(.swal2-container).swal2-bottom-right > .swal2-popup {
  grid-column: 3;
  grid-row: 3;
  place-self: end end;
}

div:where(.swal2-container).swal2-grow-row > .swal2-popup, div:where(.swal2-container).swal2-grow-fullscreen > .swal2-popup {
  grid-column: 1/4;
  width: 100%;
}

div:where(.swal2-container).swal2-grow-column > .swal2-popup, div:where(.swal2-container).swal2-grow-fullscreen > .swal2-popup {
  grid-row: 1/4;
  align-self: stretch;
}

div:where(.swal2-container).swal2-no-transition {
  transition: none !important;
}

div:where(.swal2-container) div:where(.swal2-popup) {
  display: none;
  position: relative;
  box-sizing: border-box;
  grid-template-columns: minmax(0, 100%);
  width: 32em;
  max-width: 100%;
  padding: 0 0 1.25em;
  border: none;
  border-radius: 5px;
  background: #fff;
  color: #545454;
  font-family: inherit;
  font-size: 1rem;
}

div:where(.swal2-container) div:where(.swal2-popup):focus {
  outline: none;
}

div:where(.swal2-container) div:where(.swal2-popup).swal2-loading {
  overflow-y: hidden;
}

div:where(.swal2-container) h2:where(.swal2-title) {
  position: relative;
  max-width: 100%;
  margin: 0;
  padding: 0.8em 1em 0;
  color: inherit;
  font-size: 1.875em;
  font-weight: 600;
  text-align: center;
  text-transform: none;
  word-wrap: break-word;
}

div:where(.swal2-container) div:where(.swal2-actions) {
  display: flex;
  z-index: 1;
  box-sizing: border-box;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: auto;
  margin: 1.25em auto 0;
  padding: 0;
}

div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled[disabled] {
  opacity: 0.4;
}

div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:hover {
  background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
}

div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:active {
  background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
}

div:where(.swal2-container) div:where(.swal2-loader) {
  display: none;
  align-items: center;
  justify-content: center;
  width: 2.2em;
  height: 2.2em;
  margin: 0 1.875em;
  animation: swal2-rotate-loading 1.5s linear 0s infinite normal;
  border-width: 0.25em;
  border-style: solid;
  border-radius: 100%;
  border-color: #2778c4 transparent #2778c4 transparent;
}

div:where(.swal2-container) button:where(.swal2-styled) {
  margin: 0.3125em;
  padding: 0.625em 1.1em;
  transition: box-shadow 0.1s;
  box-shadow: 0 0 0 3px transparent;
  font-weight: 500;
}

div:where(.swal2-container) button:where(.swal2-styled):not([disabled]) {
  cursor: pointer;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-confirm {
  border: 0;
  border-radius: 0.25em;
  background: initial;
  background-color: #7066e0;
  color: #fff;
  font-size: 1em;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-confirm:focus {
  box-shadow: 0 0 0 3px rgba(112, 102, 224, 0.5);
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-deny {
  border: 0;
  border-radius: 0.25em;
  background: initial;
  background-color: #dc3741;
  color: #fff;
  font-size: 1em;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-deny:focus {
  box-shadow: 0 0 0 3px rgba(220, 55, 65, 0.5);
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel {
  border: 0;
  border-radius: 0.25em;
  background: initial;
  background-color: #6e7881;
  color: #fff;
  font-size: 1em;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel:focus {
  box-shadow: 0 0 0 3px rgba(110, 120, 129, 0.5);
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus {
  box-shadow: 0 0 0 3px rgba(100, 150, 200, 0.5);
}

div:where(.swal2-container) button:where(.swal2-styled):focus {
  outline: none;
}

div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner {
  border: 0;
}

div:where(.swal2-container) div:where(.swal2-footer) {
  margin: 1em 0 0;
  padding: 1em 1em 0;
  border-top: 1px solid #eee;
  color: inherit;
  font-size: 1em;
  text-align: center;
}

div:where(.swal2-container) .swal2-timer-progress-bar-container {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  grid-column: auto !important;
  overflow: hidden;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

div:where(.swal2-container) div:where(.swal2-timer-progress-bar) {
  width: 100%;
  height: 0.25em;
  background: rgba(0, 0, 0, 0.2);
}

div:where(.swal2-container) img:where(.swal2-image) {
  max-width: 100%;
  margin: 2em auto 1em;
}

div:where(.swal2-container) button:where(.swal2-close) {
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 1.2em;
  height: 1.2em;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: -1.2em;
  padding: 0;
  overflow: hidden;
  transition: color 0.1s, box-shadow 0.1s;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #ccc;
  font-family: monospace;
  font-size: 2.5em;
  cursor: pointer;
  justify-self: end;
}

div:where(.swal2-container) button:where(.swal2-close):hover {
  transform: none;
  background: transparent;
  color: #f27474;
}

div:where(.swal2-container) button:where(.swal2-close):focus {
  outline: none;
  box-shadow: inset 0 0 0 3px rgba(100, 150, 200, 0.5);
}

div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner {
  border: 0;
}

div:where(.swal2-container) .swal2-html-container {
  z-index: 1;
  justify-content: center;
  margin: 1em 1.6em 0.3em;
  padding: 0;
  overflow: auto;
  color: inherit;
  font-size: 1.125em;
  font-weight: normal;
  line-height: normal;
  text-align: center;
  word-wrap: break-word;
  word-break: break-word;
}

div:where(.swal2-container) input:where(.swal2-input),
div:where(.swal2-container) input:where(.swal2-file),
div:where(.swal2-container) textarea:where(.swal2-textarea),
div:where(.swal2-container) select:where(.swal2-select),
div:where(.swal2-container) div:where(.swal2-radio),
div:where(.swal2-container) label:where(.swal2-checkbox) {
  margin: 1em 2em 3px;
}

div:where(.swal2-container) input:where(.swal2-input),
div:where(.swal2-container) input:where(.swal2-file),
div:where(.swal2-container) textarea:where(.swal2-textarea) {
  box-sizing: border-box;
  width: auto;
  transition: border-color 0.1s, box-shadow 0.1s;
  border: 1px solid #d9d9d9;
  border-radius: 0.1875em;
  background: transparent;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;
  color: inherit;
  font-size: 1.125em;
}

div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,
div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,
div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror {
  border-color: #f27474 !important;
  box-shadow: 0 0 2px #f27474 !important;
}

div:where(.swal2-container) input:where(.swal2-input):focus,
div:where(.swal2-container) input:where(.swal2-file):focus,
div:where(.swal2-container) textarea:where(.swal2-textarea):focus {
  border: 1px solid #b4dbed;
  outline: none;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px rgba(100, 150, 200, 0.5);
}

div:where(.swal2-container) input:where(.swal2-input)::placeholder,
div:where(.swal2-container) input:where(.swal2-file)::placeholder,
div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder {
  color: #ccc;
}

div:where(.swal2-container) .swal2-range {
  margin: 1em 2em 3px;
  background: #fff;
}

div:where(.swal2-container) .swal2-range input {
  width: 80%;
}

div:where(.swal2-container) .swal2-range output {
  width: 20%;
  color: inherit;
  font-weight: 600;
  text-align: center;
}

div:where(.swal2-container) .swal2-range input,
div:where(.swal2-container) .swal2-range output {
  height: 2.625em;
  padding: 0;
  font-size: 1.125em;
  line-height: 2.625em;
}

div:where(.swal2-container) .swal2-input {
  height: 2.625em;
  padding: 0 0.75em;
}

div:where(.swal2-container) .swal2-file {
  width: 75%;
  margin-right: auto;
  margin-left: auto;
  background: transparent;
  font-size: 1.125em;
}

div:where(.swal2-container) .swal2-textarea {
  height: 6.75em;
  padding: 0.75em;
}

div:where(.swal2-container) .swal2-select {
  min-width: 50%;
  max-width: 100%;
  padding: 0.375em 0.625em;
  background: transparent;
  color: inherit;
  font-size: 1.125em;
}

div:where(.swal2-container) .swal2-radio,
div:where(.swal2-container) .swal2-checkbox {
  align-items: center;
  justify-content: center;
  background: #fff;
  color: inherit;
}

div:where(.swal2-container) .swal2-radio label,
div:where(.swal2-container) .swal2-checkbox label {
  margin: 0 0.6em;
  font-size: 1.125em;
}

div:where(.swal2-container) .swal2-radio input,
div:where(.swal2-container) .swal2-checkbox input {
  flex-shrink: 0;
  margin: 0 0.4em;
}

div:where(.swal2-container) label:where(.swal2-input-label) {
  display: flex;
  justify-content: center;
  margin: 1em auto 0;
}

div:where(.swal2-container) div:where(.swal2-validation-message) {
  align-items: center;
  justify-content: center;
  margin: 1em 0 0;
  padding: 0.625em;
  overflow: hidden;
  background: #f0f0f0;
  color: #666666;
  font-size: 1em;
  font-weight: 300;
}

div:where(.swal2-container) div:where(.swal2-validation-message)::before {
  content: "!";
  display: inline-block;
  width: 1.5em;
  min-width: 1.5em;
  height: 1.5em;
  margin: 0 0.625em;
  border-radius: 50%;
  background-color: #f27474;
  color: #fff;
  font-weight: 600;
  line-height: 1.5em;
  text-align: center;
}

div:where(.swal2-container) .swal2-progress-steps {
  flex-wrap: wrap;
  align-items: center;
  max-width: 100%;
  margin: 1.25em auto;
  padding: 0;
  background: transparent;
  font-weight: 600;
}

div:where(.swal2-container) .swal2-progress-steps li {
  display: inline-block;
  position: relative;
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step {
  z-index: 20;
  flex-shrink: 0;
  width: 2em;
  height: 2em;
  border-radius: 2em;
  background: #2778c4;
  color: #fff;
  line-height: 2em;
  text-align: center;
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step {
  background: #2778c4;
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step {
  background: #add8e6;
  color: #fff;
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step-line {
  background: #add8e6;
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line {
  z-index: 10;
  flex-shrink: 0;
  width: 2.5em;
  height: 0.4em;
  margin: 0 -1px;
  background: #2778c4;
}

div:where(.swal2-icon) {
  position: relative;
  box-sizing: content-box;
  justify-content: center;
  width: 5em;
  height: 5em;
  margin: 2.5em auto 0.6em;
  border: 0.25em solid transparent;
  border-radius: 50%;
  border-color: #000;
  font-family: inherit;
  line-height: 5em;
  cursor: default;
  user-select: none;
}

div:where(.swal2-icon) .swal2-icon-content {
  display: flex;
  align-items: center;
  font-size: 3.75em;
}

div:where(.swal2-icon).swal2-error {
  border-color: #f27474;
  color: #f27474;
}

div:where(.swal2-icon).swal2-error .swal2-x-mark {
  position: relative;
  flex-grow: 1;
}

div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line] {
  display: block;
  position: absolute;
  top: 2.3125em;
  width: 2.9375em;
  height: 0.3125em;
  border-radius: 0.125em;
  background-color: #f27474;
}

div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left] {
  left: 1.0625em;
  transform: rotate(45deg);
}

div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right] {
  right: 1em;
  transform: rotate(-45deg);
}

div:where(.swal2-icon).swal2-error.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}

div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark {
  animation: swal2-animate-error-x-mark 0.5s;
}

div:where(.swal2-icon).swal2-warning {
  border-color: #facea8;
  color: #f8bb86;
}

div:where(.swal2-icon).swal2-warning.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}

div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content {
  animation: swal2-animate-i-mark 0.5s;
}

div:where(.swal2-icon).swal2-info {
  border-color: #9de0f6;
  color: #3fc3ee;
}

div:where(.swal2-icon).swal2-info.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}

div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content {
  animation: swal2-animate-i-mark 0.8s;
}

div:where(.swal2-icon).swal2-question {
  border-color: #c9dae1;
  color: #87adbd;
}

div:where(.swal2-icon).swal2-question.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}

div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content {
  animation: swal2-animate-question-mark 0.8s;
}

div:where(.swal2-icon).swal2-success {
  border-color: #a5dc86;
  color: #a5dc86;
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line] {
  position: absolute;
  width: 3.75em;
  height: 7.5em;
  border-radius: 50%;
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left] {
  top: -0.4375em;
  left: -2.0635em;
  transform: rotate(-45deg);
  transform-origin: 3.75em 3.75em;
  border-radius: 7.5em 0 0 7.5em;
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right] {
  top: -0.6875em;
  left: 1.875em;
  transform: rotate(-45deg);
  transform-origin: 0 3.75em;
  border-radius: 0 7.5em 7.5em 0;
}

div:where(.swal2-icon).swal2-success .swal2-success-ring {
  position: absolute;
  z-index: 2;
  top: -0.25em;
  left: -0.25em;
  box-sizing: content-box;
  width: 100%;
  height: 100%;
  border: 0.25em solid rgba(165, 220, 134, 0.3);
  border-radius: 50%;
}

div:where(.swal2-icon).swal2-success .swal2-success-fix {
  position: absolute;
  z-index: 1;
  top: 0.5em;
  left: 1.625em;
  width: 0.4375em;
  height: 5.625em;
  transform: rotate(-45deg);
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-line] {
  display: block;
  position: absolute;
  z-index: 2;
  height: 0.3125em;
  border-radius: 0.125em;
  background-color: #a5dc86;
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip] {
  top: 2.875em;
  left: 0.8125em;
  width: 1.5625em;
  transform: rotate(45deg);
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long] {
  top: 2.375em;
  right: 0.5em;
  width: 2.9375em;
  transform: rotate(-45deg);
}

div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip {
  animation: swal2-animate-success-line-tip 0.75s;
}

div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long {
  animation: swal2-animate-success-line-long 0.75s;
}

div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right {
  animation: swal2-rotate-success-circular-line 4.25s ease-in;
}

[class^=swal2] {
  -webkit-tap-highlight-color: transparent;
}

.swal2-show {
  animation: swal2-show 0.3s;
}

.swal2-hide {
  animation: swal2-hide 0.15s forwards;
}

.swal2-noanimation {
  transition: none;
}

.swal2-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

.swal2-rtl .swal2-close {
  margin-right: initial;
  margin-left: 0;
}

.swal2-rtl .swal2-timer-progress-bar {
  right: 0;
  left: auto;
}

@keyframes swal2-toast-show {
  0% {
    transform: translateY(-0.625em) rotateZ(2deg);
  }
  33% {
    transform: translateY(0) rotateZ(-2deg);
  }
  66% {
    transform: translateY(0.3125em) rotateZ(2deg);
  }
  100% {
    transform: translateY(0) rotateZ(0deg);
  }
}
@keyframes swal2-toast-hide {
  100% {
    transform: rotateZ(1deg);
    opacity: 0;
  }
}
@keyframes swal2-toast-animate-success-line-tip {
  0% {
    top: 0.5625em;
    left: 0.0625em;
    width: 0;
  }
  54% {
    top: 0.125em;
    left: 0.125em;
    width: 0;
  }
  70% {
    top: 0.625em;
    left: -0.25em;
    width: 1.625em;
  }
  84% {
    top: 1.0625em;
    left: 0.75em;
    width: 0.5em;
  }
  100% {
    top: 1.125em;
    left: 0.1875em;
    width: 0.75em;
  }
}
@keyframes swal2-toast-animate-success-line-long {
  0% {
    top: 1.625em;
    right: 1.375em;
    width: 0;
  }
  65% {
    top: 1.25em;
    right: 0.9375em;
    width: 0;
  }
  84% {
    top: 0.9375em;
    right: 0;
    width: 1.125em;
  }
  100% {
    top: 0.9375em;
    right: 0.1875em;
    width: 1.375em;
  }
}
@keyframes swal2-show {
  0% {
    transform: scale(0.7);
  }
  45% {
    transform: scale(1.05);
  }
  80% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes swal2-hide {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.5);
    opacity: 0;
  }
}
@keyframes swal2-animate-success-line-tip {
  0% {
    top: 1.1875em;
    left: 0.0625em;
    width: 0;
  }
  54% {
    top: 1.0625em;
    left: 0.125em;
    width: 0;
  }
  70% {
    top: 2.1875em;
    left: -0.375em;
    width: 3.125em;
  }
  84% {
    top: 3em;
    left: 1.3125em;
    width: 1.0625em;
  }
  100% {
    top: 2.8125em;
    left: 0.8125em;
    width: 1.5625em;
  }
}
@keyframes swal2-animate-success-line-long {
  0% {
    top: 3.375em;
    right: 2.875em;
    width: 0;
  }
  65% {
    top: 3.375em;
    right: 2.875em;
    width: 0;
  }
  84% {
    top: 2.1875em;
    right: 0;
    width: 3.4375em;
  }
  100% {
    top: 2.375em;
    right: 0.5em;
    width: 2.9375em;
  }
}
@keyframes swal2-rotate-success-circular-line {
  0% {
    transform: rotate(-45deg);
  }
  5% {
    transform: rotate(-45deg);
  }
  12% {
    transform: rotate(-405deg);
  }
  100% {
    transform: rotate(-405deg);
  }
}
@keyframes swal2-animate-error-x-mark {
  0% {
    margin-top: 1.625em;
    transform: scale(0.4);
    opacity: 0;
  }
  50% {
    margin-top: 1.625em;
    transform: scale(0.4);
    opacity: 0;
  }
  80% {
    margin-top: -0.375em;
    transform: scale(1.15);
  }
  100% {
    margin-top: 0;
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes swal2-animate-error-icon {
  0% {
    transform: rotateX(100deg);
    opacity: 0;
  }
  100% {
    transform: rotateX(0deg);
    opacity: 1;
  }
}
@keyframes swal2-rotate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes swal2-animate-question-mark {
  0% {
    transform: rotateY(-360deg);
  }
  100% {
    transform: rotateY(0);
  }
}
@keyframes swal2-animate-i-mark {
  0% {
    transform: rotateZ(45deg);
    opacity: 0;
  }
  25% {
    transform: rotateZ(-25deg);
    opacity: 0.4;
  }
  50% {
    transform: rotateZ(15deg);
    opacity: 0.8;
  }
  75% {
    transform: rotateZ(-5deg);
    opacity: 1;
  }
  100% {
    transform: rotateX(0);
    opacity: 1;
  }
}
body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) {
  overflow: hidden;
}

body.swal2-height-auto {
  height: auto !important;
}

body.swal2-no-backdrop .swal2-container {
  background-color: transparent !important;
  pointer-events: none;
}

body.swal2-no-backdrop .swal2-container .swal2-popup {
  pointer-events: all;
}

body.swal2-no-backdrop .swal2-container .swal2-modal {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}

@media print {
  body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) {
    overflow-y: scroll !important;
  }
  body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) > [aria-hidden=true] {
    display: none;
  }
  body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container {
    position: static !important;
  }
}
body.swal2-toast-shown .swal2-container {
  box-sizing: border-box;
  width: 360px;
  max-width: 100%;
  background-color: transparent;
  pointer-events: none;
}

body.swal2-toast-shown .swal2-container.swal2-top {
  inset: 0 auto auto 50%;
  transform: translateX(-50%);
}

body.swal2-toast-shown .swal2-container.swal2-top-end, body.swal2-toast-shown .swal2-container.swal2-top-right {
  inset: 0 0 auto auto;
}

body.swal2-toast-shown .swal2-container.swal2-top-start, body.swal2-toast-shown .swal2-container.swal2-top-left {
  inset: 0 auto auto 0;
}

body.swal2-toast-shown .swal2-container.swal2-center-start, body.swal2-toast-shown .swal2-container.swal2-center-left {
  inset: 50% auto auto 0;
  transform: translateY(-50%);
}

body.swal2-toast-shown .swal2-container.swal2-center {
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
}

body.swal2-toast-shown .swal2-container.swal2-center-end, body.swal2-toast-shown .swal2-container.swal2-center-right {
  inset: 50% 0 auto auto;
  transform: translateY(-50%);
}

body.swal2-toast-shown .swal2-container.swal2-bottom-start, body.swal2-toast-shown .swal2-container.swal2-bottom-left {
  inset: auto auto 0 0;
}

body.swal2-toast-shown .swal2-container.swal2-bottom {
  inset: auto auto 0 50%;
  transform: translateX(-50%);
}

body.swal2-toast-shown .swal2-container.swal2-bottom-end, body.swal2-toast-shown .swal2-container.swal2-bottom-right {
  inset: auto 0 0 auto;
}

.btnsa {
  display: inline-block;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid transparent;
  margin: 0 0.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  line-height: 1.25;
  border-radius: 0.25rem;
  transition: all 0.15s ease-in-out;
}

.btnsa:focus, .btnsa:hover {
  text-decoration: none;
}

.btnsa:focus, .btnsa.focus {
  outline: 0;
  box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}

.btnsa.disabled, .btnsa:disabled {
  opacity: 0.65;
}

.btnsa:active, .btnsa.active {
  background-image: none;
}

a.btnsa.disabled,
fieldset[disabled] a.btnsa {
  pointer-events: none;
}

.btnsa-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btnsa-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btnsa-primary:focus, .btnsa-primary.focus {
  box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.5);
}

.btnsa-primary.disabled, .btnsa-primary:disabled {
  background-color: #007bff;
  border-color: #007bff;
}

.btnsa-primary:active, .btnsa-primary.active,
.show > .btnsa-primary.dropdown-toggle {
  background-color: #0069d9;
  background-image: none;
  border-color: #0062cc;
}

.btnsa-secondary {
  color: #fff;
  background-color: #868e96;
  border-color: #868e96;
}

.btnsa-secondary:hover {
  color: #fff;
  background-color: #727b84;
  border-color: #6c757d;
}

.btnsa-secondary:focus, .btnsa-secondary.focus {
  box-shadow: 0 0 0 3px rgba(134, 142, 150, 0.5);
}

.btnsa-secondary.disabled, .btnsa-secondary:disabled {
  background-color: #868e96;
  border-color: #868e96;
}

.btnsa-secondary:active, .btnsa-secondary.active,
.show > .btnsa-secondary.dropdown-toggle {
  background-color: #727b84;
  background-image: none;
  border-color: #6c757d;
}

.btnsa-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btnsa-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btnsa-success:focus, .btnsa-success.focus {
  box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.5);
}

.btnsa-success.disabled, .btnsa-success:disabled {
  background-color: #28a745;
  border-color: #28a745;
}

.btnsa-success:active, .btnsa-success.active,
.show > .btnsa-success.dropdown-toggle {
  background-color: #218838;
  background-image: none;
  border-color: #1e7e34;
}

.btnsa-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btnsa-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btnsa-info:focus, .btnsa-info.focus {
  box-shadow: 0 0 0 3px rgba(23, 162, 184, 0.5);
}

.btnsa-info.disabled, .btnsa-info:disabled {
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btnsa-info:active, .btnsa-info.active,
.show > .btnsa-info.dropdown-toggle {
  background-color: #138496;
  background-image: none;
  border-color: #117a8b;
}

.btnsa-warning {
  color: #111;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btnsa-warning:hover {
  color: #111;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btnsa-warning:focus, .btnsa-warning.focus {
  box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.5);
}

.btnsa-warning.disabled, .btnsa-warning:disabled {
  background-color: #ffc107;
  border-color: #ffc107;
}

.btnsa-warning:active, .btnsa-warning.active,
.show > .btnsa-warning.dropdown-toggle {
  background-color: #e0a800;
  background-image: none;
  border-color: #d39e00;
}

.btnsa-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btnsa-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btnsa-danger:focus, .btnsa-danger.focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.5);
}

.btnsa-danger.disabled, .btnsa-danger:disabled {
  background-color: #dc3545;
  border-color: #dc3545;
}

.btnsa-danger:active, .btnsa-danger.active,
.show > .btnsa-danger.dropdown-toggle {
  background-color: #c82333;
  background-image: none;
  border-color: #bd2130;
}

.btnsa-light {
  color: #111;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btnsa-light:hover {
  color: #111;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btnsa-light:focus, .btnsa-light.focus {
  box-shadow: 0 0 0 3px rgba(248, 249, 250, 0.5);
}

.btnsa-light.disabled, .btnsa-light:disabled {
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btnsa-light:active, .btnsa-light.active,
.show > .btnsa-light.dropdown-toggle {
  background-color: #e2e6ea;
  background-image: none;
  border-color: #dae0e5;
}

.btnsa-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btnsa-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btnsa-dark:focus, .btnsa-dark.focus {
  box-shadow: 0 0 0 3px rgba(52, 58, 64, 0.5);
}

.btnsa-dark.disabled, .btnsa-dark:disabled {
  background-color: #343a40;
  border-color: #343a40;
}

.btnsa-dark:active, .btnsa-dark.active,
.show > .btnsa-dark.dropdown-toggle {
  background-color: #23272b;
  background-image: none;
  border-color: #1d2124;
}

.btnsa-outline-primary {
  color: #007bff;
  background-color: transparent;
  background-image: none;
  border-color: #007bff;
}

.btnsa-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btnsa-outline-primary:focus, .btnsa-outline-primary.focus {
  box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.5);
}

.btnsa-outline-primary.disabled, .btnsa-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btnsa-outline-primary:active, .btnsa-outline-primary.active,
.show > .btnsa-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btnsa-outline-secondary {
  color: #868e96;
  background-color: transparent;
  background-image: none;
  border-color: #868e96;
}

.btnsa-outline-secondary:hover {
  color: #fff;
  background-color: #868e96;
  border-color: #868e96;
}

.btnsa-outline-secondary:focus, .btnsa-outline-secondary.focus {
  box-shadow: 0 0 0 3px rgba(134, 142, 150, 0.5);
}

.btnsa-outline-secondary.disabled, .btnsa-outline-secondary:disabled {
  color: #868e96;
  background-color: transparent;
}

.btnsa-outline-secondary:active, .btnsa-outline-secondary.active,
.show > .btnsa-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #868e96;
  border-color: #868e96;
}

.btnsa-outline-success {
  color: #28a745;
  background-color: transparent;
  background-image: none;
  border-color: #28a745;
}

.btnsa-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btnsa-outline-success:focus, .btnsa-outline-success.focus {
  box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.5);
}

.btnsa-outline-success.disabled, .btnsa-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btnsa-outline-success:active, .btnsa-outline-success.active,
.show > .btnsa-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btnsa-outline-info {
  color: #17a2b8;
  background-color: transparent;
  background-image: none;
  border-color: #17a2b8;
}

.btnsa-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btnsa-outline-info:focus, .btnsa-outline-info.focus {
  box-shadow: 0 0 0 3px rgba(23, 162, 184, 0.5);
}

.btnsa-outline-info.disabled, .btnsa-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btnsa-outline-info:active, .btnsa-outline-info.active,
.show > .btnsa-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btnsa-outline-warning {
  color: #ffc107;
  background-color: transparent;
  background-image: none;
  border-color: #ffc107;
}

.btnsa-outline-warning:hover {
  color: #fff;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btnsa-outline-warning:focus, .btnsa-outline-warning.focus {
  box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.5);
}

.btnsa-outline-warning.disabled, .btnsa-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btnsa-outline-warning:active, .btnsa-outline-warning.active,
.show > .btnsa-outline-warning.dropdown-toggle {
  color: #fff;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btnsa-outline-danger {
  color: #dc3545;
  background-color: transparent;
  background-image: none;
  border-color: #dc3545;
}

.btnsa-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btnsa-outline-danger:focus, .btnsa-outline-danger.focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.5);
}

.btnsa-outline-danger.disabled, .btnsa-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btnsa-outline-danger:active, .btnsa-outline-danger.active,
.show > .btnsa-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btnsa-outline-light {
  color: #f8f9fa;
  background-color: transparent;
  background-image: none;
  border-color: #f8f9fa;
}

.btnsa-outline-light:hover {
  color: #fff;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btnsa-outline-light:focus, .btnsa-outline-light.focus {
  box-shadow: 0 0 0 3px rgba(248, 249, 250, 0.5);
}

.btnsa-outline-light.disabled, .btnsa-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btnsa-outline-light:active, .btnsa-outline-light.active,
.show > .btnsa-outline-light.dropdown-toggle {
  color: #fff;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btnsa-outline-dark {
  color: #343a40;
  background-color: transparent;
  background-image: none;
  border-color: #343a40;
}

.btnsa-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btnsa-outline-dark:focus, .btnsa-outline-dark.focus {
  box-shadow: 0 0 0 3px rgba(52, 58, 64, 0.5);
}

.btnsa-outline-dark.disabled, .btnsa-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btnsa-outline-dark:active, .btnsa-outline-dark.active,
.show > .btnsa-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btnsa-link {
  font-weight: normal;
  color: #007bff;
  border-radius: 0;
}

.btnsa-link, .btnsa-link:active, .btnsa-link.active, .btnsa-link:disabled {
  background-color: transparent;
}

.btnsa-link, .btnsa-link:focus, .btnsa-link:active {
  border-color: transparent;
  box-shadow: none;
}

.btnsa-link:hover {
  border-color: transparent;
}

.btnsa-link:focus, .btnsa-link:hover {
  color: #0056b3;
  text-decoration: underline;
  background-color: transparent;
}

.btnsa-link:disabled {
  color: #868e96;
}

.btnsa-link:disabled:focus, .btnsa-link:disabled:hover {
  text-decoration: none;
}

.btnsa-lg, .btnsa-group-lg > .btnsa {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btnsa-sm, .btnsa-group-sm > .btnsa {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btnsa-block {
  display: block;
  width: 100%;
}

.btnsa-block + .btnsa-block {
  margin-top: 0.5rem;
}

input[type=submit].btnsa-block,
input[type=reset].btnsa-block,
input[type=button].btnsa-block {
  width: 100%;
}

:root {
  --navy: #062F5F;
  --navy-dk: #03152e;
  --navy-mid: #0a3c75;
  --blue: #97C0E0;
  --blue-dk: #5b8fbf;
  --ink: #0d1a30;
  --paper: #ffffff;
  --paper-2: #f4f6fa;
  --cream: #f3ece0;
  --line: #dde4ee;
  --accent: #d31a3a;
  --hd: 'Anton', 'Bebas Neue', system-ui, sans-serif;
  --hd2: 'Bebas Neue', system-ui, sans-serif;
  --jp: Zen Kaku Gothic New, sans-serif;
  --jpb: Zen Kaku Gothic New, sans-serif;
  --script: Italianno, cursive;
}

/* ==============================================
   Modern CSS Reset (Based on Andy Bell & Tailwind Preflight)
   ============================================== */
/* 1. 全要素に box-sizing: border-box を適用（サイズ計算を直感的に） */
*, *::before, *::after {
  box-sizing: border-box;
}

/* 2. デフォルトのマージンをリセット */
body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd {
  margin: 0;
}

/* 3. bodyの基本設定 */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #0d1a30;
  background-color: #ffffff;
  /* iOSでの文字サイズ自動調整を防止 */
  -webkit-text-size-adjust: 100%;
}

/* 4. リストのスタイル調整（クラスがある時だけマーカーを消すアプローチもありますが、ここでは汎用的にリセット） */
ul, ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* 5. 画像をレスポンシブ対応に */
img, picture {
  max-width: 100%;
  display: block;
  height: auto;
}

/* 6. input, button, textarea, select のフォントを継承 */
input, button, textarea, select {
  font: inherit;
}

/* 7. ボタンのスタイルリセット（背景などを透明に） */
button {
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
}

/* 8. 印刷設定（既存のコードを維持） */
@media print {
  @page {
    size: A4;
    margin: 1cm;
  }
  body {
    min-width: 100% !important;
  }
  .no-print, header, footer, nav {
    display: none !important;
  }
}
/**
 * Fonts Integration
 * (Combined font.css, icons.css, yakuhan.css)
 */
/* --- YakuHanJP (約物半角) --- */
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 100;
  src: url("../fonts/YakuHanJP/YakuHanJP-Thin.woff2") format("woff2"), url("../fonts/YakuHanJP/YakuHanJP-Thin.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/YakuHanJP/YakuHanJP-Light.woff2") format("woff2"), url("../fonts/YakuHanJP/YakuHanJP-Light.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/YakuHanJP/YakuHanJP-Regular.woff2") format("woff2"), url("../fonts/YakuHanJP/YakuHanJP-Regular.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2"), url("../fonts/YakuHanJP/YakuHanJP-Medium.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/YakuHanJP/YakuHanJP-Bold.woff2") format("woff2"), url("../fonts/YakuHanJP/YakuHanJP-Bold.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/YakuHanJP/YakuHanJP-Black.woff2") format("woff2"), url("../fonts/YakuHanJP/YakuHanJP-Black.woff") format("woff");
}
/* --- Custom Fonts (if any from font.css) --- */
@font-face {
  font-family: "Aqua";
  src: url("../fonts/aqua.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
.fa-solid,
.fa-regular,
.fa-brands,
.fa-classic,
.fas,
.far,
.fab,
.fa {
  --_fa-family: var(--fa-family, var(--fa-style-family, 'Font Awesome 7 Free'));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: var(--fa-display, inline-block);
  font-family: var(--_fa-family);
  font-feature-settings: normal;
  font-style: normal;
  font-synthesis: none;
  font-variant: normal;
  font-weight: var(--fa-style, 900);
  line-height: 1;
  text-align: center;
  text-rendering: auto;
  width: var(--fa-width, 1.25em);
}

:is(.fas,
.far,
.fab,
.fa-solid,
.fa-regular,
.fa-brands,
.fa-classic,
.fa)::before {
  content: var(--fa)/"";
}

@supports not (content: ""/"") {
  :is(.fas,
  .far,
  .fab,
  .fa-solid,
  .fa-regular,
  .fa-brands,
  .fa-classic,
  .fa)::before {
    content: var(--fa);
  }
}
.fa-1x {
  font-size: 1em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-6x {
  font-size: 6em;
}

.fa-7x {
  font-size: 7em;
}

.fa-8x {
  font-size: 8em;
}

.fa-9x {
  font-size: 9em;
}

.fa-10x {
  font-size: 10em;
}

.fa-2xs {
  font-size: calc(10 / 16 * 1em); /* converts a 10px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 10 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 10 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}

.fa-xs {
  font-size: calc(12 / 16 * 1em); /* converts a 12px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 12 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 12 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}

.fa-sm {
  font-size: calc(14 / 16 * 1em); /* converts a 14px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 14 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 14 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}

.fa-lg {
  font-size: calc(20 / 16 * 1em); /* converts a 20px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 20 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 20 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}

.fa-xl {
  font-size: calc(24 / 16 * 1em); /* converts a 24px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 24 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 24 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}

.fa-2xl {
  font-size: calc(32 / 16 * 1em); /* converts a 32px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 32 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 32 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}

.fa-width-auto {
  --fa-width: auto;
}

.fa-fw,
.fa-width-fixed {
  --fa-width: 1.25em;
}

.fa-ul {
  list-style-type: none;
  margin-inline-start: var(--fa-li-margin, 2.5em);
  padding-inline-start: 0;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  inset-inline-start: calc(-1 * var(--fa-li-width, 2em));
  position: absolute;
  text-align: center;
  width: var(--fa-li-width, 2em);
  line-height: inherit;
}

/* Heads Up: Bordered Icons will not be supported in the future!
  - This feature will be deprecated in the next major release of Font Awesome (v8)!
  - You may continue to use it in this version *v7), but it will not be supported in Font Awesome v8.
*/
/* Notes:
* --@{v.$css-prefix}-border-width = 1/16 by default (to render as ~1px based on a 16px default font-size)
* --@{v.$css-prefix}-border-padding =
  ** 3/16 for vertical padding (to give ~2px of vertical whitespace around an icon considering it's vertical alignment)
  ** 4/16 for horizontal padding (to give ~4px of horizontal whitespace around an icon)
*/
.fa-border {
  border-color: var(--fa-border-color, #eee);
  border-radius: var(--fa-border-radius, 0.1em);
  border-style: var(--fa-border-style, solid);
  border-width: var(--fa-border-width, 0.0625em);
  box-sizing: var(--fa-border-box-sizing, content-box);
  padding: var(--fa-border-padding, 0.1875em 0.25em);
}

.fa-pull-left,
.fa-pull-start {
  float: inline-start;
  margin-inline-end: var(--fa-pull-margin, 0.3em);
}

.fa-pull-right,
.fa-pull-end {
  float: inline-end;
  margin-inline-start: var(--fa-pull-margin, 0.3em);
}

.fa-beat {
  animation-name: fa-beat;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, ease-in-out);
}

.fa-bounce {
  animation-name: fa-bounce;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}

.fa-fade {
  animation-name: fa-fade;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}

.fa-beat-fade {
  animation-name: fa-beat-fade;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}

.fa-flip {
  animation-name: fa-flip;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, ease-in-out);
}

.fa-shake {
  animation-name: fa-shake;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, linear);
}

.fa-spin {
  animation-name: fa-spin;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 2s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, linear);
}

.fa-spin-reverse {
  --fa-animation-direction: reverse;
}

.fa-pulse,
.fa-spin-pulse {
  animation-name: fa-spin;
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, steps(8));
}

@media (prefers-reduced-motion: reduce) {
  .fa-beat,
  .fa-bounce,
  .fa-fade,
  .fa-beat-fade,
  .fa-flip,
  .fa-pulse,
  .fa-shake,
  .fa-spin,
  .fa-spin-pulse {
    animation: none !important;
    transition: none !important;
  }
}
@keyframes fa-beat {
  0%, 90% {
    transform: scale(1);
  }
  45% {
    transform: scale(var(--fa-beat-scale, 1.25));
  }
}
@keyframes fa-bounce {
  0% {
    transform: scale(1, 1) translateY(0);
  }
  10% {
    transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
  }
  30% {
    transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
  }
  50% {
    transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
  }
  57% {
    transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
  }
  64% {
    transform: scale(1, 1) translateY(0);
  }
  100% {
    transform: scale(1, 1) translateY(0);
  }
}
@keyframes fa-fade {
  50% {
    opacity: var(--fa-fade-opacity, 0.4);
  }
}
@keyframes fa-beat-fade {
  0%, 100% {
    opacity: var(--fa-beat-fade-opacity, 0.4);
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(var(--fa-beat-fade-scale, 1.125));
  }
}
@keyframes fa-flip {
  50% {
    transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
  }
}
@keyframes fa-shake {
  0% {
    transform: rotate(-15deg);
  }
  4% {
    transform: rotate(15deg);
  }
  8%, 24% {
    transform: rotate(-18deg);
  }
  12%, 28% {
    transform: rotate(18deg);
  }
  16% {
    transform: rotate(-22deg);
  }
  20% {
    transform: rotate(22deg);
  }
  32% {
    transform: rotate(-12deg);
  }
  36% {
    transform: rotate(12deg);
  }
  40%, 100% {
    transform: rotate(0deg);
  }
}
@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  transform: rotate(90deg);
}

.fa-rotate-180 {
  transform: rotate(180deg);
}

.fa-rotate-270 {
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  transform: scale(1, -1);
}

.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
  transform: scale(-1, -1);
}

.fa-rotate-by {
  transform: rotate(var(--fa-rotate-angle, 0));
}

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em;
}

.fa-stack-1x,
.fa-stack-2x {
  --fa-width: 100%;
  inset: 0;
  position: absolute;
  text-align: center;
  width: var(--fa-width);
  z-index: var(--fa-stack-z-index, auto);
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: var(--fa-inverse, #fff);
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-0 {
  --fa: "\30 ";
}

.fa-1 {
  --fa: "\31 ";
}

.fa-2 {
  --fa: "\32 ";
}

.fa-3 {
  --fa: "\33 ";
}

.fa-4 {
  --fa: "\34 ";
}

.fa-5 {
  --fa: "\35 ";
}

.fa-6 {
  --fa: "\36 ";
}

.fa-7 {
  --fa: "\37 ";
}

.fa-8 {
  --fa: "\38 ";
}

.fa-9 {
  --fa: "\39 ";
}

.fa-exclamation {
  --fa: "\!";
}

.fa-hashtag {
  --fa: "\#";
}

.fa-dollar-sign {
  --fa: "\$";
}

.fa-dollar {
  --fa: "\$";
}

.fa-usd {
  --fa: "\$";
}

.fa-percent {
  --fa: "\%";
}

.fa-percentage {
  --fa: "\%";
}

.fa-asterisk {
  --fa: "\*";
}

.fa-plus {
  --fa: "\+";
}

.fa-add {
  --fa: "\+";
}

.fa-less-than {
  --fa: "\<";
}

.fa-equals {
  --fa: "\=";
}

.fa-greater-than {
  --fa: "\>";
}

.fa-question {
  --fa: "\?";
}

.fa-at {
  --fa: "\@";
}

.fa-a {
  --fa: "A";
}

.fa-b {
  --fa: "B";
}

.fa-c {
  --fa: "C";
}

.fa-d {
  --fa: "D";
}

.fa-e {
  --fa: "E";
}

.fa-f {
  --fa: "F";
}

.fa-g {
  --fa: "G";
}

.fa-h {
  --fa: "H";
}

.fa-i {
  --fa: "I";
}

.fa-j {
  --fa: "J";
}

.fa-k {
  --fa: "K";
}

.fa-l {
  --fa: "L";
}

.fa-m {
  --fa: "M";
}

.fa-n {
  --fa: "N";
}

.fa-o {
  --fa: "O";
}

.fa-p {
  --fa: "P";
}

.fa-q {
  --fa: "Q";
}

.fa-r {
  --fa: "R";
}

.fa-s {
  --fa: "S";
}

.fa-t {
  --fa: "T";
}

.fa-u {
  --fa: "U";
}

.fa-v {
  --fa: "V";
}

.fa-w {
  --fa: "W";
}

.fa-x {
  --fa: "X";
}

.fa-y {
  --fa: "Y";
}

.fa-z {
  --fa: "Z";
}

.fa-faucet {
  --fa: "\e005";
}

.fa-faucet-drip {
  --fa: "\e006";
}

.fa-house-chimney-window {
  --fa: "\e00d";
}

.fa-house-signal {
  --fa: "\e012";
}

.fa-temperature-arrow-down {
  --fa: "\e03f";
}

.fa-temperature-down {
  --fa: "\e03f";
}

.fa-temperature-arrow-up {
  --fa: "\e040";
}

.fa-temperature-up {
  --fa: "\e040";
}

.fa-trailer {
  --fa: "\e041";
}

.fa-bacteria {
  --fa: "\e059";
}

.fa-bacterium {
  --fa: "\e05a";
}

.fa-box-tissue {
  --fa: "\e05b";
}

.fa-hand-holding-medical {
  --fa: "\e05c";
}

.fa-hand-sparkles {
  --fa: "\e05d";
}

.fa-hands-bubbles {
  --fa: "\e05e";
}

.fa-hands-wash {
  --fa: "\e05e";
}

.fa-handshake-slash {
  --fa: "\e060";
}

.fa-handshake-alt-slash {
  --fa: "\e060";
}

.fa-handshake-simple-slash {
  --fa: "\e060";
}

.fa-head-side-cough {
  --fa: "\e061";
}

.fa-head-side-cough-slash {
  --fa: "\e062";
}

.fa-head-side-mask {
  --fa: "\e063";
}

.fa-head-side-virus {
  --fa: "\e064";
}

.fa-house-chimney-user {
  --fa: "\e065";
}

.fa-house-laptop {
  --fa: "\e066";
}

.fa-laptop-house {
  --fa: "\e066";
}

.fa-lungs-virus {
  --fa: "\e067";
}

.fa-people-arrows {
  --fa: "\e068";
}

.fa-people-arrows-left-right {
  --fa: "\e068";
}

.fa-plane-slash {
  --fa: "\e069";
}

.fa-pump-medical {
  --fa: "\e06a";
}

.fa-pump-soap {
  --fa: "\e06b";
}

.fa-shield-virus {
  --fa: "\e06c";
}

.fa-sink {
  --fa: "\e06d";
}

.fa-soap {
  --fa: "\e06e";
}

.fa-stopwatch-20 {
  --fa: "\e06f";
}

.fa-shop-slash {
  --fa: "\e070";
}

.fa-store-alt-slash {
  --fa: "\e070";
}

.fa-store-slash {
  --fa: "\e071";
}

.fa-toilet-paper-slash {
  --fa: "\e072";
}

.fa-users-slash {
  --fa: "\e073";
}

.fa-virus {
  --fa: "\e074";
}

.fa-virus-slash {
  --fa: "\e075";
}

.fa-viruses {
  --fa: "\e076";
}

.fa-vest {
  --fa: "\e085";
}

.fa-vest-patches {
  --fa: "\e086";
}

.fa-arrow-trend-down {
  --fa: "\e097";
}

.fa-arrow-trend-up {
  --fa: "\e098";
}

.fa-arrow-up-from-bracket {
  --fa: "\e09a";
}

.fa-austral-sign {
  --fa: "\e0a9";
}

.fa-baht-sign {
  --fa: "\e0ac";
}

.fa-bitcoin-sign {
  --fa: "\e0b4";
}

.fa-bolt-lightning {
  --fa: "\e0b7";
}

.fa-book-bookmark {
  --fa: "\e0bb";
}

.fa-camera-rotate {
  --fa: "\e0d8";
}

.fa-cedi-sign {
  --fa: "\e0df";
}

.fa-chart-column {
  --fa: "\e0e3";
}

.fa-chart-gantt {
  --fa: "\e0e4";
}

.fa-clapperboard {
  --fa: "\e131";
}

.fa-clover {
  --fa: "\e139";
}

.fa-code-compare {
  --fa: "\e13a";
}

.fa-code-fork {
  --fa: "\e13b";
}

.fa-code-pull-request {
  --fa: "\e13c";
}

.fa-colon-sign {
  --fa: "\e140";
}

.fa-cruzeiro-sign {
  --fa: "\e152";
}

.fa-display {
  --fa: "\e163";
}

.fa-dong-sign {
  --fa: "\e169";
}

.fa-elevator {
  --fa: "\e16d";
}

.fa-filter-circle-xmark {
  --fa: "\e17b";
}

.fa-florin-sign {
  --fa: "\e184";
}

.fa-folder-closed {
  --fa: "\e185";
}

.fa-franc-sign {
  --fa: "\e18f";
}

.fa-guarani-sign {
  --fa: "\e19a";
}

.fa-gun {
  --fa: "\e19b";
}

.fa-hands-clapping {
  --fa: "\e1a8";
}

.fa-house-user {
  --fa: "\e1b0";
}

.fa-home-user {
  --fa: "\e1b0";
}

.fa-indian-rupee-sign {
  --fa: "\e1bc";
}

.fa-indian-rupee {
  --fa: "\e1bc";
}

.fa-inr {
  --fa: "\e1bc";
}

.fa-kip-sign {
  --fa: "\e1c4";
}

.fa-lari-sign {
  --fa: "\e1c8";
}

.fa-litecoin-sign {
  --fa: "\e1d3";
}

.fa-manat-sign {
  --fa: "\e1d5";
}

.fa-mask-face {
  --fa: "\e1d7";
}

.fa-mill-sign {
  --fa: "\e1ed";
}

.fa-money-bills {
  --fa: "\e1f3";
}

.fa-naira-sign {
  --fa: "\e1f6";
}

.fa-notdef {
  --fa: "\e1fe";
}

.fa-panorama {
  --fa: "\e209";
}

.fa-peseta-sign {
  --fa: "\e221";
}

.fa-peso-sign {
  --fa: "\e222";
}

.fa-plane-up {
  --fa: "\e22d";
}

.fa-rupiah-sign {
  --fa: "\e23d";
}

.fa-stairs {
  --fa: "\e289";
}

.fa-timeline {
  --fa: "\e29c";
}

.fa-truck-front {
  --fa: "\e2b7";
}

.fa-turkish-lira-sign {
  --fa: "\e2bb";
}

.fa-try {
  --fa: "\e2bb";
}

.fa-turkish-lira {
  --fa: "\e2bb";
}

.fa-vault {
  --fa: "\e2c5";
}

.fa-wand-magic-sparkles {
  --fa: "\e2ca";
}

.fa-magic-wand-sparkles {
  --fa: "\e2ca";
}

.fa-wheat-awn {
  --fa: "\e2cd";
}

.fa-wheat-alt {
  --fa: "\e2cd";
}

.fa-wheelchair-move {
  --fa: "\e2ce";
}

.fa-wheelchair-alt {
  --fa: "\e2ce";
}

.fa-bangladeshi-taka-sign {
  --fa: "\e2e6";
}

.fa-bowl-rice {
  --fa: "\e2eb";
}

.fa-person-pregnant {
  --fa: "\e31e";
}

.fa-house-chimney {
  --fa: "\e3af";
}

.fa-home-lg {
  --fa: "\e3af";
}

.fa-house-crack {
  --fa: "\e3b1";
}

.fa-house-medical {
  --fa: "\e3b2";
}

.fa-cent-sign {
  --fa: "\e3f5";
}

.fa-plus-minus {
  --fa: "\e43c";
}

.fa-sailboat {
  --fa: "\e445";
}

.fa-section {
  --fa: "\e447";
}

.fa-shrimp {
  --fa: "\e448";
}

.fa-brazilian-real-sign {
  --fa: "\e46c";
}

.fa-chart-simple {
  --fa: "\e473";
}

.fa-diagram-next {
  --fa: "\e476";
}

.fa-diagram-predecessor {
  --fa: "\e477";
}

.fa-diagram-successor {
  --fa: "\e47a";
}

.fa-earth-oceania {
  --fa: "\e47b";
}

.fa-globe-oceania {
  --fa: "\e47b";
}

.fa-bug-slash {
  --fa: "\e490";
}

.fa-file-circle-plus {
  --fa: "\e494";
}

.fa-shop-lock {
  --fa: "\e4a5";
}

.fa-virus-covid {
  --fa: "\e4a8";
}

.fa-virus-covid-slash {
  --fa: "\e4a9";
}

.fa-anchor-circle-check {
  --fa: "\e4aa";
}

.fa-anchor-circle-exclamation {
  --fa: "\e4ab";
}

.fa-anchor-circle-xmark {
  --fa: "\e4ac";
}

.fa-anchor-lock {
  --fa: "\e4ad";
}

.fa-arrow-down-up-across-line {
  --fa: "\e4af";
}

.fa-arrow-down-up-lock {
  --fa: "\e4b0";
}

.fa-arrow-right-to-city {
  --fa: "\e4b3";
}

.fa-arrow-up-from-ground-water {
  --fa: "\e4b5";
}

.fa-arrow-up-from-water-pump {
  --fa: "\e4b6";
}

.fa-arrow-up-right-dots {
  --fa: "\e4b7";
}

.fa-arrows-down-to-line {
  --fa: "\e4b8";
}

.fa-arrows-down-to-people {
  --fa: "\e4b9";
}

.fa-arrows-left-right-to-line {
  --fa: "\e4ba";
}

.fa-arrows-spin {
  --fa: "\e4bb";
}

.fa-arrows-split-up-and-left {
  --fa: "\e4bc";
}

.fa-arrows-to-circle {
  --fa: "\e4bd";
}

.fa-arrows-to-dot {
  --fa: "\e4be";
}

.fa-arrows-to-eye {
  --fa: "\e4bf";
}

.fa-arrows-turn-right {
  --fa: "\e4c0";
}

.fa-arrows-turn-to-dots {
  --fa: "\e4c1";
}

.fa-arrows-up-to-line {
  --fa: "\e4c2";
}

.fa-bore-hole {
  --fa: "\e4c3";
}

.fa-bottle-droplet {
  --fa: "\e4c4";
}

.fa-bottle-water {
  --fa: "\e4c5";
}

.fa-bowl-food {
  --fa: "\e4c6";
}

.fa-boxes-packing {
  --fa: "\e4c7";
}

.fa-bridge {
  --fa: "\e4c8";
}

.fa-bridge-circle-check {
  --fa: "\e4c9";
}

.fa-bridge-circle-exclamation {
  --fa: "\e4ca";
}

.fa-bridge-circle-xmark {
  --fa: "\e4cb";
}

.fa-bridge-lock {
  --fa: "\e4cc";
}

.fa-bridge-water {
  --fa: "\e4ce";
}

.fa-bucket {
  --fa: "\e4cf";
}

.fa-bugs {
  --fa: "\e4d0";
}

.fa-building-circle-arrow-right {
  --fa: "\e4d1";
}

.fa-building-circle-check {
  --fa: "\e4d2";
}

.fa-building-circle-exclamation {
  --fa: "\e4d3";
}

.fa-building-circle-xmark {
  --fa: "\e4d4";
}

.fa-building-flag {
  --fa: "\e4d5";
}

.fa-building-lock {
  --fa: "\e4d6";
}

.fa-building-ngo {
  --fa: "\e4d7";
}

.fa-building-shield {
  --fa: "\e4d8";
}

.fa-building-un {
  --fa: "\e4d9";
}

.fa-building-user {
  --fa: "\e4da";
}

.fa-building-wheat {
  --fa: "\e4db";
}

.fa-burst {
  --fa: "\e4dc";
}

.fa-car-on {
  --fa: "\e4dd";
}

.fa-car-tunnel {
  --fa: "\e4de";
}

.fa-child-combatant {
  --fa: "\e4e0";
}

.fa-child-rifle {
  --fa: "\e4e0";
}

.fa-children {
  --fa: "\e4e1";
}

.fa-circle-nodes {
  --fa: "\e4e2";
}

.fa-clipboard-question {
  --fa: "\e4e3";
}

.fa-cloud-showers-water {
  --fa: "\e4e4";
}

.fa-computer {
  --fa: "\e4e5";
}

.fa-cubes-stacked {
  --fa: "\e4e6";
}

.fa-envelope-circle-check {
  --fa: "\e4e8";
}

.fa-explosion {
  --fa: "\e4e9";
}

.fa-ferry {
  --fa: "\e4ea";
}

.fa-file-circle-exclamation {
  --fa: "\e4eb";
}

.fa-file-circle-minus {
  --fa: "\e4ed";
}

.fa-file-circle-question {
  --fa: "\e4ef";
}

.fa-file-shield {
  --fa: "\e4f0";
}

.fa-fire-burner {
  --fa: "\e4f1";
}

.fa-fish-fins {
  --fa: "\e4f2";
}

.fa-flask-vial {
  --fa: "\e4f3";
}

.fa-glass-water {
  --fa: "\e4f4";
}

.fa-glass-water-droplet {
  --fa: "\e4f5";
}

.fa-group-arrows-rotate {
  --fa: "\e4f6";
}

.fa-hand-holding-hand {
  --fa: "\e4f7";
}

.fa-handcuffs {
  --fa: "\e4f8";
}

.fa-hands-bound {
  --fa: "\e4f9";
}

.fa-hands-holding-child {
  --fa: "\e4fa";
}

.fa-hands-holding-circle {
  --fa: "\e4fb";
}

.fa-heart-circle-bolt {
  --fa: "\e4fc";
}

.fa-heart-circle-check {
  --fa: "\e4fd";
}

.fa-heart-circle-exclamation {
  --fa: "\e4fe";
}

.fa-heart-circle-minus {
  --fa: "\e4ff";
}

.fa-heart-circle-plus {
  --fa: "\e500";
}

.fa-heart-circle-xmark {
  --fa: "\e501";
}

.fa-helicopter-symbol {
  --fa: "\e502";
}

.fa-helmet-un {
  --fa: "\e503";
}

.fa-hill-avalanche {
  --fa: "\e507";
}

.fa-hill-rockslide {
  --fa: "\e508";
}

.fa-house-circle-check {
  --fa: "\e509";
}

.fa-house-circle-exclamation {
  --fa: "\e50a";
}

.fa-house-circle-xmark {
  --fa: "\e50b";
}

.fa-house-fire {
  --fa: "\e50c";
}

.fa-house-flag {
  --fa: "\e50d";
}

.fa-house-flood-water {
  --fa: "\e50e";
}

.fa-house-flood-water-circle-arrow-right {
  --fa: "\e50f";
}

.fa-house-lock {
  --fa: "\e510";
}

.fa-house-medical-circle-check {
  --fa: "\e511";
}

.fa-house-medical-circle-exclamation {
  --fa: "\e512";
}

.fa-house-medical-circle-xmark {
  --fa: "\e513";
}

.fa-house-medical-flag {
  --fa: "\e514";
}

.fa-house-tsunami {
  --fa: "\e515";
}

.fa-jar {
  --fa: "\e516";
}

.fa-jar-wheat {
  --fa: "\e517";
}

.fa-jet-fighter-up {
  --fa: "\e518";
}

.fa-jug-detergent {
  --fa: "\e519";
}

.fa-kitchen-set {
  --fa: "\e51a";
}

.fa-land-mine-on {
  --fa: "\e51b";
}

.fa-landmark-flag {
  --fa: "\e51c";
}

.fa-laptop-file {
  --fa: "\e51d";
}

.fa-lines-leaning {
  --fa: "\e51e";
}

.fa-location-pin-lock {
  --fa: "\e51f";
}

.fa-locust {
  --fa: "\e520";
}

.fa-magnifying-glass-arrow-right {
  --fa: "\e521";
}

.fa-magnifying-glass-chart {
  --fa: "\e522";
}

.fa-mars-and-venus-burst {
  --fa: "\e523";
}

.fa-mask-ventilator {
  --fa: "\e524";
}

.fa-mattress-pillow {
  --fa: "\e525";
}

.fa-mobile-retro {
  --fa: "\e527";
}

.fa-money-bill-transfer {
  --fa: "\e528";
}

.fa-money-bill-trend-up {
  --fa: "\e529";
}

.fa-money-bill-wheat {
  --fa: "\e52a";
}

.fa-mosquito {
  --fa: "\e52b";
}

.fa-mosquito-net {
  --fa: "\e52c";
}

.fa-mound {
  --fa: "\e52d";
}

.fa-mountain-city {
  --fa: "\e52e";
}

.fa-mountain-sun {
  --fa: "\e52f";
}

.fa-oil-well {
  --fa: "\e532";
}

.fa-people-group {
  --fa: "\e533";
}

.fa-people-line {
  --fa: "\e534";
}

.fa-people-pulling {
  --fa: "\e535";
}

.fa-people-robbery {
  --fa: "\e536";
}

.fa-people-roof {
  --fa: "\e537";
}

.fa-person-arrow-down-to-line {
  --fa: "\e538";
}

.fa-person-arrow-up-from-line {
  --fa: "\e539";
}

.fa-person-breastfeeding {
  --fa: "\e53a";
}

.fa-person-burst {
  --fa: "\e53b";
}

.fa-person-cane {
  --fa: "\e53c";
}

.fa-person-chalkboard {
  --fa: "\e53d";
}

.fa-person-circle-check {
  --fa: "\e53e";
}

.fa-person-circle-exclamation {
  --fa: "\e53f";
}

.fa-person-circle-minus {
  --fa: "\e540";
}

.fa-person-circle-plus {
  --fa: "\e541";
}

.fa-person-circle-question {
  --fa: "\e542";
}

.fa-person-circle-xmark {
  --fa: "\e543";
}

.fa-person-dress-burst {
  --fa: "\e544";
}

.fa-person-drowning {
  --fa: "\e545";
}

.fa-person-falling {
  --fa: "\e546";
}

.fa-person-falling-burst {
  --fa: "\e547";
}

.fa-person-half-dress {
  --fa: "\e548";
}

.fa-person-harassing {
  --fa: "\e549";
}

.fa-person-military-pointing {
  --fa: "\e54a";
}

.fa-person-military-rifle {
  --fa: "\e54b";
}

.fa-person-military-to-person {
  --fa: "\e54c";
}

.fa-person-rays {
  --fa: "\e54d";
}

.fa-person-rifle {
  --fa: "\e54e";
}

.fa-person-shelter {
  --fa: "\e54f";
}

.fa-person-walking-arrow-loop-left {
  --fa: "\e551";
}

.fa-person-walking-arrow-right {
  --fa: "\e552";
}

.fa-person-walking-dashed-line-arrow-right {
  --fa: "\e553";
}

.fa-person-walking-luggage {
  --fa: "\e554";
}

.fa-plane-circle-check {
  --fa: "\e555";
}

.fa-plane-circle-exclamation {
  --fa: "\e556";
}

.fa-plane-circle-xmark {
  --fa: "\e557";
}

.fa-plane-lock {
  --fa: "\e558";
}

.fa-plate-wheat {
  --fa: "\e55a";
}

.fa-plug-circle-bolt {
  --fa: "\e55b";
}

.fa-plug-circle-check {
  --fa: "\e55c";
}

.fa-plug-circle-exclamation {
  --fa: "\e55d";
}

.fa-plug-circle-minus {
  --fa: "\e55e";
}

.fa-plug-circle-plus {
  --fa: "\e55f";
}

.fa-plug-circle-xmark {
  --fa: "\e560";
}

.fa-ranking-star {
  --fa: "\e561";
}

.fa-road-barrier {
  --fa: "\e562";
}

.fa-road-bridge {
  --fa: "\e563";
}

.fa-road-circle-check {
  --fa: "\e564";
}

.fa-road-circle-exclamation {
  --fa: "\e565";
}

.fa-road-circle-xmark {
  --fa: "\e566";
}

.fa-road-lock {
  --fa: "\e567";
}

.fa-road-spikes {
  --fa: "\e568";
}

.fa-rug {
  --fa: "\e569";
}

.fa-sack-xmark {
  --fa: "\e56a";
}

.fa-school-circle-check {
  --fa: "\e56b";
}

.fa-school-circle-exclamation {
  --fa: "\e56c";
}

.fa-school-circle-xmark {
  --fa: "\e56d";
}

.fa-school-flag {
  --fa: "\e56e";
}

.fa-school-lock {
  --fa: "\e56f";
}

.fa-sheet-plastic {
  --fa: "\e571";
}

.fa-shield-cat {
  --fa: "\e572";
}

.fa-shield-dog {
  --fa: "\e573";
}

.fa-shield-heart {
  --fa: "\e574";
}

.fa-square-nfi {
  --fa: "\e576";
}

.fa-square-person-confined {
  --fa: "\e577";
}

.fa-square-virus {
  --fa: "\e578";
}

.fa-staff-snake {
  --fa: "\e579";
}

.fa-rod-asclepius {
  --fa: "\e579";
}

.fa-rod-snake {
  --fa: "\e579";
}

.fa-staff-aesculapius {
  --fa: "\e579";
}

.fa-sun-plant-wilt {
  --fa: "\e57a";
}

.fa-tarp {
  --fa: "\e57b";
}

.fa-tarp-droplet {
  --fa: "\e57c";
}

.fa-tent {
  --fa: "\e57d";
}

.fa-tent-arrow-down-to-line {
  --fa: "\e57e";
}

.fa-tent-arrow-left-right {
  --fa: "\e57f";
}

.fa-tent-arrow-turn-left {
  --fa: "\e580";
}

.fa-tent-arrows-down {
  --fa: "\e581";
}

.fa-tents {
  --fa: "\e582";
}

.fa-toilet-portable {
  --fa: "\e583";
}

.fa-toilets-portable {
  --fa: "\e584";
}

.fa-tower-cell {
  --fa: "\e585";
}

.fa-tower-observation {
  --fa: "\e586";
}

.fa-tree-city {
  --fa: "\e587";
}

.fa-trowel {
  --fa: "\e589";
}

.fa-trowel-bricks {
  --fa: "\e58a";
}

.fa-truck-arrow-right {
  --fa: "\e58b";
}

.fa-truck-droplet {
  --fa: "\e58c";
}

.fa-truck-field {
  --fa: "\e58d";
}

.fa-truck-field-un {
  --fa: "\e58e";
}

.fa-truck-plane {
  --fa: "\e58f";
}

.fa-users-between-lines {
  --fa: "\e591";
}

.fa-users-line {
  --fa: "\e592";
}

.fa-users-rays {
  --fa: "\e593";
}

.fa-users-rectangle {
  --fa: "\e594";
}

.fa-users-viewfinder {
  --fa: "\e595";
}

.fa-vial-circle-check {
  --fa: "\e596";
}

.fa-vial-virus {
  --fa: "\e597";
}

.fa-wheat-awn-circle-exclamation {
  --fa: "\e598";
}

.fa-worm {
  --fa: "\e599";
}

.fa-xmarks-lines {
  --fa: "\e59a";
}

.fa-child-dress {
  --fa: "\e59c";
}

.fa-child-reaching {
  --fa: "\e59d";
}

.fa-file-circle-check {
  --fa: "\e5a0";
}

.fa-file-circle-xmark {
  --fa: "\e5a1";
}

.fa-person-through-window {
  --fa: "\e5a9";
}

.fa-plant-wilt {
  --fa: "\e5aa";
}

.fa-stapler {
  --fa: "\e5af";
}

.fa-train-tram {
  --fa: "\e5b4";
}

.fa-table-cells-column-lock {
  --fa: "\e678";
}

.fa-table-cells-row-lock {
  --fa: "\e67a";
}

.fa-web-awesome {
  --fa: "\e682";
}

.fa-thumbtack-slash {
  --fa: "\e68f";
}

.fa-thumb-tack-slash {
  --fa: "\e68f";
}

.fa-table-cells-row-unlock {
  --fa: "\e691";
}

.fa-chart-diagram {
  --fa: "\e695";
}

.fa-comment-nodes {
  --fa: "\e696";
}

.fa-file-fragment {
  --fa: "\e697";
}

.fa-file-half-dashed {
  --fa: "\e698";
}

.fa-hexagon-nodes {
  --fa: "\e699";
}

.fa-hexagon-nodes-bolt {
  --fa: "\e69a";
}

.fa-square-binary {
  --fa: "\e69b";
}

.fa-pentagon {
  --fa: "\e790";
}

.fa-non-binary {
  --fa: "\e807";
}

.fa-spiral {
  --fa: "\e80a";
}

.fa-mobile-vibrate {
  --fa: "\e816";
}

.fa-single-quote-left {
  --fa: "\e81b";
}

.fa-single-quote-right {
  --fa: "\e81c";
}

.fa-bus-side {
  --fa: "\e81d";
}

.fa-septagon {
  --fa: "\e820";
}

.fa-heptagon {
  --fa: "\e820";
}

.fa-martini-glass-empty {
  --fa: "\f000";
}

.fa-glass-martini {
  --fa: "\f000";
}

.fa-music {
  --fa: "\f001";
}

.fa-magnifying-glass {
  --fa: "\f002";
}

.fa-search {
  --fa: "\f002";
}

.fa-heart {
  --fa: "\f004";
}

.fa-star {
  --fa: "\f005";
}

.fa-user {
  --fa: "\f007";
}

.fa-user-alt {
  --fa: "\f007";
}

.fa-user-large {
  --fa: "\f007";
}

.fa-film {
  --fa: "\f008";
}

.fa-film-alt {
  --fa: "\f008";
}

.fa-film-simple {
  --fa: "\f008";
}

.fa-table-cells-large {
  --fa: "\f009";
}

.fa-th-large {
  --fa: "\f009";
}

.fa-table-cells {
  --fa: "\f00a";
}

.fa-th {
  --fa: "\f00a";
}

.fa-table-list {
  --fa: "\f00b";
}

.fa-th-list {
  --fa: "\f00b";
}

.fa-check {
  --fa: "\f00c";
}

.fa-xmark {
  --fa: "\f00d";
}

.fa-close {
  --fa: "\f00d";
}

.fa-multiply {
  --fa: "\f00d";
}

.fa-remove {
  --fa: "\f00d";
}

.fa-times {
  --fa: "\f00d";
}

.fa-magnifying-glass-plus {
  --fa: "\f00e";
}

.fa-search-plus {
  --fa: "\f00e";
}

.fa-magnifying-glass-minus {
  --fa: "\f010";
}

.fa-search-minus {
  --fa: "\f010";
}

.fa-power-off {
  --fa: "\f011";
}

.fa-signal {
  --fa: "\f012";
}

.fa-signal-5 {
  --fa: "\f012";
}

.fa-signal-perfect {
  --fa: "\f012";
}

.fa-gear {
  --fa: "\f013";
}

.fa-cog {
  --fa: "\f013";
}

.fa-house {
  --fa: "\f015";
}

.fa-home {
  --fa: "\f015";
}

.fa-home-alt {
  --fa: "\f015";
}

.fa-home-lg-alt {
  --fa: "\f015";
}

.fa-clock {
  --fa: "\f017";
}

.fa-clock-four {
  --fa: "\f017";
}

.fa-road {
  --fa: "\f018";
}

.fa-download {
  --fa: "\f019";
}

.fa-inbox {
  --fa: "\f01c";
}

.fa-arrow-rotate-right {
  --fa: "\f01e";
}

.fa-arrow-right-rotate {
  --fa: "\f01e";
}

.fa-arrow-rotate-forward {
  --fa: "\f01e";
}

.fa-redo {
  --fa: "\f01e";
}

.fa-arrows-rotate {
  --fa: "\f021";
}

.fa-refresh {
  --fa: "\f021";
}

.fa-sync {
  --fa: "\f021";
}

.fa-rectangle-list {
  --fa: "\f022";
}

.fa-list-alt {
  --fa: "\f022";
}

.fa-lock {
  --fa: "\f023";
}

.fa-flag {
  --fa: "\f024";
}

.fa-headphones {
  --fa: "\f025";
}

.fa-headphones-alt {
  --fa: "\f025";
}

.fa-headphones-simple {
  --fa: "\f025";
}

.fa-volume-off {
  --fa: "\f026";
}

.fa-volume-low {
  --fa: "\f027";
}

.fa-volume-down {
  --fa: "\f027";
}

.fa-volume-high {
  --fa: "\f028";
}

.fa-volume-up {
  --fa: "\f028";
}

.fa-qrcode {
  --fa: "\f029";
}

.fa-barcode {
  --fa: "\f02a";
}

.fa-tag {
  --fa: "\f02b";
}

.fa-tags {
  --fa: "\f02c";
}

.fa-book {
  --fa: "\f02d";
}

.fa-bookmark {
  --fa: "\f02e";
}

.fa-print {
  --fa: "\f02f";
}

.fa-camera {
  --fa: "\f030";
}

.fa-camera-alt {
  --fa: "\f030";
}

.fa-font {
  --fa: "\f031";
}

.fa-bold {
  --fa: "\f032";
}

.fa-italic {
  --fa: "\f033";
}

.fa-text-height {
  --fa: "\f034";
}

.fa-text-width {
  --fa: "\f035";
}

.fa-align-left {
  --fa: "\f036";
}

.fa-align-center {
  --fa: "\f037";
}

.fa-align-right {
  --fa: "\f038";
}

.fa-align-justify {
  --fa: "\f039";
}

.fa-list {
  --fa: "\f03a";
}

.fa-list-squares {
  --fa: "\f03a";
}

.fa-outdent {
  --fa: "\f03b";
}

.fa-dedent {
  --fa: "\f03b";
}

.fa-indent {
  --fa: "\f03c";
}

.fa-video {
  --fa: "\f03d";
}

.fa-video-camera {
  --fa: "\f03d";
}

.fa-image {
  --fa: "\f03e";
}

.fa-location-pin {
  --fa: "\f041";
}

.fa-map-marker {
  --fa: "\f041";
}

.fa-circle-half-stroke {
  --fa: "\f042";
}

.fa-adjust {
  --fa: "\f042";
}

.fa-droplet {
  --fa: "\f043";
}

.fa-tint {
  --fa: "\f043";
}

.fa-pen-to-square {
  --fa: "\f044";
}

.fa-edit {
  --fa: "\f044";
}

.fa-arrows-up-down-left-right {
  --fa: "\f047";
}

.fa-arrows {
  --fa: "\f047";
}

.fa-backward-step {
  --fa: "\f048";
}

.fa-step-backward {
  --fa: "\f048";
}

.fa-backward-fast {
  --fa: "\f049";
}

.fa-fast-backward {
  --fa: "\f049";
}

.fa-backward {
  --fa: "\f04a";
}

.fa-play {
  --fa: "\f04b";
}

.fa-pause {
  --fa: "\f04c";
}

.fa-stop {
  --fa: "\f04d";
}

.fa-forward {
  --fa: "\f04e";
}

.fa-forward-fast {
  --fa: "\f050";
}

.fa-fast-forward {
  --fa: "\f050";
}

.fa-forward-step {
  --fa: "\f051";
}

.fa-step-forward {
  --fa: "\f051";
}

.fa-eject {
  --fa: "\f052";
}

.fa-chevron-left {
  --fa: "\f053";
}

.fa-chevron-right {
  --fa: "\f054";
}

.fa-circle-plus {
  --fa: "\f055";
}

.fa-plus-circle {
  --fa: "\f055";
}

.fa-circle-minus {
  --fa: "\f056";
}

.fa-minus-circle {
  --fa: "\f056";
}

.fa-circle-xmark {
  --fa: "\f057";
}

.fa-times-circle {
  --fa: "\f057";
}

.fa-xmark-circle {
  --fa: "\f057";
}

.fa-circle-check {
  --fa: "\f058";
}

.fa-check-circle {
  --fa: "\f058";
}

.fa-circle-question {
  --fa: "\f059";
}

.fa-question-circle {
  --fa: "\f059";
}

.fa-circle-info {
  --fa: "\f05a";
}

.fa-info-circle {
  --fa: "\f05a";
}

.fa-crosshairs {
  --fa: "\f05b";
}

.fa-ban {
  --fa: "\f05e";
}

.fa-cancel {
  --fa: "\f05e";
}

.fa-arrow-left {
  --fa: "\f060";
}

.fa-arrow-right {
  --fa: "\f061";
}

.fa-arrow-up {
  --fa: "\f062";
}

.fa-arrow-down {
  --fa: "\f063";
}

.fa-share {
  --fa: "\f064";
}

.fa-mail-forward {
  --fa: "\f064";
}

.fa-expand {
  --fa: "\f065";
}

.fa-compress {
  --fa: "\f066";
}

.fa-minus {
  --fa: "\f068";
}

.fa-subtract {
  --fa: "\f068";
}

.fa-circle-exclamation {
  --fa: "\f06a";
}

.fa-exclamation-circle {
  --fa: "\f06a";
}

.fa-gift {
  --fa: "\f06b";
}

.fa-leaf {
  --fa: "\f06c";
}

.fa-fire {
  --fa: "\f06d";
}

.fa-eye {
  --fa: "\f06e";
}

.fa-eye-slash {
  --fa: "\f070";
}

.fa-triangle-exclamation {
  --fa: "\f071";
}

.fa-exclamation-triangle {
  --fa: "\f071";
}

.fa-warning {
  --fa: "\f071";
}

.fa-plane {
  --fa: "\f072";
}

.fa-calendar-days {
  --fa: "\f073";
}

.fa-calendar-alt {
  --fa: "\f073";
}

.fa-shuffle {
  --fa: "\f074";
}

.fa-random {
  --fa: "\f074";
}

.fa-comment {
  --fa: "\f075";
}

.fa-magnet {
  --fa: "\f076";
}

.fa-chevron-up {
  --fa: "\f077";
}

.fa-chevron-down {
  --fa: "\f078";
}

.fa-retweet {
  --fa: "\f079";
}

.fa-cart-shopping {
  --fa: "\f07a";
}

.fa-shopping-cart {
  --fa: "\f07a";
}

.fa-folder {
  --fa: "\f07b";
}

.fa-folder-blank {
  --fa: "\f07b";
}

.fa-folder-open {
  --fa: "\f07c";
}

.fa-arrows-up-down {
  --fa: "\f07d";
}

.fa-arrows-v {
  --fa: "\f07d";
}

.fa-arrows-left-right {
  --fa: "\f07e";
}

.fa-arrows-h {
  --fa: "\f07e";
}

.fa-chart-bar {
  --fa: "\f080";
}

.fa-bar-chart {
  --fa: "\f080";
}

.fa-camera-retro {
  --fa: "\f083";
}

.fa-key {
  --fa: "\f084";
}

.fa-gears {
  --fa: "\f085";
}

.fa-cogs {
  --fa: "\f085";
}

.fa-comments {
  --fa: "\f086";
}

.fa-star-half {
  --fa: "\f089";
}

.fa-arrow-right-from-bracket {
  --fa: "\f08b";
}

.fa-sign-out {
  --fa: "\f08b";
}

.fa-thumbtack {
  --fa: "\f08d";
}

.fa-thumb-tack {
  --fa: "\f08d";
}

.fa-arrow-up-right-from-square {
  --fa: "\f08e";
}

.fa-external-link {
  --fa: "\f08e";
}

.fa-arrow-right-to-bracket {
  --fa: "\f090";
}

.fa-sign-in {
  --fa: "\f090";
}

.fa-trophy {
  --fa: "\f091";
}

.fa-upload {
  --fa: "\f093";
}

.fa-lemon {
  --fa: "\f094";
}

.fa-phone {
  --fa: "\f095";
}

.fa-square-phone {
  --fa: "\f098";
}

.fa-phone-square {
  --fa: "\f098";
}

.fa-unlock {
  --fa: "\f09c";
}

.fa-credit-card {
  --fa: "\f09d";
}

.fa-credit-card-alt {
  --fa: "\f09d";
}

.fa-rss {
  --fa: "\f09e";
}

.fa-feed {
  --fa: "\f09e";
}

.fa-hard-drive {
  --fa: "\f0a0";
}

.fa-hdd {
  --fa: "\f0a0";
}

.fa-bullhorn {
  --fa: "\f0a1";
}

.fa-certificate {
  --fa: "\f0a3";
}

.fa-hand-point-right {
  --fa: "\f0a4";
}

.fa-hand-point-left {
  --fa: "\f0a5";
}

.fa-hand-point-up {
  --fa: "\f0a6";
}

.fa-hand-point-down {
  --fa: "\f0a7";
}

.fa-circle-arrow-left {
  --fa: "\f0a8";
}

.fa-arrow-circle-left {
  --fa: "\f0a8";
}

.fa-circle-arrow-right {
  --fa: "\f0a9";
}

.fa-arrow-circle-right {
  --fa: "\f0a9";
}

.fa-circle-arrow-up {
  --fa: "\f0aa";
}

.fa-arrow-circle-up {
  --fa: "\f0aa";
}

.fa-circle-arrow-down {
  --fa: "\f0ab";
}

.fa-arrow-circle-down {
  --fa: "\f0ab";
}

.fa-globe {
  --fa: "\f0ac";
}

.fa-wrench {
  --fa: "\f0ad";
}

.fa-list-check {
  --fa: "\f0ae";
}

.fa-tasks {
  --fa: "\f0ae";
}

.fa-filter {
  --fa: "\f0b0";
}

.fa-briefcase {
  --fa: "\f0b1";
}

.fa-up-down-left-right {
  --fa: "\f0b2";
}

.fa-arrows-alt {
  --fa: "\f0b2";
}

.fa-users {
  --fa: "\f0c0";
}

.fa-link {
  --fa: "\f0c1";
}

.fa-chain {
  --fa: "\f0c1";
}

.fa-cloud {
  --fa: "\f0c2";
}

.fa-flask {
  --fa: "\f0c3";
}

.fa-scissors {
  --fa: "\f0c4";
}

.fa-cut {
  --fa: "\f0c4";
}

.fa-copy {
  --fa: "\f0c5";
}

.fa-paperclip {
  --fa: "\f0c6";
}

.fa-floppy-disk {
  --fa: "\f0c7";
}

.fa-save {
  --fa: "\f0c7";
}

.fa-square {
  --fa: "\f0c8";
}

.fa-bars {
  --fa: "\f0c9";
}

.fa-navicon {
  --fa: "\f0c9";
}

.fa-list-ul {
  --fa: "\f0ca";
}

.fa-list-dots {
  --fa: "\f0ca";
}

.fa-list-ol {
  --fa: "\f0cb";
}

.fa-list-1-2 {
  --fa: "\f0cb";
}

.fa-list-numeric {
  --fa: "\f0cb";
}

.fa-strikethrough {
  --fa: "\f0cc";
}

.fa-underline {
  --fa: "\f0cd";
}

.fa-table {
  --fa: "\f0ce";
}

.fa-wand-magic {
  --fa: "\f0d0";
}

.fa-magic {
  --fa: "\f0d0";
}

.fa-truck {
  --fa: "\f0d1";
}

.fa-money-bill {
  --fa: "\f0d6";
}

.fa-caret-down {
  --fa: "\f0d7";
}

.fa-caret-up {
  --fa: "\f0d8";
}

.fa-caret-left {
  --fa: "\f0d9";
}

.fa-caret-right {
  --fa: "\f0da";
}

.fa-table-columns {
  --fa: "\f0db";
}

.fa-columns {
  --fa: "\f0db";
}

.fa-sort {
  --fa: "\f0dc";
}

.fa-unsorted {
  --fa: "\f0dc";
}

.fa-sort-down {
  --fa: "\f0dd";
}

.fa-sort-desc {
  --fa: "\f0dd";
}

.fa-sort-up {
  --fa: "\f0de";
}

.fa-sort-asc {
  --fa: "\f0de";
}

.fa-envelope {
  --fa: "\f0e0";
}

.fa-arrow-rotate-left {
  --fa: "\f0e2";
}

.fa-arrow-left-rotate {
  --fa: "\f0e2";
}

.fa-arrow-rotate-back {
  --fa: "\f0e2";
}

.fa-arrow-rotate-backward {
  --fa: "\f0e2";
}

.fa-undo {
  --fa: "\f0e2";
}

.fa-gavel {
  --fa: "\f0e3";
}

.fa-legal {
  --fa: "\f0e3";
}

.fa-bolt {
  --fa: "\f0e7";
}

.fa-zap {
  --fa: "\f0e7";
}

.fa-sitemap {
  --fa: "\f0e8";
}

.fa-umbrella {
  --fa: "\f0e9";
}

.fa-paste {
  --fa: "\f0ea";
}

.fa-file-clipboard {
  --fa: "\f0ea";
}

.fa-lightbulb {
  --fa: "\f0eb";
}

.fa-arrow-right-arrow-left {
  --fa: "\f0ec";
}

.fa-exchange {
  --fa: "\f0ec";
}

.fa-cloud-arrow-down {
  --fa: "\f0ed";
}

.fa-cloud-download {
  --fa: "\f0ed";
}

.fa-cloud-download-alt {
  --fa: "\f0ed";
}

.fa-cloud-arrow-up {
  --fa: "\f0ee";
}

.fa-cloud-upload {
  --fa: "\f0ee";
}

.fa-cloud-upload-alt {
  --fa: "\f0ee";
}

.fa-user-doctor {
  --fa: "\f0f0";
}

.fa-user-md {
  --fa: "\f0f0";
}

.fa-stethoscope {
  --fa: "\f0f1";
}

.fa-suitcase {
  --fa: "\f0f2";
}

.fa-bell {
  --fa: "\f0f3";
}

.fa-mug-saucer {
  --fa: "\f0f4";
}

.fa-coffee {
  --fa: "\f0f4";
}

.fa-hospital {
  --fa: "\f0f8";
}

.fa-hospital-alt {
  --fa: "\f0f8";
}

.fa-hospital-wide {
  --fa: "\f0f8";
}

.fa-truck-medical {
  --fa: "\f0f9";
}

.fa-ambulance {
  --fa: "\f0f9";
}

.fa-suitcase-medical {
  --fa: "\f0fa";
}

.fa-medkit {
  --fa: "\f0fa";
}

.fa-jet-fighter {
  --fa: "\f0fb";
}

.fa-fighter-jet {
  --fa: "\f0fb";
}

.fa-beer-mug-empty {
  --fa: "\f0fc";
}

.fa-beer {
  --fa: "\f0fc";
}

.fa-square-h {
  --fa: "\f0fd";
}

.fa-h-square {
  --fa: "\f0fd";
}

.fa-square-plus {
  --fa: "\f0fe";
}

.fa-plus-square {
  --fa: "\f0fe";
}

.fa-angles-left {
  --fa: "\f100";
}

.fa-angle-double-left {
  --fa: "\f100";
}

.fa-angles-right {
  --fa: "\f101";
}

.fa-angle-double-right {
  --fa: "\f101";
}

.fa-angles-up {
  --fa: "\f102";
}

.fa-angle-double-up {
  --fa: "\f102";
}

.fa-angles-down {
  --fa: "\f103";
}

.fa-angle-double-down {
  --fa: "\f103";
}

.fa-angle-left {
  --fa: "\f104";
}

.fa-angle-right {
  --fa: "\f105";
}

.fa-angle-up {
  --fa: "\f106";
}

.fa-angle-down {
  --fa: "\f107";
}

.fa-laptop {
  --fa: "\f109";
}

.fa-tablet-button {
  --fa: "\f10a";
}

.fa-mobile-button {
  --fa: "\f10b";
}

.fa-quote-left {
  --fa: "\f10d";
}

.fa-quote-left-alt {
  --fa: "\f10d";
}

.fa-quote-right {
  --fa: "\f10e";
}

.fa-quote-right-alt {
  --fa: "\f10e";
}

.fa-spinner {
  --fa: "\f110";
}

.fa-circle {
  --fa: "\f111";
}

.fa-face-smile {
  --fa: "\f118";
}

.fa-smile {
  --fa: "\f118";
}

.fa-face-frown {
  --fa: "\f119";
}

.fa-frown {
  --fa: "\f119";
}

.fa-face-meh {
  --fa: "\f11a";
}

.fa-meh {
  --fa: "\f11a";
}

.fa-gamepad {
  --fa: "\f11b";
}

.fa-keyboard {
  --fa: "\f11c";
}

.fa-flag-checkered {
  --fa: "\f11e";
}

.fa-terminal {
  --fa: "\f120";
}

.fa-code {
  --fa: "\f121";
}

.fa-reply-all {
  --fa: "\f122";
}

.fa-mail-reply-all {
  --fa: "\f122";
}

.fa-location-arrow {
  --fa: "\f124";
}

.fa-crop {
  --fa: "\f125";
}

.fa-code-branch {
  --fa: "\f126";
}

.fa-link-slash {
  --fa: "\f127";
}

.fa-chain-broken {
  --fa: "\f127";
}

.fa-chain-slash {
  --fa: "\f127";
}

.fa-unlink {
  --fa: "\f127";
}

.fa-info {
  --fa: "\f129";
}

.fa-superscript {
  --fa: "\f12b";
}

.fa-subscript {
  --fa: "\f12c";
}

.fa-eraser {
  --fa: "\f12d";
}

.fa-puzzle-piece {
  --fa: "\f12e";
}

.fa-microphone {
  --fa: "\f130";
}

.fa-microphone-slash {
  --fa: "\f131";
}

.fa-shield {
  --fa: "\f132";
}

.fa-shield-blank {
  --fa: "\f132";
}

.fa-calendar {
  --fa: "\f133";
}

.fa-fire-extinguisher {
  --fa: "\f134";
}

.fa-rocket {
  --fa: "\f135";
}

.fa-circle-chevron-left {
  --fa: "\f137";
}

.fa-chevron-circle-left {
  --fa: "\f137";
}

.fa-circle-chevron-right {
  --fa: "\f138";
}

.fa-chevron-circle-right {
  --fa: "\f138";
}

.fa-circle-chevron-up {
  --fa: "\f139";
}

.fa-chevron-circle-up {
  --fa: "\f139";
}

.fa-circle-chevron-down {
  --fa: "\f13a";
}

.fa-chevron-circle-down {
  --fa: "\f13a";
}

.fa-anchor {
  --fa: "\f13d";
}

.fa-unlock-keyhole {
  --fa: "\f13e";
}

.fa-unlock-alt {
  --fa: "\f13e";
}

.fa-bullseye {
  --fa: "\f140";
}

.fa-ellipsis {
  --fa: "\f141";
}

.fa-ellipsis-h {
  --fa: "\f141";
}

.fa-ellipsis-vertical {
  --fa: "\f142";
}

.fa-ellipsis-v {
  --fa: "\f142";
}

.fa-square-rss {
  --fa: "\f143";
}

.fa-rss-square {
  --fa: "\f143";
}

.fa-circle-play {
  --fa: "\f144";
}

.fa-play-circle {
  --fa: "\f144";
}

.fa-ticket {
  --fa: "\f145";
}

.fa-square-minus {
  --fa: "\f146";
}

.fa-minus-square {
  --fa: "\f146";
}

.fa-arrow-turn-up {
  --fa: "\f148";
}

.fa-level-up {
  --fa: "\f148";
}

.fa-arrow-turn-down {
  --fa: "\f149";
}

.fa-level-down {
  --fa: "\f149";
}

.fa-square-check {
  --fa: "\f14a";
}

.fa-check-square {
  --fa: "\f14a";
}

.fa-square-pen {
  --fa: "\f14b";
}

.fa-pen-square {
  --fa: "\f14b";
}

.fa-pencil-square {
  --fa: "\f14b";
}

.fa-square-arrow-up-right {
  --fa: "\f14c";
}

.fa-external-link-square {
  --fa: "\f14c";
}

.fa-share-from-square {
  --fa: "\f14d";
}

.fa-share-square {
  --fa: "\f14d";
}

.fa-compass {
  --fa: "\f14e";
}

.fa-square-caret-down {
  --fa: "\f150";
}

.fa-caret-square-down {
  --fa: "\f150";
}

.fa-square-caret-up {
  --fa: "\f151";
}

.fa-caret-square-up {
  --fa: "\f151";
}

.fa-square-caret-right {
  --fa: "\f152";
}

.fa-caret-square-right {
  --fa: "\f152";
}

.fa-euro-sign {
  --fa: "\f153";
}

.fa-eur {
  --fa: "\f153";
}

.fa-euro {
  --fa: "\f153";
}

.fa-sterling-sign {
  --fa: "\f154";
}

.fa-gbp {
  --fa: "\f154";
}

.fa-pound-sign {
  --fa: "\f154";
}

.fa-rupee-sign {
  --fa: "\f156";
}

.fa-rupee {
  --fa: "\f156";
}

.fa-yen-sign {
  --fa: "\f157";
}

.fa-cny {
  --fa: "\f157";
}

.fa-jpy {
  --fa: "\f157";
}

.fa-rmb {
  --fa: "\f157";
}

.fa-yen {
  --fa: "\f157";
}

.fa-ruble-sign {
  --fa: "\f158";
}

.fa-rouble {
  --fa: "\f158";
}

.fa-rub {
  --fa: "\f158";
}

.fa-ruble {
  --fa: "\f158";
}

.fa-won-sign {
  --fa: "\f159";
}

.fa-krw {
  --fa: "\f159";
}

.fa-won {
  --fa: "\f159";
}

.fa-file {
  --fa: "\f15b";
}

.fa-file-lines {
  --fa: "\f15c";
}

.fa-file-alt {
  --fa: "\f15c";
}

.fa-file-text {
  --fa: "\f15c";
}

.fa-arrow-down-a-z {
  --fa: "\f15d";
}

.fa-sort-alpha-asc {
  --fa: "\f15d";
}

.fa-sort-alpha-down {
  --fa: "\f15d";
}

.fa-arrow-up-a-z {
  --fa: "\f15e";
}

.fa-sort-alpha-up {
  --fa: "\f15e";
}

.fa-arrow-down-wide-short {
  --fa: "\f160";
}

.fa-sort-amount-asc {
  --fa: "\f160";
}

.fa-sort-amount-down {
  --fa: "\f160";
}

.fa-arrow-up-wide-short {
  --fa: "\f161";
}

.fa-sort-amount-up {
  --fa: "\f161";
}

.fa-arrow-down-1-9 {
  --fa: "\f162";
}

.fa-sort-numeric-asc {
  --fa: "\f162";
}

.fa-sort-numeric-down {
  --fa: "\f162";
}

.fa-arrow-up-1-9 {
  --fa: "\f163";
}

.fa-sort-numeric-up {
  --fa: "\f163";
}

.fa-thumbs-up {
  --fa: "\f164";
}

.fa-thumbs-down {
  --fa: "\f165";
}

.fa-arrow-down-long {
  --fa: "\f175";
}

.fa-long-arrow-down {
  --fa: "\f175";
}

.fa-arrow-up-long {
  --fa: "\f176";
}

.fa-long-arrow-up {
  --fa: "\f176";
}

.fa-arrow-left-long {
  --fa: "\f177";
}

.fa-long-arrow-left {
  --fa: "\f177";
}

.fa-arrow-right-long {
  --fa: "\f178";
}

.fa-long-arrow-right {
  --fa: "\f178";
}

.fa-person-dress {
  --fa: "\f182";
}

.fa-female {
  --fa: "\f182";
}

.fa-person {
  --fa: "\f183";
}

.fa-male {
  --fa: "\f183";
}

.fa-sun {
  --fa: "\f185";
}

.fa-moon {
  --fa: "\f186";
}

.fa-box-archive {
  --fa: "\f187";
}

.fa-archive {
  --fa: "\f187";
}

.fa-bug {
  --fa: "\f188";
}

.fa-square-caret-left {
  --fa: "\f191";
}

.fa-caret-square-left {
  --fa: "\f191";
}

.fa-circle-dot {
  --fa: "\f192";
}

.fa-dot-circle {
  --fa: "\f192";
}

.fa-wheelchair {
  --fa: "\f193";
}

.fa-lira-sign {
  --fa: "\f195";
}

.fa-shuttle-space {
  --fa: "\f197";
}

.fa-space-shuttle {
  --fa: "\f197";
}

.fa-square-envelope {
  --fa: "\f199";
}

.fa-envelope-square {
  --fa: "\f199";
}

.fa-building-columns {
  --fa: "\f19c";
}

.fa-bank {
  --fa: "\f19c";
}

.fa-institution {
  --fa: "\f19c";
}

.fa-museum {
  --fa: "\f19c";
}

.fa-university {
  --fa: "\f19c";
}

.fa-graduation-cap {
  --fa: "\f19d";
}

.fa-mortar-board {
  --fa: "\f19d";
}

.fa-language {
  --fa: "\f1ab";
}

.fa-fax {
  --fa: "\f1ac";
}

.fa-building {
  --fa: "\f1ad";
}

.fa-child {
  --fa: "\f1ae";
}

.fa-paw {
  --fa: "\f1b0";
}

.fa-cube {
  --fa: "\f1b2";
}

.fa-cubes {
  --fa: "\f1b3";
}

.fa-recycle {
  --fa: "\f1b8";
}

.fa-car {
  --fa: "\f1b9";
}

.fa-automobile {
  --fa: "\f1b9";
}

.fa-taxi {
  --fa: "\f1ba";
}

.fa-cab {
  --fa: "\f1ba";
}

.fa-tree {
  --fa: "\f1bb";
}

.fa-database {
  --fa: "\f1c0";
}

.fa-file-pdf {
  --fa: "\f1c1";
}

.fa-file-word {
  --fa: "\f1c2";
}

.fa-file-excel {
  --fa: "\f1c3";
}

.fa-file-powerpoint {
  --fa: "\f1c4";
}

.fa-file-image {
  --fa: "\f1c5";
}

.fa-file-zipper {
  --fa: "\f1c6";
}

.fa-file-archive {
  --fa: "\f1c6";
}

.fa-file-audio {
  --fa: "\f1c7";
}

.fa-file-video {
  --fa: "\f1c8";
}

.fa-file-code {
  --fa: "\f1c9";
}

.fa-life-ring {
  --fa: "\f1cd";
}

.fa-circle-notch {
  --fa: "\f1ce";
}

.fa-paper-plane {
  --fa: "\f1d8";
}

.fa-clock-rotate-left {
  --fa: "\f1da";
}

.fa-history {
  --fa: "\f1da";
}

.fa-heading {
  --fa: "\f1dc";
}

.fa-header {
  --fa: "\f1dc";
}

.fa-paragraph {
  --fa: "\f1dd";
}

.fa-sliders {
  --fa: "\f1de";
}

.fa-sliders-h {
  --fa: "\f1de";
}

.fa-share-nodes {
  --fa: "\f1e0";
}

.fa-share-alt {
  --fa: "\f1e0";
}

.fa-square-share-nodes {
  --fa: "\f1e1";
}

.fa-share-alt-square {
  --fa: "\f1e1";
}

.fa-bomb {
  --fa: "\f1e2";
}

.fa-futbol {
  --fa: "\f1e3";
}

.fa-futbol-ball {
  --fa: "\f1e3";
}

.fa-soccer-ball {
  --fa: "\f1e3";
}

.fa-tty {
  --fa: "\f1e4";
}

.fa-teletype {
  --fa: "\f1e4";
}

.fa-binoculars {
  --fa: "\f1e5";
}

.fa-plug {
  --fa: "\f1e6";
}

.fa-newspaper {
  --fa: "\f1ea";
}

.fa-wifi {
  --fa: "\f1eb";
}

.fa-wifi-3 {
  --fa: "\f1eb";
}

.fa-wifi-strong {
  --fa: "\f1eb";
}

.fa-calculator {
  --fa: "\f1ec";
}

.fa-bell-slash {
  --fa: "\f1f6";
}

.fa-trash {
  --fa: "\f1f8";
}

.fa-copyright {
  --fa: "\f1f9";
}

.fa-eye-dropper {
  --fa: "\f1fb";
}

.fa-eye-dropper-empty {
  --fa: "\f1fb";
}

.fa-eyedropper {
  --fa: "\f1fb";
}

.fa-paintbrush {
  --fa: "\f1fc";
}

.fa-paint-brush {
  --fa: "\f1fc";
}

.fa-cake-candles {
  --fa: "\f1fd";
}

.fa-birthday-cake {
  --fa: "\f1fd";
}

.fa-cake {
  --fa: "\f1fd";
}

.fa-chart-area {
  --fa: "\f1fe";
}

.fa-area-chart {
  --fa: "\f1fe";
}

.fa-chart-pie {
  --fa: "\f200";
}

.fa-pie-chart {
  --fa: "\f200";
}

.fa-chart-line {
  --fa: "\f201";
}

.fa-line-chart {
  --fa: "\f201";
}

.fa-toggle-off {
  --fa: "\f204";
}

.fa-toggle-on {
  --fa: "\f205";
}

.fa-bicycle {
  --fa: "\f206";
}

.fa-bus {
  --fa: "\f207";
}

.fa-closed-captioning {
  --fa: "\f20a";
}

.fa-shekel-sign {
  --fa: "\f20b";
}

.fa-ils {
  --fa: "\f20b";
}

.fa-shekel {
  --fa: "\f20b";
}

.fa-sheqel {
  --fa: "\f20b";
}

.fa-sheqel-sign {
  --fa: "\f20b";
}

.fa-cart-plus {
  --fa: "\f217";
}

.fa-cart-arrow-down {
  --fa: "\f218";
}

.fa-diamond {
  --fa: "\f219";
}

.fa-ship {
  --fa: "\f21a";
}

.fa-user-secret {
  --fa: "\f21b";
}

.fa-motorcycle {
  --fa: "\f21c";
}

.fa-street-view {
  --fa: "\f21d";
}

.fa-heart-pulse {
  --fa: "\f21e";
}

.fa-heartbeat {
  --fa: "\f21e";
}

.fa-venus {
  --fa: "\f221";
}

.fa-mars {
  --fa: "\f222";
}

.fa-mercury {
  --fa: "\f223";
}

.fa-mars-and-venus {
  --fa: "\f224";
}

.fa-transgender {
  --fa: "\f225";
}

.fa-transgender-alt {
  --fa: "\f225";
}

.fa-venus-double {
  --fa: "\f226";
}

.fa-mars-double {
  --fa: "\f227";
}

.fa-venus-mars {
  --fa: "\f228";
}

.fa-mars-stroke {
  --fa: "\f229";
}

.fa-mars-stroke-up {
  --fa: "\f22a";
}

.fa-mars-stroke-v {
  --fa: "\f22a";
}

.fa-mars-stroke-right {
  --fa: "\f22b";
}

.fa-mars-stroke-h {
  --fa: "\f22b";
}

.fa-neuter {
  --fa: "\f22c";
}

.fa-genderless {
  --fa: "\f22d";
}

.fa-server {
  --fa: "\f233";
}

.fa-user-plus {
  --fa: "\f234";
}

.fa-user-xmark {
  --fa: "\f235";
}

.fa-user-times {
  --fa: "\f235";
}

.fa-bed {
  --fa: "\f236";
}

.fa-train {
  --fa: "\f238";
}

.fa-train-subway {
  --fa: "\f239";
}

.fa-subway {
  --fa: "\f239";
}

.fa-battery-full {
  --fa: "\f240";
}

.fa-battery {
  --fa: "\f240";
}

.fa-battery-5 {
  --fa: "\f240";
}

.fa-battery-three-quarters {
  --fa: "\f241";
}

.fa-battery-4 {
  --fa: "\f241";
}

.fa-battery-half {
  --fa: "\f242";
}

.fa-battery-3 {
  --fa: "\f242";
}

.fa-battery-quarter {
  --fa: "\f243";
}

.fa-battery-2 {
  --fa: "\f243";
}

.fa-battery-empty {
  --fa: "\f244";
}

.fa-battery-0 {
  --fa: "\f244";
}

.fa-arrow-pointer {
  --fa: "\f245";
}

.fa-mouse-pointer {
  --fa: "\f245";
}

.fa-i-cursor {
  --fa: "\f246";
}

.fa-object-group {
  --fa: "\f247";
}

.fa-object-ungroup {
  --fa: "\f248";
}

.fa-note-sticky {
  --fa: "\f249";
}

.fa-sticky-note {
  --fa: "\f249";
}

.fa-clone {
  --fa: "\f24d";
}

.fa-scale-balanced {
  --fa: "\f24e";
}

.fa-balance-scale {
  --fa: "\f24e";
}

.fa-hourglass-start {
  --fa: "\f251";
}

.fa-hourglass-1 {
  --fa: "\f251";
}

.fa-hourglass-half {
  --fa: "\f252";
}

.fa-hourglass-2 {
  --fa: "\f252";
}

.fa-hourglass-end {
  --fa: "\f253";
}

.fa-hourglass-3 {
  --fa: "\f253";
}

.fa-hourglass {
  --fa: "\f254";
}

.fa-hourglass-empty {
  --fa: "\f254";
}

.fa-hand-back-fist {
  --fa: "\f255";
}

.fa-hand-rock {
  --fa: "\f255";
}

.fa-hand {
  --fa: "\f256";
}

.fa-hand-paper {
  --fa: "\f256";
}

.fa-hand-scissors {
  --fa: "\f257";
}

.fa-hand-lizard {
  --fa: "\f258";
}

.fa-hand-spock {
  --fa: "\f259";
}

.fa-hand-pointer {
  --fa: "\f25a";
}

.fa-hand-peace {
  --fa: "\f25b";
}

.fa-trademark {
  --fa: "\f25c";
}

.fa-registered {
  --fa: "\f25d";
}

.fa-tv {
  --fa: "\f26c";
}

.fa-television {
  --fa: "\f26c";
}

.fa-tv-alt {
  --fa: "\f26c";
}

.fa-calendar-plus {
  --fa: "\f271";
}

.fa-calendar-minus {
  --fa: "\f272";
}

.fa-calendar-xmark {
  --fa: "\f273";
}

.fa-calendar-times {
  --fa: "\f273";
}

.fa-calendar-check {
  --fa: "\f274";
}

.fa-industry {
  --fa: "\f275";
}

.fa-map-pin {
  --fa: "\f276";
}

.fa-signs-post {
  --fa: "\f277";
}

.fa-map-signs {
  --fa: "\f277";
}

.fa-map {
  --fa: "\f279";
}

.fa-message {
  --fa: "\f27a";
}

.fa-comment-alt {
  --fa: "\f27a";
}

.fa-circle-pause {
  --fa: "\f28b";
}

.fa-pause-circle {
  --fa: "\f28b";
}

.fa-circle-stop {
  --fa: "\f28d";
}

.fa-stop-circle {
  --fa: "\f28d";
}

.fa-bag-shopping {
  --fa: "\f290";
}

.fa-shopping-bag {
  --fa: "\f290";
}

.fa-basket-shopping {
  --fa: "\f291";
}

.fa-shopping-basket {
  --fa: "\f291";
}

.fa-universal-access {
  --fa: "\f29a";
}

.fa-person-walking-with-cane {
  --fa: "\f29d";
}

.fa-blind {
  --fa: "\f29d";
}

.fa-audio-description {
  --fa: "\f29e";
}

.fa-phone-volume {
  --fa: "\f2a0";
}

.fa-volume-control-phone {
  --fa: "\f2a0";
}

.fa-braille {
  --fa: "\f2a1";
}

.fa-ear-listen {
  --fa: "\f2a2";
}

.fa-assistive-listening-systems {
  --fa: "\f2a2";
}

.fa-hands-asl-interpreting {
  --fa: "\f2a3";
}

.fa-american-sign-language-interpreting {
  --fa: "\f2a3";
}

.fa-asl-interpreting {
  --fa: "\f2a3";
}

.fa-hands-american-sign-language-interpreting {
  --fa: "\f2a3";
}

.fa-ear-deaf {
  --fa: "\f2a4";
}

.fa-deaf {
  --fa: "\f2a4";
}

.fa-deafness {
  --fa: "\f2a4";
}

.fa-hard-of-hearing {
  --fa: "\f2a4";
}

.fa-hands {
  --fa: "\f2a7";
}

.fa-sign-language {
  --fa: "\f2a7";
}

.fa-signing {
  --fa: "\f2a7";
}

.fa-eye-low-vision {
  --fa: "\f2a8";
}

.fa-low-vision {
  --fa: "\f2a8";
}

.fa-font-awesome {
  --fa: "\f2b4";
}

.fa-font-awesome-flag {
  --fa: "\f2b4";
}

.fa-font-awesome-logo-full {
  --fa: "\f2b4";
}

.fa-handshake {
  --fa: "\f2b5";
}

.fa-handshake-alt {
  --fa: "\f2b5";
}

.fa-handshake-simple {
  --fa: "\f2b5";
}

.fa-envelope-open {
  --fa: "\f2b6";
}

.fa-address-book {
  --fa: "\f2b9";
}

.fa-contact-book {
  --fa: "\f2b9";
}

.fa-address-card {
  --fa: "\f2bb";
}

.fa-contact-card {
  --fa: "\f2bb";
}

.fa-vcard {
  --fa: "\f2bb";
}

.fa-circle-user {
  --fa: "\f2bd";
}

.fa-user-circle {
  --fa: "\f2bd";
}

.fa-id-badge {
  --fa: "\f2c1";
}

.fa-id-card {
  --fa: "\f2c2";
}

.fa-drivers-license {
  --fa: "\f2c2";
}

.fa-temperature-full {
  --fa: "\f2c7";
}

.fa-temperature-4 {
  --fa: "\f2c7";
}

.fa-thermometer-4 {
  --fa: "\f2c7";
}

.fa-thermometer-full {
  --fa: "\f2c7";
}

.fa-temperature-three-quarters {
  --fa: "\f2c8";
}

.fa-temperature-3 {
  --fa: "\f2c8";
}

.fa-thermometer-3 {
  --fa: "\f2c8";
}

.fa-thermometer-three-quarters {
  --fa: "\f2c8";
}

.fa-temperature-half {
  --fa: "\f2c9";
}

.fa-temperature-2 {
  --fa: "\f2c9";
}

.fa-thermometer-2 {
  --fa: "\f2c9";
}

.fa-thermometer-half {
  --fa: "\f2c9";
}

.fa-temperature-quarter {
  --fa: "\f2ca";
}

.fa-temperature-1 {
  --fa: "\f2ca";
}

.fa-thermometer-1 {
  --fa: "\f2ca";
}

.fa-thermometer-quarter {
  --fa: "\f2ca";
}

.fa-temperature-empty {
  --fa: "\f2cb";
}

.fa-temperature-0 {
  --fa: "\f2cb";
}

.fa-thermometer-0 {
  --fa: "\f2cb";
}

.fa-thermometer-empty {
  --fa: "\f2cb";
}

.fa-shower {
  --fa: "\f2cc";
}

.fa-bath {
  --fa: "\f2cd";
}

.fa-bathtub {
  --fa: "\f2cd";
}

.fa-podcast {
  --fa: "\f2ce";
}

.fa-window-maximize {
  --fa: "\f2d0";
}

.fa-window-minimize {
  --fa: "\f2d1";
}

.fa-window-restore {
  --fa: "\f2d2";
}

.fa-square-xmark {
  --fa: "\f2d3";
}

.fa-times-square {
  --fa: "\f2d3";
}

.fa-xmark-square {
  --fa: "\f2d3";
}

.fa-microchip {
  --fa: "\f2db";
}

.fa-snowflake {
  --fa: "\f2dc";
}

.fa-spoon {
  --fa: "\f2e5";
}

.fa-utensil-spoon {
  --fa: "\f2e5";
}

.fa-utensils {
  --fa: "\f2e7";
}

.fa-cutlery {
  --fa: "\f2e7";
}

.fa-rotate-left {
  --fa: "\f2ea";
}

.fa-rotate-back {
  --fa: "\f2ea";
}

.fa-rotate-backward {
  --fa: "\f2ea";
}

.fa-undo-alt {
  --fa: "\f2ea";
}

.fa-trash-can {
  --fa: "\f2ed";
}

.fa-trash-alt {
  --fa: "\f2ed";
}

.fa-rotate {
  --fa: "\f2f1";
}

.fa-sync-alt {
  --fa: "\f2f1";
}

.fa-stopwatch {
  --fa: "\f2f2";
}

.fa-right-from-bracket {
  --fa: "\f2f5";
}

.fa-sign-out-alt {
  --fa: "\f2f5";
}

.fa-right-to-bracket {
  --fa: "\f2f6";
}

.fa-sign-in-alt {
  --fa: "\f2f6";
}

.fa-rotate-right {
  --fa: "\f2f9";
}

.fa-redo-alt {
  --fa: "\f2f9";
}

.fa-rotate-forward {
  --fa: "\f2f9";
}

.fa-poo {
  --fa: "\f2fe";
}

.fa-images {
  --fa: "\f302";
}

.fa-pencil {
  --fa: "\f303";
}

.fa-pencil-alt {
  --fa: "\f303";
}

.fa-pen {
  --fa: "\f304";
}

.fa-pen-clip {
  --fa: "\f305";
}

.fa-pen-alt {
  --fa: "\f305";
}

.fa-octagon {
  --fa: "\f306";
}

.fa-down-long {
  --fa: "\f309";
}

.fa-long-arrow-alt-down {
  --fa: "\f309";
}

.fa-left-long {
  --fa: "\f30a";
}

.fa-long-arrow-alt-left {
  --fa: "\f30a";
}

.fa-right-long {
  --fa: "\f30b";
}

.fa-long-arrow-alt-right {
  --fa: "\f30b";
}

.fa-up-long {
  --fa: "\f30c";
}

.fa-long-arrow-alt-up {
  --fa: "\f30c";
}

.fa-hexagon {
  --fa: "\f312";
}

.fa-file-pen {
  --fa: "\f31c";
}

.fa-file-edit {
  --fa: "\f31c";
}

.fa-maximize {
  --fa: "\f31e";
}

.fa-expand-arrows-alt {
  --fa: "\f31e";
}

.fa-clipboard {
  --fa: "\f328";
}

.fa-left-right {
  --fa: "\f337";
}

.fa-arrows-alt-h {
  --fa: "\f337";
}

.fa-up-down {
  --fa: "\f338";
}

.fa-arrows-alt-v {
  --fa: "\f338";
}

.fa-alarm-clock {
  --fa: "\f34e";
}

.fa-circle-down {
  --fa: "\f358";
}

.fa-arrow-alt-circle-down {
  --fa: "\f358";
}

.fa-circle-left {
  --fa: "\f359";
}

.fa-arrow-alt-circle-left {
  --fa: "\f359";
}

.fa-circle-right {
  --fa: "\f35a";
}

.fa-arrow-alt-circle-right {
  --fa: "\f35a";
}

.fa-circle-up {
  --fa: "\f35b";
}

.fa-arrow-alt-circle-up {
  --fa: "\f35b";
}

.fa-up-right-from-square {
  --fa: "\f35d";
}

.fa-external-link-alt {
  --fa: "\f35d";
}

.fa-square-up-right {
  --fa: "\f360";
}

.fa-external-link-square-alt {
  --fa: "\f360";
}

.fa-right-left {
  --fa: "\f362";
}

.fa-exchange-alt {
  --fa: "\f362";
}

.fa-repeat {
  --fa: "\f363";
}

.fa-code-commit {
  --fa: "\f386";
}

.fa-code-merge {
  --fa: "\f387";
}

.fa-desktop {
  --fa: "\f390";
}

.fa-desktop-alt {
  --fa: "\f390";
}

.fa-gem {
  --fa: "\f3a5";
}

.fa-turn-down {
  --fa: "\f3be";
}

.fa-level-down-alt {
  --fa: "\f3be";
}

.fa-turn-up {
  --fa: "\f3bf";
}

.fa-level-up-alt {
  --fa: "\f3bf";
}

.fa-lock-open {
  --fa: "\f3c1";
}

.fa-location-dot {
  --fa: "\f3c5";
}

.fa-map-marker-alt {
  --fa: "\f3c5";
}

.fa-microphone-lines {
  --fa: "\f3c9";
}

.fa-microphone-alt {
  --fa: "\f3c9";
}

.fa-mobile-screen-button {
  --fa: "\f3cd";
}

.fa-mobile-alt {
  --fa: "\f3cd";
}

.fa-mobile {
  --fa: "\f3ce";
}

.fa-mobile-android {
  --fa: "\f3ce";
}

.fa-mobile-phone {
  --fa: "\f3ce";
}

.fa-mobile-screen {
  --fa: "\f3cf";
}

.fa-mobile-android-alt {
  --fa: "\f3cf";
}

.fa-money-bill-1 {
  --fa: "\f3d1";
}

.fa-money-bill-alt {
  --fa: "\f3d1";
}

.fa-phone-slash {
  --fa: "\f3dd";
}

.fa-image-portrait {
  --fa: "\f3e0";
}

.fa-portrait {
  --fa: "\f3e0";
}

.fa-reply {
  --fa: "\f3e5";
}

.fa-mail-reply {
  --fa: "\f3e5";
}

.fa-shield-halved {
  --fa: "\f3ed";
}

.fa-shield-alt {
  --fa: "\f3ed";
}

.fa-tablet-screen-button {
  --fa: "\f3fa";
}

.fa-tablet-alt {
  --fa: "\f3fa";
}

.fa-tablet {
  --fa: "\f3fb";
}

.fa-tablet-android {
  --fa: "\f3fb";
}

.fa-ticket-simple {
  --fa: "\f3ff";
}

.fa-ticket-alt {
  --fa: "\f3ff";
}

.fa-rectangle-xmark {
  --fa: "\f410";
}

.fa-rectangle-times {
  --fa: "\f410";
}

.fa-times-rectangle {
  --fa: "\f410";
}

.fa-window-close {
  --fa: "\f410";
}

.fa-down-left-and-up-right-to-center {
  --fa: "\f422";
}

.fa-compress-alt {
  --fa: "\f422";
}

.fa-up-right-and-down-left-from-center {
  --fa: "\f424";
}

.fa-expand-alt {
  --fa: "\f424";
}

.fa-baseball-bat-ball {
  --fa: "\f432";
}

.fa-baseball {
  --fa: "\f433";
}

.fa-baseball-ball {
  --fa: "\f433";
}

.fa-basketball {
  --fa: "\f434";
}

.fa-basketball-ball {
  --fa: "\f434";
}

.fa-bowling-ball {
  --fa: "\f436";
}

.fa-chess {
  --fa: "\f439";
}

.fa-chess-bishop {
  --fa: "\f43a";
}

.fa-chess-board {
  --fa: "\f43c";
}

.fa-chess-king {
  --fa: "\f43f";
}

.fa-chess-knight {
  --fa: "\f441";
}

.fa-chess-pawn {
  --fa: "\f443";
}

.fa-chess-queen {
  --fa: "\f445";
}

.fa-chess-rook {
  --fa: "\f447";
}

.fa-dumbbell {
  --fa: "\f44b";
}

.fa-football {
  --fa: "\f44e";
}

.fa-football-ball {
  --fa: "\f44e";
}

.fa-golf-ball-tee {
  --fa: "\f450";
}

.fa-golf-ball {
  --fa: "\f450";
}

.fa-hockey-puck {
  --fa: "\f453";
}

.fa-broom-ball {
  --fa: "\f458";
}

.fa-quidditch {
  --fa: "\f458";
}

.fa-quidditch-broom-ball {
  --fa: "\f458";
}

.fa-square-full {
  --fa: "\f45c";
}

.fa-table-tennis-paddle-ball {
  --fa: "\f45d";
}

.fa-ping-pong-paddle-ball {
  --fa: "\f45d";
}

.fa-table-tennis {
  --fa: "\f45d";
}

.fa-volleyball {
  --fa: "\f45f";
}

.fa-volleyball-ball {
  --fa: "\f45f";
}

.fa-hand-dots {
  --fa: "\f461";
}

.fa-allergies {
  --fa: "\f461";
}

.fa-bandage {
  --fa: "\f462";
}

.fa-band-aid {
  --fa: "\f462";
}

.fa-box {
  --fa: "\f466";
}

.fa-boxes-stacked {
  --fa: "\f468";
}

.fa-boxes {
  --fa: "\f468";
}

.fa-boxes-alt {
  --fa: "\f468";
}

.fa-briefcase-medical {
  --fa: "\f469";
}

.fa-fire-flame-simple {
  --fa: "\f46a";
}

.fa-burn {
  --fa: "\f46a";
}

.fa-capsules {
  --fa: "\f46b";
}

.fa-clipboard-check {
  --fa: "\f46c";
}

.fa-clipboard-list {
  --fa: "\f46d";
}

.fa-person-dots-from-line {
  --fa: "\f470";
}

.fa-diagnoses {
  --fa: "\f470";
}

.fa-dna {
  --fa: "\f471";
}

.fa-dolly {
  --fa: "\f472";
}

.fa-dolly-box {
  --fa: "\f472";
}

.fa-cart-flatbed {
  --fa: "\f474";
}

.fa-dolly-flatbed {
  --fa: "\f474";
}

.fa-file-medical {
  --fa: "\f477";
}

.fa-file-waveform {
  --fa: "\f478";
}

.fa-file-medical-alt {
  --fa: "\f478";
}

.fa-kit-medical {
  --fa: "\f479";
}

.fa-first-aid {
  --fa: "\f479";
}

.fa-circle-h {
  --fa: "\f47e";
}

.fa-hospital-symbol {
  --fa: "\f47e";
}

.fa-id-card-clip {
  --fa: "\f47f";
}

.fa-id-card-alt {
  --fa: "\f47f";
}

.fa-notes-medical {
  --fa: "\f481";
}

.fa-pallet {
  --fa: "\f482";
}

.fa-pills {
  --fa: "\f484";
}

.fa-prescription-bottle {
  --fa: "\f485";
}

.fa-prescription-bottle-medical {
  --fa: "\f486";
}

.fa-prescription-bottle-alt {
  --fa: "\f486";
}

.fa-bed-pulse {
  --fa: "\f487";
}

.fa-procedures {
  --fa: "\f487";
}

.fa-truck-fast {
  --fa: "\f48b";
}

.fa-shipping-fast {
  --fa: "\f48b";
}

.fa-smoking {
  --fa: "\f48d";
}

.fa-syringe {
  --fa: "\f48e";
}

.fa-tablets {
  --fa: "\f490";
}

.fa-thermometer {
  --fa: "\f491";
}

.fa-vial {
  --fa: "\f492";
}

.fa-vials {
  --fa: "\f493";
}

.fa-warehouse {
  --fa: "\f494";
}

.fa-weight-scale {
  --fa: "\f496";
}

.fa-weight {
  --fa: "\f496";
}

.fa-x-ray {
  --fa: "\f497";
}

.fa-box-open {
  --fa: "\f49e";
}

.fa-comment-dots {
  --fa: "\f4ad";
}

.fa-commenting {
  --fa: "\f4ad";
}

.fa-comment-slash {
  --fa: "\f4b3";
}

.fa-couch {
  --fa: "\f4b8";
}

.fa-circle-dollar-to-slot {
  --fa: "\f4b9";
}

.fa-donate {
  --fa: "\f4b9";
}

.fa-dove {
  --fa: "\f4ba";
}

.fa-hand-holding {
  --fa: "\f4bd";
}

.fa-hand-holding-heart {
  --fa: "\f4be";
}

.fa-hand-holding-dollar {
  --fa: "\f4c0";
}

.fa-hand-holding-usd {
  --fa: "\f4c0";
}

.fa-hand-holding-droplet {
  --fa: "\f4c1";
}

.fa-hand-holding-water {
  --fa: "\f4c1";
}

.fa-hands-holding {
  --fa: "\f4c2";
}

.fa-handshake-angle {
  --fa: "\f4c4";
}

.fa-hands-helping {
  --fa: "\f4c4";
}

.fa-parachute-box {
  --fa: "\f4cd";
}

.fa-people-carry-box {
  --fa: "\f4ce";
}

.fa-people-carry {
  --fa: "\f4ce";
}

.fa-piggy-bank {
  --fa: "\f4d3";
}

.fa-ribbon {
  --fa: "\f4d6";
}

.fa-route {
  --fa: "\f4d7";
}

.fa-seedling {
  --fa: "\f4d8";
}

.fa-sprout {
  --fa: "\f4d8";
}

.fa-sign-hanging {
  --fa: "\f4d9";
}

.fa-sign {
  --fa: "\f4d9";
}

.fa-face-smile-wink {
  --fa: "\f4da";
}

.fa-smile-wink {
  --fa: "\f4da";
}

.fa-tape {
  --fa: "\f4db";
}

.fa-truck-ramp-box {
  --fa: "\f4de";
}

.fa-truck-loading {
  --fa: "\f4de";
}

.fa-truck-moving {
  --fa: "\f4df";
}

.fa-video-slash {
  --fa: "\f4e2";
}

.fa-wine-glass {
  --fa: "\f4e3";
}

.fa-user-astronaut {
  --fa: "\f4fb";
}

.fa-user-check {
  --fa: "\f4fc";
}

.fa-user-clock {
  --fa: "\f4fd";
}

.fa-user-gear {
  --fa: "\f4fe";
}

.fa-user-cog {
  --fa: "\f4fe";
}

.fa-user-pen {
  --fa: "\f4ff";
}

.fa-user-edit {
  --fa: "\f4ff";
}

.fa-user-group {
  --fa: "\f500";
}

.fa-user-friends {
  --fa: "\f500";
}

.fa-user-graduate {
  --fa: "\f501";
}

.fa-user-lock {
  --fa: "\f502";
}

.fa-user-minus {
  --fa: "\f503";
}

.fa-user-ninja {
  --fa: "\f504";
}

.fa-user-shield {
  --fa: "\f505";
}

.fa-user-slash {
  --fa: "\f506";
}

.fa-user-alt-slash {
  --fa: "\f506";
}

.fa-user-large-slash {
  --fa: "\f506";
}

.fa-user-tag {
  --fa: "\f507";
}

.fa-user-tie {
  --fa: "\f508";
}

.fa-users-gear {
  --fa: "\f509";
}

.fa-users-cog {
  --fa: "\f509";
}

.fa-scale-unbalanced {
  --fa: "\f515";
}

.fa-balance-scale-left {
  --fa: "\f515";
}

.fa-scale-unbalanced-flip {
  --fa: "\f516";
}

.fa-balance-scale-right {
  --fa: "\f516";
}

.fa-blender {
  --fa: "\f517";
}

.fa-book-open {
  --fa: "\f518";
}

.fa-tower-broadcast {
  --fa: "\f519";
}

.fa-broadcast-tower {
  --fa: "\f519";
}

.fa-broom {
  --fa: "\f51a";
}

.fa-chalkboard {
  --fa: "\f51b";
}

.fa-blackboard {
  --fa: "\f51b";
}

.fa-chalkboard-user {
  --fa: "\f51c";
}

.fa-chalkboard-teacher {
  --fa: "\f51c";
}

.fa-church {
  --fa: "\f51d";
}

.fa-coins {
  --fa: "\f51e";
}

.fa-compact-disc {
  --fa: "\f51f";
}

.fa-crow {
  --fa: "\f520";
}

.fa-crown {
  --fa: "\f521";
}

.fa-dice {
  --fa: "\f522";
}

.fa-dice-five {
  --fa: "\f523";
}

.fa-dice-four {
  --fa: "\f524";
}

.fa-dice-one {
  --fa: "\f525";
}

.fa-dice-six {
  --fa: "\f526";
}

.fa-dice-three {
  --fa: "\f527";
}

.fa-dice-two {
  --fa: "\f528";
}

.fa-divide {
  --fa: "\f529";
}

.fa-door-closed {
  --fa: "\f52a";
}

.fa-door-open {
  --fa: "\f52b";
}

.fa-feather {
  --fa: "\f52d";
}

.fa-frog {
  --fa: "\f52e";
}

.fa-gas-pump {
  --fa: "\f52f";
}

.fa-glasses {
  --fa: "\f530";
}

.fa-greater-than-equal {
  --fa: "\f532";
}

.fa-helicopter {
  --fa: "\f533";
}

.fa-infinity {
  --fa: "\f534";
}

.fa-kiwi-bird {
  --fa: "\f535";
}

.fa-less-than-equal {
  --fa: "\f537";
}

.fa-memory {
  --fa: "\f538";
}

.fa-microphone-lines-slash {
  --fa: "\f539";
}

.fa-microphone-alt-slash {
  --fa: "\f539";
}

.fa-money-bill-wave {
  --fa: "\f53a";
}

.fa-money-bill-1-wave {
  --fa: "\f53b";
}

.fa-money-bill-wave-alt {
  --fa: "\f53b";
}

.fa-money-check {
  --fa: "\f53c";
}

.fa-money-check-dollar {
  --fa: "\f53d";
}

.fa-money-check-alt {
  --fa: "\f53d";
}

.fa-not-equal {
  --fa: "\f53e";
}

.fa-palette {
  --fa: "\f53f";
}

.fa-square-parking {
  --fa: "\f540";
}

.fa-parking {
  --fa: "\f540";
}

.fa-diagram-project {
  --fa: "\f542";
}

.fa-project-diagram {
  --fa: "\f542";
}

.fa-receipt {
  --fa: "\f543";
}

.fa-robot {
  --fa: "\f544";
}

.fa-ruler {
  --fa: "\f545";
}

.fa-ruler-combined {
  --fa: "\f546";
}

.fa-ruler-horizontal {
  --fa: "\f547";
}

.fa-ruler-vertical {
  --fa: "\f548";
}

.fa-school {
  --fa: "\f549";
}

.fa-screwdriver {
  --fa: "\f54a";
}

.fa-shoe-prints {
  --fa: "\f54b";
}

.fa-skull {
  --fa: "\f54c";
}

.fa-ban-smoking {
  --fa: "\f54d";
}

.fa-smoking-ban {
  --fa: "\f54d";
}

.fa-store {
  --fa: "\f54e";
}

.fa-shop {
  --fa: "\f54f";
}

.fa-store-alt {
  --fa: "\f54f";
}

.fa-bars-staggered {
  --fa: "\f550";
}

.fa-reorder {
  --fa: "\f550";
}

.fa-stream {
  --fa: "\f550";
}

.fa-stroopwafel {
  --fa: "\f551";
}

.fa-toolbox {
  --fa: "\f552";
}

.fa-shirt {
  --fa: "\f553";
}

.fa-t-shirt {
  --fa: "\f553";
}

.fa-tshirt {
  --fa: "\f553";
}

.fa-person-walking {
  --fa: "\f554";
}

.fa-walking {
  --fa: "\f554";
}

.fa-wallet {
  --fa: "\f555";
}

.fa-face-angry {
  --fa: "\f556";
}

.fa-angry {
  --fa: "\f556";
}

.fa-archway {
  --fa: "\f557";
}

.fa-book-atlas {
  --fa: "\f558";
}

.fa-atlas {
  --fa: "\f558";
}

.fa-award {
  --fa: "\f559";
}

.fa-delete-left {
  --fa: "\f55a";
}

.fa-backspace {
  --fa: "\f55a";
}

.fa-bezier-curve {
  --fa: "\f55b";
}

.fa-bong {
  --fa: "\f55c";
}

.fa-brush {
  --fa: "\f55d";
}

.fa-bus-simple {
  --fa: "\f55e";
}

.fa-bus-alt {
  --fa: "\f55e";
}

.fa-cannabis {
  --fa: "\f55f";
}

.fa-check-double {
  --fa: "\f560";
}

.fa-martini-glass-citrus {
  --fa: "\f561";
}

.fa-cocktail {
  --fa: "\f561";
}

.fa-bell-concierge {
  --fa: "\f562";
}

.fa-concierge-bell {
  --fa: "\f562";
}

.fa-cookie {
  --fa: "\f563";
}

.fa-cookie-bite {
  --fa: "\f564";
}

.fa-crop-simple {
  --fa: "\f565";
}

.fa-crop-alt {
  --fa: "\f565";
}

.fa-tachograph-digital {
  --fa: "\f566";
}

.fa-digital-tachograph {
  --fa: "\f566";
}

.fa-face-dizzy {
  --fa: "\f567";
}

.fa-dizzy {
  --fa: "\f567";
}

.fa-compass-drafting {
  --fa: "\f568";
}

.fa-drafting-compass {
  --fa: "\f568";
}

.fa-drum {
  --fa: "\f569";
}

.fa-drum-steelpan {
  --fa: "\f56a";
}

.fa-feather-pointed {
  --fa: "\f56b";
}

.fa-feather-alt {
  --fa: "\f56b";
}

.fa-file-contract {
  --fa: "\f56c";
}

.fa-file-arrow-down {
  --fa: "\f56d";
}

.fa-file-download {
  --fa: "\f56d";
}

.fa-file-export {
  --fa: "\f56e";
}

.fa-arrow-right-from-file {
  --fa: "\f56e";
}

.fa-file-import {
  --fa: "\f56f";
}

.fa-arrow-right-to-file {
  --fa: "\f56f";
}

.fa-file-invoice {
  --fa: "\f570";
}

.fa-file-invoice-dollar {
  --fa: "\f571";
}

.fa-file-prescription {
  --fa: "\f572";
}

.fa-file-signature {
  --fa: "\f573";
}

.fa-file-arrow-up {
  --fa: "\f574";
}

.fa-file-upload {
  --fa: "\f574";
}

.fa-fill {
  --fa: "\f575";
}

.fa-fill-drip {
  --fa: "\f576";
}

.fa-fingerprint {
  --fa: "\f577";
}

.fa-fish {
  --fa: "\f578";
}

.fa-face-flushed {
  --fa: "\f579";
}

.fa-flushed {
  --fa: "\f579";
}

.fa-face-frown-open {
  --fa: "\f57a";
}

.fa-frown-open {
  --fa: "\f57a";
}

.fa-martini-glass {
  --fa: "\f57b";
}

.fa-glass-martini-alt {
  --fa: "\f57b";
}

.fa-earth-africa {
  --fa: "\f57c";
}

.fa-globe-africa {
  --fa: "\f57c";
}

.fa-earth-americas {
  --fa: "\f57d";
}

.fa-earth {
  --fa: "\f57d";
}

.fa-earth-america {
  --fa: "\f57d";
}

.fa-globe-americas {
  --fa: "\f57d";
}

.fa-earth-asia {
  --fa: "\f57e";
}

.fa-globe-asia {
  --fa: "\f57e";
}

.fa-face-grimace {
  --fa: "\f57f";
}

.fa-grimace {
  --fa: "\f57f";
}

.fa-face-grin {
  --fa: "\f580";
}

.fa-grin {
  --fa: "\f580";
}

.fa-face-grin-wide {
  --fa: "\f581";
}

.fa-grin-alt {
  --fa: "\f581";
}

.fa-face-grin-beam {
  --fa: "\f582";
}

.fa-grin-beam {
  --fa: "\f582";
}

.fa-face-grin-beam-sweat {
  --fa: "\f583";
}

.fa-grin-beam-sweat {
  --fa: "\f583";
}

.fa-face-grin-hearts {
  --fa: "\f584";
}

.fa-grin-hearts {
  --fa: "\f584";
}

.fa-face-grin-squint {
  --fa: "\f585";
}

.fa-grin-squint {
  --fa: "\f585";
}

.fa-face-grin-squint-tears {
  --fa: "\f586";
}

.fa-grin-squint-tears {
  --fa: "\f586";
}

.fa-face-grin-stars {
  --fa: "\f587";
}

.fa-grin-stars {
  --fa: "\f587";
}

.fa-face-grin-tears {
  --fa: "\f588";
}

.fa-grin-tears {
  --fa: "\f588";
}

.fa-face-grin-tongue {
  --fa: "\f589";
}

.fa-grin-tongue {
  --fa: "\f589";
}

.fa-face-grin-tongue-squint {
  --fa: "\f58a";
}

.fa-grin-tongue-squint {
  --fa: "\f58a";
}

.fa-face-grin-tongue-wink {
  --fa: "\f58b";
}

.fa-grin-tongue-wink {
  --fa: "\f58b";
}

.fa-face-grin-wink {
  --fa: "\f58c";
}

.fa-grin-wink {
  --fa: "\f58c";
}

.fa-grip {
  --fa: "\f58d";
}

.fa-grid-horizontal {
  --fa: "\f58d";
}

.fa-grip-horizontal {
  --fa: "\f58d";
}

.fa-grip-vertical {
  --fa: "\f58e";
}

.fa-grid-vertical {
  --fa: "\f58e";
}

.fa-headset {
  --fa: "\f590";
}

.fa-highlighter {
  --fa: "\f591";
}

.fa-hot-tub-person {
  --fa: "\f593";
}

.fa-hot-tub {
  --fa: "\f593";
}

.fa-hotel {
  --fa: "\f594";
}

.fa-joint {
  --fa: "\f595";
}

.fa-face-kiss {
  --fa: "\f596";
}

.fa-kiss {
  --fa: "\f596";
}

.fa-face-kiss-beam {
  --fa: "\f597";
}

.fa-kiss-beam {
  --fa: "\f597";
}

.fa-face-kiss-wink-heart {
  --fa: "\f598";
}

.fa-kiss-wink-heart {
  --fa: "\f598";
}

.fa-face-laugh {
  --fa: "\f599";
}

.fa-laugh {
  --fa: "\f599";
}

.fa-face-laugh-beam {
  --fa: "\f59a";
}

.fa-laugh-beam {
  --fa: "\f59a";
}

.fa-face-laugh-squint {
  --fa: "\f59b";
}

.fa-laugh-squint {
  --fa: "\f59b";
}

.fa-face-laugh-wink {
  --fa: "\f59c";
}

.fa-laugh-wink {
  --fa: "\f59c";
}

.fa-cart-flatbed-suitcase {
  --fa: "\f59d";
}

.fa-luggage-cart {
  --fa: "\f59d";
}

.fa-map-location {
  --fa: "\f59f";
}

.fa-map-marked {
  --fa: "\f59f";
}

.fa-map-location-dot {
  --fa: "\f5a0";
}

.fa-map-marked-alt {
  --fa: "\f5a0";
}

.fa-marker {
  --fa: "\f5a1";
}

.fa-medal {
  --fa: "\f5a2";
}

.fa-face-meh-blank {
  --fa: "\f5a4";
}

.fa-meh-blank {
  --fa: "\f5a4";
}

.fa-face-rolling-eyes {
  --fa: "\f5a5";
}

.fa-meh-rolling-eyes {
  --fa: "\f5a5";
}

.fa-monument {
  --fa: "\f5a6";
}

.fa-mortar-pestle {
  --fa: "\f5a7";
}

.fa-paint-roller {
  --fa: "\f5aa";
}

.fa-passport {
  --fa: "\f5ab";
}

.fa-pen-fancy {
  --fa: "\f5ac";
}

.fa-pen-nib {
  --fa: "\f5ad";
}

.fa-pen-ruler {
  --fa: "\f5ae";
}

.fa-pencil-ruler {
  --fa: "\f5ae";
}

.fa-plane-arrival {
  --fa: "\f5af";
}

.fa-plane-departure {
  --fa: "\f5b0";
}

.fa-prescription {
  --fa: "\f5b1";
}

.fa-face-sad-cry {
  --fa: "\f5b3";
}

.fa-sad-cry {
  --fa: "\f5b3";
}

.fa-face-sad-tear {
  --fa: "\f5b4";
}

.fa-sad-tear {
  --fa: "\f5b4";
}

.fa-van-shuttle {
  --fa: "\f5b6";
}

.fa-shuttle-van {
  --fa: "\f5b6";
}

.fa-signature {
  --fa: "\f5b7";
}

.fa-face-smile-beam {
  --fa: "\f5b8";
}

.fa-smile-beam {
  --fa: "\f5b8";
}

.fa-solar-panel {
  --fa: "\f5ba";
}

.fa-spa {
  --fa: "\f5bb";
}

.fa-splotch {
  --fa: "\f5bc";
}

.fa-spray-can {
  --fa: "\f5bd";
}

.fa-stamp {
  --fa: "\f5bf";
}

.fa-star-half-stroke {
  --fa: "\f5c0";
}

.fa-star-half-alt {
  --fa: "\f5c0";
}

.fa-suitcase-rolling {
  --fa: "\f5c1";
}

.fa-face-surprise {
  --fa: "\f5c2";
}

.fa-surprise {
  --fa: "\f5c2";
}

.fa-swatchbook {
  --fa: "\f5c3";
}

.fa-person-swimming {
  --fa: "\f5c4";
}

.fa-swimmer {
  --fa: "\f5c4";
}

.fa-water-ladder {
  --fa: "\f5c5";
}

.fa-ladder-water {
  --fa: "\f5c5";
}

.fa-swimming-pool {
  --fa: "\f5c5";
}

.fa-droplet-slash {
  --fa: "\f5c7";
}

.fa-tint-slash {
  --fa: "\f5c7";
}

.fa-face-tired {
  --fa: "\f5c8";
}

.fa-tired {
  --fa: "\f5c8";
}

.fa-tooth {
  --fa: "\f5c9";
}

.fa-umbrella-beach {
  --fa: "\f5ca";
}

.fa-weight-hanging {
  --fa: "\f5cd";
}

.fa-wine-glass-empty {
  --fa: "\f5ce";
}

.fa-wine-glass-alt {
  --fa: "\f5ce";
}

.fa-spray-can-sparkles {
  --fa: "\f5d0";
}

.fa-air-freshener {
  --fa: "\f5d0";
}

.fa-apple-whole {
  --fa: "\f5d1";
}

.fa-apple-alt {
  --fa: "\f5d1";
}

.fa-atom {
  --fa: "\f5d2";
}

.fa-bone {
  --fa: "\f5d7";
}

.fa-book-open-reader {
  --fa: "\f5da";
}

.fa-book-reader {
  --fa: "\f5da";
}

.fa-brain {
  --fa: "\f5dc";
}

.fa-car-rear {
  --fa: "\f5de";
}

.fa-car-alt {
  --fa: "\f5de";
}

.fa-car-battery {
  --fa: "\f5df";
}

.fa-battery-car {
  --fa: "\f5df";
}

.fa-car-burst {
  --fa: "\f5e1";
}

.fa-car-crash {
  --fa: "\f5e1";
}

.fa-car-side {
  --fa: "\f5e4";
}

.fa-charging-station {
  --fa: "\f5e7";
}

.fa-diamond-turn-right {
  --fa: "\f5eb";
}

.fa-directions {
  --fa: "\f5eb";
}

.fa-draw-polygon {
  --fa: "\f5ee";
}

.fa-vector-polygon {
  --fa: "\f5ee";
}

.fa-laptop-code {
  --fa: "\f5fc";
}

.fa-layer-group {
  --fa: "\f5fd";
}

.fa-location-crosshairs {
  --fa: "\f601";
}

.fa-location {
  --fa: "\f601";
}

.fa-lungs {
  --fa: "\f604";
}

.fa-microscope {
  --fa: "\f610";
}

.fa-oil-can {
  --fa: "\f613";
}

.fa-poop {
  --fa: "\f619";
}

.fa-shapes {
  --fa: "\f61f";
}

.fa-triangle-circle-square {
  --fa: "\f61f";
}

.fa-star-of-life {
  --fa: "\f621";
}

.fa-gauge {
  --fa: "\f624";
}

.fa-dashboard {
  --fa: "\f624";
}

.fa-gauge-med {
  --fa: "\f624";
}

.fa-tachometer-alt-average {
  --fa: "\f624";
}

.fa-gauge-high {
  --fa: "\f625";
}

.fa-tachometer-alt {
  --fa: "\f625";
}

.fa-tachometer-alt-fast {
  --fa: "\f625";
}

.fa-gauge-simple {
  --fa: "\f629";
}

.fa-gauge-simple-med {
  --fa: "\f629";
}

.fa-tachometer-average {
  --fa: "\f629";
}

.fa-gauge-simple-high {
  --fa: "\f62a";
}

.fa-tachometer {
  --fa: "\f62a";
}

.fa-tachometer-fast {
  --fa: "\f62a";
}

.fa-teeth {
  --fa: "\f62e";
}

.fa-teeth-open {
  --fa: "\f62f";
}

.fa-masks-theater {
  --fa: "\f630";
}

.fa-theater-masks {
  --fa: "\f630";
}

.fa-traffic-light {
  --fa: "\f637";
}

.fa-truck-monster {
  --fa: "\f63b";
}

.fa-truck-pickup {
  --fa: "\f63c";
}

.fa-rectangle-ad {
  --fa: "\f641";
}

.fa-ad {
  --fa: "\f641";
}

.fa-ankh {
  --fa: "\f644";
}

.fa-book-bible {
  --fa: "\f647";
}

.fa-bible {
  --fa: "\f647";
}

.fa-business-time {
  --fa: "\f64a";
}

.fa-briefcase-clock {
  --fa: "\f64a";
}

.fa-city {
  --fa: "\f64f";
}

.fa-comment-dollar {
  --fa: "\f651";
}

.fa-comments-dollar {
  --fa: "\f653";
}

.fa-cross {
  --fa: "\f654";
}

.fa-dharmachakra {
  --fa: "\f655";
}

.fa-envelope-open-text {
  --fa: "\f658";
}

.fa-folder-minus {
  --fa: "\f65d";
}

.fa-folder-plus {
  --fa: "\f65e";
}

.fa-filter-circle-dollar {
  --fa: "\f662";
}

.fa-funnel-dollar {
  --fa: "\f662";
}

.fa-gopuram {
  --fa: "\f664";
}

.fa-hamsa {
  --fa: "\f665";
}

.fa-bahai {
  --fa: "\f666";
}

.fa-haykal {
  --fa: "\f666";
}

.fa-jedi {
  --fa: "\f669";
}

.fa-book-journal-whills {
  --fa: "\f66a";
}

.fa-journal-whills {
  --fa: "\f66a";
}

.fa-kaaba {
  --fa: "\f66b";
}

.fa-khanda {
  --fa: "\f66d";
}

.fa-landmark {
  --fa: "\f66f";
}

.fa-envelopes-bulk {
  --fa: "\f674";
}

.fa-mail-bulk {
  --fa: "\f674";
}

.fa-menorah {
  --fa: "\f676";
}

.fa-mosque {
  --fa: "\f678";
}

.fa-om {
  --fa: "\f679";
}

.fa-spaghetti-monster-flying {
  --fa: "\f67b";
}

.fa-pastafarianism {
  --fa: "\f67b";
}

.fa-peace {
  --fa: "\f67c";
}

.fa-place-of-worship {
  --fa: "\f67f";
}

.fa-square-poll-vertical {
  --fa: "\f681";
}

.fa-poll {
  --fa: "\f681";
}

.fa-square-poll-horizontal {
  --fa: "\f682";
}

.fa-poll-h {
  --fa: "\f682";
}

.fa-person-praying {
  --fa: "\f683";
}

.fa-pray {
  --fa: "\f683";
}

.fa-hands-praying {
  --fa: "\f684";
}

.fa-praying-hands {
  --fa: "\f684";
}

.fa-book-quran {
  --fa: "\f687";
}

.fa-quran {
  --fa: "\f687";
}

.fa-magnifying-glass-dollar {
  --fa: "\f688";
}

.fa-search-dollar {
  --fa: "\f688";
}

.fa-magnifying-glass-location {
  --fa: "\f689";
}

.fa-search-location {
  --fa: "\f689";
}

.fa-socks {
  --fa: "\f696";
}

.fa-square-root-variable {
  --fa: "\f698";
}

.fa-square-root-alt {
  --fa: "\f698";
}

.fa-star-and-crescent {
  --fa: "\f699";
}

.fa-star-of-david {
  --fa: "\f69a";
}

.fa-synagogue {
  --fa: "\f69b";
}

.fa-scroll-torah {
  --fa: "\f6a0";
}

.fa-torah {
  --fa: "\f6a0";
}

.fa-torii-gate {
  --fa: "\f6a1";
}

.fa-vihara {
  --fa: "\f6a7";
}

.fa-volume-xmark {
  --fa: "\f6a9";
}

.fa-volume-mute {
  --fa: "\f6a9";
}

.fa-volume-times {
  --fa: "\f6a9";
}

.fa-yin-yang {
  --fa: "\f6ad";
}

.fa-blender-phone {
  --fa: "\f6b6";
}

.fa-book-skull {
  --fa: "\f6b7";
}

.fa-book-dead {
  --fa: "\f6b7";
}

.fa-campground {
  --fa: "\f6bb";
}

.fa-cat {
  --fa: "\f6be";
}

.fa-chair {
  --fa: "\f6c0";
}

.fa-cloud-moon {
  --fa: "\f6c3";
}

.fa-cloud-sun {
  --fa: "\f6c4";
}

.fa-cow {
  --fa: "\f6c8";
}

.fa-dice-d20 {
  --fa: "\f6cf";
}

.fa-dice-d6 {
  --fa: "\f6d1";
}

.fa-dog {
  --fa: "\f6d3";
}

.fa-dragon {
  --fa: "\f6d5";
}

.fa-drumstick-bite {
  --fa: "\f6d7";
}

.fa-dungeon {
  --fa: "\f6d9";
}

.fa-file-csv {
  --fa: "\f6dd";
}

.fa-hand-fist {
  --fa: "\f6de";
}

.fa-fist-raised {
  --fa: "\f6de";
}

.fa-ghost {
  --fa: "\f6e2";
}

.fa-hammer {
  --fa: "\f6e3";
}

.fa-hanukiah {
  --fa: "\f6e6";
}

.fa-hat-wizard {
  --fa: "\f6e8";
}

.fa-person-hiking {
  --fa: "\f6ec";
}

.fa-hiking {
  --fa: "\f6ec";
}

.fa-hippo {
  --fa: "\f6ed";
}

.fa-horse {
  --fa: "\f6f0";
}

.fa-house-chimney-crack {
  --fa: "\f6f1";
}

.fa-house-damage {
  --fa: "\f6f1";
}

.fa-hryvnia-sign {
  --fa: "\f6f2";
}

.fa-hryvnia {
  --fa: "\f6f2";
}

.fa-mask {
  --fa: "\f6fa";
}

.fa-mountain {
  --fa: "\f6fc";
}

.fa-network-wired {
  --fa: "\f6ff";
}

.fa-otter {
  --fa: "\f700";
}

.fa-ring {
  --fa: "\f70b";
}

.fa-person-running {
  --fa: "\f70c";
}

.fa-running {
  --fa: "\f70c";
}

.fa-scroll {
  --fa: "\f70e";
}

.fa-skull-crossbones {
  --fa: "\f714";
}

.fa-slash {
  --fa: "\f715";
}

.fa-spider {
  --fa: "\f717";
}

.fa-toilet-paper {
  --fa: "\f71e";
}

.fa-toilet-paper-alt {
  --fa: "\f71e";
}

.fa-toilet-paper-blank {
  --fa: "\f71e";
}

.fa-tractor {
  --fa: "\f722";
}

.fa-user-injured {
  --fa: "\f728";
}

.fa-vr-cardboard {
  --fa: "\f729";
}

.fa-wand-sparkles {
  --fa: "\f72b";
}

.fa-wind {
  --fa: "\f72e";
}

.fa-wine-bottle {
  --fa: "\f72f";
}

.fa-cloud-meatball {
  --fa: "\f73b";
}

.fa-cloud-moon-rain {
  --fa: "\f73c";
}

.fa-cloud-rain {
  --fa: "\f73d";
}

.fa-cloud-showers-heavy {
  --fa: "\f740";
}

.fa-cloud-sun-rain {
  --fa: "\f743";
}

.fa-democrat {
  --fa: "\f747";
}

.fa-flag-usa {
  --fa: "\f74d";
}

.fa-hurricane {
  --fa: "\f751";
}

.fa-landmark-dome {
  --fa: "\f752";
}

.fa-landmark-alt {
  --fa: "\f752";
}

.fa-meteor {
  --fa: "\f753";
}

.fa-person-booth {
  --fa: "\f756";
}

.fa-poo-storm {
  --fa: "\f75a";
}

.fa-poo-bolt {
  --fa: "\f75a";
}

.fa-rainbow {
  --fa: "\f75b";
}

.fa-republican {
  --fa: "\f75e";
}

.fa-smog {
  --fa: "\f75f";
}

.fa-temperature-high {
  --fa: "\f769";
}

.fa-temperature-low {
  --fa: "\f76b";
}

.fa-cloud-bolt {
  --fa: "\f76c";
}

.fa-thunderstorm {
  --fa: "\f76c";
}

.fa-tornado {
  --fa: "\f76f";
}

.fa-volcano {
  --fa: "\f770";
}

.fa-check-to-slot {
  --fa: "\f772";
}

.fa-vote-yea {
  --fa: "\f772";
}

.fa-water {
  --fa: "\f773";
}

.fa-baby {
  --fa: "\f77c";
}

.fa-baby-carriage {
  --fa: "\f77d";
}

.fa-carriage-baby {
  --fa: "\f77d";
}

.fa-biohazard {
  --fa: "\f780";
}

.fa-blog {
  --fa: "\f781";
}

.fa-calendar-day {
  --fa: "\f783";
}

.fa-calendar-week {
  --fa: "\f784";
}

.fa-candy-cane {
  --fa: "\f786";
}

.fa-carrot {
  --fa: "\f787";
}

.fa-cash-register {
  --fa: "\f788";
}

.fa-minimize {
  --fa: "\f78c";
}

.fa-compress-arrows-alt {
  --fa: "\f78c";
}

.fa-dumpster {
  --fa: "\f793";
}

.fa-dumpster-fire {
  --fa: "\f794";
}

.fa-ethernet {
  --fa: "\f796";
}

.fa-gifts {
  --fa: "\f79c";
}

.fa-champagne-glasses {
  --fa: "\f79f";
}

.fa-glass-cheers {
  --fa: "\f79f";
}

.fa-whiskey-glass {
  --fa: "\f7a0";
}

.fa-glass-whiskey {
  --fa: "\f7a0";
}

.fa-earth-europe {
  --fa: "\f7a2";
}

.fa-globe-europe {
  --fa: "\f7a2";
}

.fa-grip-lines {
  --fa: "\f7a4";
}

.fa-grip-lines-vertical {
  --fa: "\f7a5";
}

.fa-guitar {
  --fa: "\f7a6";
}

.fa-heart-crack {
  --fa: "\f7a9";
}

.fa-heart-broken {
  --fa: "\f7a9";
}

.fa-holly-berry {
  --fa: "\f7aa";
}

.fa-horse-head {
  --fa: "\f7ab";
}

.fa-icicles {
  --fa: "\f7ad";
}

.fa-igloo {
  --fa: "\f7ae";
}

.fa-mitten {
  --fa: "\f7b5";
}

.fa-mug-hot {
  --fa: "\f7b6";
}

.fa-radiation {
  --fa: "\f7b9";
}

.fa-circle-radiation {
  --fa: "\f7ba";
}

.fa-radiation-alt {
  --fa: "\f7ba";
}

.fa-restroom {
  --fa: "\f7bd";
}

.fa-satellite {
  --fa: "\f7bf";
}

.fa-satellite-dish {
  --fa: "\f7c0";
}

.fa-sd-card {
  --fa: "\f7c2";
}

.fa-sim-card {
  --fa: "\f7c4";
}

.fa-person-skating {
  --fa: "\f7c5";
}

.fa-skating {
  --fa: "\f7c5";
}

.fa-person-skiing {
  --fa: "\f7c9";
}

.fa-skiing {
  --fa: "\f7c9";
}

.fa-person-skiing-nordic {
  --fa: "\f7ca";
}

.fa-skiing-nordic {
  --fa: "\f7ca";
}

.fa-sleigh {
  --fa: "\f7cc";
}

.fa-comment-sms {
  --fa: "\f7cd";
}

.fa-sms {
  --fa: "\f7cd";
}

.fa-person-snowboarding {
  --fa: "\f7ce";
}

.fa-snowboarding {
  --fa: "\f7ce";
}

.fa-snowman {
  --fa: "\f7d0";
}

.fa-snowplow {
  --fa: "\f7d2";
}

.fa-tenge-sign {
  --fa: "\f7d7";
}

.fa-tenge {
  --fa: "\f7d7";
}

.fa-toilet {
  --fa: "\f7d8";
}

.fa-screwdriver-wrench {
  --fa: "\f7d9";
}

.fa-tools {
  --fa: "\f7d9";
}

.fa-cable-car {
  --fa: "\f7da";
}

.fa-tram {
  --fa: "\f7da";
}

.fa-fire-flame-curved {
  --fa: "\f7e4";
}

.fa-fire-alt {
  --fa: "\f7e4";
}

.fa-bacon {
  --fa: "\f7e5";
}

.fa-book-medical {
  --fa: "\f7e6";
}

.fa-bread-slice {
  --fa: "\f7ec";
}

.fa-cheese {
  --fa: "\f7ef";
}

.fa-house-chimney-medical {
  --fa: "\f7f2";
}

.fa-clinic-medical {
  --fa: "\f7f2";
}

.fa-clipboard-user {
  --fa: "\f7f3";
}

.fa-comment-medical {
  --fa: "\f7f5";
}

.fa-crutch {
  --fa: "\f7f7";
}

.fa-disease {
  --fa: "\f7fa";
}

.fa-egg {
  --fa: "\f7fb";
}

.fa-folder-tree {
  --fa: "\f802";
}

.fa-burger {
  --fa: "\f805";
}

.fa-hamburger {
  --fa: "\f805";
}

.fa-hand-middle-finger {
  --fa: "\f806";
}

.fa-helmet-safety {
  --fa: "\f807";
}

.fa-hard-hat {
  --fa: "\f807";
}

.fa-hat-hard {
  --fa: "\f807";
}

.fa-hospital-user {
  --fa: "\f80d";
}

.fa-hotdog {
  --fa: "\f80f";
}

.fa-ice-cream {
  --fa: "\f810";
}

.fa-laptop-medical {
  --fa: "\f812";
}

.fa-pager {
  --fa: "\f815";
}

.fa-pepper-hot {
  --fa: "\f816";
}

.fa-pizza-slice {
  --fa: "\f818";
}

.fa-sack-dollar {
  --fa: "\f81d";
}

.fa-book-tanakh {
  --fa: "\f827";
}

.fa-tanakh {
  --fa: "\f827";
}

.fa-bars-progress {
  --fa: "\f828";
}

.fa-tasks-alt {
  --fa: "\f828";
}

.fa-trash-arrow-up {
  --fa: "\f829";
}

.fa-trash-restore {
  --fa: "\f829";
}

.fa-trash-can-arrow-up {
  --fa: "\f82a";
}

.fa-trash-restore-alt {
  --fa: "\f82a";
}

.fa-user-nurse {
  --fa: "\f82f";
}

.fa-wave-square {
  --fa: "\f83e";
}

.fa-person-biking {
  --fa: "\f84a";
}

.fa-biking {
  --fa: "\f84a";
}

.fa-border-all {
  --fa: "\f84c";
}

.fa-border-none {
  --fa: "\f850";
}

.fa-border-top-left {
  --fa: "\f853";
}

.fa-border-style {
  --fa: "\f853";
}

.fa-person-digging {
  --fa: "\f85e";
}

.fa-digging {
  --fa: "\f85e";
}

.fa-fan {
  --fa: "\f863";
}

.fa-icons {
  --fa: "\f86d";
}

.fa-heart-music-camera-bolt {
  --fa: "\f86d";
}

.fa-phone-flip {
  --fa: "\f879";
}

.fa-phone-alt {
  --fa: "\f879";
}

.fa-square-phone-flip {
  --fa: "\f87b";
}

.fa-phone-square-alt {
  --fa: "\f87b";
}

.fa-photo-film {
  --fa: "\f87c";
}

.fa-photo-video {
  --fa: "\f87c";
}

.fa-text-slash {
  --fa: "\f87d";
}

.fa-remove-format {
  --fa: "\f87d";
}

.fa-arrow-down-z-a {
  --fa: "\f881";
}

.fa-sort-alpha-desc {
  --fa: "\f881";
}

.fa-sort-alpha-down-alt {
  --fa: "\f881";
}

.fa-arrow-up-z-a {
  --fa: "\f882";
}

.fa-sort-alpha-up-alt {
  --fa: "\f882";
}

.fa-arrow-down-short-wide {
  --fa: "\f884";
}

.fa-sort-amount-desc {
  --fa: "\f884";
}

.fa-sort-amount-down-alt {
  --fa: "\f884";
}

.fa-arrow-up-short-wide {
  --fa: "\f885";
}

.fa-sort-amount-up-alt {
  --fa: "\f885";
}

.fa-arrow-down-9-1 {
  --fa: "\f886";
}

.fa-sort-numeric-desc {
  --fa: "\f886";
}

.fa-sort-numeric-down-alt {
  --fa: "\f886";
}

.fa-arrow-up-9-1 {
  --fa: "\f887";
}

.fa-sort-numeric-up-alt {
  --fa: "\f887";
}

.fa-spell-check {
  --fa: "\f891";
}

.fa-voicemail {
  --fa: "\f897";
}

.fa-hat-cowboy {
  --fa: "\f8c0";
}

.fa-hat-cowboy-side {
  --fa: "\f8c1";
}

.fa-computer-mouse {
  --fa: "\f8cc";
}

.fa-mouse {
  --fa: "\f8cc";
}

.fa-radio {
  --fa: "\f8d7";
}

.fa-record-vinyl {
  --fa: "\f8d9";
}

.fa-walkie-talkie {
  --fa: "\f8ef";
}

.fa-caravan {
  --fa: "\f8ff";
}

/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
:root, :host {
  --fa-family-classic: 'Font Awesome 7 Free';
  --fa-font-solid: normal 900 1em/1 var(--fa-family-classic);
  /* deprecated: this older custom property will be removed next major release */
  --fa-style-family-classic: var(--fa-family-classic);
}

@font-face {
  font-family: "Font Awesome 7 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("webfonts/fa-solid-900.woff2");
}
.fas {
  --fa-family: var(--fa-family-classic);
  --fa-style: 900;
}

.fa-classic {
  --fa-family: var(--fa-family-classic);
}

.fa-solid {
  --fa-style: 900;
}

/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
:root, :host {
  --fa-family-classic: 'Font Awesome 7 Free';
  --fa-font-regular: normal 400 1em/1 var(--fa-family-classic);
  /* deprecated: this older custom property will be removed next major release */
  --fa-style-family-classic: var(--fa-family-classic);
}

@font-face {
  font-family: "Font Awesome 7 Free";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("webfonts/fa-regular-400.woff2");
}
.far {
  --fa-family: var(--fa-family-classic);
  --fa-style: 400;
}

.fa-classic {
  --fa-family: var(--fa-family-classic);
}

.fa-regular {
  --fa-style: 400;
}

/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
:root, :host {
  --fa-family-brands: 'Font Awesome 7 Brands';
  --fa-font-brands: normal 400 1em/1 var(--fa-family-brands);
}

@font-face {
  font-family: "Font Awesome 7 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("webfonts/fa-brands-400.woff2");
}
.fab,
.fa-brands,
.fa-classic.fa-brands {
  --fa-family: var(--fa-family-brands);
  --fa-style: 400;
}

.fa-firefox-browser {
  --fa: "\e007";
}

.fa-ideal {
  --fa: "\e013";
}

.fa-microblog {
  --fa: "\e01a";
}

.fa-square-pied-piper {
  --fa: "\e01e";
}

.fa-pied-piper-square {
  --fa: "\e01e";
}

.fa-unity {
  --fa: "\e049";
}

.fa-dailymotion {
  --fa: "\e052";
}

.fa-square-instagram {
  --fa: "\e055";
}

.fa-instagram-square {
  --fa: "\e055";
}

.fa-mixer {
  --fa: "\e056";
}

.fa-shopify {
  --fa: "\e057";
}

.fa-deezer {
  --fa: "\e077";
}

.fa-edge-legacy {
  --fa: "\e078";
}

.fa-google-pay {
  --fa: "\e079";
}

.fa-rust {
  --fa: "\e07a";
}

.fa-tiktok {
  --fa: "\e07b";
}

.fa-unsplash {
  --fa: "\e07c";
}

.fa-cloudflare {
  --fa: "\e07d";
}

.fa-guilded {
  --fa: "\e07e";
}

.fa-hive {
  --fa: "\e07f";
}

.fa-42-group {
  --fa: "\e080";
}

.fa-innosoft {
  --fa: "\e080";
}

.fa-instalod {
  --fa: "\e081";
}

.fa-octopus-deploy {
  --fa: "\e082";
}

.fa-perbyte {
  --fa: "\e083";
}

.fa-uncharted {
  --fa: "\e084";
}

.fa-watchman-monitoring {
  --fa: "\e087";
}

.fa-wodu {
  --fa: "\e088";
}

.fa-wirsindhandwerk {
  --fa: "\e2d0";
}

.fa-wsh {
  --fa: "\e2d0";
}

.fa-bots {
  --fa: "\e340";
}

.fa-cmplid {
  --fa: "\e360";
}

.fa-bilibili {
  --fa: "\e3d9";
}

.fa-golang {
  --fa: "\e40f";
}

.fa-pix {
  --fa: "\e43a";
}

.fa-sitrox {
  --fa: "\e44a";
}

.fa-hashnode {
  --fa: "\e499";
}

.fa-meta {
  --fa: "\e49b";
}

.fa-padlet {
  --fa: "\e4a0";
}

.fa-nfc-directional {
  --fa: "\e530";
}

.fa-nfc-symbol {
  --fa: "\e531";
}

.fa-screenpal {
  --fa: "\e570";
}

.fa-space-awesome {
  --fa: "\e5ac";
}

.fa-square-font-awesome {
  --fa: "\e5ad";
}

.fa-square-gitlab {
  --fa: "\e5ae";
}

.fa-gitlab-square {
  --fa: "\e5ae";
}

.fa-odysee {
  --fa: "\e5c6";
}

.fa-stubber {
  --fa: "\e5c7";
}

.fa-debian {
  --fa: "\e60b";
}

.fa-shoelace {
  --fa: "\e60c";
}

.fa-threads {
  --fa: "\e618";
}

.fa-square-threads {
  --fa: "\e619";
}

.fa-square-x-twitter {
  --fa: "\e61a";
}

.fa-x-twitter {
  --fa: "\e61b";
}

.fa-opensuse {
  --fa: "\e62b";
}

.fa-letterboxd {
  --fa: "\e62d";
}

.fa-square-letterboxd {
  --fa: "\e62e";
}

.fa-mintbit {
  --fa: "\e62f";
}

.fa-google-scholar {
  --fa: "\e63b";
}

.fa-brave {
  --fa: "\e63c";
}

.fa-brave-reverse {
  --fa: "\e63d";
}

.fa-pixiv {
  --fa: "\e640";
}

.fa-upwork {
  --fa: "\e641";
}

.fa-webflow {
  --fa: "\e65c";
}

.fa-signal-messenger {
  --fa: "\e663";
}

.fa-bluesky {
  --fa: "\e671";
}

.fa-jxl {
  --fa: "\e67b";
}

.fa-square-upwork {
  --fa: "\e67c";
}

.fa-web-awesome {
  --fa: "\e682";
}

.fa-square-web-awesome {
  --fa: "\e683";
}

.fa-square-web-awesome-stroke {
  --fa: "\e684";
}

.fa-dart-lang {
  --fa: "\e693";
}

.fa-flutter {
  --fa: "\e694";
}

.fa-files-pinwheel {
  --fa: "\e69f";
}

.fa-css {
  --fa: "\e6a2";
}

.fa-square-bluesky {
  --fa: "\e6a3";
}

.fa-openai {
  --fa: "\e7cf";
}

.fa-square-linkedin {
  --fa: "\e7d0";
}

.fa-cash-app {
  --fa: "\e7d4";
}

.fa-disqus {
  --fa: "\e7d5";
}

.fa-eleventy {
  --fa: "\e7d6";
}

.fa-11ty {
  --fa: "\e7d6";
}

.fa-kakao-talk {
  --fa: "\e7d7";
}

.fa-linktree {
  --fa: "\e7d8";
}

.fa-notion {
  --fa: "\e7d9";
}

.fa-pandora {
  --fa: "\e7da";
}

.fa-pixelfed {
  --fa: "\e7db";
}

.fa-tidal {
  --fa: "\e7dc";
}

.fa-vsco {
  --fa: "\e7dd";
}

.fa-w3c {
  --fa: "\e7de";
}

.fa-lumon {
  --fa: "\e7e2";
}

.fa-lumon-drop {
  --fa: "\e7e3";
}

.fa-square-figma {
  --fa: "\e7e4";
}

.fa-tex {
  --fa: "\e7ff";
}

.fa-duolingo {
  --fa: "\e812";
}

.fa-square-twitter {
  --fa: "\f081";
}

.fa-twitter-square {
  --fa: "\f081";
}

.fa-square-facebook {
  --fa: "\f082";
}

.fa-facebook-square {
  --fa: "\f082";
}

.fa-linkedin {
  --fa: "\f08c";
}

.fa-square-github {
  --fa: "\f092";
}

.fa-github-square {
  --fa: "\f092";
}

.fa-twitter {
  --fa: "\f099";
}

.fa-facebook {
  --fa: "\f09a";
}

.fa-github {
  --fa: "\f09b";
}

.fa-pinterest {
  --fa: "\f0d2";
}

.fa-square-pinterest {
  --fa: "\f0d3";
}

.fa-pinterest-square {
  --fa: "\f0d3";
}

.fa-square-google-plus {
  --fa: "\f0d4";
}

.fa-google-plus-square {
  --fa: "\f0d4";
}

.fa-google-plus-g {
  --fa: "\f0d5";
}

.fa-linkedin-in {
  --fa: "\f0e1";
}

.fa-github-alt {
  --fa: "\f113";
}

.fa-maxcdn {
  --fa: "\f136";
}

.fa-html5 {
  --fa: "\f13b";
}

.fa-css3 {
  --fa: "\f13c";
}

.fa-btc {
  --fa: "\f15a";
}

.fa-youtube {
  --fa: "\f167";
}

.fa-xing {
  --fa: "\f168";
}

.fa-square-xing {
  --fa: "\f169";
}

.fa-xing-square {
  --fa: "\f169";
}

.fa-dropbox {
  --fa: "\f16b";
}

.fa-stack-overflow {
  --fa: "\f16c";
}

.fa-instagram {
  --fa: "\f16d";
}

.fa-flickr {
  --fa: "\f16e";
}

.fa-adn {
  --fa: "\f170";
}

.fa-bitbucket {
  --fa: "\f171";
}

.fa-tumblr {
  --fa: "\f173";
}

.fa-square-tumblr {
  --fa: "\f174";
}

.fa-tumblr-square {
  --fa: "\f174";
}

.fa-apple {
  --fa: "\f179";
}

.fa-windows {
  --fa: "\f17a";
}

.fa-android {
  --fa: "\f17b";
}

.fa-linux {
  --fa: "\f17c";
}

.fa-dribbble {
  --fa: "\f17d";
}

.fa-skype {
  --fa: "\f17e";
}

.fa-foursquare {
  --fa: "\f180";
}

.fa-trello {
  --fa: "\f181";
}

.fa-gratipay {
  --fa: "\f184";
}

.fa-vk {
  --fa: "\f189";
}

.fa-weibo {
  --fa: "\f18a";
}

.fa-renren {
  --fa: "\f18b";
}

.fa-pagelines {
  --fa: "\f18c";
}

.fa-stack-exchange {
  --fa: "\f18d";
}

.fa-square-vimeo {
  --fa: "\f194";
}

.fa-vimeo-square {
  --fa: "\f194";
}

.fa-slack {
  --fa: "\f198";
}

.fa-slack-hash {
  --fa: "\f198";
}

.fa-wordpress {
  --fa: "\f19a";
}

.fa-openid {
  --fa: "\f19b";
}

.fa-yahoo {
  --fa: "\f19e";
}

.fa-google {
  --fa: "\f1a0";
}

.fa-reddit {
  --fa: "\f1a1";
}

.fa-square-reddit {
  --fa: "\f1a2";
}

.fa-reddit-square {
  --fa: "\f1a2";
}

.fa-stumbleupon-circle {
  --fa: "\f1a3";
}

.fa-stumbleupon {
  --fa: "\f1a4";
}

.fa-delicious {
  --fa: "\f1a5";
}

.fa-digg {
  --fa: "\f1a6";
}

.fa-pied-piper-pp {
  --fa: "\f1a7";
}

.fa-pied-piper-alt {
  --fa: "\f1a8";
}

.fa-drupal {
  --fa: "\f1a9";
}

.fa-joomla {
  --fa: "\f1aa";
}

.fa-behance {
  --fa: "\f1b4";
}

.fa-square-behance {
  --fa: "\f1b5";
}

.fa-behance-square {
  --fa: "\f1b5";
}

.fa-steam {
  --fa: "\f1b6";
}

.fa-square-steam {
  --fa: "\f1b7";
}

.fa-steam-square {
  --fa: "\f1b7";
}

.fa-spotify {
  --fa: "\f1bc";
}

.fa-deviantart {
  --fa: "\f1bd";
}

.fa-soundcloud {
  --fa: "\f1be";
}

.fa-vine {
  --fa: "\f1ca";
}

.fa-codepen {
  --fa: "\f1cb";
}

.fa-jsfiddle {
  --fa: "\f1cc";
}

.fa-rebel {
  --fa: "\f1d0";
}

.fa-empire {
  --fa: "\f1d1";
}

.fa-square-git {
  --fa: "\f1d2";
}

.fa-git-square {
  --fa: "\f1d2";
}

.fa-git {
  --fa: "\f1d3";
}

.fa-hacker-news {
  --fa: "\f1d4";
}

.fa-tencent-weibo {
  --fa: "\f1d5";
}

.fa-qq {
  --fa: "\f1d6";
}

.fa-weixin {
  --fa: "\f1d7";
}

.fa-slideshare {
  --fa: "\f1e7";
}

.fa-twitch {
  --fa: "\f1e8";
}

.fa-yelp {
  --fa: "\f1e9";
}

.fa-paypal {
  --fa: "\f1ed";
}

.fa-google-wallet {
  --fa: "\f1ee";
}

.fa-cc-visa {
  --fa: "\f1f0";
}

.fa-cc-mastercard {
  --fa: "\f1f1";
}

.fa-cc-discover {
  --fa: "\f1f2";
}

.fa-cc-amex {
  --fa: "\f1f3";
}

.fa-cc-paypal {
  --fa: "\f1f4";
}

.fa-cc-stripe {
  --fa: "\f1f5";
}

.fa-lastfm {
  --fa: "\f202";
}

.fa-square-lastfm {
  --fa: "\f203";
}

.fa-lastfm-square {
  --fa: "\f203";
}

.fa-ioxhost {
  --fa: "\f208";
}

.fa-angellist {
  --fa: "\f209";
}

.fa-buysellads {
  --fa: "\f20d";
}

.fa-connectdevelop {
  --fa: "\f20e";
}

.fa-dashcube {
  --fa: "\f210";
}

.fa-forumbee {
  --fa: "\f211";
}

.fa-leanpub {
  --fa: "\f212";
}

.fa-sellsy {
  --fa: "\f213";
}

.fa-shirtsinbulk {
  --fa: "\f214";
}

.fa-simplybuilt {
  --fa: "\f215";
}

.fa-skyatlas {
  --fa: "\f216";
}

.fa-pinterest-p {
  --fa: "\f231";
}

.fa-whatsapp {
  --fa: "\f232";
}

.fa-viacoin {
  --fa: "\f237";
}

.fa-medium {
  --fa: "\f23a";
}

.fa-medium-m {
  --fa: "\f23a";
}

.fa-y-combinator {
  --fa: "\f23b";
}

.fa-optin-monster {
  --fa: "\f23c";
}

.fa-opencart {
  --fa: "\f23d";
}

.fa-expeditedssl {
  --fa: "\f23e";
}

.fa-cc-jcb {
  --fa: "\f24b";
}

.fa-cc-diners-club {
  --fa: "\f24c";
}

.fa-creative-commons {
  --fa: "\f25e";
}

.fa-gg {
  --fa: "\f260";
}

.fa-gg-circle {
  --fa: "\f261";
}

.fa-odnoklassniki {
  --fa: "\f263";
}

.fa-square-odnoklassniki {
  --fa: "\f264";
}

.fa-odnoklassniki-square {
  --fa: "\f264";
}

.fa-get-pocket {
  --fa: "\f265";
}

.fa-wikipedia-w {
  --fa: "\f266";
}

.fa-safari {
  --fa: "\f267";
}

.fa-chrome {
  --fa: "\f268";
}

.fa-firefox {
  --fa: "\f269";
}

.fa-opera {
  --fa: "\f26a";
}

.fa-internet-explorer {
  --fa: "\f26b";
}

.fa-contao {
  --fa: "\f26d";
}

.fa-500px {
  --fa: "\f26e";
}

.fa-amazon {
  --fa: "\f270";
}

.fa-houzz {
  --fa: "\f27c";
}

.fa-vimeo-v {
  --fa: "\f27d";
}

.fa-black-tie {
  --fa: "\f27e";
}

.fa-fonticons {
  --fa: "\f280";
}

.fa-reddit-alien {
  --fa: "\f281";
}

.fa-edge {
  --fa: "\f282";
}

.fa-codiepie {
  --fa: "\f284";
}

.fa-modx {
  --fa: "\f285";
}

.fa-fort-awesome {
  --fa: "\f286";
}

.fa-usb {
  --fa: "\f287";
}

.fa-product-hunt {
  --fa: "\f288";
}

.fa-mixcloud {
  --fa: "\f289";
}

.fa-scribd {
  --fa: "\f28a";
}

.fa-bluetooth {
  --fa: "\f293";
}

.fa-bluetooth-b {
  --fa: "\f294";
}

.fa-gitlab {
  --fa: "\f296";
}

.fa-wpbeginner {
  --fa: "\f297";
}

.fa-wpforms {
  --fa: "\f298";
}

.fa-envira {
  --fa: "\f299";
}

.fa-glide {
  --fa: "\f2a5";
}

.fa-glide-g {
  --fa: "\f2a6";
}

.fa-viadeo {
  --fa: "\f2a9";
}

.fa-square-viadeo {
  --fa: "\f2aa";
}

.fa-viadeo-square {
  --fa: "\f2aa";
}

.fa-snapchat {
  --fa: "\f2ab";
}

.fa-snapchat-ghost {
  --fa: "\f2ab";
}

.fa-square-snapchat {
  --fa: "\f2ad";
}

.fa-snapchat-square {
  --fa: "\f2ad";
}

.fa-pied-piper {
  --fa: "\f2ae";
}

.fa-first-order {
  --fa: "\f2b0";
}

.fa-yoast {
  --fa: "\f2b1";
}

.fa-themeisle {
  --fa: "\f2b2";
}

.fa-google-plus {
  --fa: "\f2b3";
}

.fa-font-awesome {
  --fa: "\f2b4";
}

.fa-font-awesome-flag {
  --fa: "\f2b4";
}

.fa-font-awesome-logo-full {
  --fa: "\f2b4";
}

.fa-linode {
  --fa: "\f2b8";
}

.fa-quora {
  --fa: "\f2c4";
}

.fa-free-code-camp {
  --fa: "\f2c5";
}

.fa-telegram {
  --fa: "\f2c6";
}

.fa-telegram-plane {
  --fa: "\f2c6";
}

.fa-bandcamp {
  --fa: "\f2d5";
}

.fa-grav {
  --fa: "\f2d6";
}

.fa-etsy {
  --fa: "\f2d7";
}

.fa-imdb {
  --fa: "\f2d8";
}

.fa-ravelry {
  --fa: "\f2d9";
}

.fa-sellcast {
  --fa: "\f2da";
}

.fa-superpowers {
  --fa: "\f2dd";
}

.fa-wpexplorer {
  --fa: "\f2de";
}

.fa-meetup {
  --fa: "\f2e0";
}

.fa-square-font-awesome-stroke {
  --fa: "\f35c";
}

.fa-font-awesome-alt {
  --fa: "\f35c";
}

.fa-accessible-icon {
  --fa: "\f368";
}

.fa-accusoft {
  --fa: "\f369";
}

.fa-adversal {
  --fa: "\f36a";
}

.fa-affiliatetheme {
  --fa: "\f36b";
}

.fa-algolia {
  --fa: "\f36c";
}

.fa-amilia {
  --fa: "\f36d";
}

.fa-angrycreative {
  --fa: "\f36e";
}

.fa-app-store {
  --fa: "\f36f";
}

.fa-app-store-ios {
  --fa: "\f370";
}

.fa-apper {
  --fa: "\f371";
}

.fa-asymmetrik {
  --fa: "\f372";
}

.fa-audible {
  --fa: "\f373";
}

.fa-avianex {
  --fa: "\f374";
}

.fa-aws {
  --fa: "\f375";
}

.fa-bimobject {
  --fa: "\f378";
}

.fa-bitcoin {
  --fa: "\f379";
}

.fa-bity {
  --fa: "\f37a";
}

.fa-blackberry {
  --fa: "\f37b";
}

.fa-blogger {
  --fa: "\f37c";
}

.fa-blogger-b {
  --fa: "\f37d";
}

.fa-buromobelexperte {
  --fa: "\f37f";
}

.fa-centercode {
  --fa: "\f380";
}

.fa-cloudscale {
  --fa: "\f383";
}

.fa-cloudsmith {
  --fa: "\f384";
}

.fa-cloudversify {
  --fa: "\f385";
}

.fa-cpanel {
  --fa: "\f388";
}

.fa-css3-alt {
  --fa: "\f38b";
}

.fa-cuttlefish {
  --fa: "\f38c";
}

.fa-d-and-d {
  --fa: "\f38d";
}

.fa-deploydog {
  --fa: "\f38e";
}

.fa-deskpro {
  --fa: "\f38f";
}

.fa-digital-ocean {
  --fa: "\f391";
}

.fa-discord {
  --fa: "\f392";
}

.fa-discourse {
  --fa: "\f393";
}

.fa-dochub {
  --fa: "\f394";
}

.fa-docker {
  --fa: "\f395";
}

.fa-draft2digital {
  --fa: "\f396";
}

.fa-square-dribbble {
  --fa: "\f397";
}

.fa-dribbble-square {
  --fa: "\f397";
}

.fa-dyalog {
  --fa: "\f399";
}

.fa-earlybirds {
  --fa: "\f39a";
}

.fa-erlang {
  --fa: "\f39d";
}

.fa-facebook-f {
  --fa: "\f39e";
}

.fa-facebook-messenger {
  --fa: "\f39f";
}

.fa-firstdraft {
  --fa: "\f3a1";
}

.fa-fonticons-fi {
  --fa: "\f3a2";
}

.fa-fort-awesome-alt {
  --fa: "\f3a3";
}

.fa-freebsd {
  --fa: "\f3a4";
}

.fa-gitkraken {
  --fa: "\f3a6";
}

.fa-gofore {
  --fa: "\f3a7";
}

.fa-goodreads {
  --fa: "\f3a8";
}

.fa-goodreads-g {
  --fa: "\f3a9";
}

.fa-google-drive {
  --fa: "\f3aa";
}

.fa-google-play {
  --fa: "\f3ab";
}

.fa-gripfire {
  --fa: "\f3ac";
}

.fa-grunt {
  --fa: "\f3ad";
}

.fa-gulp {
  --fa: "\f3ae";
}

.fa-square-hacker-news {
  --fa: "\f3af";
}

.fa-hacker-news-square {
  --fa: "\f3af";
}

.fa-hire-a-helper {
  --fa: "\f3b0";
}

.fa-hotjar {
  --fa: "\f3b1";
}

.fa-hubspot {
  --fa: "\f3b2";
}

.fa-itunes {
  --fa: "\f3b4";
}

.fa-itunes-note {
  --fa: "\f3b5";
}

.fa-jenkins {
  --fa: "\f3b6";
}

.fa-joget {
  --fa: "\f3b7";
}

.fa-js {
  --fa: "\f3b8";
}

.fa-square-js {
  --fa: "\f3b9";
}

.fa-js-square {
  --fa: "\f3b9";
}

.fa-keycdn {
  --fa: "\f3ba";
}

.fa-kickstarter {
  --fa: "\f3bb";
}

.fa-square-kickstarter {
  --fa: "\f3bb";
}

.fa-kickstarter-k {
  --fa: "\f3bc";
}

.fa-laravel {
  --fa: "\f3bd";
}

.fa-line {
  --fa: "\f3c0";
}

.fa-lyft {
  --fa: "\f3c3";
}

.fa-magento {
  --fa: "\f3c4";
}

.fa-medapps {
  --fa: "\f3c6";
}

.fa-medrt {
  --fa: "\f3c8";
}

.fa-microsoft {
  --fa: "\f3ca";
}

.fa-mix {
  --fa: "\f3cb";
}

.fa-mizuni {
  --fa: "\f3cc";
}

.fa-monero {
  --fa: "\f3d0";
}

.fa-napster {
  --fa: "\f3d2";
}

.fa-node-js {
  --fa: "\f3d3";
}

.fa-npm {
  --fa: "\f3d4";
}

.fa-ns8 {
  --fa: "\f3d5";
}

.fa-nutritionix {
  --fa: "\f3d6";
}

.fa-page4 {
  --fa: "\f3d7";
}

.fa-palfed {
  --fa: "\f3d8";
}

.fa-patreon {
  --fa: "\f3d9";
}

.fa-periscope {
  --fa: "\f3da";
}

.fa-phabricator {
  --fa: "\f3db";
}

.fa-phoenix-framework {
  --fa: "\f3dc";
}

.fa-playstation {
  --fa: "\f3df";
}

.fa-pushed {
  --fa: "\f3e1";
}

.fa-python {
  --fa: "\f3e2";
}

.fa-red-river {
  --fa: "\f3e3";
}

.fa-wpressr {
  --fa: "\f3e4";
}

.fa-rendact {
  --fa: "\f3e4";
}

.fa-replyd {
  --fa: "\f3e6";
}

.fa-resolving {
  --fa: "\f3e7";
}

.fa-rocketchat {
  --fa: "\f3e8";
}

.fa-rockrms {
  --fa: "\f3e9";
}

.fa-schlix {
  --fa: "\f3ea";
}

.fa-searchengin {
  --fa: "\f3eb";
}

.fa-servicestack {
  --fa: "\f3ec";
}

.fa-sistrix {
  --fa: "\f3ee";
}

.fa-speakap {
  --fa: "\f3f3";
}

.fa-staylinked {
  --fa: "\f3f5";
}

.fa-steam-symbol {
  --fa: "\f3f6";
}

.fa-sticker-mule {
  --fa: "\f3f7";
}

.fa-studiovinari {
  --fa: "\f3f8";
}

.fa-supple {
  --fa: "\f3f9";
}

.fa-uber {
  --fa: "\f402";
}

.fa-uikit {
  --fa: "\f403";
}

.fa-uniregistry {
  --fa: "\f404";
}

.fa-untappd {
  --fa: "\f405";
}

.fa-ussunnah {
  --fa: "\f407";
}

.fa-vaadin {
  --fa: "\f408";
}

.fa-viber {
  --fa: "\f409";
}

.fa-vimeo {
  --fa: "\f40a";
}

.fa-vnv {
  --fa: "\f40b";
}

.fa-square-whatsapp {
  --fa: "\f40c";
}

.fa-whatsapp-square {
  --fa: "\f40c";
}

.fa-whmcs {
  --fa: "\f40d";
}

.fa-wordpress-simple {
  --fa: "\f411";
}

.fa-xbox {
  --fa: "\f412";
}

.fa-yandex {
  --fa: "\f413";
}

.fa-yandex-international {
  --fa: "\f414";
}

.fa-apple-pay {
  --fa: "\f415";
}

.fa-cc-apple-pay {
  --fa: "\f416";
}

.fa-fly {
  --fa: "\f417";
}

.fa-node {
  --fa: "\f419";
}

.fa-osi {
  --fa: "\f41a";
}

.fa-react {
  --fa: "\f41b";
}

.fa-autoprefixer {
  --fa: "\f41c";
}

.fa-less {
  --fa: "\f41d";
}

.fa-sass {
  --fa: "\f41e";
}

.fa-vuejs {
  --fa: "\f41f";
}

.fa-angular {
  --fa: "\f420";
}

.fa-aviato {
  --fa: "\f421";
}

.fa-ember {
  --fa: "\f423";
}

.fa-gitter {
  --fa: "\f426";
}

.fa-hooli {
  --fa: "\f427";
}

.fa-strava {
  --fa: "\f428";
}

.fa-stripe {
  --fa: "\f429";
}

.fa-stripe-s {
  --fa: "\f42a";
}

.fa-typo3 {
  --fa: "\f42b";
}

.fa-amazon-pay {
  --fa: "\f42c";
}

.fa-cc-amazon-pay {
  --fa: "\f42d";
}

.fa-ethereum {
  --fa: "\f42e";
}

.fa-korvue {
  --fa: "\f42f";
}

.fa-elementor {
  --fa: "\f430";
}

.fa-square-youtube {
  --fa: "\f431";
}

.fa-youtube-square {
  --fa: "\f431";
}

.fa-flipboard {
  --fa: "\f44d";
}

.fa-hips {
  --fa: "\f452";
}

.fa-php {
  --fa: "\f457";
}

.fa-quinscape {
  --fa: "\f459";
}

.fa-readme {
  --fa: "\f4d5";
}

.fa-java {
  --fa: "\f4e4";
}

.fa-pied-piper-hat {
  --fa: "\f4e5";
}

.fa-creative-commons-by {
  --fa: "\f4e7";
}

.fa-creative-commons-nc {
  --fa: "\f4e8";
}

.fa-creative-commons-nc-eu {
  --fa: "\f4e9";
}

.fa-creative-commons-nc-jp {
  --fa: "\f4ea";
}

.fa-creative-commons-nd {
  --fa: "\f4eb";
}

.fa-creative-commons-pd {
  --fa: "\f4ec";
}

.fa-creative-commons-pd-alt {
  --fa: "\f4ed";
}

.fa-creative-commons-remix {
  --fa: "\f4ee";
}

.fa-creative-commons-sa {
  --fa: "\f4ef";
}

.fa-creative-commons-sampling {
  --fa: "\f4f0";
}

.fa-creative-commons-sampling-plus {
  --fa: "\f4f1";
}

.fa-creative-commons-share {
  --fa: "\f4f2";
}

.fa-creative-commons-zero {
  --fa: "\f4f3";
}

.fa-ebay {
  --fa: "\f4f4";
}

.fa-keybase {
  --fa: "\f4f5";
}

.fa-mastodon {
  --fa: "\f4f6";
}

.fa-r-project {
  --fa: "\f4f7";
}

.fa-researchgate {
  --fa: "\f4f8";
}

.fa-teamspeak {
  --fa: "\f4f9";
}

.fa-first-order-alt {
  --fa: "\f50a";
}

.fa-fulcrum {
  --fa: "\f50b";
}

.fa-galactic-republic {
  --fa: "\f50c";
}

.fa-galactic-senate {
  --fa: "\f50d";
}

.fa-jedi-order {
  --fa: "\f50e";
}

.fa-mandalorian {
  --fa: "\f50f";
}

.fa-old-republic {
  --fa: "\f510";
}

.fa-phoenix-squadron {
  --fa: "\f511";
}

.fa-sith {
  --fa: "\f512";
}

.fa-trade-federation {
  --fa: "\f513";
}

.fa-wolf-pack-battalion {
  --fa: "\f514";
}

.fa-hornbill {
  --fa: "\f592";
}

.fa-mailchimp {
  --fa: "\f59e";
}

.fa-megaport {
  --fa: "\f5a3";
}

.fa-nimblr {
  --fa: "\f5a8";
}

.fa-rev {
  --fa: "\f5b2";
}

.fa-shopware {
  --fa: "\f5b5";
}

.fa-squarespace {
  --fa: "\f5be";
}

.fa-themeco {
  --fa: "\f5c6";
}

.fa-weebly {
  --fa: "\f5cc";
}

.fa-wix {
  --fa: "\f5cf";
}

.fa-ello {
  --fa: "\f5f1";
}

.fa-hackerrank {
  --fa: "\f5f7";
}

.fa-kaggle {
  --fa: "\f5fa";
}

.fa-markdown {
  --fa: "\f60f";
}

.fa-neos {
  --fa: "\f612";
}

.fa-zhihu {
  --fa: "\f63f";
}

.fa-alipay {
  --fa: "\f642";
}

.fa-the-red-yeti {
  --fa: "\f69d";
}

.fa-critical-role {
  --fa: "\f6c9";
}

.fa-d-and-d-beyond {
  --fa: "\f6ca";
}

.fa-dev {
  --fa: "\f6cc";
}

.fa-fantasy-flight-games {
  --fa: "\f6dc";
}

.fa-wizards-of-the-coast {
  --fa: "\f730";
}

.fa-think-peaks {
  --fa: "\f731";
}

.fa-reacteurope {
  --fa: "\f75d";
}

.fa-artstation {
  --fa: "\f77a";
}

.fa-atlassian {
  --fa: "\f77b";
}

.fa-canadian-maple-leaf {
  --fa: "\f785";
}

.fa-centos {
  --fa: "\f789";
}

.fa-confluence {
  --fa: "\f78d";
}

.fa-dhl {
  --fa: "\f790";
}

.fa-diaspora {
  --fa: "\f791";
}

.fa-fedex {
  --fa: "\f797";
}

.fa-fedora {
  --fa: "\f798";
}

.fa-figma {
  --fa: "\f799";
}

.fa-intercom {
  --fa: "\f7af";
}

.fa-invision {
  --fa: "\f7b0";
}

.fa-jira {
  --fa: "\f7b1";
}

.fa-mendeley {
  --fa: "\f7b3";
}

.fa-raspberry-pi {
  --fa: "\f7bb";
}

.fa-redhat {
  --fa: "\f7bc";
}

.fa-sketch {
  --fa: "\f7c6";
}

.fa-sourcetree {
  --fa: "\f7d3";
}

.fa-suse {
  --fa: "\f7d6";
}

.fa-ubuntu {
  --fa: "\f7df";
}

.fa-ups {
  --fa: "\f7e0";
}

.fa-usps {
  --fa: "\f7e1";
}

.fa-yarn {
  --fa: "\f7e3";
}

.fa-airbnb {
  --fa: "\f834";
}

.fa-battle-net {
  --fa: "\f835";
}

.fa-bootstrap {
  --fa: "\f836";
}

.fa-buffer {
  --fa: "\f837";
}

.fa-chromecast {
  --fa: "\f838";
}

.fa-evernote {
  --fa: "\f839";
}

.fa-itch-io {
  --fa: "\f83a";
}

.fa-salesforce {
  --fa: "\f83b";
}

.fa-speaker-deck {
  --fa: "\f83c";
}

.fa-symfony {
  --fa: "\f83d";
}

.fa-waze {
  --fa: "\f83f";
}

.fa-yammer {
  --fa: "\f840";
}

.fa-git-alt {
  --fa: "\f841";
}

.fa-stackpath {
  --fa: "\f842";
}

.fa-cotton-bureau {
  --fa: "\f89e";
}

.fa-buy-n-large {
  --fa: "\f8a6";
}

.fa-mdb {
  --fa: "\f8ca";
}

.fa-orcid {
  --fa: "\f8d2";
}

.fa-swift {
  --fa: "\f8e1";
}

.fa-umbraco {
  --fa: "\f8e8";
}

/**
 * ラジオボタン用 円形グラデーション生成
 *
 * @param {Color}  $in-c    : 内側の色（中心のメインカラー）
 * @param {Color}  $out-c   : 外側の色（立体感を出すための影色）
 * @param {Length} $in-pos  : 内側の色が維持される範囲 (例: 30%)
 * @param {Length} $out-pos : グラデーションが終了する位置 (例: 100%)
 */
/**
 * ニューモーフィズム風シャドウ生成
 *
 * @param {Color}   $bg     : 背景色
 * @param {Number}  $float  : 浮き具合（-100 〜 100）
 * @param {Boolean} $inset  : 強制的にインセットシャドウにするか
 */
/**
 * 簡易パララックス背景ミックスイン
 *
 * @param {Length} $height  : 表示領域の高さ (例: 50vh)
 * @param {String} $url     : 背景画像のURL
 * @param {Color}  $overlay : 重ねるオーバーレイレイヤーの色
 */
/* Base Styles */
html {
  font-size: 62.5%; /* 1rem = 10px */
}

body {
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  text-size-adjust: none;
  color: #0d1a30;
  background: none;
}

/* Links */
a, .link {
  color: #062F5F;
  transition: all 0.5s;
  text-decoration: none;
}
a.tdon, .link.tdon {
  text-decoration: underline;
}
a:hover, .link:hover {
  color: rgb(12.0594059406, 94.4653465347, 190.9405940594);
  text-decoration: none;
  transition: all 0.5s;
}

/* Helpers */
.hidden {
  display: none !important;
}

/* Print Specific */
@media print {
  section {
    page-break-inside: avoid;
    page-break-after: always;
  }
}
button,
input,
select,
textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
}

input[type=text],
input[type=email],
input[type=url],
input[type=tel],
input[type=number],
input[type=date],
input[type=time],
input[type=password],
input[type=file],
textarea {
  padding: 10px;
  border: 1px solid rgba(13, 26, 48, 0.1); /* $inkを薄めて線に適用 */
  width: 100%;
  margin-bottom: 1rem;
  background-color: #f4f6fa;
  -webkit-appearance: none;
  appearance: none;
  min-height: 36px;
  font-family: inherit;
  border-radius: 4px;
  color: #0d1a30;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=date]:focus,
input[type=time]:focus,
input[type=password]:focus,
input[type=file]:focus,
textarea:focus {
  border-color: #062F5F;
  background-color: #ffffff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(151, 192, 224, 0.3);
}

input[type=search] {
  padding: 10px;
  border: 1px solid rgba(13, 26, 48, 0.1);
  background-color: transparent;
  border-radius: 4px;
  -webkit-appearance: none;
  appearance: none;
  color: #0d1a30;
}
input[type=search]:focus {
  outline: none;
  border-color: #062F5F;
}

::placeholder {
  color: #6a7790;
  opacity: 1;
}

select {
  padding: 10px 36px 10px 10px;
  border: 1px solid rgba(13, 26, 48, 0.1);
  border-radius: 4px;
  background-color: #f4f6fa;
  min-height: 36px;
  color: #0d1a30;
  cursor: pointer;
}
select:focus {
  outline: none;
  border-color: #062F5F;
}

.error-message {
  color: #d31a3a;
  font-size: 1.2rem;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  display: block;
  font-weight: 700;
}

.radio-g {
  margin: 0;
}
.radio-g label {
  position: relative;
  padding: 0.25em 1em 0.25em 2em;
  line-height: 1;
  margin: 0.5em 0;
  cursor: pointer;
  display: inline-block;
}
.radio-g label input[type=radio] {
  -webkit-appearance: none;
  appearance: none;
  display: block;
  margin: 0;
  width: 1.5em;
  height: 1.5em;
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: rgba(13, 26, 48, 0.1) 0 0 4px 0px;
  border: 1px solid rgba(13, 26, 48, 0.15);
  outline: none;
}
.radio-g label input[type=radio]:checked {
  border-color: #062F5F;
  background-color: #062F5F;
  background-image: radial-gradient(circle, #062F5F 30%, rgb(1.4554455446, 11.400990099, 23.0445544554) 100%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
  transform: scale(1.1);
  transition: transform 0.1s;
}
.radio-g.inline {
  margin: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5em;
}
.radio-g.inline label {
  display: inline-block;
  margin: 0 0 0.5em;
}

.checkbox-g {
  margin: 0;
}
.checkbox-g label {
  position: relative;
  padding: 0.25em 1em 0.25em 2em;
  line-height: 1;
  margin: 0.5em 0;
  cursor: pointer;
  display: inline-block;
}
.checkbox-g label input[type=checkbox] {
  -webkit-appearance: none;
  appearance: none;
  display: block;
  margin: 0;
  width: 1.5em;
  height: 1.5em;
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 4px;
  background-color: #ffffff;
  box-shadow: rgba(13, 26, 48, 0.1) 0 0 4px 0px;
  border: 1px solid rgba(13, 26, 48, 0.15);
  outline: none;
}
.checkbox-g label input[type=checkbox]::after {
  content: "";
  display: block;
  width: 30%;
  height: 60%;
  position: absolute;
  top: 45%;
  left: 50%;
  border: 2px solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -50%) rotate(45deg);
  opacity: 0;
}
.checkbox-g label input[type=checkbox]:checked {
  background-color: #062F5F;
  border-color: #062F5F;
}
.checkbox-g label input[type=checkbox]:checked::after {
  opacity: 1;
}

.flex-wrapper {
  --gap: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}
.flex-wrapper > * {
  flex: 0 0 auto;
  box-sizing: border-box;
}
.flex-wrapper .col-1 {
  width: calc(16.6666666667% - var(--gap) * 0.8333333333);
}
.flex-wrapper .col-2 {
  width: calc(33.3333333333% - var(--gap) * 0.6666666667);
}
.flex-wrapper .col-3 {
  width: calc(50% - var(--gap) * 0.5);
}
.flex-wrapper .col-4 {
  width: calc(66.6666666667% - var(--gap) * 0.3333333333);
}
.flex-wrapper .col-5 {
  width: calc(83.3333333333% - var(--gap) * 0.1666666667);
}
.flex-wrapper .col-6 {
  width: calc(100% - var(--gap) * 0);
}
@media screen and (max-width: 540px) {
  .flex-wrapper .col-sm-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .flex-wrapper .col-sm-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .flex-wrapper .col-sm-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .flex-wrapper .col-sm-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .flex-wrapper .col-sm-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .flex-wrapper .col-sm-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@media screen and (max-width: 720px) {
  .flex-wrapper .col-md-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .flex-wrapper .col-md-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .flex-wrapper .col-md-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .flex-wrapper .col-md-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .flex-wrapper .col-md-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .flex-wrapper .col-md-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@media screen and (max-width: 960px) {
  .flex-wrapper .col-lg-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .flex-wrapper .col-lg-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .flex-wrapper .col-lg-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .flex-wrapper .col-lg-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .flex-wrapper .col-lg-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .flex-wrapper .col-lg-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@media screen and (max-width: 1140px) {
  .flex-wrapper .col-xl-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .flex-wrapper .col-xl-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .flex-wrapper .col-xl-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .flex-wrapper .col-xl-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .flex-wrapper .col-xl-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .flex-wrapper .col-xl-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@media screen and (max-width: 1350px) {
  .flex-wrapper .col-xxl-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .flex-wrapper .col-xxl-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .flex-wrapper .col-xxl-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .flex-wrapper .col-xxl-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .flex-wrapper .col-xxl-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .flex-wrapper .col-xxl-6 {
    width: calc(100% - var(--gap) * 0);
  }
}

.container-grid {
  container-type: inline-size;
  container-name: l-grid;
}

.cq-wrapper {
  --gap: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}
.cq-wrapper > * {
  flex: 0 0 auto;
  box-sizing: border-box;
}
.cq-wrapper .col-cq-1 {
  width: calc(16.6666666667% - var(--gap) * 0.8333333333);
}
.cq-wrapper .col-cq-2 {
  width: calc(33.3333333333% - var(--gap) * 0.6666666667);
}
.cq-wrapper .col-cq-3 {
  width: calc(50% - var(--gap) * 0.5);
}
.cq-wrapper .col-cq-4 {
  width: calc(66.6666666667% - var(--gap) * 0.3333333333);
}
.cq-wrapper .col-cq-5 {
  width: calc(83.3333333333% - var(--gap) * 0.1666666667);
}
.cq-wrapper .col-cq-6 {
  width: calc(100% - var(--gap) * 0);
}
@container l-grid (max-width: 540px) {
  .cq-wrapper .col-cq-sm-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .cq-wrapper .col-cq-sm-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .cq-wrapper .col-cq-sm-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .cq-wrapper .col-cq-sm-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .cq-wrapper .col-cq-sm-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .cq-wrapper .col-cq-sm-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@container l-grid (max-width: 720px) {
  .cq-wrapper .col-cq-md-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .cq-wrapper .col-cq-md-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .cq-wrapper .col-cq-md-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .cq-wrapper .col-cq-md-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .cq-wrapper .col-cq-md-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .cq-wrapper .col-cq-md-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@container l-grid (max-width: 960px) {
  .cq-wrapper .col-cq-lg-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .cq-wrapper .col-cq-lg-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .cq-wrapper .col-cq-lg-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .cq-wrapper .col-cq-lg-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .cq-wrapper .col-cq-lg-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .cq-wrapper .col-cq-lg-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@container l-grid (max-width: 1140px) {
  .cq-wrapper .col-cq-xl-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .cq-wrapper .col-cq-xl-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .cq-wrapper .col-cq-xl-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .cq-wrapper .col-cq-xl-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .cq-wrapper .col-cq-xl-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .cq-wrapper .col-cq-xl-6 {
    width: calc(100% - var(--gap) * 0);
  }
}
@container l-grid (max-width: 1350px) {
  .cq-wrapper .col-cq-xxl-1 {
    width: calc(16.6666666667% - var(--gap) * 0.8333333333);
  }
  .cq-wrapper .col-cq-xxl-2 {
    width: calc(33.3333333333% - var(--gap) * 0.6666666667);
  }
  .cq-wrapper .col-cq-xxl-3 {
    width: calc(50% - var(--gap) * 0.5);
  }
  .cq-wrapper .col-cq-xxl-4 {
    width: calc(66.6666666667% - var(--gap) * 0.3333333333);
  }
  .cq-wrapper .col-cq-xxl-5 {
    width: calc(83.3333333333% - var(--gap) * 0.1666666667);
  }
  .cq-wrapper .col-cq-xxl-6 {
    width: calc(100% - var(--gap) * 0);
  }
}

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  max-width: 1200px;
}
.container.container-sm, .container.container-narrow {
  max-width: 800px;
}
.container.container-lg, .container.container-wide {
  max-width: 1400px;
}
.container.container-fluid {
  max-width: 100%;
}

/* --------------------------------------------------
   1. Buttons
-------------------------------------------------- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 2.5em;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  border: none;
  line-height: 1.5;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  z-index: 1;
  font-size: 1rem;
  background-color: #062F5F;
  color: #fff;
  border-radius: 1rem;
  corner-shape: squircle;
  box-shadow: 0.045em 0.045em 0.099em rgb(201.925, 211.575, 230.875), -0.045em -0.045em 0.099em hsl(220, 37.5%, 106.862745098%);
}
.btn:hover {
  background-color: rgb(2.9702970297, 23.2673267327, 47.0297029703);
  color: #fff;
  text-decoration: none;
  box-shadow: 0.0675em 0.0675em 0.1485em rgb(201.925, 211.575, 230.875), -0.0675em -0.0675em 0.1485em hsl(220, 37.5%, 106.862745098%);
}
.btn:active {
  box-shadow: inset 0.03em 0.03em 0.066em rgb(201.925, 211.575, 230.875), inset -0.03em -0.03em 0.066em hsl(220, 37.5%, 106.862745098%);
}
.btn.btn-sub {
  background-color: #97C0E0;
  color: #062F5F;
}
.btn.btn-sub:hover {
  background-color: rgb(119.5688888889, 172.96, 214.6311111111);
}

/* --------------------------------------------------
   2. Modals & Dialogs (HTML5 dialog & LightGallery Custom)
-------------------------------------------------- */
.dialog {
  display: none;
}
.dialog[open] {
  display: block;
}
.dialog::backdrop {
  background-color: rgba(13, 26, 48, 0.7); /* ink調に透過をブレンド */
}
.dialog__body {
  padding: 2.4rem;
  border: none;
  border-radius: 1rem;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  background-color: #ffffff;
}
.dialog__body::backdrop {
  background-color: rgba(13, 26, 48, 0.8);
}
.dialog__inner {
  height: 90dvh;
  width: 90dvw;
  max-width: 800px;
  gap: 1.5rem;
}
.dialog__close {
  position: absolute;
  top: 10px;
  right: 10px;
}

/* --------------------------------------------------
   3. Accordion (details/summary)
-------------------------------------------------- */
.accordion-g details {
  border: 1px solid #dde4ee;
  margin-bottom: 12px;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
}
.accordion-g details summary {
  padding: 18px 24px;
  background-color: #f4f6fa;
  cursor: pointer;
  user-select: none;
  font-weight: 700;
  color: #062F5F;
  position: relative;
  list-style: none; /* デフォルトの三角を隠す */
}
.accordion-g details summary::-webkit-details-marker {
  display: none;
}
.accordion-g details summary::after {
  content: "+";
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.8rem;
  color: #062F5F;
  transition: transform 0.3s;
}
.accordion-g details[open] {
  border-color: #062F5F;
}
.accordion-g details[open] summary {
  background-color: #ffffff;
  border-bottom: 1px solid #dde4ee;
}
.accordion-g details[open] summary::after {
  content: "-";
  transform: translateY(-50%) rotate(180deg);
}
.accordion-g details .acc-content {
  padding: 24px;
  font-size: 1.4rem;
  line-height: 1.8;
  color: #0d1a30;
}

/* Display Switching */
.pc {
  display: block;
}
.pc-inline {
  display: inline;
}
@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .pc-inline {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block;
  }
  .sp-inline {
    display: inline;
  }
}

.font-zenkakugothic {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.font-shipporimincho {
  font-family: "Shippori Mincho", serif !important;
}

.font-kaiseidecol {
  font-family: "Kaisei Decol", serif !important;
}

.font-delagothic {
  font-family: "Dela Gothic One", sans-serif !important;
}

/* Alignment */
.text-center {
  text-align: center !important;
}

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

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

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

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

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

/* Margin and Padding Utilities */
.m-0 {
  margin: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-0 {
  width: 0 !important;
}

.h-0 {
  height: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-1 {
  width: 0.25rem !important;
}

.h-1 {
  height: 0.25rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-2 {
  width: 0.5rem !important;
}

.h-2 {
  height: 0.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-3 {
  width: 0.75rem !important;
}

.h-3 {
  height: 0.75rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-4 {
  width: 1rem !important;
}

.h-4 {
  height: 1rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-5 {
  width: 1.25rem !important;
}

.h-5 {
  height: 1.25rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-6 {
  width: 1.5rem !important;
}

.h-6 {
  height: 1.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-8 {
  width: 2rem !important;
}

.h-8 {
  height: 2rem !important;
}

.m-10 {
  margin: 2.5rem !important;
}

.p-10 {
  padding: 2.5rem !important;
}

.mx-10 {
  margin-left: 2.5rem !important;
  margin-right: 2.5rem !important;
}

.my-10 {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

.px-10 {
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}

.py-10 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.mt-10 {
  margin-top: 2.5rem !important;
}

.pt-10 {
  padding-top: 2.5rem !important;
}

.mb-10 {
  margin-bottom: 2.5rem !important;
}

.pb-10 {
  padding-bottom: 2.5rem !important;
}

.ml-10 {
  margin-left: 2.5rem !important;
}

.pl-10 {
  padding-left: 2.5rem !important;
}

.mr-10 {
  margin-right: 2.5rem !important;
}

.pr-10 {
  padding-right: 2.5rem !important;
}

.w-10 {
  width: 2.5rem !important;
}

.h-10 {
  height: 2.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-12 {
  width: 3rem !important;
}

.h-12 {
  height: 3rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-16 {
  width: 4rem !important;
}

.h-16 {
  height: 4rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-20 {
  width: 5rem !important;
}

.h-20 {
  height: 5rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-24 {
  width: 6rem !important;
}

.h-24 {
  height: 6rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-32 {
  width: 8rem !important;
}

.h-32 {
  height: 8rem !important;
}

.m-40 {
  margin: 10rem !important;
}

.p-40 {
  padding: 10rem !important;
}

.mx-40 {
  margin-left: 10rem !important;
  margin-right: 10rem !important;
}

.my-40 {
  margin-top: 10rem !important;
  margin-bottom: 10rem !important;
}

.px-40 {
  padding-left: 10rem !important;
  padding-right: 10rem !important;
}

.py-40 {
  padding-top: 10rem !important;
  padding-bottom: 10rem !important;
}

.mt-40 {
  margin-top: 10rem !important;
}

.pt-40 {
  padding-top: 10rem !important;
}

.mb-40 {
  margin-bottom: 10rem !important;
}

.pb-40 {
  padding-bottom: 10rem !important;
}

.ml-40 {
  margin-left: 10rem !important;
}

.pl-40 {
  padding-left: 10rem !important;
}

.mr-40 {
  margin-right: 10rem !important;
}

.pr-40 {
  padding-right: 10rem !important;
}

.w-40 {
  width: 10rem !important;
}

.h-40 {
  height: 10rem !important;
}

.m-48 {
  margin: 12rem !important;
}

.p-48 {
  padding: 12rem !important;
}

.mx-48 {
  margin-left: 12rem !important;
  margin-right: 12rem !important;
}

.my-48 {
  margin-top: 12rem !important;
  margin-bottom: 12rem !important;
}

.px-48 {
  padding-left: 12rem !important;
  padding-right: 12rem !important;
}

.py-48 {
  padding-top: 12rem !important;
  padding-bottom: 12rem !important;
}

.mt-48 {
  margin-top: 12rem !important;
}

.pt-48 {
  padding-top: 12rem !important;
}

.mb-48 {
  margin-bottom: 12rem !important;
}

.pb-48 {
  padding-bottom: 12rem !important;
}

.ml-48 {
  margin-left: 12rem !important;
}

.pl-48 {
  padding-left: 12rem !important;
}

.mr-48 {
  margin-right: 12rem !important;
}

.pr-48 {
  padding-right: 12rem !important;
}

.w-48 {
  width: 12rem !important;
}

.h-48 {
  height: 12rem !important;
}

.m-56 {
  margin: 14rem !important;
}

.p-56 {
  padding: 14rem !important;
}

.mx-56 {
  margin-left: 14rem !important;
  margin-right: 14rem !important;
}

.my-56 {
  margin-top: 14rem !important;
  margin-bottom: 14rem !important;
}

.px-56 {
  padding-left: 14rem !important;
  padding-right: 14rem !important;
}

.py-56 {
  padding-top: 14rem !important;
  padding-bottom: 14rem !important;
}

.mt-56 {
  margin-top: 14rem !important;
}

.pt-56 {
  padding-top: 14rem !important;
}

.mb-56 {
  margin-bottom: 14rem !important;
}

.pb-56 {
  padding-bottom: 14rem !important;
}

.ml-56 {
  margin-left: 14rem !important;
}

.pl-56 {
  padding-left: 14rem !important;
}

.mr-56 {
  margin-right: 14rem !important;
}

.pr-56 {
  padding-right: 14rem !important;
}

.w-56 {
  width: 14rem !important;
}

.h-56 {
  height: 14rem !important;
}

.m-64 {
  margin: 16rem !important;
}

.p-64 {
  padding: 16rem !important;
}

.mx-64 {
  margin-left: 16rem !important;
  margin-right: 16rem !important;
}

.my-64 {
  margin-top: 16rem !important;
  margin-bottom: 16rem !important;
}

.px-64 {
  padding-left: 16rem !important;
  padding-right: 16rem !important;
}

.py-64 {
  padding-top: 16rem !important;
  padding-bottom: 16rem !important;
}

.mt-64 {
  margin-top: 16rem !important;
}

.pt-64 {
  padding-top: 16rem !important;
}

.mb-64 {
  margin-bottom: 16rem !important;
}

.pb-64 {
  padding-bottom: 16rem !important;
}

.ml-64 {
  margin-left: 16rem !important;
}

.pl-64 {
  padding-left: 16rem !important;
}

.mr-64 {
  margin-right: 16rem !important;
}

.pr-64 {
  padding-right: 16rem !important;
}

.w-64 {
  width: 16rem !important;
}

.h-64 {
  height: 16rem !important;
}

/* Border Radius Utilities */
.rounded-none {
  border-radius: 0 !important;
}

.rounded-t-none {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.rounded-b-none {
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-sm {
  border-radius: 0.125rem !important;
}

.rounded-t-sm {
  border-top-left-radius: 0.125rem !important;
  border-top-right-radius: 0.125rem !important;
}

.rounded-b-sm {
  border-bottom-right-radius: 0.125rem !important;
  border-bottom-left-radius: 0.125rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-t {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-b {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-md {
  border-radius: 0.375rem !important;
}

.rounded-t-md {
  border-top-left-radius: 0.375rem !important;
  border-top-right-radius: 0.375rem !important;
}

.rounded-b-md {
  border-bottom-right-radius: 0.375rem !important;
  border-bottom-left-radius: 0.375rem !important;
}

.rounded-lg {
  border-radius: 0.5rem !important;
}

.rounded-t-lg {
  border-top-left-radius: 0.5rem !important;
  border-top-right-radius: 0.5rem !important;
}

.rounded-b-lg {
  border-bottom-right-radius: 0.5rem !important;
  border-bottom-left-radius: 0.5rem !important;
}

.rounded-xl {
  border-radius: 0.75rem !important;
}

.rounded-t-xl {
  border-top-left-radius: 0.75rem !important;
  border-top-right-radius: 0.75rem !important;
}

.rounded-b-xl {
  border-bottom-right-radius: 0.75rem !important;
  border-bottom-left-radius: 0.75rem !important;
}

.rounded-2xl {
  border-radius: 1rem !important;
}

.rounded-t-2xl {
  border-top-left-radius: 1rem !important;
  border-top-right-radius: 1rem !important;
}

.rounded-b-2xl {
  border-bottom-right-radius: 1rem !important;
  border-bottom-left-radius: 1rem !important;
}

.rounded-3xl {
  border-radius: 1.5rem !important;
}

.rounded-t-3xl {
  border-top-left-radius: 1.5rem !important;
  border-top-right-radius: 1.5rem !important;
}

.rounded-b-3xl {
  border-bottom-right-radius: 1.5rem !important;
  border-bottom-left-radius: 1.5rem !important;
}

.rounded-full {
  border-radius: 9999px !important;
}

.rounded-t-full {
  border-top-left-radius: 9999px !important;
  border-top-right-radius: 9999px !important;
}

.rounded-b-full {
  border-bottom-right-radius: 9999px !important;
  border-bottom-left-radius: 9999px !important;
}

/* Width Utilities */
.w-full {
  width: 100% !important;
}

.w-screen {
  width: 100vw !important;
}

/* ==========================================================================
   MOLY BRAND SHARED STYLES (_shared.scss)
   --------------------------------------------------------------------------
   下層サービス詳細ページ、お問い合わせ、共通コンポーネント用スタイル。
   【モバイルファースト設計】スマートフォン表示を基準に、min-widthでPCへ段階拡張します。
   ========================================================================== */
.halftone {
  background-image: radial-gradient(currentColor 1.2px, transparent 1.6px);
  background-size: 8px 8px;
}

* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  color: #0d1a30;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
}

body {
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  container-type: inline-size;
}

img {
  display: block;
  max-width: 100%;
}

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

.container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 18px;
}
@media (min-width: 768px) {
  .container {
    padding: 0 24px;
  }
}
@media (min-width: 1025px) {
  .container {
    padding: 0 40px;
  }
}
@media (min-width: 1280px) {
  .container {
    padding: 0 56px;
  }
}

.nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  background: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid #dde4ee;
  transition: background 0.3s ease, border-color 0.3s ease;
}
.nav-inner {
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 0 8px;
}
@media (min-width: 768px) {
  .nav-inner {
    padding: 14px 24px;
  }
}
@media (min-width: 1025px) {
  .nav-inner {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 32px;
    padding: 18px 56px;
  }
}
.nav-logo {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
  z-index: 60;
}
.nav-logo .nav-mark {
  width: 26px;
  height: 26px;
}
@media (min-width: 768px) {
  .nav-logo .nav-mark {
    width: 30px;
    height: 30px;
  }
}
@media (min-width: 1025px) {
  .nav-logo .nav-mark {
    width: 36px;
    height: 36px;
  }
}
.nav-logo .nav-word {
  width: 76px;
}
@media (min-width: 768px) {
  .nav-logo .nav-word {
    width: 96px;
  }
}
@media (min-width: 1025px) {
  .nav-logo .nav-word {
    width: 124px;
  }
}
.nav-links {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 0;
  background: #062F5F;
  padding: 90px 28px 32px;
  min-height: 100dvh;
  transform: translateY(-100%);
  transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
  z-index: 40;
  overflow-y: auto;
  display: flex;
}
.nav-links a {
  color: #fff;
  font-size: 22px;
  letter-spacing: 0.14em;
  padding: 18px 4px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  font-family: "Bebas Neue", system-ui, sans-serif;
}
.nav-links a small {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #97C0E0;
  font-size: 11px;
  letter-spacing: 0.18em;
  margin-top: 4px;
}
.nav-links a:hover {
  color: #97C0E0;
}
.nav-links .nav-cta-mobile {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #97C0E0;
  color: #062F5F;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 14px;
  letter-spacing: 0.24em;
  padding: 16px 22px;
  margin-top: 24px;
  border: 2px solid #97C0E0;
}
.nav-links .nav-cta-mobile::after {
  content: "→";
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media (min-width: 1025px) {
  .nav-links {
    position: static;
    flex-direction: row;
    justify-content: center;
    gap: 28px;
    background: transparent;
    padding: 0;
    min-height: auto;
    transform: none;
    transition: none;
    overflow-y: visible;
  }
  .nav-links a {
    color: #062F5F;
    font-size: 13px;
    letter-spacing: 0.22em;
    padding: 8px 4px;
    border-bottom: none;
  }
  .nav-links a small {
    color: #6a7790;
    font-size: 10px;
    letter-spacing: 0.06em;
    margin-top: 2px;
    font-weight: 700;
  }
  .nav-links a:hover {
    color: #d31a3a;
  }
  .nav-links .nav-cta-mobile {
    display: none;
  }
}
.nav-cta {
  display: none;
}
@media (min-width: 1025px) {
  .nav-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: "Bebas Neue", system-ui, sans-serif;
    font-size: 13px;
    letter-spacing: 0.22em;
    background: #062F5F;
    color: #fff;
    padding: 14px 22px;
    border: 2px solid #062F5F;
    transition: 0.2s;
  }
  .nav-cta::after {
    content: "→";
    font-family: "Zen Kaku Gothic New", sans-serif;
  }
  .nav-cta:hover {
    background: #d31a3a;
    border-color: #d31a3a;
  }
}
.nav-burger {
  display: inline-flex;
  width: 44px;
  height: 44px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
  align-items: center;
  justify-content: center;
  z-index: 60;
}
.nav-burger span {
  position: absolute;
  left: 10px;
  right: 10px;
  height: 2px;
  background: #062F5F;
  transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), top 0.25s, opacity 0.2s;
}
.nav-burger span:nth-child(1) {
  top: 15px;
}
.nav-burger span:nth-child(2) {
  top: 21px;
}
.nav-burger span:nth-child(3) {
  top: 27px;
}
.nav-burger::before {
  display: none;
}
@media (min-width: 768px) {
  .nav-burger::before {
    display: block;
    content: "MENU";
    position: absolute;
    right: 48px;
    top: 50%;
    transform: translateY(-50%);
    font-family: "Bebas Neue", system-ui, sans-serif;
    font-size: 11px;
    letter-spacing: 0.26em;
    color: #062F5F;
    transition: opacity 0.2s;
  }
}
@media (min-width: 1025px) {
  .nav-burger {
    display: none;
  }
}
.nav.open {
  background: transparent;
  border-color: transparent;
}
.nav.open .nav-links {
  transform: translateY(0);
}
.nav.open .nav-burger::before {
  content: "CLOSE" !important;
  color: #fff;
}
.nav.open .nav-burger span {
  background: #fff;
}
.nav.open .nav-burger span:nth-child(1) {
  top: 21px;
  transform: rotate(45deg);
}
.nav.open .nav-burger span:nth-child(2) {
  opacity: 0;
}
.nav.open .nav-burger span:nth-child(3) {
  top: 21px;
  transform: rotate(-45deg);
}
.nav.open .nav-logo .nav-mark {
  content: url("../assets/icon-light.svg");
}
.nav.open .nav-logo .nav-word {
  content: url("../assets/logo-light.svg");
}
@media (min-width: 1025px) {
  .nav.open {
    background: rgba(255, 255, 255, 0.86);
    border-bottom: 1px solid #dde4ee;
  }
  .nav.open .nav-links {
    transform: none;
  }
  .nav.open .nav-logo .nav-mark {
    content: inherit;
  }
  .nav.open .nav-logo .nav-word {
    content: inherit;
  }
}

@media (max-width: 1024px) {
  body.nav-open {
    overflow: hidden;
  }
}

.btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  padding: 14px 20px;
  letter-spacing: 0.18em;
  background: #062F5F;
  color: #fff;
  cursor: pointer;
  border: none;
  box-shadow: 6px 6px 0 #97C0E0;
  transition: 0.2s;
}
.btn-primary::after {
  content: "→";
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 16px;
}
.btn-primary:hover {
  transform: translate(-2px, -2px);
  box-shadow: 8px 8px 0 #97C0E0;
}
@media (min-width: 768px) {
  .btn-primary {
    font-size: 14px;
    padding: 18px 28px;
    letter-spacing: 0.26em;
  }
}

.btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  padding: 12px 16px;
  letter-spacing: 0.18em;
  color: #062F5F;
  background: transparent;
  border: 2px solid #062F5F;
}
.btn-ghost::after {
  content: "↗";
}
@media (min-width: 768px) {
  .btn-ghost {
    font-size: 13px;
    padding: 16px 24px;
    letter-spacing: 0.22em;
  }
}

.sec {
  padding: 56px 0;
  position: relative;
  container-type: inline-size;
}
@media (min-width: 768px) {
  .sec {
    padding: 80px 0;
  }
}
@media (min-width: 1025px) {
  .sec {
    padding: 120px 0;
  }
}
.sec-title {
  display: flex;
  align-items: baseline;
  gap: 12px 18px;
  margin-bottom: 40px;
  flex-wrap: wrap;
}
@media (min-width: 1025px) {
  .sec-title {
    gap: 24px;
    margin-bottom: 56px;
  }
}
.sec-title .num {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 16px;
  color: #5b8fbf;
  letter-spacing: 0.06em;
}
@media (min-width: 1025px) {
  .sec-title .num {
    font-size: 22px;
  }
}
.sec-title .en {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 28px;
  letter-spacing: -0.005em;
  color: #0d1a30;
}
@media (min-width: 768px) {
  .sec-title .en {
    font-size: 36px;
  }
}
@media (min-width: 1025px) {
  .sec-title .en {
    font-size: 60px;
  }
}
.sec-title .jp {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 11px;
  letter-spacing: 0.24em;
  color: #6a7790;
  font-weight: 700;
  padding-bottom: 6px;
  border-bottom: 2px solid #97C0E0;
}
@media (min-width: 1025px) {
  .sec-title .jp {
    font-size: 13px;
  }
}

.page-hero {
  position: relative;
  overflow: hidden;
  padding: 40px 0 56px;
  background: #ffffff;
  container-type: inline-size;
}
.page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(900px 600px at 95% 30%, rgba(151, 192, 224, 0.2), transparent 65%), radial-gradient(700px 500px at 10% 110%, rgba(6, 47, 95, 0.05), transparent 70%);
  pointer-events: none;
}
.page-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 18px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: end;
}
@media (min-width: 768px) {
  .page-hero-inner {
    padding: 0 24px;
  }
}
@media (min-width: 1025px) {
  .page-hero-inner {
    grid-template-columns: 1.05fr 0.95fr;
    gap: 60px;
    padding: 0 40px;
  }
}
@media (min-width: 1280px) {
  .page-hero-inner {
    padding: 0 56px;
  }
}
@container (max-width: 940px) {
  .page-hero-inner {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.page-hero .crumbs {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  color: #062F5F;
  margin-bottom: 32px;
}
.page-hero .crumbs a:hover {
  color: #d31a3a;
}
.page-hero .crumbs::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 1px;
  background: #062F5F;
  margin-right: 6px;
}
.page-hero .num-pill {
  display: inline-block;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 14px;
  letter-spacing: 0.06em;
  background: #062F5F;
  color: #fff;
  padding: 4px 10px;
  margin-right: 8px;
}
.page-hero h1 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-size: 32px;
  line-height: 1.3;
  letter-spacing: -0.02em;
  color: #0d1a30;
  margin: 0 0 24px;
}
@media (min-width: 768px) {
  .page-hero h1 {
    font-size: 44px;
  }
}
@media (min-width: 1025px) {
  .page-hero h1 {
    font-size: 76px;
    line-height: 1.22;
  }
}
.page-hero h1 .en {
  display: block;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 54px;
  letter-spacing: -0.005em;
  color: #062F5F;
  line-height: 0.9;
  margin-bottom: 14px;
}
@media (min-width: 768px) {
  .page-hero h1 .en {
    font-size: 72px;
  }
}
@media (min-width: 1025px) {
  .page-hero h1 .en {
    font-size: 120px;
  }
}
.page-hero h1 .en .light {
  color: #97C0E0;
}
.page-hero .lede {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.9;
  color: #2d3a55;
  max-width: 520px;
  padding-left: 18px;
  border-left: 3px solid #97C0E0;
}
@media (min-width: 1025px) {
  .page-hero .lede {
    font-size: 16px;
    line-height: 2.1;
  }
}
.page-hero .art {
  position: relative;
  align-self: stretch;
  min-height: 280px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
@media (min-width: 1025px) {
  .page-hero .art {
    min-height: 380px;
  }
}
@media (min-width: 768px) {
  .page-hero {
    padding: 60px 0 80px;
  }
}
@media (min-width: 1025px) {
  .page-hero {
    padding: 90px 0 110px;
  }
}

footer {
  background: #03152e;
  color: rgba(255, 255, 255, 0.7);
  padding: 56px 0 24px;
  container-type: inline-size;
}
footer .ft-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 18px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 768px) {
  footer .ft-inner {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    padding: 0 24px;
  }
}
@media (min-width: 1025px) {
  footer .ft-inner {
    grid-template-columns: 1.6fr 1fr 1fr 1fr;
    gap: 40px;
    padding: 0 40px;
  }
}
@media (min-width: 1280px) {
  footer .ft-inner {
    padding: 0 56px;
  }
}
@container (max-width: 1040px) {
  footer .ft-inner {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }
}
@container (max-width: 680px) {
  footer .ft-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
footer .ft-logo img {
  width: 160px;
  margin-bottom: 16px;
}
footer .ft-tag {
  font-size: 13px;
  line-height: 1.9;
  max-width: 320px;
}
footer .ft-col h5 {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.26em;
  color: #fff;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  margin: 0 0 16px;
}
footer .ft-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
footer .ft-col li {
  padding: 6px 0;
  font-size: 13px;
}
footer .ft-col li a:hover {
  color: #97C0E0;
}
footer .ft-bottom {
  max-width: 1440px;
  margin: 60px auto 0;
  padding: 18px 18px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: center;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.5);
}
@media (min-width: 768px) {
  footer .ft-bottom {
    padding: 18px 24px 0;
    font-size: 11px;
  }
}
@media (min-width: 1025px) {
  footer .ft-bottom {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
    padding: 18px 40px 0;
  }
}
@media (min-width: 1280px) {
  footer .ft-bottom {
    padding: 18px 56px 0;
  }
}
@media (min-width: 768px) {
  footer {
    padding: 80px 0 30px;
  }
}

.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.9s cubic-bezier(0.2, 0.7, 0.2, 1), transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.reveal.in {
  opacity: 1;
  transform: none;
}
.reveal.delay-1 {
  transition-delay: 0.1s;
}
.reveal.delay-2 {
  transition-delay: 0.2s;
}
.reveal.delay-3 {
  transition-delay: 0.3s;
}
.reveal.delay-4 {
  transition-delay: 0.4s;
}

/* ==========================================================================
   MOLY BRAND - GENERIC PAGE STYLES (_page-generic.scss)
   --------------------------------------------------------------------------
   Gutenberg（標準ブロックエディタ）が出力するあらゆるHTMLタグを、
   Molyのミニマルで洗練された高級デザインガイドラインに100%適合させるための汎用スタイル。
   ========================================================================== */
.generic-sec {
  background: #ffffff;
  padding: 60px 0 120px;
}
@media (max-width: 1024px) {
  .generic-sec {
    padding: 40px 0 80px;
  }
}

.generic-content {
  max-width: 960px;
  margin: 0 auto;
}

.page-hero-generic .page-hero-inner {
  display: block !important;
  width: 100% !important;
}
.page-hero-generic .page-hero-inner > div:first-child {
  width: 100% !important;
  max-width: 100% !important;
}
.page-hero-generic h1 {
  width: 100% !important;
  max-width: 100% !important;
}
.page-hero-generic h1 .en {
  width: 100% !important;
}
.page-hero-generic .lede {
  max-width: 880px;
}

.entry-content {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15px;
  line-height: 1.95;
  color: #0d1a30;
}
@media (min-width: 768px) {
  .entry-content {
    font-size: 16px;
    line-height: 2.1;
  }
}
.entry-content p {
  margin-top: 0;
  margin-bottom: 24px;
}
.entry-content p:last-child {
  margin-bottom: 0;
}
.entry-content p strong {
  font-weight: 700;
  color: #062F5F;
  background: linear-gradient(transparent 70%, rgba(151, 192, 224, 0.35) 70%);
  padding: 0 4px;
}
.entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  color: #062F5F;
  line-height: 1.4;
  margin-top: 56px;
  margin-bottom: 22px;
  letter-spacing: -0.01em;
}
.entry-content h2:first-child, .entry-content h3:first-child, .entry-content h4:first-child, .entry-content h5:first-child, .entry-content h6:first-child {
  margin-top: 0;
}
.entry-content h2 {
  font-size: clamp(24px, 4.5vw, 32px);
  padding-bottom: 12px;
  border-bottom: 2px solid #97C0E0;
  position: relative;
}
.entry-content h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 48px;
  height: 2px;
  background: #062F5F;
}
.entry-content h3 {
  font-size: clamp(20px, 3.5vw, 24px);
  padding-left: 14px;
  border-left: 3px solid #97C0E0;
}
.entry-content h4 {
  font-size: 18px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.entry-content h4::before {
  content: "▸";
  color: #5b8fbf;
  font-family: "Bebas Neue", system-ui, sans-serif;
}
.entry-content ul, .entry-content ol {
  margin-top: 0;
  margin-bottom: 28px;
  padding-left: 24px;
}
.entry-content ul li, .entry-content ol li {
  margin-bottom: 10px;
  line-height: 1.8;
}
.entry-content ul li:last-child, .entry-content ol li:last-child {
  margin-bottom: 0;
}
.entry-content ul {
  list-style: none;
  padding-left: 18px;
}
.entry-content ul li {
  position: relative;
}
.entry-content ul li::before {
  content: "";
  position: absolute;
  left: -18px;
  top: 0.65em;
  width: 6px;
  height: 6px;
  background: #97C0E0;
  border-radius: 50%;
}
.entry-content ol {
  list-style-type: decimal;
}
.entry-content ol li::marker {
  font-family: "Bebas Neue", system-ui, sans-serif;
  color: #5b8fbf;
  font-weight: 700;
  font-size: 14px;
}
.entry-content .wp-block-table, .entry-content table {
  width: 100%;
  margin-top: 36px;
  margin-bottom: 36px;
  border-collapse: collapse;
  overflow-x: auto;
  display: block;
}
@media (min-width: 1025px) {
  .entry-content .wp-block-table, .entry-content table {
    display: table;
  }
}
.entry-content .wp-block-table tr, .entry-content table tr {
  border-bottom: 1px solid #dde4ee;
}
.entry-content .wp-block-table tr:first-child, .entry-content table tr:first-child {
  border-top: 2px solid #062F5F;
}
.entry-content .wp-block-table tr:hover, .entry-content table tr:hover {
  background: rgba(244, 246, 250, 0.4);
}
.entry-content .wp-block-table th, .entry-content .wp-block-table td, .entry-content table th, .entry-content table td {
  text-align: left;
  padding: 16px 14px;
  font-size: 14px;
  line-height: 1.7;
  vertical-align: top;
}
@media (max-width: 720px) {
  .entry-content .wp-block-table th, .entry-content .wp-block-table td, .entry-content table th, .entry-content table td {
    padding: 12px 10px;
    font-size: 13px;
  }
}
.entry-content .wp-block-table th, .entry-content table th {
  width: 200px;
  font-weight: 700;
  color: #062F5F;
  background: #f4f6fa;
  white-space: nowrap;
}
@media (max-width: 720px) {
  .entry-content .wp-block-table th, .entry-content table th {
    width: 110px;
  }
}
.entry-content .wp-block-table td, .entry-content table td {
  color: #0d1a30;
}
.entry-content blockquote, .entry-content .wp-block-quote {
  position: relative;
  margin: 36px 0;
  padding: 24px 28px;
  background: #f4f6fa;
  border-left: 4px solid #97C0E0;
  font-style: italic;
}
.entry-content blockquote p, .entry-content .wp-block-quote p {
  color: rgba(13, 26, 48, 0.85);
  font-size: 15px;
  line-height: 1.85;
  margin-bottom: 0;
}
.entry-content blockquote cite, .entry-content blockquote fill, .entry-content .wp-block-quote cite, .entry-content .wp-block-quote fill {
  display: block;
  margin-top: 10px;
  font-size: 12px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  color: #5b8fbf;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.entry-content blockquote cite::before, .entry-content blockquote fill::before, .entry-content .wp-block-quote cite::before, .entry-content .wp-block-quote fill::before {
  content: "— ";
}
.entry-content .wp-block-buttons {
  margin-top: 36px;
  margin-bottom: 36px;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.entry-content .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 13px;
  letter-spacing: 0.22em;
  background: #062F5F;
  color: #fff !important;
  padding: 16px 28px;
  border: none;
  cursor: pointer;
  box-shadow: 6px 6px 0 #97C0E0;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none !important;
}
.entry-content .wp-block-button__link::after {
  content: "→";
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
}
.entry-content .wp-block-button__link:hover {
  transform: translate(-2px, -2px);
  box-shadow: 8px 8px 0 #97C0E0;
  color: #fff !important;
}
.entry-content .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: #062F5F !important;
  border: 2px solid #062F5F;
  box-shadow: none;
}
.entry-content .wp-block-button.is-style-outline .wp-block-button__link::after {
  content: "↗";
}
.entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover {
  transform: none;
  background: rgba(6, 47, 95, 0.04);
  color: #062F5F !important;
}
.entry-content .wp-block-image, .entry-content figure {
  margin: 36px 0;
}
.entry-content .wp-block-image img, .entry-content figure img {
  border: 1px solid #dde4ee;
  box-shadow: 0 10px 30px rgba(6, 47, 95, 0.05);
}
.entry-content .wp-block-image figcaption, .entry-content .wp-block-image .wp-element-caption, .entry-content figure figcaption, .entry-content figure .wp-element-caption {
  margin-top: 10px;
  font-size: 11px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  letter-spacing: 0.22em;
  color: #6a7790;
  text-align: left;
}

/* ==========================================================================
   MOLY BRAND PAGES STYLE SYSTEM (_front-page.scss)
   --------------------------------------------------------------------------
   トップページ（front-page.php）に特化した個別固有スタイルモジュール。
   Dart Sassの推奨する規則に則り、レスポンシブ・コンテナクエリを各要素にネスト集約。
   ========================================================================== */
/**
 * 下からフワッと浮き上がる (Fade Up)
 * @param $dist  : 移動距離 (def: 30px)
 * @param $dur   : 時間 (def: 0.8s)
 * @param $delay : 遅延 (def: 0)
 */
/**
 * 上からフワッと降りてくる (Fade Down)
 */
/**
 * 左からフワッと現れる (Fade In Left)
 */
/**
 * 右からフワッと現れる (Fade In Right)
 */
/**
 * スケールアップしながら現れる (Scale Up)
 */
/**
 * 子要素を順番に表示させる (nth-child delay)
 * @param $count : アイテムの個数
 * @param $step  : ずらす秒数 (例: 0.1s)
 * @param $selector : 子要素のセレクタ (デフォルト: li)
 */
.js-fade-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  will-change: opacity, transform;
}
.js-fade-up.is-active {
  opacity: 1;
  transform: translateY(0);
}

.js-fade-up-long {
  opacity: 0;
  transform: translateY(60px);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  will-change: opacity, transform;
}
.js-fade-up-long.is-active {
  opacity: 1;
  transform: translateY(0);
}

.js-fade-up-delay {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s;
  will-change: opacity, transform;
}
.js-fade-up-delay.is-active {
  opacity: 1;
  transform: translateY(0);
}

.js-fade-left {
  opacity: 0;
  transform: translateX(-30px);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  will-change: opacity, transform;
}
.js-fade-left.is-active {
  opacity: 1;
  transform: translateX(0);
}

.js-fade-right {
  opacity: 0;
  transform: translateX(30px);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  will-change: opacity, transform;
}
.js-fade-right.is-active {
  opacity: 1;
  transform: translateX(0);
}

.js-scale-up {
  opacity: 0;
  transform: scale(0.9);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
}
.js-scale-up.is-active {
  opacity: 1;
  transform: scale(1);
}

.reveal-fade {
  opacity: 0;
  transition: opacity 1.2s ease-out;
}
.reveal-fade.in {
  opacity: 1;
}

.reveal-scale {
  opacity: 0;
  transform: scale(0.96);
  transition: opacity 1s ease-out, transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.reveal-scale.in {
  opacity: 1;
  transform: none;
}

.halftone {
  background-image: radial-gradient(currentColor 1.2px, transparent 1.6px);
  background-size: 8px 8px;
}

.hero {
  position: relative;
  padding: 0;
  overflow: hidden;
  background: #ffffff;
  min-height: 700px;
  container-type: inline-size;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(900px 700px at 95% 50%, rgba(151, 192, 224, 0.18), transparent 65%);
  pointer-events: none;
}
@media (max-width: 1024px) {
  .hero {
    padding: 0 0 40px;
    min-height: 700px;
  }
}
.hero-grid {
  position: relative;
  z-index: 2;
  max-width: 1440px;
  margin: 0 auto;
  padding: 90px 56px 0;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 24px;
  align-items: start;
  min-height: 700px;
}
.hero-grid > div:first-child {
  position: relative;
  z-index: 2;
  pointer-events: auto;
}
@media (max-width: 1280px) {
  .hero-grid {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (max-width: 1024px) {
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 56px 24px 0;
    min-height: 700px;
  }
}
@media (max-width: 720px) {
  .hero-grid {
    padding: 40px 18px 0;
    min-height: 700px;
  }
}
@container (max-width: 1040px) {
  .hero-grid {
    grid-template-columns: 1fr;
  }
}
.hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.36em;
  color: #062F5F;
  margin-bottom: 56px;
  opacity: 0;
  transform: translateY(8px);
  animation: fadeUp 0.9s 0.15s ease-out forwards;
}
.hero-kicker .bar {
  width: 42px;
  height: 1px;
  background: #062F5F;
}
.hero-kicker .ja {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: #6a7790;
  font-weight: 700;
}
@media (max-width: 720px) {
  .hero-kicker {
    font-size: 10px;
    letter-spacing: 0.22em;
    gap: 10px;
    margin-bottom: 32px;
    flex-wrap: wrap;
  }
}
.hero-title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-size: clamp(32px, 6.6cqi, 80px);
  line-height: 1.28;
  letter-spacing: -0.02em;
  color: #0d1a30;
  margin: 0 0 48px;
}
@media (max-width: 1280px) {
  .hero-title {
    font-size: 64px;
  }
}
@media (max-width: 1024px) {
  .hero-title {
    font-size: 56px;
    line-height: 1.22;
    margin-bottom: 32px;
  }
}
@media (max-width: 720px) {
  .hero-title {
    font-size: 38px;
    line-height: 1.26;
    margin-bottom: 24px;
  }
}
.hero-title .line {
  display: block;
  overflow: hidden;
  position: relative;
}
.hero-title .line > span {
  display: inline-block;
  white-space: nowrap;
  -webkit-clip-path: inset(0 100% 0 0);
  clip-path: inset(0 100% 0 0);
  animation: typeIn 0.6s steps(16, end) forwards;
  position: relative;
}
@media (max-width: 720px) {
  .hero-title .line > span {
    white-space: normal;
  }
}
.hero-title .line:nth-of-type(1) > span {
  animation-delay: 0.25s;
}
.hero-title .line:nth-of-type(2) > span {
  animation-delay: 0.8s;
}
.hero-title .line:nth-of-type(3) > span {
  animation-delay: 1.35s;
}
.hero-title .line:nth-of-type(4) > span {
  animation-delay: 1.9s;
  animation-duration: 0.35s;
}
.hero-title .hl {
  color: #97C0E0;
}
.hero-title .line:nth-of-type(4)::after {
  content: "";
  display: inline-block;
  width: 0.08em;
  height: 1em;
  background: #97C0E0;
  vertical-align: -0.05em;
  margin-left: 0.08em;
  opacity: 0;
  animation: caretIn 0.1s 1.9s forwards, caretBlink 1s 2s infinite step-end;
}
.hero-sub {
  max-width: 540px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15px;
  line-height: 2;
  color: #2d3a55;
  padding-left: 18px;
  border-left: 3px solid #97C0E0;
  margin-bottom: 40px;
  opacity: 0;
  transform: translateY(10px);
  animation: fadeUp 0.9s 2.2s ease-out forwards;
}
@media (max-width: 1024px) {
  .hero-sub {
    font-size: 14px;
    max-width: 100%;
  }
}
@media (max-width: 720px) {
  .hero-sub {
    font-size: 13px;
    line-height: 1.9;
    padding-left: 14px;
  }
}
.hero-actions {
  display: flex;
  gap: 14px;
  align-items: center;
  opacity: 0;
  transform: translateY(10px);
  animation: fadeUp 0.9s 2.4s ease-out forwards;
}
@container (max-width: 460px) {
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .hero-actions .btn-primary,
  .hero-actions .btn-ghost {
    width: 100%;
    justify-content: center;
  }
}
.hero-art {
  position: relative;
  height: calc(100% + 90px);
  margin-top: -90px;
  overflow: hidden;
  pointer-events: none;
  align-self: stretch;
}
@media (max-width: 1024px) {
  .hero-art {
    position: absolute;
    inset: 0;
    height: 100%;
    margin: 0;
    z-index: 1;
  }
}
.hero-art .statue {
  position: absolute;
  right: -80px;
  top: 0;
  bottom: 0;
  height: 100%;
  width: auto;
  max-width: none;
  object-fit: contain;
  object-position: right bottom;
  pointer-events: none;
  filter: grayscale(0.15) contrast(1.05) drop-shadow(0 40px 60px rgba(6, 47, 95, 0.14));
  mix-blend-mode: multiply;
  transform: translateY(100%);
  animation: statueRise 1.4s 0.6s cubic-bezier(0.16, 0.84, 0.3, 1) forwards;
}
@media (max-width: 1024px) {
  .hero-art .statue {
    position: absolute;
    right: -30px;
    top: auto;
    bottom: 0;
    height: 88%;
    max-height: none;
    width: auto;
    max-width: none;
    object-position: right bottom;
    opacity: 0.25;
  }
}
@media (max-width: 480px) {
  .hero-art .statue {
    height: 82%;
    right: -15px;
    opacity: 0.22;
  }
}
.hero-art .vline {
  position: absolute;
  right: 24px;
  top: 90px;
  bottom: 0;
  width: 1px;
  background: linear-gradient(180deg, transparent, #97C0E0 15%, #97C0E0 85%, transparent);
  opacity: 0;
  animation: lineFade 1s 2s ease-out forwards;
  transform-origin: top;
}
@media (max-width: 1024px) {
  .hero-art .vline {
    display: none;
  }
}
.hero-art .vline-label {
  position: absolute;
  right: 36px;
  top: 28%;
  writing-mode: vertical-rl;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.4em;
  color: #062F5F;
  opacity: 0;
  animation: fadeUp 1s 2.2s ease-out forwards;
}
@media (max-width: 1024px) {
  .hero-art .vline-label {
    display: none;
  }
}

.scroll-cue {
  position: absolute;
  left: 56px;
  bottom: 18px;
  z-index: 3;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  color: #062F5F;
}
.scroll-cue::after {
  content: "";
  display: inline-block;
  width: 60px;
  height: 1px;
  background: #062F5F;
  margin-left: 12px;
  vertical-align: middle;
}
@media (max-width: 1024px) {
  .scroll-cue {
    left: 24px;
  }
}

@keyframes typeIn {
  to {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
  }
}
@keyframes caretIn {
  to {
    opacity: 1;
  }
}
@keyframes caretBlink {
  0%, 49% {
    opacity: 1;
  }
  50%, 100% {
    opacity: 0;
  }
}
@keyframes statueRise {
  to {
    transform: translateY(0);
  }
}
@keyframes lineFade {
  to {
    opacity: 0.65;
  }
}
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.ink {
  position: relative;
  display: inline-block;
  color: #0d1a30;
  transition: color 0.6s 0.1s ease;
}
.ink::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.02em;
  height: 0.92em;
  background: #97C0E0;
  transform-origin: left center;
  transform: scaleX(0);
  transition: transform 0.9s cubic-bezier(0.7, 0, 0.2, 1);
  z-index: -1;
}
.ink.lit {
  color: #97C0E0;
}
.ink.lit::after {
  transform: scaleX(1);
}

.concept {
  position: relative;
  padding: 160px 0 180px;
  background: #062F5F;
  color: #fff;
  overflow: hidden;
  container-type: inline-size;
}
.concept::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.05) 1.2px, transparent 1.6px);
  background-size: 12px 12px;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .concept {
    padding: 100px 0 110px;
  }
}
@media (max-width: 720px) {
  .concept {
    padding: 70px 0 80px;
  }
}
.concept .stripe {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  background: rgba(151, 192, 224, 0.2);
}
.concept .stripe.l {
  left: 12%;
}
.concept .stripe.r {
  right: 12%;
}
.concept .ghost {
  position: absolute;
  right: -120px;
  top: -40px;
  bottom: -40px;
  width: 60%;
  background: url("../assets/statue.png") right center/contain no-repeat;
  opacity: 0.12;
  filter: brightness(1.4) contrast(0.9);
  pointer-events: none;
  transition: transform 0.4s ease-out;
}
.concept-inner {
  position: relative;
  z-index: 2;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 56px;
  text-align: center;
}
@media (max-width: 1280px) {
  .concept-inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (max-width: 1024px) {
  .concept-inner {
    padding: 0 24px;
  }
}
@media (max-width: 720px) {
  .concept-inner {
    padding: 0 18px;
  }
}
.concept .big-title {
  position: relative;
  display: inline-block;
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(56px, 18cqi, 220px);
  line-height: 0.9;
  letter-spacing: -0.01em;
  color: transparent;
  -webkit-text-stroke: 1.5px #fff;
  margin-bottom: 30px;
  opacity: 0;
  transform: translateY(40px) scale(0.96);
  transition: opacity 1.2s ease-out, transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.concept .big-title.in {
  opacity: 1;
  transform: none;
}
.concept .big-title .shadow {
  position: absolute;
  left: 8px;
  top: 8px;
  color: #97C0E0;
  -webkit-text-stroke: 1.5px #97C0E0;
  z-index: -1;
  transition: transform 1.2s 0.25s cubic-bezier(0.2, 0.7, 0.2, 1), opacity 1.2s 0.25s;
  opacity: 0;
  transform: translate(-8px, -8px);
}
@media (max-width: 720px) {
  .concept .big-title .shadow {
    left: 4px;
    top: 4px;
  }
}
.concept .big-title.in .shadow {
  opacity: 1;
  transform: none;
}
@media (max-width: 1280px) {
  .concept .big-title {
    font-size: 168px;
  }
}
@media (max-width: 1024px) {
  .concept .big-title {
    font-size: 110px;
  }
}
@media (max-width: 720px) {
  .concept .big-title {
    font-size: 64px;
    -webkit-text-stroke-width: 1px;
    margin-bottom: 16px;
  }
}
.concept .script {
  font-family: "Italianno", cursive;
  font-size: clamp(38px, 6cqi, 72px);
  line-height: 1;
  color: #fff;
  margin: -10px 0 40px;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1.2s 0.55s ease-out, transform 1.2s 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.concept .script.in {
  opacity: 1;
}
.concept .script .amp {
  color: #97C0E0;
  display: inline-block;
  background: linear-gradient(currentColor, currentColor) no-repeat 0 100%/0 1px;
  transition: background-size 0.9s 1.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.concept .script.in .amp {
  background-size: 100% 1px;
}
@media (max-width: 1024px) {
  .concept .script {
    font-size: 56px;
  }
}
@media (max-width: 720px) {
  .concept .script {
    font-size: 38px;
    margin-bottom: 24px;
  }
}
.concept-lede {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 18px;
  line-height: 2.4;
  color: rgba(255, 255, 255, 0.86);
  max-width: 620px;
  margin: 0 auto 60px;
}
.concept-lede em {
  font-style: normal;
  color: #97C0E0;
  border-bottom: 1px dashed rgba(151, 192, 224, 0.6);
  padding-bottom: 1px;
}
@media (max-width: 1024px) {
  .concept-lede {
    font-size: 16px;
    line-height: 2;
  }
}
@media (max-width: 720px) {
  .concept-lede {
    font-size: 14px;
    line-height: 1.95;
  }
}
.concept-mirror {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 56px 0;
  align-items: center;
}
@media (max-width: 1280px) {
  .concept-mirror {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (max-width: 1024px) {
  .concept-mirror {
    grid-template-columns: 1fr;
    gap: 36px;
    padding: 56px 24px 0;
  }
}
@media (max-width: 720px) {
  .concept-mirror {
    padding: 36px 18px 0;
    gap: 24px;
  }
}
@container (max-width: 1040px) {
  .concept-mirror {
    grid-template-columns: 1fr;
  }
}

.mirror-frame {
  position: relative;
  border: 8px solid #d2c3a1;
  background: #f3ece0;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4);
}
.mirror-frame::before {
  content: "";
  position: absolute;
  inset: -8px;
  border: 1px solid rgba(255, 255, 255, 0.4);
}
.mirror-frame img {
  display: block;
  width: 100%;
  height: auto;
}
.mirror-frame .cap {
  position: absolute;
  left: 8px;
  bottom: -34px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: rgba(255, 255, 255, 0.7);
}
@media (max-width: 720px) {
  .mirror-frame {
    border-width: 6px;
  }
}

.mirror-meta {
  color: #fff;
}
.mirror-meta .label {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.32em;
  color: #97C0E0;
  margin-bottom: 14px;
}
.mirror-meta h3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-size: 36px;
  line-height: 1.5;
  margin: 0 0 24px;
}
.mirror-meta h3 em {
  font-style: normal;
  color: #97C0E0;
}
@media (max-width: 720px) {
  .mirror-meta h3 {
    font-size: 22px;
  }
}
.mirror-meta p {
  font-size: 15px;
  line-height: 2.1;
  color: rgba(255, 255, 255, 0.82);
  margin: 0 0 12px;
}
@media (max-width: 720px) {
  .mirror-meta p {
    font-size: 13px;
    line-height: 1.9;
  }
}
.mirror-meta .signoff {
  margin-top: 28px;
  font-family: "Italianno", cursive;
  font-size: 42px;
  line-height: 1;
  color: #97C0E0;
}
@media (max-width: 720px) {
  .mirror-meta .signoff {
    font-size: 30px;
  }
}

.services {
  background: #f4f6fa;
  container-type: inline-size;
}

.svc-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .svc-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}
@media (max-width: 720px) {
  .svc-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .svc-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.svc {
  background: #fff;
  padding: 40px 32px 36px;
  border: 1px solid #dde4ee;
  transition: 0.25s;
  position: relative;
  display: block;
  color: inherit;
  text-decoration: none;
}
@media (max-width: 720px) {
  .svc {
    padding: 28px 22px;
  }
}
.svc-ic {
  width: 80px;
  height: 80px;
  margin-bottom: 22px;
  background: #f4f6fa;
  border: 1px solid #dde4ee;
  display: grid;
  place-items: center;
  padding: 14px;
  transition: background 0.25s ease, border-color 0.25s ease;
}
.svc-ic svg {
  width: 100%;
  height: 100%;
  display: block;
}
.svc:hover {
  border-color: #062F5F;
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(6, 47, 95, 0.1);
}
.svc:hover .svc-ic {
  background: #97C0E0;
  border-color: #97C0E0;
}
.svc:hover .more {
  color: #5b8fbf;
}
.svc:hover .more::after {
  transform: translateX(4px);
}
.svc .n {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 22px;
  color: #5b8fbf;
  letter-spacing: 0.06em;
  margin-bottom: 8px;
}
.svc .en {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 36px;
  color: #062F5F;
  margin-bottom: 6px;
  letter-spacing: -0.005em;
}
@media (max-width: 720px) {
  .svc .en {
    font-size: 26px;
  }
}
.svc h3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  margin: 0 0 18px;
}
@media (max-width: 720px) {
  .svc h3 {
    font-size: 18px;
  }
}
.svc p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  line-height: 2;
  color: #4a5670;
  margin: 0 0 22px;
}
@media (max-width: 720px) {
  .svc p {
    font-size: 13px;
  }
}
.svc .tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 22px;
}
.svc .tags span {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.16em;
  color: #062F5F;
  background: #f0f4fa;
  padding: 4px 10px;
  border: 1px solid #dde4ee;
}
.svc .more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.28em;
  color: #062F5F;
  border-top: 1px solid #dde4ee;
  padding-top: 14px;
  width: 100%;
  transition: color 0.2s, gap 0.2s;
  text-decoration: none;
}
.svc .more::after {
  content: "→";
  margin-left: auto;
  transition: transform 0.2s;
}
@container (max-width: 1040px) {
  .svc {
    display: grid;
    grid-template-columns: clamp(140px, 22cqi, 200px) 1fr;
    column-gap: 36px;
    row-gap: 6px;
    align-items: start;
    padding: 32px 32px;
  }
  .svc .svc-ic {
    grid-column: 1;
    grid-row: 1/-1;
    width: 100%;
    height: auto;
    max-width: 200px;
    aspect-ratio: 1/1;
    padding: clamp(20px, 3cqi, 30px);
    margin-bottom: 0;
    align-self: start;
  }
  .svc .n, .svc .en, .svc h3, .svc p, .svc .tags, .svc .more {
    grid-column: 2;
  }
  .svc h3 {
    margin-top: 4px;
  }
  .svc p {
    max-width: 64ch;
  }
}
@container (max-width: 680px) {
  .svc {
    display: block;
    grid-template-columns: none;
    padding: 36px 28px 32px;
  }
  .svc .svc-ic {
    width: 80px;
    height: 80px;
    max-width: none;
    aspect-ratio: auto;
    padding: 14px;
    margin-bottom: 20px;
  }
  .svc p {
    max-width: none;
  }
}

.benefit {
  position: relative;
  padding: 130px 0;
  background: linear-gradient(180deg, #ffffff 0%, #f4f6fa 100%);
  overflow: hidden;
  container-type: inline-size;
}
@media (max-width: 1024px) {
  .benefit {
    padding: 90px 0;
  }
}
@media (max-width: 720px) {
  .benefit {
    padding: 64px 0;
  }
}
.benefit-inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 56px;
}
@media (max-width: 1280px) {
  .benefit-inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (max-width: 1024px) {
  .benefit-inner {
    padding: 0 24px;
  }
}
@media (max-width: 720px) {
  .benefit-inner {
    padding: 0 18px;
  }
}
.benefit-eyebrow {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.36em;
  color: #5b8fbf;
  margin-bottom: 26px;
}
@media (max-width: 720px) {
  .benefit-eyebrow {
    font-size: 11px;
    letter-spacing: 0.26em;
    margin-bottom: 14px;
  }
}
.benefit h2 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-size: clamp(28px, 5.5cqi, 74px);
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: #0d1a30;
  margin: 0 0 36px;
  max-width: 980px;
}
.benefit h2 .hl {
  color: #97C0E0;
}
.benefit h2 .accent {
  background: linear-gradient(transparent 64%, #97C0E0 64% 86%, transparent 86%);
  padding: 0 4px;
}
@media (max-width: 1280px) {
  .benefit h2 {
    font-size: 56px;
  }
}
@media (max-width: 1024px) {
  .benefit h2 {
    font-size: 44px;
  }
}
@media (max-width: 720px) {
  .benefit h2 {
    font-size: 30px;
    line-height: 1.4;
  }
}
.benefit p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 17px;
  line-height: 2.2;
  color: #2d3a55;
  max-width: 720px;
}
@media (max-width: 1024px) {
  .benefit p {
    font-size: 15px;
  }
}
@media (max-width: 720px) {
  .benefit p {
    font-size: 13px;
  }
}
.benefit .script-mark {
  position: absolute;
  right: 56px;
  top: 110px;
  font-family: "Italianno", cursive;
  font-size: 130px;
  line-height: 1;
  color: #97C0E0;
  opacity: 0.55;
  transform: rotate(-6deg);
}
@media (max-width: 1024px) {
  .benefit .script-mark {
    font-size: 80px;
    right: 24px;
    top: 80px;
    opacity: 0.25;
  }
}
@media (max-width: 720px) {
  .benefit .script-mark {
    display: none;
  }
}
.benefit-points {
  margin-top: 70px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
@media (max-width: 1024px) {
  .benefit-points {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 50px;
  }
}
@container (max-width: 1040px) {
  .benefit-points {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

.bp {
  padding-top: 28px;
  border-top: 2px solid #062F5F;
}
.bp .bp-illo {
  margin-bottom: 18px;
  background: linear-gradient(180deg, #fafcff 0%, #eef4fb 100%);
  border: 1px solid #dde4ee;
  aspect-ratio: 8/7;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.bp .bp-illo svg {
  width: 100%;
  height: 100%;
  display: block;
}
.bp:hover .bp-illo svg {
  transform: translateY(-2px);
  transition: transform 0.3s;
}
.bp .n {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 22px;
  color: #5b8fbf;
  letter-spacing: 0.06em;
}
.bp h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  margin: 4px 0 12px;
}
@media (max-width: 720px) {
  .bp h4 {
    font-size: 18px;
  }
}
.bp p {
  font-size: 14px;
  line-height: 2;
  color: #4a5670;
  margin: 0;
  max-width: none;
}
@media (max-width: 720px) {
  .bp p {
    font-size: 13px;
  }
}
@container (max-width: 1040px) {
  .bp {
    display: grid;
    grid-template-columns: clamp(180px, 28cqi, 280px) 1fr;
    column-gap: 40px;
    align-items: start;
  }
  .bp .bp-illo {
    grid-row: 1/-1;
    margin-bottom: 0;
    aspect-ratio: 8/7;
    max-width: 280px;
  }
  .bp p {
    max-width: 56ch;
  }
}
@container (max-width: 680px) {
  .bp {
    display: block;
  }
  .bp .bp-illo {
    margin-bottom: 18px;
  }
  .bp p {
    max-width: none;
  }
}

.about {
  background: #ffffff;
  container-type: inline-size;
}
.about-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 64px;
  align-items: start;
}
.about-grid.single {
  grid-template-columns: minmax(0, 720px);
  justify-content: center;
}
@media (max-width: 1024px) {
  .about-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}
@container (max-width: 1040px) {
  .about-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}
.about-more {
  margin-top: 36px;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 16px 24px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 13px;
  letter-spacing: 0.24em;
  color: #fff;
  background: #062F5F;
  box-shadow: 6px 6px 0 #97C0E0;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.about-more::after {
  content: "→";
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 16px;
  transition: transform 0.2s;
}
.about-more:hover {
  transform: translate(-2px, -2px);
  box-shadow: 8px 8px 0 #97C0E0;
}
.about-more:hover::after {
  transform: translateX(4px);
}
.about-text p {
  font-size: 16px;
  line-height: 2.1;
  color: #2d3a55;
  margin: 0;
}
.about-text p strong {
  color: #062F5F;
  font-weight: 700;
  background: linear-gradient(transparent 70%, #97C0E0 70%);
  padding: 0 4px;
}

.origin-card {
  position: relative;
  background: linear-gradient(180deg, #fafcff 0, #eef4fb 100%);
  border: 1px solid #dde4ee;
  padding: 28px 28px 32px;
  overflow: hidden;
}
.origin-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(6, 47, 95, 0.05) 1px, transparent 1.4px);
  background-size: 12px 12px;
  opacity: 0.55;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .origin-card {
    padding: 24px;
  }
}

.origin-tag {
  position: relative;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  color: #5b8fbf;
  margin-bottom: 14px;
}

.origin-scene {
  position: relative;
  aspect-ratio: 4/3;
  width: 100%;
  margin-bottom: 22px;
}
.origin-scene svg {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  animation: sceneFloat 7s ease-in-out infinite;
}

@keyframes sceneFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-4px);
  }
}
.origin-caption {
  position: relative;
  z-index: 1;
  padding-top: 18px;
  border-top: 1px solid #dde4ee;
}
.origin-caption p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.95;
  color: #2d3a55;
  margin: 0 0 10px;
}
.origin-caption p strong {
  font-weight: 700;
  color: #062F5F;
}
.origin-caption em {
  font-family: "Anton", system-ui, sans-serif;
  font-style: normal;
  color: #062F5F;
  letter-spacing: 0.04em;
  font-size: 18px;
}

.about-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: #dde4ee;
}

.stat {
  background: #fff;
  padding: 36px 28px;
}
.stat .l {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.24em;
  color: #5b8fbf;
  margin-bottom: 8px;
}
.stat .n {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 76px;
  line-height: 0.9;
  color: #062F5F;
}
.stat .n sup {
  font-size: 22px;
  color: #5b8fbf;
  margin-left: 4px;
  vertical-align: super;
}
.stat .jp {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #4a5670;
  margin-top: 10px;
}

.voice {
  background: #f3ece0;
  container-type: inline-size;
}

.voice-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .voice-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}
@container (max-width: 1040px) {
  .voice-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.voice-card {
  position: relative;
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 36px 30px 26px;
  display: flex;
  flex-direction: column;
  transition: 0.25s;
}
.voice-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(6, 47, 95, 0.08);
}
.voice-card .vc-q {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 90px;
  line-height: 0.8;
  color: #97C0E0;
  margin: -10px 0 4px;
  opacity: 0.85;
}
.voice-card .vc-body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14.5px;
  line-height: 2;
  color: #2d3a55;
  margin: 0 0 26px;
  flex: 1;
}
.voice-card .vc-meta {
  display: grid;
  grid-template-columns: 44px 1fr auto;
  gap: 12px;
  align-items: center;
  padding-top: 18px;
  border-top: 1px solid #dde4ee;
}
.voice-card .vc-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #062F5F;
  color: #97C0E0;
  display: grid;
  place-items: center;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 20px;
  letter-spacing: 0;
}
.voice-card .vc-name {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #062F5F;
  line-height: 1.4;
}
.voice-card .vc-role {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 11.5px;
  color: #6a7790;
  margin-top: 2px;
}
.voice-card .vc-tag {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.22em;
  background: #f4f6fa;
  color: #5b8fbf;
  padding: 4px 10px;
  border: 1px solid #dde4ee;
  align-self: flex-start;
}
@media (max-width: 1024px) {
  .voice-card {
    padding: 28px 26px 22px;
  }
  .voice-card .vc-q {
    font-size: 64px;
  }
}
@container (max-width: 1040px) {
  .voice-card {
    display: grid;
    grid-template-columns: clamp(130px, 20cqi, 200px) 1fr;
    column-gap: 40px;
    row-gap: 14px;
    align-items: start;
  }
  .voice-card .vc-q {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    line-height: 0.8;
    font-size: clamp(60px, 10cqi, 100px);
  }
  .voice-card .vc-body {
    grid-column: 2;
    grid-row: 1/-1;
    margin: 0;
    max-width: 64ch;
    align-self: start;
    flex: initial;
  }
  .voice-card .vc-meta {
    grid-column: 1;
    grid-row: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 24px 0 0;
    margin-top: 4px;
    border-top: 1px solid #dde4ee;
    border-right: none;
  }
  .voice-card .vc-meta > div:not(.vc-avatar):not(.vc-tag) {
    width: 100%;
  }
  .voice-card .vc-meta .vc-avatar {
    width: 56px;
    height: 56px;
    font-size: 22px;
  }
  .voice-card .vc-meta .vc-tag {
    align-self: flex-start;
  }
}
@container (max-width: 680px) {
  .voice-card {
    display: flex;
    flex-direction: column;
    grid-template-columns: none;
  }
  .voice-card .vc-q {
    font-size: clamp(54px, 12cqi, 90px);
    margin: -10px 0 4px;
  }
  .voice-card .vc-body {
    max-width: none;
  }
  .voice-card .vc-meta {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 18px 0 0;
    border-top: 1px solid #dde4ee;
    border-right: none;
    margin-top: 0;
  }
  .voice-card .vc-meta .vc-avatar {
    width: 44px;
    height: 44px;
    font-size: 20px;
  }
}

.voice-foot {
  margin-top: 48px;
  padding: 28px 0 0;
  border-top: 1px solid rgba(6, 47, 95, 0.15);
  display: flex;
  gap: 18px 24px;
  flex-wrap: wrap;
  align-items: center;
}
@media (max-width: 1024px) {
  .voice-foot {
    transition-delay: 0.3s;
  }
}

.vfs-label {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: #5b8fbf;
}

.vfs-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.vfs-list li {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 12px;
  color: #062F5F;
  font-weight: 700;
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 5px 12px;
}

.access {
  background: #062F5F;
  color: #fff;
  padding: 140px 0;
}
.access .sec-title .en {
  color: #fff;
}
.access .sec-title .num {
  color: #97C0E0;
}
.access .sec-title .jp {
  color: rgba(255, 255, 255, 0.7);
  border-color: #97C0E0;
}
@media (max-width: 1024px) {
  .access {
    padding: 100px 0;
  }
}
@media (max-width: 720px) {
  .access {
    padding: 64px 0;
  }
}

.access-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 32px;
  align-items: stretch;
}
@media (max-width: 1024px) {
  .access-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.map-card {
  position: relative;
  overflow: hidden;
  min-height: 460px;
  background: #07254a;
  border: 1px solid rgba(151, 192, 224, 0.25);
}
.map-card .grid-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(151, 192, 224, 0.15) 1px, transparent 1px) 0 0/56px 56px, linear-gradient(90deg, rgba(151, 192, 224, 0.15) 1px, transparent 1px) 0 0/56px 56px, radial-gradient(ellipse at 60% 40%, rgba(151, 192, 224, 0.12), transparent 65%);
}
.map-card svg.roads {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.map-card .pin {
  position: absolute;
  left: 56%;
  top: 44%;
  width: 88px;
  transform: translate(-50%, -100%);
  text-align: center;
}
.map-card .pin .head {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: #97C0E0;
  color: #062F5F;
  display: grid;
  place-items: center;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 30px;
  box-shadow: 0 0 0 6px rgba(151, 192, 224, 0.15);
  animation: bob 2.6s ease-in-out infinite;
}
@media (max-width: 720px) {
  .map-card .pin .head {
    width: 64px;
    height: 64px;
    font-size: 22px;
  }
}
.map-card .pin .stem {
  width: 0;
  height: 0;
  margin: 0 auto;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 22px solid #97C0E0;
}
@media (max-width: 720px) {
  .map-card .pin {
    width: 64px;
  }
}
.map-card .ribbon {
  position: absolute;
  left: 24px;
  top: 24px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.3em;
  color: rgba(255, 255, 255, 0.75);
  padding-bottom: 6px;
  border-bottom: 1px solid #97C0E0;
}
.map-card .ribbon-sub {
  position: absolute;
  right: 24px;
  bottom: 24px;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 28px;
  color: #97C0E0;
  letter-spacing: 0.04em;
}
@media (max-width: 1024px) {
  .map-card {
    min-height: 360px;
  }
}
@media (max-width: 720px) {
  .map-card {
    min-height: 280px;
  }
}

.addr-card {
  background: #fff;
  color: #0d1a30;
  padding: 44px 40px 36px;
  position: relative;
}
.addr-card .stamp {
  position: absolute;
  right: 36px;
  top: 36px;
  width: 84px;
  height: 84px;
  border: 1px solid #062F5F;
  border-radius: 50%;
  display: grid;
  place-items: center;
  text-align: center;
  transform: rotate(-10deg);
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 9px;
  letter-spacing: 0.22em;
  color: #062F5F;
  line-height: 1.4;
}
.addr-card .stamp::before {
  content: "";
  position: absolute;
  inset: 4px;
  border: 1px dashed #97C0E0;
  border-radius: 50%;
}
@media (max-width: 720px) {
  .addr-card .stamp {
    width: 62px;
    height: 62px;
    font-size: 7px;
    right: 14px;
    top: 14px;
  }
}
.addr-card .en {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 36px;
  color: #062F5F;
}
@media (max-width: 720px) {
  .addr-card .en {
    font-size: 26px;
  }
}
.addr-card h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  margin: 4px 0 20px;
}
@media (max-width: 720px) {
  .addr-card h4 {
    font-size: 18px;
  }
}
@media (max-width: 1024px) {
  .addr-card {
    padding: 32px 28px;
  }
}
@media (max-width: 720px) {
  .addr-card {
    padding: 24px 20px;
  }
}

.addr-row {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 8px 16px;
  padding: 12px 0;
  border-top: 1px solid #dde4ee;
  font-size: 14px;
  line-height: 1.8;
}
.addr-row:first-of-type {
  border-top: 2px solid #062F5F;
}
.addr-row .k {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.24em;
  color: #5b8fbf;
}
.addr-row .v strong {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}
@media (max-width: 720px) {
  .addr-row {
    grid-template-columns: 86px 1fr;
    font-size: 13px;
  }
}

.cta {
  position: relative;
  overflow: hidden;
  padding: 160px 0;
  background: #ffffff;
  container-type: inline-size;
}
.cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(6, 47, 95, 0.06) 1.2px, transparent 1.6px);
  background-size: 12px 12px;
  mask-image: radial-gradient(ellipse at 50% 50%, black, transparent 80%);
}
.cta-inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 56px;
  text-align: center;
}
@media (max-width: 1280px) {
  .cta-inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (max-width: 1024px) {
  .cta-inner {
    padding: 0 24px;
  }
}
@media (max-width: 720px) {
  .cta-inner {
    padding: 0 18px;
  }
}
.cta-eye {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.36em;
  color: #5b8fbf;
  margin-bottom: 22px;
}
@media (max-width: 720px) {
  .cta-eye {
    font-size: 11px;
    letter-spacing: 0.26em;
  }
}
.cta h2 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(54px, 16cqi, 200px);
  line-height: 0.85;
  color: #062F5F;
  letter-spacing: -0.01em;
  margin: 0 0 8px;
}
.cta h2 .light {
  color: #97C0E0;
}
@media (max-width: 1280px) {
  .cta h2 {
    font-size: 140px;
  }
}
@media (max-width: 1024px) {
  .cta h2 {
    font-size: 100px;
  }
}
@media (max-width: 720px) {
  .cta h2 {
    font-size: 56px;
    line-height: 0.95;
  }
}
.cta .script {
  font-family: "Italianno", cursive;
  font-size: clamp(38px, 7cqi, 84px);
  color: #97C0E0;
  line-height: 1;
  margin: -8px 0 32px;
}
@media (max-width: 1024px) {
  .cta .script {
    font-size: 60px;
  }
}
@media (max-width: 720px) {
  .cta .script {
    font-size: 40px;
    margin: 0 0 18px;
  }
}
.cta .ja {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  color: #0d1a30;
  margin-bottom: 36px;
}
@media (max-width: 1024px) {
  .cta .ja {
    font-size: 18px;
  }
}
@media (max-width: 720px) {
  .cta .ja {
    font-size: 14px;
    margin-bottom: 22px;
  }
}
.cta-row {
  display: flex;
  gap: 14px;
  justify-content: center;
}
@media (max-width: 1024px) {
  .cta {
    padding: 100px 0;
  }
}
@media (max-width: 720px) {
  .cta {
    padding: 64px 0;
  }
}

/* ==========================================================================
   MOLY BRAND COMPANY MODULE STYLES (_company.scss)
   --------------------------------------------------------------------------
   会社情報（company.html / 企業情報固定ページ）に特化した個別固有スタイルモジュール。
   common/_variables.scss の定義変数を元に完全レスポンシブ・コンテナクエリ対応。
   ========================================================================== */
.art-moly {
  width: 100%;
  max-width: 480px;
  aspect-ratio: 1/1;
  background: linear-gradient(180deg, #fafcff, #eef4fb);
  border: 1px solid #dde4ee;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  margin-left: auto;
}
.art-moly::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(6, 47, 95, 0.07) 1px, transparent 1.4px);
  background-size: 12px 12px;
  opacity: 0.6;
}
.art-moly svg {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}
.art-moly-label {
  position: absolute;
  left: 50%;
  bottom: 26px;
  transform: translateX(-50%);
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.34em;
  color: #062F5F;
  padding-top: 6px;
  border-top: 1px solid #062F5F;
  white-space: nowrap;
}
@media (max-width: 1024px) {
  .art-moly {
    margin: 0 auto;
  }
}

.etym {
  background: #ffffff;
  container-type: inline-size;
}
.etym-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
}
@media (max-width: 1024px) {
  .etym-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}
@container (max-width: 1040px) {
  .etym-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}
.etym-illust {
  background: linear-gradient(180deg, #fafcff, #eef4fb);
  border: 1px solid #dde4ee;
  aspect-ratio: 5/4;
  position: relative;
  overflow: hidden;
}
.etym-illust svg {
  width: 100%;
  height: 100%;
  display: block;
}
.etym h3 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(36px, 7cqi, 56px);
  line-height: 0.95;
  color: #062F5F;
  margin: 0 0 4px;
}
.etym h3 .light {
  color: #97C0E0;
}
@media (max-width: 1024px) {
  .etym h3 {
    font-size: 44px;
  }
}
.etym .ja-heading {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  color: #0d1a30;
  margin: 12px 0 24px;
}
.etym p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15px;
  line-height: 2.1;
  color: #2d3a55;
  margin: 0 0 18px;
}
.etym p strong {
  font-weight: 700;
  color: #062F5F;
}
.etym p em {
  font-family: "Anton", system-ui, sans-serif;
  font-style: normal;
  color: #062F5F;
  letter-spacing: 0.04em;
  font-size: 20px;
}
.etym .pull {
  margin-top: 36px;
  padding: 22px 24px;
  border-left: 4px solid #97C0E0;
  background: #f4f6fa;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.9;
  color: #0d1a30;
}
.etym .pull em {
  color: #97C0E0;
  font-style: normal;
  font-weight: 700;
}

.mvv {
  background: #062F5F;
  color: #fff;
  container-type: inline-size;
}
.mvv .sec-title .en {
  color: #fff;
}
.mvv .sec-title .num {
  color: #97C0E0;
}
.mvv .sec-title .jp {
  color: rgba(255, 255, 255, 0.7);
  border-color: #97C0E0;
}
.mvv-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(151, 192, 224, 0.3);
  border: 1px solid rgba(151, 192, 224, 0.3);
}
@media (max-width: 1024px) {
  .mvv-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .mvv-grid {
    grid-template-columns: 1fr;
  }
}
.mvv-item {
  position: relative;
  background: #062F5F;
  padding: 44px 36px 40px;
  overflow: hidden;
}
.mvv-item .role {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  color: #97C0E0;
  margin-bottom: 14px;
}
.mvv-item h3 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(48px, 9cqi, 72px);
  line-height: 0.9;
  color: #fff;
  margin: 0 0 8px;
}
@media (max-width: 720px) {
  .mvv-item h3 {
    font-size: 56px;
  }
}
.mvv-item .h-ja {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #97C0E0;
  margin-bottom: 22px;
}
.mvv-item p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  line-height: 2.05;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
}
.mvv-item p strong {
  font-weight: 700;
}
.mvv-item .ico {
  position: absolute;
  right: 24px;
  top: 24px;
  width: 56px;
  height: 56px;
  opacity: 0.35;
}
.mvv-item .ico svg {
  width: 100%;
  height: 100%;
}
@media (max-width: 720px) {
  .mvv-item {
    padding: 36px 28px;
  }
}
@container (max-width: 1040px) {
  .mvv-item {
    display: grid;
    grid-template-columns: clamp(88px, 13cqi, 130px) 1fr;
    column-gap: 32px;
    row-gap: 4px;
    align-items: start;
    padding: 40px 36px;
  }
  .mvv-item .ico {
    position: static;
    grid-row: 1/-1;
    width: 100%;
    max-width: 120px;
    height: auto;
    aspect-ratio: 1/1;
    opacity: 0.85;
    align-self: center;
  }
  .mvv-item .ico svg {
    width: 100%;
    height: 100%;
  }
  .mvv-item p {
    max-width: 60ch;
  }
  .mvv-item .role, .mvv-item h3, .mvv-item .h-ja, .mvv-item p {
    grid-column: 2;
  }
}
@container (max-width: 680px) {
  .mvv-item {
    display: block;
    padding: 36px 28px;
  }
  .mvv-item .ico {
    position: absolute;
    right: 24px;
    top: 24px;
    width: 56px;
    height: 56px;
    max-width: none;
    opacity: 0.35;
  }
}

.info {
  background: #ffffff;
  container-type: inline-size;
}
.info-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: start;
}
@media (max-width: 1024px) {
  .info-wrap {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
@container (max-width: 1040px) {
  .info-wrap {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.info-stamp {
  position: relative;
  align-self: stretch;
  background: linear-gradient(135deg, #f4f6fa, #fff);
  border: 1px solid #dde4ee;
  padding: 48px 36px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  justify-content: center;
  align-items: flex-start;
}
.info-stamp::before {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px dashed #97C0E0;
  pointer-events: none;
}
.info-stamp .logo {
  width: 200px;
}
@media (max-width: 720px) {
  .info-stamp .logo {
    width: 140px;
  }
}
.info-stamp .est {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  color: #5b8fbf;
}
.info-stamp h3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 26px;
  margin: 0;
  color: #062F5F;
}
.info-stamp .stamp-pill {
  position: absolute;
  right: 20px;
  top: 20px;
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: #062F5F;
  color: #fff;
  display: grid;
  place-items: center;
  text-align: center;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 9px;
  letter-spacing: 0.22em;
  line-height: 1.5;
  transform: rotate(-10deg);
}
@media (max-width: 720px) {
  .info-stamp .stamp-pill {
    width: 68px;
    height: 68px;
    font-size: 7px;
  }
}
@media (max-width: 720px) {
  .info-stamp {
    padding: 40px 28px;
  }
}

table.info-table {
  width: 100%;
  border-collapse: collapse;
}
table.info-table tr {
  border-bottom: 1px solid #dde4ee;
}
table.info-table tr:first-child {
  border-top: 2px solid #062F5F;
}
table.info-table th, table.info-table td {
  text-align: left;
  padding: 16px 12px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  line-height: 1.7;
  vertical-align: top;
}
@media (max-width: 720px) {
  table.info-table th, table.info-table td {
    padding: 12px 8px;
    font-size: 13px;
  }
}
table.info-table th {
  width: 160px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.22em;
  color: #5b8fbf;
  font-weight: 400;
  white-space: nowrap;
}
@media (max-width: 720px) {
  table.info-table th {
    width: 100px;
    font-size: 10px;
  }
}
table.info-table td {
  color: #0d1a30;
}
table.info-table td strong {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}
table.info-table .ja-sub {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 12px;
  color: #6a7790;
  margin-top: 4px;
}

.cta-strip {
  background: #f4f6fa;
  padding: 100px 0;
  position: relative;
  overflow: hidden;
  container-type: inline-size;
}
.cta-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(6, 47, 95, 0.06) 1.2px, transparent 1.6px);
  background-size: 12px 12px;
  mask-image: radial-gradient(ellipse at 50% 50%, black, transparent 80%);
  pointer-events: none;
}
.cta-strip .inner {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 56px;
  text-align: center;
}
.cta-strip h2 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(54px, 16cqi, 120px);
  line-height: 0.9;
  color: #062F5F;
  margin: 0 0 8px;
}
.cta-strip h2 .light {
  color: #97C0E0;
}
@media (max-width: 1024px) {
  .cta-strip h2 {
    font-size: 80px;
  }
}
@media (max-width: 720px) {
  .cta-strip h2 {
    font-size: 54px;
  }
}
.cta-strip .script {
  font-family: "Italianno", cursive;
  font-size: clamp(36px, 7cqi, 60px);
  color: #97C0E0;
  line-height: 1;
  margin-bottom: 16px;
}
@media (max-width: 1024px) {
  .cta-strip .script {
    font-size: 48px;
  }
}
@media (max-width: 720px) {
  .cta-strip .script {
    font-size: 36px;
  }
}
.cta-strip .ja {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 30px;
  color: #0d1a30;
}
@media (max-width: 720px) {
  .cta-strip .ja {
    font-size: 14px;
  }
}

/* ==========================================================================
   MOLY BRAND - SERVICE MODULE STYLES (service.scss)
   --------------------------------------------------------------------------
   各種コンサルティング、ECサポート、およびWeb開発の下層サービス詳細ページ用装飾。
   レスポンシブ・コンテナクエリを各要素にネスト集約したDart Sass準拠設計。
   ========================================================================== */
/* --- HERO ART: Chess King & Mirror Motif --- */
.art-chess {
  width: 100%;
  max-width: 460px;
}
.art-chess svg {
  width: 100%;
  height: auto;
  display: block;
}

/* --- PILLARS SECTION (4つの柱) --- */
.pillars {
  background: #ffffff;
  container-type: inline-size;
}

.pl-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .pl-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .pl-grid {
    grid-template-columns: 1fr;
  }
}

.pl-card {
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 36px 32px;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
  position: relative;
}
.pl-card .num {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 22px;
  color: #5b8fbf;
  letter-spacing: 0.06em;
}
.pl-card .en {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(28px, 5cqi, 40px);
  color: #062F5F;
  letter-spacing: -0.005em;
  margin-bottom: 4px;
}
.pl-card h3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  margin: 0 0 16px;
  color: #0d1a30;
}
.pl-card p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  line-height: 2;
  color: #4a5670;
  margin: 0 0 18px;
}
.pl-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.pl-card li {
  padding: 6px 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  color: #2d3a55;
  display: flex;
  align-items: center;
  gap: 8px;
  border-top: 1px dashed #dde4ee;
}
.pl-card li:first-child {
  border-top: 1px solid #dde4ee;
  padding-top: 12px;
  margin-top: 6px;
}
.pl-card li::before {
  content: "▸";
  color: #5b8fbf;
}
.pl-card:hover {
  border-color: #062F5F;
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(6, 47, 95, 0.08);
}

/* --- PROCESS TIMELINE SECTION --- */
.timeline {
  background: #062F5F;
  color: #fff;
  container-type: inline-size;
}
.timeline .sec-title .en {
  color: #fff;
}
.timeline .sec-title .num {
  color: #97C0E0;
}
.timeline .sec-title .jp {
  color: rgba(255, 255, 255, 0.7);
  border-color: #97C0E0;
}

.tl-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(151, 192, 224, 0.3);
  border: 1px solid rgba(151, 192, 224, 0.3);
}
@media (max-width: 1024px) {
  .tl-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .tl-grid {
    grid-template-columns: 1fr;
  }
}

.tl-item {
  background: #062F5F;
  padding: 36px 32px 32px;
  position: relative;
}
.tl-item .step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #97C0E0;
  color: #062F5F;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 20px;
  margin-bottom: 16px;
}
.tl-item .en {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: #97C0E0;
  margin-bottom: 8px;
}
.tl-item h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 22px;
  margin: 0 0 10px;
  color: #fff;
}
.tl-item p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.95;
  color: rgba(255, 255, 255, 0.82);
  margin: 0;
}
@container (max-width: 1040px) {
  .tl-item {
    display: grid;
    grid-template-columns: clamp(56px, 8cqi, 80px) 1fr;
    column-gap: 28px;
    row-gap: 6px;
    align-items: start;
    padding: 32px 32px;
  }
  .tl-item .step {
    grid-row: 1/-1;
    margin-bottom: 0;
    align-self: start;
  }
  .tl-item p {
    max-width: 64ch;
  }
}
@container (max-width: 680px) {
  .tl-item {
    display: block;
    padding: 28px 24px;
  }
  .tl-item .step {
    margin-bottom: 16px;
  }
}

/* --- DELIVERABLES SECTION (成果物) --- */
.deliv {
  background: #f4f6fa;
  container-type: inline-size;
}

.dv-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
@media (max-width: 1024px) {
  .dv-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 720px) {
  .dv-list {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .dv-list {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.dv-item {
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 24px 24px 22px;
}
.dv-item .ic {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 16px;
  color: #5b8fbf;
  margin-bottom: 8px;
}
.dv-item h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 16px;
  margin: 0 0 6px;
  color: #062F5F;
}
.dv-item p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 12.5px;
  line-height: 1.85;
  color: #4a5670;
  margin: 0;
}
@container (max-width: 1040px) {
  .dv-item {
    display: grid;
    grid-template-columns: clamp(80px, 12cqi, 120px) 1fr;
    column-gap: 28px;
    align-items: center;
    padding: 22px 26px;
  }
  .dv-item .ic {
    grid-row: 1/-1;
    margin-bottom: 0;
    font-size: 14px;
    align-self: start;
    padding-top: 4px;
  }
  .dv-item p {
    max-width: 60ch;
  }
}
@container (max-width: 680px) {
  .dv-item {
    display: block;
    padding: 22px 22px;
  }
  .dv-item .ic {
    margin-bottom: 8px;
  }
}

/* --- HERO ART: Cart & ecforce Badge Motif --- */
.art-cart {
  position: relative;
  width: 86%;
  max-width: 440px;
}
.art-cart svg {
  width: 100%;
  height: auto;
  display: block;
}

.badge-pill {
  position: absolute;
  right: -20px;
  top: 24px;
  background: #062F5F;
  color: #fff;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.24em;
  padding: 10px 18px;
  box-shadow: 6px 6px 0 #97C0E0;
  transform: rotate(-3deg);
}
.badge-pill .small {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 10px;
  letter-spacing: 0.06em;
  color: #97C0E0;
  margin-top: 2px;
}
@media (max-width: 1024px) {
  .badge-pill {
    right: 0;
  }
}

/* --- COVERAGE SECTION (提供業務一覧) --- */
.coverage {
  background: #ffffff;
  container-type: inline-size;
}

.cov-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  border: 1px solid #dde4ee;
  background: #dde4ee;
}
@media (max-width: 1024px) {
  .cov-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .cov-grid {
    grid-template-columns: 1fr;
  }
}

.cov-item {
  background: #fff;
  padding: 32px 28px;
  display: flex;
  gap: 18px;
  align-items: flex-start;
}
.cov-item .ic {
  flex: 0 0 48px;
  height: 48px;
  background: #f4f6fa;
  border: 1px solid #dde4ee;
  display: grid;
  place-items: center;
  font-family: "Anton", system-ui, sans-serif;
  color: #062F5F;
}
.cov-item h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 18px;
  margin: 0 0 6px;
  color: #062F5F;
}
.cov-item .en {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.22em;
  color: #5b8fbf;
  margin-bottom: 8px;
}
.cov-item p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.9;
  color: #4a5670;
  margin: 0;
}

/* --- PLATFORMS SECTION (対応システムカート) --- */
.plat {
  background: #f4f6fa;
  container-type: inline-size;
}

.plat-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .plat-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .plat-grid {
    grid-template-columns: 1fr;
  }
}

.plat-card {
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 40px 36px 36px;
  position: relative;
  overflow: hidden;
}
.plat-card.primary {
  border: 2px solid #062F5F;
  background: linear-gradient(180deg, #fff 0%, #f4f6fa 100%);
}
.plat-card.primary .tag {
  background: #062F5F;
  color: #fff;
}
.plat-card .head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid #dde4ee;
  padding-bottom: 14px;
  margin-bottom: 18px;
}
.plat-card h3 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(28px, 5cqi, 40px);
  color: #062F5F;
  letter-spacing: -0.005em;
  margin: 0;
}
@media (max-width: 720px) {
  .plat-card h3 {
    font-size: 28px;
  }
}
.plat-card .tag {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.24em;
  background: #97C0E0;
  color: #062F5F;
  padding: 4px 10px;
}
.plat-card .sub {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #0d1a30;
  margin-bottom: 14px;
}
.plat-card p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  line-height: 1.95;
  color: #4a5670;
  margin: 0 0 18px;
}
.plat-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 14px;
}
@media (max-width: 720px) {
  .plat-card ul {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 560px) {
  .plat-card ul {
    grid-template-columns: 1fr;
  }
}
.plat-card li {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  color: #2d3a55;
  display: flex;
  align-items: center;
  gap: 8px;
}
.plat-card li::before {
  content: "✓";
  color: #5b8fbf;
  font-weight: 700;
}

/* --- NOTICE SECTION (注意事項・サポート範囲) --- */
.notice {
  background: #062F5F;
  color: #fff;
  container-type: inline-size;
}
.notice .sec-title .en {
  color: #fff;
}
.notice .sec-title .num {
  color: #97C0E0;
}
.notice .sec-title .jp {
  color: rgba(255, 255, 255, 0.7);
  border-color: #97C0E0;
}

.notice-card {
  border: 1px solid rgba(151, 192, 224, 0.3);
  background: rgba(255, 255, 255, 0.03);
  padding: 36px 36px 32px;
  position: relative;
}
.notice-card .label {
  position: absolute;
  left: 24px;
  top: -14px;
  background: #97C0E0;
  color: #062F5F;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: 0.28em;
  padding: 6px 14px;
}

.notice-row {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 18px;
  padding: 14px 0;
  align-items: baseline;
  border-top: 1px dashed rgba(151, 192, 224, 0.3);
}
.notice-row:first-of-type {
  border-top: none;
}
.notice-row .mark {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 20px;
  color: #97C0E0;
}
.notice-row h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 16px;
  margin: 0 0 6px;
}
.notice-row p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.85;
  color: rgba(255, 255, 255, 0.78);
  margin: 0;
}
.notice-row.no .mark {
  color: #ff8a99;
}

/* --- WHAT SECTION (対応業務領域) --- */
.what {
  background: #ffffff;
  container-type: inline-size;
}

.what-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .what-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .what-grid {
    grid-template-columns: 1fr;
  }
}

.what-card {
  position: relative;
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 36px 32px 32px;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.what-card .n {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 22px;
  color: #5b8fbf;
  margin-bottom: 8px;
}
.what-card h3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 24px;
  margin: 0 0 12px;
  color: #062F5F;
}
.what-card p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  line-height: 1.95;
  color: #4a5670;
  margin: 0 0 18px;
}
.what-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.what-card li {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.16em;
  background: #f0f4fa;
  color: #062F5F;
  padding: 4px 10px;
  border: 1px solid #dde4ee;
}
.what-card:hover {
  border-color: #062F5F;
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(6, 47, 95, 0.08);
}

/* --- PROCESS SECTION (開発フロー) --- */
.process {
  background: #f4f6fa;
  container-type: inline-size;
}

.pr-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
  position: relative;
}
@media (max-width: 1024px) {
  .pr-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 720px) {
  .pr-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .pr-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}

.pr-card {
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 24px 18px 20px;
  position: relative;
}
.pr-card .num {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 38px;
  color: #97C0E0;
  line-height: 1;
}
.pr-card h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #062F5F;
  margin: 6px 0 8px;
}
.pr-card .en {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.2em;
  color: #6a7790;
  margin-bottom: 10px;
}
.pr-card p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 12px;
  line-height: 1.8;
  color: #4a5670;
  margin: 0;
}
.pr-card::after {
  content: "→";
  position: absolute;
  right: -12px;
  top: 50%;
  transform: translateY(-50%);
  font-family: "Anton", system-ui, sans-serif;
  color: #5b8fbf;
  font-size: 18px;
  z-index: 2;
}
@media (max-width: 1024px) {
  .pr-card::after {
    display: none;
  }
}
.pr-card:last-child::after {
  display: none;
}
@container (max-width: 1040px) {
  .pr-card {
    display: grid;
    grid-template-columns: clamp(64px, 9cqi, 90px) 1fr;
    column-gap: 24px;
    row-gap: 4px;
    align-items: start;
    padding: 22px 28px;
  }
  .pr-card .num {
    grid-row: 1/-1;
    align-self: center;
    font-size: clamp(36px, 5.6cqi, 56px);
  }
  .pr-card p {
    max-width: 64ch;
  }
  .pr-card::after {
    display: none;
  }
}
@container (max-width: 680px) {
  .pr-card {
    display: block;
    padding: 22px 22px 20px;
  }
  .pr-card .num {
    font-size: 38px;
    margin-bottom: 4px;
  }
}

/* --- STACK SECTION (技術スタック) --- */
.stack {
  background: #062F5F;
  color: #fff;
  container-type: inline-size;
}
.stack .sec-title .en {
  color: #fff;
}
.stack .sec-title .num {
  color: #97C0E0;
}
.stack .sec-title .jp {
  color: rgba(255, 255, 255, 0.7);
  border-color: #97C0E0;
}

.stack-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
@media (max-width: 1024px) {
  .stack-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 720px) {
  .stack-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .stack-grid {
    grid-template-columns: 1fr;
  }
}

.stack-col {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(151, 192, 224, 0.18);
  padding: 24px 22px;
}
.stack-col h4 {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 13px;
  letter-spacing: 0.24em;
  color: #97C0E0;
  border-bottom: 1px solid rgba(151, 192, 224, 0.3);
  padding-bottom: 10px;
  margin: 0 0 14px;
}
.stack-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.stack-col li {
  padding: 6px 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.85);
  display: flex;
  align-items: center;
  gap: 8px;
}
.stack-col li::before {
  content: "▸";
  color: #97C0E0;
}

/* --- HERO ART for Web-dev: Stylized Browser Window --- */
.art-browser {
  width: 92%;
  max-width: 460px;
  border: 2px solid #062F5F;
  background: #fff;
  box-shadow: 14px 14px 0 #97C0E0;
  transform: rotate(-2deg);
}
.art-browser .bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 2px solid #062F5F;
  background: #f4f6fa;
}
.art-browser .bar i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #062F5F;
  display: inline-block;
  opacity: 0.4;
}
.art-browser .bar i:nth-child(2) {
  opacity: 0.25;
}
.art-browser .bar i:nth-child(3) {
  opacity: 0.15;
}
.art-browser .body {
  padding: 24px;
  min-height: 220px;
}
.art-browser .body .line {
  height: 10px;
  background: #f4f6fa;
  margin-bottom: 12px;
}
.art-browser .body .line.w1 {
  width: 64%;
  background: #062F5F;
  height: 14px;
}
.art-browser .body .line.w2 {
  width: 36%;
  background: #97C0E0;
}
.art-browser .body .line.w3 {
  width: 80%;
}
.art-browser .body .line.w4 {
  width: 50%;
}
.art-browser .body .block {
  margin-top: 24px;
  height: 80px;
  background: linear-gradient(135deg, #062F5F 0 50%, #97C0E0 50% 100%);
}
@media (max-width: 1024px) {
  .art-browser {
    transform: none;
    max-width: 100%;
  }
}

.art-stamp {
  position: absolute;
  right: 0;
  bottom: 24px;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  border: 1px solid #062F5F;
  background: rgba(255, 255, 255, 0.7);
  display: grid;
  place-items: center;
  text-align: center;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #062F5F;
  line-height: 1.5;
  transform: rotate(-10deg);
}
.art-stamp::before {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px dashed #97C0E0;
  border-radius: 50%;
}
@media (max-width: 1024px) {
  .art-stamp {
    display: none;
  }
}

/* --- CTA STRIP SECTION (下層個別ページ用帯状CTA) --- */
.cta-strip {
  background: #ffffff;
  padding: 100px 0;
  position: relative;
  overflow: hidden;
  container-type: inline-size;
}
.cta-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(6, 47, 95, 0.06) 1.2px, transparent 1.6px);
  background-size: 12px 12px;
  mask-image: radial-gradient(ellipse at 50% 50%, black, transparent 80%);
  pointer-events: none;
}
.cta-strip .inner {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 56px;
  text-align: center;
}
.cta-strip h2 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(54px, 16cqi, 120px);
  line-height: 0.9;
  color: #062F5F;
  margin: 0 0 8px;
}
.cta-strip h2 .light {
  color: #97C0E0;
}
@media (max-width: 1024px) {
  .cta-strip h2 {
    font-size: 80px;
  }
}
@media (max-width: 720px) {
  .cta-strip h2 {
    font-size: 54px;
  }
}
.cta-strip .script {
  font-family: "Italianno", cursive;
  font-size: clamp(36px, 7cqi, 60px);
  color: #97C0E0;
  line-height: 1;
  margin-bottom: 16px;
}
@media (max-width: 1024px) {
  .cta-strip .script {
    font-size: 48px;
  }
}
@media (max-width: 720px) {
  .cta-strip .script {
    font-size: 36px;
  }
}
.cta-strip .ja {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 30px;
  color: #0d1a30;
}
@media (max-width: 720px) {
  .cta-strip .ja {
    font-size: 14px;
  }
}

/* ==========================================================================
   MOLY BRAND CONTACT MODULE STYLES (_contact.scss)
   --------------------------------------------------------------------------
   お問い合わせ（contact.html / お問い合わせ固定ページ）に特化した個別スタイルモジュール。
   common/_variables.scss の定義変数を元に完全レスポンシブ・コンテナクエリ対応。
   ========================================================================== */
body {
  background: #ffffff;
}

.contact-hero {
  position: relative;
  overflow: hidden;
  padding: 100px 0 80px;
  background: #ffffff;
  container-type: inline-size;
}
.contact-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(900px 600px at 95% 30%, rgba(151, 192, 224, 0.18), transparent 65%), radial-gradient(700px 500px at 0% 110%, rgba(6, 47, 95, 0.05), transparent 70%);
  pointer-events: none;
}
.contact-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 56px;
  text-align: left;
}
@media (max-width: 1024px) {
  .contact-hero-inner {
    padding: 0 24px;
  }
}
@media (max-width: 720px) {
  .contact-hero-inner {
    padding: 0 18px;
  }
}
.contact-hero .crumbs {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  color: #062F5F;
  margin-bottom: 28px;
}
.contact-hero .crumbs::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 1px;
  background: #062F5F;
  margin-right: 6px;
}
.contact-hero h1 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: clamp(54px, 14cqi, 180px);
  line-height: 0.9;
  color: #062F5F;
  letter-spacing: -0.01em;
  margin: 0 0 4px;
}
.contact-hero h1 .light {
  color: #97C0E0;
}
@media (max-width: 1024px) {
  .contact-hero h1 {
    font-size: 110px;
  }
}
@media (max-width: 720px) {
  .contact-hero h1 {
    font-size: 64px;
  }
}
.contact-hero .script {
  font-family: "Italianno", cursive;
  font-size: clamp(36px, 7cqi, 84px);
  line-height: 1;
  color: #97C0E0;
  margin: 0 0 24px;
}
@media (max-width: 1024px) {
  .contact-hero .script {
    font-size: 60px;
  }
}
@media (max-width: 720px) {
  .contact-hero .script {
    font-size: 40px;
  }
}
.contact-hero p.lede {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 17px;
  line-height: 2.1;
  color: #2d3a55;
  max-width: 640px;
  padding-left: 18px;
  border-left: 3px solid #97C0E0;
}
@media (max-width: 1024px) {
  .contact-hero p.lede {
    font-size: 15px;
  }
}
@media (max-width: 720px) {
  .contact-hero p.lede {
    font-size: 13px;
    line-height: 1.9;
    padding-left: 14px;
  }
}
@media (max-width: 1024px) {
  .contact-hero {
    padding: 60px 0 50px;
  }
}
@media (max-width: 720px) {
  .contact-hero {
    padding: 40px 0 36px;
  }
}

.form-sec {
  background: #ffffff;
  padding: 30px 0 140px;
  container-type: inline-size;
}
@media (max-width: 1024px) {
  .form-sec {
    padding: 30px 0 90px;
  }
}
@media (max-width: 720px) {
  .form-sec {
    padding: 24px 0 64px;
  }
}

.form-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 56px;
  display: grid;
  grid-template-columns: 0.6fr 1fr;
  gap: 56px;
  align-items: start;
}
.form-wrap > div {
  grid-column: 2;
}
@media (max-width: 1024px) {
  .form-wrap > div {
    grid-column: auto;
  }
}
.form-wrap .aside-info {
  grid-column: 1;
  grid-row: 1;
}
@media (max-width: 1024px) {
  .form-wrap .aside-info {
    grid-column: auto;
    grid-row: auto;
  }
}
@media (max-width: 1024px) {
  .form-wrap {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 0 24px;
  }
}
@media (max-width: 720px) {
  .form-wrap {
    padding: 0 18px;
  }
}
@container (max-width: 1040px) {
  .form-wrap {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .form-wrap > div {
    grid-column: auto;
  }
  .form-wrap .aside-info {
    grid-column: auto;
    grid-row: auto;
  }
}

form.contact-form {
  background: #fff;
  border: 1px solid #dde4ee;
  padding: 48px 48px 40px;
  position: relative;
}
form.contact-form::before {
  content: "— INQUIRY FORM";
  position: absolute;
  top: -14px;
  left: 24px;
  background: #062F5F;
  color: #fff;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.32em;
  padding: 6px 14px;
}
@media (max-width: 1024px) {
  form.contact-form {
    padding: 36px 28px 32px;
  }
}
@media (max-width: 720px) {
  form.contact-form {
    padding: 28px 22px;
  }
}

.form-row {
  margin-bottom: 22px;
}
.form-row.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 22px;
}
.form-row.split > div {
  margin-bottom: 0;
}
@media (max-width: 1024px) {
  .form-row.split {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .form-row.split {
    grid-template-columns: 1fr;
  }
}
.form-row input[type=text],
.form-row input[type=email],
.form-row input[type=tel],
.form-row textarea,
.form-row select {
  width: 100%;
  padding: 14px 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #0d1a30;
  background: #fff;
  border: 1px solid #dde4ee;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.form-row input[type=text]:focus,
.form-row input[type=email]:focus,
.form-row input[type=tel]:focus,
.form-row textarea:focus,
.form-row select:focus {
  outline: none;
  border-color: #062F5F;
  box-shadow: 0 0 0 3px rgba(151, 192, 224, 0.35);
}
.form-row textarea {
  min-height: 180px;
  resize: vertical;
}

.form-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 13px;
  color: #062F5F;
  margin-bottom: 8px;
}
.form-label small {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.2em;
  color: #6a7790;
  font-weight: 400;
}
.form-label .req {
  background: #d31a3a;
  color: #fff;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.16em;
  padding: 2px 7px;
}
.form-label .opt {
  background: #f4f6fa;
  color: #6a7790;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.16em;
  padding: 2px 7px;
  border: 1px solid #dde4ee;
}

.topic-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media (max-width: 1024px) {
  .topic-grid {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 1040px) {
  .topic-grid {
    grid-template-columns: 1fr;
  }
}
.topic-grid label {
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid #dde4ee;
  background: #fff;
  transition: 0.15s;
}
.topic-grid label:hover {
  border-color: #97C0E0;
}
.topic-grid label:has(input:checked) {
  border-color: #062F5F;
  background: linear-gradient(180deg, #fff, #f4f6fa);
  box-shadow: 4px 4px 0 #97C0E0;
}
.topic-grid input[type=checkbox] {
  appearance: none;
  width: 18px;
  height: 18px;
  border: 1px solid #dde4ee;
  background: #fff;
  display: grid;
  place-items: center;
  position: relative;
  flex-shrink: 0;
}
.topic-grid input[type=checkbox]:checked {
  background: #062F5F;
  border-color: #062F5F;
}
.topic-grid input[type=checkbox]:checked::after {
  content: "✓";
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.topic-grid .t-name {
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #0d1a30;
}
.topic-grid .t-en {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: #5b8fbf;
  font-weight: 400;
}

.privacy {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 0 8px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.7;
  color: #4a5670;
  border-top: 1px solid #dde4ee;
  margin-top: 8px;
}
.privacy input {
  appearance: none;
  width: 18px;
  height: 18px;
  border: 1px solid #dde4ee;
  background: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
  flex-shrink: 0;
  margin-top: 1px;
}
.privacy input:checked {
  background: #062F5F;
  border-color: #062F5F;
}
.privacy input:checked::after {
  content: "✓";
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.privacy a {
  color: #062F5F;
  text-decoration: underline;
}

.submit-row {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: flex-end;
  margin-top: 18px;
}
.submit-row .form-status {
  flex: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  color: #5b8fbf;
}
@media (max-width: 1024px) {
  .submit-row {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .submit-row .form-status {
    text-align: center;
  }
}
@media (max-width: 720px) {
  .submit-row {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .submit-row .form-status {
    text-align: center;
  }
}
@container (max-width: 560px) {
  .submit-row {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .submit-row .form-status {
    text-align: center;
  }
}

.btn-submit {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 14px;
  letter-spacing: 0.26em;
  background: #062F5F;
  color: #fff;
  padding: 18px 32px;
  cursor: pointer;
  border: none;
  box-shadow: 6px 6px 0 #97C0E0;
  transition: 0.2s;
}
.btn-submit::after {
  content: "→";
}
.btn-submit:hover {
  transform: translate(-2px, -2px);
  box-shadow: 8px 8px 0 #97C0E0;
}
.btn-submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: 4px 4px 0 #dde4ee;
}
@media (max-width: 1024px) {
  .btn-submit {
    width: 100%;
    justify-content: center;
  }
}
@media (max-width: 720px) {
  .btn-submit {
    width: 100%;
    justify-content: center;
  }
}
@container (max-width: 560px) {
  .btn-submit {
    width: 100%;
    justify-content: center;
  }
}

.aside-info {
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
@media (max-width: 1024px) {
  .aside-info {
    position: static;
  }
}

.info-card {
  border: 1px solid #dde4ee;
  background: #fff;
  padding: 28px 28px 24px;
  position: relative;
}
.info-card h3 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 28px;
  letter-spacing: 0.02em;
  color: #062F5F;
  margin: 0 0 4px;
}
.info-card .sub {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 11px;
  letter-spacing: 0.24em;
  color: #5b8fbf;
  margin-bottom: 16px;
}
.info-card .info-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  border-top: 1px solid #dde4ee;
}
.info-card .info-row .k {
  font-family: "Bebas Neue", system-ui, sans-serif;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: #5b8fbf;
}
.info-card .info-row .v {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}
.info-card.dark {
  background: #062F5F;
  color: #fff;
  border-color: #062F5F;
}
.info-card.dark h3 {
  color: #fff;
}
.info-card.dark .sub {
  color: #97C0E0;
}
.info-card.dark .info-row {
  border-color: rgba(255, 255, 255, 0.15);
}
.info-card.dark .info-row .k {
  color: #97C0E0;
}
.info-card .flow {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  counter-reset: step;
}
.info-card .flow li {
  counter-increment: step;
  padding: 12px 0 12px 36px;
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 13px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.85);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.info-card .flow li:first-child {
  border-top: none;
  padding-top: 4px;
}
.info-card .flow li:first-child::before {
  top: 4px;
}
.info-card .flow li::before {
  content: counter(step, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 12px;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 16px;
  color: #97C0E0;
  width: 26px;
}

.form-success {
  display: none;
  padding: 64px 48px;
  text-align: center;
  border: 1px solid #dde4ee;
  background: linear-gradient(180deg, #fff 0%, #f4f6fa 100%);
  max-width: 800px;
  margin-inline: auto;
}
.form-success.show {
  display: block;
}
.form-success .check {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #97C0E0;
  color: #062F5F;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  font-family: "Anton", system-ui, sans-serif;
  font-size: 40px;
  line-height: 1;
  animation: pop 0.6s cubic-bezier(0.2, 0.7, 0.2, 1) backwards;
}
.form-success h3 {
  font-family: "Anton", system-ui, sans-serif;
  font-size: 56px;
  color: #062F5F;
  margin: 0 0 4px;
}
@media (max-width: 720px) {
  .form-success h3 {
    font-size: 36px;
  }
}
.form-success .script {
  font-family: "Italianno", cursive;
  font-size: 40px;
  color: #97C0E0;
  margin-bottom: 16px;
}
@media (max-width: 720px) {
  .form-success .script {
    font-size: 28px;
  }
}
.form-success p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15px;
  line-height: 2;
  color: #2d3a55;
  margin: 0;
}

@keyframes pop {
  from {
    transform: scale(0.2);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}/*# sourceMappingURL=style.css.map */