@charset "UTF-8";
@font-face {
  font-family: "icomoon";
  src: url("/assets/fonts/icomoon.eot?92qpvy");
  src: url("/assets/fonts/icomoon.eot?92qpvy#iefix") format("embedded-opentype"), url("/assets/fonts/icomoon.ttf?92qpvy") format("truetype"), url("/assets/fonts/icomoon.woff?92qpvy") format("woff"), url("/assets/fonts/icomoon.svg?92qpvy#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
/* ===========================================
    Common Layout
=========================================== */
/* Column
------------------------------------------- */
.col--single {
  margin-right: auto;
  margin-left: auto;
}
.col--w1920 {
  width: min(100%, 1920px);
}
.col--w1720 {
  width: min(90%, 1720px);
}
.col--w1500 {
  width: min(90%, 1500px);
}
.col--w1200 {
  width: min(90%, 1200px);
}
.col--w1000 {
  width: min(90%, 1000px);
}
.col--w900 {
  width: min(90%, 900px);
}

/* Flex
------------------------------------------- */
.col--flex {
  display: flex;
  flex-wrap: wrap;
}
.col--center {
  justify-content: center;
}
.col--x2 > * {
  width: 50%;
}
.col--x3 > * {
  width: 33.3333333333%;
}
.col--x4 > * {
  width: 25%;
}
.col--gap_s {
  gap: 4px;
}
.col--gap_s.col--x2 > * {
  width: calc((100% - 4px) / 2);
}
.col--gap_s.col--x3 > * {
  width: calc((100% - 8px) / 3);
}
.col--gap_s.col--x4 > * {
  width: calc((100% - 12px) / 4);
}
.col--gap_m {
  gap: 3rem;
}
.col--gap_m.col--x2 > * {
  width: calc((100% - 3rem) / 2);
}
.col--gap_m.col--x3 > * {
  width: calc((100% - 6rem) / 3);
}
.col--gap_m.col--x4 > * {
  width: calc((100% - 9rem) / 4);
}
.col--gap_l {
  gap: 5rem;
}
.col--gap_l.col--x2 > * {
  width: calc((100% - 5rem) / 2);
}
.col--gap_l.col--x3 > * {
  width: calc((100% - 10rem) / 3);
}
.col--gap_l.col--x4 > * {
  width: calc((100% - 15rem) / 4);
}
.col--2-3 > *:first-child {
  width: 35%;
}
.col--2-3 > *:last-child {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .col--x2 > * {
    width: 100%;
  }
  .col--x3 > * {
    width: 100%;
  }
  .col--x4 > * {
    width: 50%;
  }
  .col--gap_s.col--x2 > * {
    width: 100%;
  }
  .col--gap_s.col--x3 > * {
    width: 100%;
  }
  .col--gap_s.col--x4 > * {
    width: calc((100% - 4px) / 2);
  }
  .col--gap_m.col--x2 > * {
    width: 100%;
  }
  .col--gap_m.col--x3 > * {
    width: 100%;
  }
  .col--gap_m.col--x4 > * {
    width: calc((100% - 3rem) / 2);
  }
  .col--gap_l.col--x2 > * {
    width: 100%;
  }
  .col--gap_l.col--x3 > * {
    width: 100%;
  }
  .col--gap_l.col--x4 > * {
    width: calc((100% - 5rem) / 2);
  }
  .col--2-3 {
    gap: 2rem;
  }
  .col--2-3 > *:first-child {
    width: 100%;
  }
}

/* ===========================================
    Common Parts
=========================================== */
/* Banner
------------------------------------------- */
.banner {
  position: relative;
  display: block;
  overflow: hidden;
}
.banner::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #004385;
  mix-blend-mode: multiply;
  opacity: 0.3;
  transition: opacity 0.3s ease;
}
.banner figure {
  position: relative;
}
.banner figure img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}
.banner figure figcaption {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-left: 0.2em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 2.2rem;
  letter-spacing: 0.2em;
  color: #ffffff;
}
body.en .banner figure figcaption {
  font-family: "Play", sans-serif;
  letter-spacing: 0.05em;
}
.banner figure figcaption > * {
  width: 100%;
  text-align: center;
}
.banner.has-more::after {
  content: "VIEW MORE";
  position: absolute;
  z-index: 2;
  top: calc(50% + 4rem);
  left: 50%;
  transform: translateX(-50%);
  font-family: "Play", sans-serif;
  font-weight: 400;
  color: #ffffff;
  opacity: 0;
  transition: opacity 0.5s ease;
}
body.en .banner.has-more::after {
  content: "View more";
}
@media screen and (max-width: 767px) {
  .banner figure figcaption {
    padding-left: 0.1em;
    letter-spacing: 0.1em;
  }
}

@media screen and (min-width: 768px) {
  .banner:hover::before {
    opacity: 0.9;
  }
  .machinery-top .banner:hover::before {
    opacity: 0.7;
  }
  .banner:hover figure img {
    transform: scale(1.1);
  }
}
@media screen and (min-width: 768px) {
  .banner.has-more:hover::after {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .banner.has-more::after {
    opacity: 1;
    font-size: 0.8em;
  }
}
.banner.hover--slidein figure {
  position: relative;
  overflow: hidden;
}
.banner.hover--slidein figure::after {
  content: "";
  position: absolute;
  background-color: #004385;
  mix-blend-mode: multiply;
  opacity: 0.3;
  transition: 0.2s ease-out;
}
.banner.hover--slidein figure figcaption {
  z-index: 2;
}
.banner.hover--slidein figure img {
  transition: 0.2s;
}
@media screen and (min-width: 768px) {
  .banner.hover--slidein:hover figure::before {
    opacity: 0.3;
  }
  .banner.hover--slidein:hover figure::after {
    opacity: 0.6;
  }
  .banner.hover--slidein:hover figure img {
    filter: blur(5px);
    transform: scale(5px);
  }
}
.banner.hover--slidein.center figure::after {
  top: 50%;
  left: 0;
  width: 100%;
  height: 0;
}
@media screen and (min-width: 768px) {
  .banner.hover--slidein.center:hover figure::after {
    top: 0;
    height: 100%;
  }
}
.banner.hover--slidein.left figure::after {
  top: 0;
  left: -50%;
  width: 0;
  height: 100%;
  transform: skewX(45deg);
}
@media screen and (min-width: 768px) {
  .banner.hover--slidein.left:hover figure::after {
    left: 0;
    width: 100%;
  }
}
.banner.hover--slidein.grad figure::after {
  content: "";
  bottom: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgb(0, 67, 133) 0%, rgb(255, 255, 255) 100%);
  mix-blend-mode: multiply;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .banner.hover--slidein.grad:hover figure::after {
    bottom: 0;
  }
}

.banner-about {
  position: relative;
  height: clamp(44rem, 22.9166666667vw, 50rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-position: center center;
  background-attachment: fixed;
  background-size: cover;
}
.banner-about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #004385;
  opacity: 0.3;
  mix-blend-mode: multiply;
  transition: opacity 0.3s ease;
}
.banner-about .view-more {
  margin-top: 3rem;
  display: flex;
  align-items: center;
  font-family: "Play", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #ffffff;
  transition: 0.3s ease;
}
.banner-about .view-more::before {
  content: "";
  width: 5.2em;
  height: 1em;
  margin-right: 1em;
  background-image: url(/assets/images/common/icon__view_white.svg);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .banner-about:hover::before {
    opacity: 0.8;
  }
  .banner-about:hover .view-more {
    transform: translateX(1em);
  }
}
@media screen and (max-width: 767px) {
  .banner-about {
    height: 70vw;
    background-attachment: scroll;
  }
}

/* Link Image
------------------------------------------- */
.hvr-img {
  overflow: hidden;
  position: relative;
}
.hvr-img img {
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  a:hover .hvr-img img {
    transform: scale(1.1);
  }
}

/* Button
------------------------------------------- */
.button {
  width: min(70%, 24em);
  margin: 0 auto;
  padding: 1.4rem;
  border: solid 0.2rem;
  display: flex;
  align-items: center;
  line-height: 1.4;
  transition: 0.3s;
}
.button::after {
  content: "\e901";
  font-family: "icomoon" !important;
  font-size: 0.8em;
  color: currentColor;
}
.button > * {
  flex: 1;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.2em;
}
.button.right {
  margin-right: 0;
}
.button.left {
  margin-left: 0;
}
.button.blue {
  border-color: #ffffff;
  background-color: #004385;
  color: #ffffff;
}
.button.blue:hover {
  border-color: #004385;
  background-color: #ffffff;
  color: #004385;
}
.button.white {
  border-color: #CCCCCC;
  background-color: #ffffff;
  color: #004385;
}
.button.white:hover {
  background-color: #004385;
  color: #ffffff;
}
.button.gray {
  border-color: #CCCCCC;
  background-color: #CCCCCC;
  color: #000000;
}
.button.gray:hover {
  background-color: #ffffff;
}

.button--view-more {
  margin-top: 3rem;
  display: flex;
}
.button--view-more.right {
  justify-content: flex-end;
}
.button--view-more.left {
  justify-content: flex-start;
}
.button--view-more.center {
  justify-content: center;
}
.button--view-more > a,
.button--view-more > span {
  position: relative;
  width: 20rem;
  padding: 0.5em 1em;
  border: solid 1px #004385;
  border-radius: 0.4em;
  background-color: #ffffff;
  text-align: center;
  font-family: "Play", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #004385;
  transition: 0.3s;
}
.button--view-more > a > span,
.button--view-more > span > span {
  flex: 1;
  text-align: center;
}
.button--view-more > a::after,
.button--view-more > span::after {
  content: "\e901";
  position: absolute;
  top: 0;
  right: 1.5em;
  height: 100%;
  display: flex;
  align-items: center;
  font-family: "icomoon" !important;
  font-size: 0.6em;
  color: currentColor;
}
.button--view-more > a:hover,
.button--view-more > span:hover {
  background-color: #004385;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .button--view-more.right {
    justify-content: center;
  }
  .button--view-more.left {
    justify-content: center;
  }
  .button--view-more.center {
    justify-content: center;
  }
}

@media screen and (min-width: 768px) {
  a:hover .button--view-more > span {
    background-color: #004385;
    color: #ffffff;
  }
}
/* Link
------------------------------------------- */
.link--view {
  margin-top: 3rem;
  display: flex;
}
.link--view a {
  display: flex;
  align-items: center;
  font-family: "Play", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  transition: transform 0.3s;
}
.link--view a::before {
  content: "";
  width: 5.2em;
  height: 1em;
  margin-right: 1em;
  background-image: url(/assets/images/common/icon__view_black.svg);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: margin-right 0.3s;
}
.link--view a:hover {
  transform: translateX(1rem);
}
.link--view a:hover::before {
  margin-right: 1rem;
}
.link--view.right a {
  margin-left: auto;
}
.link--view.left a {
  margin-right: auto;
}
.link--view.center a {
  margin-right: auto;
  margin-left: auto;
}
.link--view.blue a {
  color: #004385;
}
.link--view.blue a::before {
  background-image: url(/assets/images/common/icon__view_blue.svg);
}
.link--view.white a {
  color: #ffffff;
}
.link--view.white a::before {
  background-image: url(/assets/images/common/icon__view_white.svg);
}

.link--square {
  display: inline-block;
  padding: 0 2em 0 1em;
  border: solid 1px #004385;
  font-family: "Play", sans-serif;
  letter-spacing: 0.05em;
  color: #004385;
  transition: color 0.3s;
}
.link--square span {
  display: flex;
  align-items: center;
}
.link--square span::before {
  content: "→";
  margin-right: 1rem;
  font-size: 1.4em;
}
.link--square:hover {
  background-color: #004385;
  color: #ffffff;
}

.link--ribbon {
  position: relative;
  display: inline-block;
  min-width: 65%;
  padding: 0.2em 2em 0.2em 1em;
  -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 1em) 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, calc(100% - 1em) 100%, 0 100%);
  background-color: #004385;
  font-family: "Play", sans-serif;
  letter-spacing: 0.05em;
  color: #004385;
}
.link--ribbon::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(1px 1px, calc(100% - 2px) 1px, calc(100% - 1em - 1px) calc(100% - 1px), 1px calc(100% - 1px));
          clip-path: polygon(1px 1px, calc(100% - 2px) 1px, calc(100% - 1em - 1px) calc(100% - 1px), 1px calc(100% - 1px));
  background-color: #ffffff;
  transition: background-color 0.3s;
}
.bg--blue_p10 .link--ribbon::before {
  background-color: #E5ECF3;
}
.link--ribbon span {
  position: relative;
  display: flex;
  align-items: center;
  line-height: 1.4;
  transition: color 0.3s;
}
.link--ribbon span::before {
  content: "→";
  margin-right: 1rem;
  font-size: 1.4em;
}
.link--ribbon:hover::before {
  background-color: #004385;
}
.link--ribbon:hover span {
  color: #ffffff;
}

/* Movie Thumbnail
------------------------------------------- */
.mov-thumb {
  position: relative;
  display: block;
  border-radius: 0.6em;
  overflow: hidden;
}
.mov-thumb::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 67, 133, 0.1);
  mix-blend-mode: multiply;
  transition: 0.3s;
}
.mov-thumb::after {
  content: "\e902";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  line-height: 1;
  font-family: "icomoon" !important;
  font-size: 2em;
  color: #ffffff;
  transition: 0.3s;
}
.mov-thumb figure figcaption {
  position: absolute;
  bottom: 1em;
  right: 1em;
  padding: 0.25em 1.5em;
  border-radius: 3em;
  background-color: #ffffff;
  font-size: 1.2em;
  font-weight: 700;
  color: #004385;
}
.mov-thumb figure figcaption span:first-child {
  margin-right: 0.75em;
  padding-right: 0.5em;
  border-right: solid 1px currentColor;
}
.mov-thumb:hover::before {
  opacity: 0;
}
.mov-thumb:hover::after {
  font-size: 2.4em;
}

/* Youtube
------------------------------------------- */
.youtube {
  width: 100%;
  aspect-ratio: 16/9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

/* Anchor
------------------------------------------- */
/* ===========================================
    Common Style
=========================================== */
/* Display
------------------------------------------- */
.dsp--block {
  display: block;
}
.dsp--inline-block {
  display: inline-block;
}
.dsp--none {
  display: none;
}

.tgl--body {
  display: none;
}

@media screen and (max-width: 767px) {
  .only--pc {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .only--sp {
    display: none !important;
  }
}

br.under--tb {
  display: none;
}
@media screen and (max-width: 1280px) {
  br.under--tb {
    display: inline !important;
  }
}

/* SP-Scroll
------------------------------------------- */
@media screen and (min-width: 768px) {
  .sp-scroll__notes {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .sp-scroll {
    position: relative;
    width: 100%;
    overflow-x: auto;
  }
  .sp-scroll__notes {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0.5em;
    text-align: center;
    font-size: 0.8em;
  }
  .sp-scroll__body {
    width: 230%;
  }
}

/* Background
------------------------------------------- */
.bg--blue {
  background-color: #004385;
}
.bg--blue_p10 {
  background-color: #E5ECF3;
}
.bg--blue_p05 {
  background-color: #F2F6F9;
}
.bg--black {
  background-color: #000000;
}
.bg--black_p70 {
  background-color: #4c4c4c;
}
.bg--black_p10 {
  background-color: #E5E5E5;
}
.bg--white {
  background-color: #ffffff;
}

/* Box
------------------------------------------- */
.box--ty01 {
  padding: 2em 3em;
}
@media screen and (max-width: 767px) {
  .box--ty01 {
    padding: 1em 2em;
  }
}

/* Heading
------------------------------------------- */
.heading--lv01 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 5rem;
  text-align: center;
  letter-spacing: 0.1em;
  color: #004385;
}
.heading--lv01 em {
  line-height: 1.2;
  font-family: "Play", sans-serif;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
body.en .heading--lv01 em {
  letter-spacing: 0.05em;
}
.heading--lv01 span {
  font-size: 1.3rem;
}
@media screen and (max-width: 767px) {
  .heading--lv01 em {
    font-size: 2.6rem;
    letter-spacing: 0.05em;
  }
  .heading--lv01 span {
    font-size: 1.3rem;
  }
}
.heading--lv02 {
  margin-bottom: 1em;
  padding-left: 0.1em;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #004385;
}
body.en .heading--lv02 {
  font-family: "Play", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .heading--lv02 {
    font-size: 2rem;
  }
}
.heading--lv03 {
  margin-bottom: 1.5em;
  padding-bottom: 0.5em;
  border-bottom: solid 1px currentColor;
  font-size: 2rem;
  font-weight: 500;
  color: #004385;
}
@media screen and (max-width: 767px) {
  .heading--lv03 {
    line-height: 1.6;
    font-size: 1.8rem;
  }
}
.heading--lv04 {
  margin-bottom: 2.5em;
  display: flex;
  align-items: center;
  letter-spacing: 0.1em;
  color: #004385;
}
.heading--lv04::before {
  content: "";
  width: 3.6em;
  height: 0;
  border-top: solid 1px currentColor;
}
.heading--lv04 em {
  margin: 0 2em;
  font-family: "Play", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
}
.heading--lv04 span {
  font-size: 0.875em;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .heading--lv04 {
    margin-bottom: 2em;
    letter-spacing: 0.05em;
  }
  .heading--lv04::before {
    width: 2em;
  }
  .heading--lv04 em {
    margin: 0 1em 0 0.5em;
  }
}
.heading--lv05 {
  margin-bottom: 0.8em;
  border-left: solid 0.4rem currentColor;
  padding-left: 0.75em;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #004385;
}
body.en .heading--lv05 {
  font-family: "Play", sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .heading--lv05 {
    letter-spacing: 0.05em;
  }
}
.heading--lv06 {
  margin-bottom: 2em;
}
.heading--lv06::after {
  content: "";
  display: block;
  width: 3.5em;
  height: 0;
  margin-top: 1.5em;
  border-bottom: solid 0.2em currentColor;
}

/* Paragraph
------------------------------------------- */
.catch-copy {
  line-height: 1.7;
  font-size: 2.2rem;
  font-weight: 500;
  color: #004385;
}
.catch-copy:not(:last-child) {
  margin-bottom: 1.5em;
}
.catch-copy > span {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .catch-copy {
    font-size: 1.8rem;
  }
}

.point-copy {
  display: flex;
  align-items: center;
  background-color: #004385;
}
.point-copy::before, .point-copy::after {
  content: "";
  width: 1em;
  height: 0.3em;
  background-color: #ffffff;
}
.point-copy > p {
  flex: 1;
  padding: 0.5em 1em;
  text-align: center;
  font-size: 1.2em;
  font-weight: 700;
  color: #ffffff;
}

.text-box > *,
.body-copy {
  line-height: 2;
}
.text-box > *:not(:first-child),
.body-copy:not(:first-child) {
  margin-top: 1.5em;
}
.text-box > * > span,
.body-copy > span {
  display: inline-block;
}

.ta--center {
  text-align: center;
}
.ta--left {
  text-align: left;
}
.ta--right {
  text-align: right;
}
.ta--justify {
  text-align: justify;
}

body.en .en-ta--left {
  text-align: left;
}

/* List
------------------------------------------- */
.ul--ty01 li {
  padding-left: 1em;
  text-indent: -1em;
}
.ul--ty01 li::before {
  content: "・";
}

/* Font, Text
------------------------------------------- */
.fnt--sans {
  font-family: "Noto Sans JP", sans-serif;
}
.fnt--en {
  font-family: "Play", sans-serif;
}

.fsz--xs {
  font-size: 70%;
}
.fsz--s {
  font-size: 80%;
}
.fsz--l {
  font-size: 116%;
}
.fsz--xl {
  font-size: 120%;
}
.fsz--xxl {
  font-size: 150%;
}
.fsz--xxxl {
  font-size: 180%;
}

.fw--light {
  font-weight: 300;
}
.fw--normal {
  font-weight: 400;
}
.fw--bold {
  font-weight: 700;
}

.fc--blue {
  color: #004385;
}
.fc--black {
  color: #000000;
}
.fc--white {
  color: #ffffff;
}
.fc--red {
  color: #cc0000;
}

.ltr_sp00 {
  letter-spacing: 0;
}
.ltr_sp--01 {
  letter-spacing: 0.1em;
}
.ltr_sp--02 {
  letter-spacing: 0.2em;
}

.txt-shdw--black {
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.8);
}

/* Modal (fancybox)
------------------------------------------- */
body[class*=technical] .fancybox__backdrop {
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
body[class*=technical] .fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn {
  padding-bottom: 40px;
}
body[class*=technical] .fancybox__content {
  width: min(90%, 1200px) !important;
  padding: 0;
}
body[class*=technical] .fancybox__content > .f-button.is-close-btn {
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  border-radius: 0;
  background-color: #595857;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  body[class*=technical] .fancybox__content > .f-button.is-close-btn {
    position: fixed;
    width: 40px;
    height: 40px;
  }
  body[class*=technical] .fancybox__slide {
    padding: 5vw 0;
  }
}

/* Space
------------------------------------------- */
.sp--mt10 {
  margin-top: 1rem;
}
.sp--mt20 {
  margin-top: 2rem;
}
.sp--mt30 {
  margin-top: 3rem;
}
.sp--mt40 {
  margin-top: 4rem;
}
.sp--mt50 {
  margin-top: 5rem;
}
.sp--mt100 {
  margin-top: min(10rem, 15vw);
}
.sp--mt150 {
  margin-top: 15rem;
}
.sp--mt200 {
  margin-top: 20rem;
}
.sp--mb00 {
  margin-bottom: 0;
}
.sp--mb10 {
  margin-bottom: 1rem;
}
.sp--mb20 {
  margin-bottom: 2rem;
}
.sp--mb30 {
  margin-bottom: 3rem;
}
.sp--mb40 {
  margin-bottom: 4rem;
}
.sp--mb50 {
  margin-bottom: 5rem;
}
.sp--mb100 {
  margin-bottom: min(10rem, 15vw);
}
.sp--mb150 {
  margin-bottom: 15rem;
}
.sp--mb200 {
  margin-bottom: 20rem;
}
.sp--mr10 {
  margin-right: 1rem;
}
.sp--mr20 {
  margin-right: 2rem;
}
.sp--mr30 {
  margin-right: 3rem;
}
.sp--mr40 {
  margin-right: 4rem;
}
.sp--mr50 {
  margin-right: 5rem;
}
.sp--mr100 {
  margin-right: min(10rem, 15vw);
}
.sp--mr150 {
  margin-right: 15rem;
}
.sp--mr200 {
  margin-right: 20rem;
}
.sp--ml10 {
  margin-left: 1rem;
}
.sp--ml20 {
  margin-left: 2rem;
}
.sp--ml30 {
  margin-left: 3rem;
}
.sp--ml40 {
  margin-left: 4rem;
}
.sp--ml50 {
  margin-left: 5rem;
}
.sp--ml100 {
  margin-left: min(10rem, 15vw);
}
.sp--ml150 {
  margin-left: 15rem;
}
.sp--ml200 {
  margin-left: 20rem;
}
.sp--pt10 {
  padding-top: 1rem;
}
.sp--pt20 {
  padding-top: 2rem;
}
.sp--pt30 {
  padding-top: 3rem;
}
.sp--pt40 {
  padding-top: 4rem;
}
.sp--pt50 {
  padding-top: 5rem;
}
.sp--pt100 {
  padding-top: min(10rem, 15vw);
}
.sp--pt150 {
  padding-top: 15rem;
}
.sp--pt180 {
  padding-top: 18rem;
}
.sp--pt200 {
  padding-top: 20rem;
}
.sp--pb10 {
  padding-bottom: 1rem;
}
.sp--pb20 {
  padding-bottom: 2rem;
}
.sp--pb30 {
  padding-bottom: 3rem;
}
.sp--pb40 {
  padding-bottom: 4rem;
}
.sp--pb50 {
  padding-bottom: 5rem;
}
.sp--pb100 {
  padding-bottom: min(10rem, 15vw);
}
.sp--pb150 {
  padding-bottom: 15rem;
}
.sp--pb180 {
  padding-bottom: 18rem;
}
.sp--pb200 {
  padding-bottom: 20rem;
}
.sp--pb125 {
  padding-bottom: 12.5rem;
}
.sp--pr10 {
  padding-right: 1rem;
}
.sp--pr20 {
  padding-right: 2rem;
}
.sp--pr30 {
  padding-right: 3rem;
}
.sp--pr40 {
  padding-right: 4rem;
}
.sp--pr50 {
  padding-right: 5rem;
}
.sp--pr100 {
  padding-right: min(10rem, 15vw);
}
.sp--pr150 {
  padding-right: 15rem;
}
.sp--pr200 {
  padding-right: 20rem;
}
.sp--pl10 {
  padding-left: 1rem;
}
.sp--pl20 {
  padding-left: 2rem;
}
.sp--pl30 {
  padding-left: 3rem;
}
.sp--pl40 {
  padding-left: 4rem;
}
.sp--pl50 {
  padding-left: 5rem;
}
.sp--pl100 {
  padding-left: min(10rem, 15vw);
}
.sp--pl150 {
  padding-left: 15rem;
}
.sp--pl200 {
  padding-left: 20rem;
}/*# sourceMappingURL=common.css.map */