@charset "utf-8";
/*--------------------------------------------------------------------------------

  normalize
  
--------------------------------------------------------------------------------*/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
address {
  font-style: inherit;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}
audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden], template {
  display: none;
}
a {
  background-color: transparent;
}
a:active, a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1em dotted;
}
b, strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
/*
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
*/
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: inherit;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  /*margin: 1em 40em;*/
}
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button, select {
  text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled], html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1em solid #c0c0c0;
  margin: 0 2em;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
  width: 100%;
}
td, th {
  padding: 0;
}

/*--------------------------------------------------------------------------------

  base
  
--------------------------------------------------------------------------------*/
:root {
  --base-width: 1200;
  --min-width: 1280;

  --bg-color: #F6F6F6;
  --txt-color: #202020;
  
  /* link */
  --link-color: inherit;
  --link-color-hover: #909090;
  --link-deco: underline;
  --link-deco-hover: none;
  
  /* base */
  --color-base: #404040;
  --color-base-light: #707070;
  --color-base-lighter: #909090;
  --color-base-lightest: #A0A0A0;
  --bg-base-light: #F8F8F8;
  --bg-base: #F6F6F6;
  --bg-base-1: #E6E6E6;
  --bg-base-2: #DCDCDC;
  --bg-base-3: #D0D0D0;
  --bg-base-4: #BEBEBE;
  
  /* blue */
  --color-blue: #2192AC;
  --color-blue-light: #63B2C5;
  --color-blue-lighter: #90C8D5;
  --bg-blue-light: #E2EFF5;
  --bg-blue: #D3E7EE;
  --bg-blue-1: #B9DFE8;
  
  /* yellow */
  --color-yellow-dark: #F0BE28;
  --color-yellow: #F4C945;
  --color-yellow-light: #F4D679;
  --color-yellow-lighter: #F5E1A3;
  --bg-yellow-light: #FBF4DE;
  --bg-yellow: #F9EDC8;
  --bg-yellow-1: #F7E7B5;
  
  /* pink */
  --color-pink-dark: #DF7999;
  --color-pink: #E895AF;
  --color-pink-light: #EFB4C7;
  --color-pink-lighter: #F2C3D2;
  --bg-pink-light: #FBEFF3;
  --bg-pink: #F7E0E7;
  --bg-pink-1: #F6DAE3;
  
  /* red */
  --color-red: #E1554B;
  
  /* gray */
  --color-gray: var(--color-base-lighter);
  
  /* border */
  --border-color-rgb: 128 128 128;
  --border-color-dark: rgb(var(--border-color-rgb) / 0.3);
  --border-color: rgb(var(--border-color-rgb) / 0.2);
  --border-color-light: rgb(var(--border-color-rgb) / 0.1);
}
@media (max-width: 640px) {
  :root { --base-width: 100%; --min-width: 500; }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  text-align: center;
  background-color: var(--bg-color);
  min-width: calc(var(--min-width) * 1px);
}
a {
  outline: none;
}
.clear:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
  -ms-interpolation-mode: bicubic;
}
img[style*="--width:"], 
img[style*="--width :"] { width: 100%; max-width: var(--width); }
@media not (max-width: 640px) {
  img[style*="--width-pc:"], 
  img[style*="--width-pc :"] { width: 100%; max-width: var(--width-pc); }
}
@media (max-width: 640px) {
  img[style*="--width-sp:"], 
  img[style*="--width-sp :"] { width: 100%; max-width: var(--width-sp); }
}
.no-wrap { display: inline-block; }
.pc-none { display: none !important; }
.sp-none { display: inherit; }
@media (max-width: 640px) {
  .pc-none { display: inherit !important; }
  .sp-none { display: none; }
}
.inblock { display: inline-block; }
.txt-left { text-align: left; }
.txt-center { text-align: center; }
.txt-right { text-align: right; }
@media not (max-width: 640px) {
  .txt-left-pc { text-align: left; }
  .txt-center-pc { text-align: center; }
}
@media (max-width: 640px) {
  .txt-left-sp { text-align: left; }
  .txt-center-sp { text-align: center; }
}

/*--------------------------------------------------------------------------------
  space
--------------------------------------------------------------------------------*/

/* side space
----------------------------------------*/
@media not (max-width: 640px) { :root { --side-space: 40px; } }
@media (max-width: 640px) { :root { --side-space: clamp(1rem, -0.786rem + 5.71vw, 1.5rem); } }

/* outer space
----------------------------------------*/
@media not (max-width: 640px) { :root { --space-unit: 1rem; } }
@media (max-width: 640px) { :root { --space-unit: 0.75rem; } }
:root {
  --space-3s: calc(1 * var(--space-unit));
  --space-2s: calc(1.5 * var(--space-unit));
  --space-s: calc(2 * var(--space-unit));
  --space-m: calc(3 * var(--space-unit));
  --space-l: calc(4 * var(--space-unit));
  --space-2l: calc(6 * var(--space-unit));
  --space-3l: calc(8 * var(--space-unit));
  --space-4l: calc(12 * var(--space-unit));
}
@media (max-width: 640px) {
  :root {
  --space-2l: calc(5 * var(--space-unit));
  --space-3l: calc(7 * var(--space-unit));
  --space-4l: calc(10 * var(--space-unit));
  }
}

/* inner space
----------------------------------------*/
@media not (max-width: 640px) { :root { --inner-space-unit: 1rem; } }
@media (max-width: 640px) { :root { --inner-space-unit-min: 0.75rem; --inner-space-unit: clamp(0.5rem, -0.393rem + 2.86vw, 0.75rem); } }
:root {
  --inner-space-2s: clamp(1.25 * var(--inner-space-unit), 4.5%, 1.5 * var(--inner-space-unit));
  --inner-space-s: clamp(1.5 * var(--inner-space-unit), 6%, 2 * var(--inner-space-unit));
  --inner-space-m: clamp(2 * var(--inner-space-unit), 7%, 3 * var(--inner-space-unit));
  --inner-space-l: clamp(3 * var(--inner-space-unit), 8%, 4 * var(--inner-space-unit));
  --inner-space-2l: clamp(4 * var(--inner-space-unit), 10%, 6 * var(--inner-space-unit));
}
@media (max-width: 640px) {
  :root {
    --inner-space-2s: clamp(1.25 * var(--inner-space-unit-min), 4.5%, 1.5 * var(--inner-space-unit-min));
    --inner-space-s: clamp(1.5 * var(--inner-space-unit-min), 6%, 2 * var(--inner-space-unit-min));
    --inner-space-l: clamp(2 * var(--inner-space-unit), 7%, 3 * var(--inner-space-unit));
    --inner-space-2l: clamp(3 * var(--inner-space-unit), 8%, 4 * var(--inner-space-unit));
  }
}

/*--------------------------------------------------------------------------------
  font size
--------------------------------------------------------------------------------*/
body { line-height: 1.7; }
:root {
  --lh-s: 1.5;
  --lh-l: 1.9;
  --lh-2l: 2.3;
}
.lh-s { line-height: var(--lh-s); }
.lh-n { line-height: 1.7; }
.lh-l { line-height: var(--lh-l); }
.lh-2l { line-height: var(--lh-2l); }

@media not (max-width: 640px) { html { font-size: 18.5px; } }
@media (max-width: 640px) { html { font-size: 17.5px; } }
h1, h2, h3, h4, h5, h6 { font-size: 100%; }
button, input, textarea, select { font-size: 100%; }
:root {
  --fs-3s-num: 0.65;
  --fs-2s-num: 0.75;
  --fs-s-num:  0.85;
  --fs-m-num:  1.05;
  --fs-2m-num: 1.1;
  --fs-3m-num: 1.2;
  --fs-l-num:  1.35;
  --fs-2l-num: 1.55;
  --fs-3l-num: 1.75;
  --fs-4l-num: 2.0;
  --fs-5l-num: 2.25;
}
@media (max-width: 640px) {
  :root {
    --fs-l-num: 1.3;
    --fs-2l-num: 1.45;
    --fs-3l-num: 1.65;
    --fs-4l-num: 1.75;
    --fs-5l-num: 1.9;
  }
}
:root {
  --fs-3s: calc(var(--fs-3s-num) * 1em);
  --fs-2s: calc(var(--fs-2s-num) * 1em);
  --fs-s:  calc(var(--fs-s-num)  * 1em);
  --fs-m:  calc(var(--fs-m-num)  * 1em);
  --fs-2m: calc(var(--fs-2m-num) * 1em);
  --fs-3m: calc(var(--fs-3m-num) * 1em);
  --fs-l:  calc(var(--fs-l-num)  * 1em);
  --fs-2l: calc(var(--fs-2l-num) * 1em);
  --fs-3l: calc(var(--fs-3l-num) * 1em);
  --fs-4l: calc(var(--fs-4l-num) * 1em);
  --fs-5l: calc(var(--fs-5l-num) * 1em);

  --fs-3s-rem: calc(var(--fs-3s-num) * 1rem);
  --fs-2s-rem: calc(var(--fs-2s-num) * 1rem);
  --fs-s-rem:  calc(var(--fs-s-num)  * 1rem);
  --fs-m-rem:  calc(var(--fs-m-num)  * 1rem);
  --fs-2m-rem: calc(var(--fs-2m-num) * 1rem);
  --fs-3m-rem: calc(var(--fs-3m-num) * 1rem);
  --fs-l-rem:  calc(var(--fs-l-num)  * 1rem);
  --fs-2l-rem: calc(var(--fs-2l-num) * 1rem);
  --fs-3l-rem: calc(var(--fs-3l-num) * 1rem);
  --fs-4l-rem: calc(var(--fs-4l-num) * 1rem);
  --fs-5l-rem: calc(var(--fs-5l-num) * 1rem);
}
.fs-3s { font-size: var(--fs-3s); }
.fs-2s { font-size: var(--fs-2s); }
.fs-s { font-size: var(--fs-s); }
.fs-m { font-size: var(--fs-m); }
.fs-2m { font-size: var(--fs-2m); }
.fs-3m { font-size: var(--fs-3m); }
.fs-l { font-size: var(--fs-l); }
.fs-2l { font-size: var(--fs-2l); }
.fs-3l { font-size: var(--fs-3l); }
.fs-4l { font-size: var(--fs-4l); }
.fs-5l { font-size: var(--fs-5l); }

.fs-3s-rem { font-size: var(--fs-3s-rem); }
.fs-2s-rem { font-size: var(--fs-2s-rem); }
.fs-s-rem { font-size: var(--fs-s-rem); }
.fs-m-rem { font-size: var(--fs-m-rem); }
.fs-2m-rem { font-size: var(--fs-2m-rem); }
.fs-3m-rem { font-size: var(--fs-3m-rem); }
.fs-l-rem { font-size: var(--fs-l-rem); }
.fs-2l-rem { font-size: var(--fs-2l-rem); }
.fs-3l-rem { font-size: var(--fs-3l-rem); }
.fs-4l-rem { font-size: var(--fs-4l-rem); }
.fs-5l-rem { font-size: var(--fs-5l-rem); }

@media (max-width: 640px) {
  .sp-fs-3s { font-size: var(--fs-3s); }
  .sp-fs-2s { font-size: var(--fs-2s); }
  .sp-fs-s { font-size: var(--fs-s); }
  .sp-fs-m { font-size: var(--fs-m); }
  .sp-fs-2m { font-size: var(--fs-2m); }
  .sp-fs-3m { font-size: var(--fs-3m); }
  .sp-fs-l { font-size: var(--fs-l); }
  .sp-fs-2l { font-size: var(--fs-2l); }
  .sp-fs-3l { font-size: var(--fs-3l); }
  .sp-fs-4l { font-size: var(--fs-4l); }
  .sp-fs-5l { font-size: var(--fs-5l); }
}

/*--------------------------------------------------------------------------------
  font
--------------------------------------------------------------------------------*/
:root {
  --ff-go: "Noto Sans JP", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
  --ff-min: "Noto Serif JP", "Hiragino Mincho ProN", "游明朝", "Yu Mincho", YuMincho, serif;
}
body, .ff-go {
  font-family: var(--ff-go);
  font-weight: 300;
}
.ff-min {
  font-family: var(--ff-min);
  font-weight: 400;
}
.fw-200 { font-weight: 200; }
.fw-300 { font-weight: 300; }
.fw-400 { font-weight: 400; }
.fw-500, b, stlong { font-weight: 500; }
.fw-600 { font-weight: 600; }
.fw-700 { font-weight: 700; }

/*--------------------------------------------------------------------------------
  font color
--------------------------------------------------------------------------------*/
body { color: var(--txt-color); }
.fc-default { color: var(--txt-color); }
.fc-red { color: var(--color-red); }
.fc-blue { color: var(--color-blue); }
.fc-pink { color: var(--color-pink-dark); }
.fc-gray { color: var(--color-gray); }

/*--------------------------------------------------------------------------------
  link
--------------------------------------------------------------------------------*/
a { outline: none; transition: var(--hover-trans); }
a, a:hover { color: var(--link-color); text-decoration: var(--link-deco); }
@media (hover: hover) {
  a:hover { color: var(--link-color-hover); text-decoration: var(--link-deco-hover); }
  a { transition: color 0.15s ease, background 0.15s ease; }
  img.img-hv,
  a.img-hv img {
    transition: opacity 0.2s ease;
  }
  img.img-hv:hover,
  a.img-hv:hover img,
  a:hover img.img-hv {
    opacity: 0.6;
  }
}

/* tel link
----------------------------------------*/
@media (hover: hover) {
  a[href^="tel:"] { pointer-events: none; cursor: default; }
  a[href^="tel:"], a[href^="tel:"]:hover { color: var(--tel-color, inherit); text-decoration: none; }
}
@media (hover: none) {
  a[href^="tel:"] {
    color: var(--link-tel-color, var(--link-color));
    text-decoration: var(--link-tel-deco, underline);
  }
}

/*--------------------------------------------------------------------------------
  cell width
--------------------------------------------------------------------------------*/
table .w10 { width: 10%; }
table .w15 { width: 15%; }
table .w20 { width: 20%; }
table .w25 { width: 25%; }
table .w30 { width: 30%; }
table .w35 { width: 35%; }
table .w40 { width: 40%; }
table .w45 { width: 45%; }
table .w50 { width: 50%; }
table .w55 { width: 55%; }
table .w60 { width: 60%; }
table .w65 { width: 65%; }
table .w70 { width: 70%; }
table .w75 { width: 75%; }
table .w80 { width: 80%; }
table .w85 { width: 85%; }
table .w90 { width: 90%; }
table .w95 { width: 95%; }
table .w100 { width: 100%; }

/*--------------------------------------------------------------------------------
  margin
--------------------------------------------------------------------------------*/
.mgt-4l { margin-top: var(--space-4l); }
.mgt-3l { margin-top: var(--space-3l); }
.mgt-2l { margin-top: var(--space-2l); }
.mgt-l { margin-top: var(--space-l); }
.mgt-m { margin-top: var(--space-m); }
.mgt-s { margin-top: var(--space-s); }
.mgt-2s { margin-top: var(--space-2s); }
.mgt-3s { margin-top: var(--space-3s); }
.mgb-4l { margin-bottom: var(--space-4l); }
.mgb-3l { margin-bottom: var(--space-3l); }
.mgb-2l { margin-bottom: var(--space-2l); }
.mgb-l { margin-bottom: var(--space-l); }
.mgb-m { margin-bottom: var(--space-m); }
.mgb-s { margin-bottom: var(--space-s); }
.mgb-2s { margin-bottom: var(--space-2s); }
.mgb-3s { margin-bottom: var(--space-3s); }
.mgl-4l { margin-left: var(--space-4l); }
.mgl-3l { margin-left: var(--space-3l); }
.mgl-2l { margin-left: var(--space-2l); }
.mgl-l { margin-left: var(--space-l); }
.mgl-m { margin-left: var(--space-m); }
.mgl-s { margin-left: var(--space-s); }
.mgl-2s { margin-left: var(--space-2s); }
.mgl-3s { margin-left: var(--space-3s); }
.mgr-4l { margin-right: var(--space-4l); }
.mgr-3l { margin-right: var(--space-3l); }
.mgr-2l { margin-right: var(--space-2l); }
.mgr-l { margin-right: var(--space-l); }
.mgr-m { margin-right: var(--space-m); }
.mgr-s { margin-right: var(--space-s); }
.mgr-2s { margin-right: var(--space-2s); }
.mgr-3s { margin-right: var(--space-3s); }

.mgt-h2 { margin-top: 0.25rem; }
.mgt-h { margin-top: 0.5rem; }
.mgt-1 { margin-top: 1rem; }
.mgt-1h { margin-top: 1.5rem; }
.mgt-2 { margin-top: 2rem; }
.mgt-2h { margin-top: 2.5rem; }
.mgt-3 { margin-top: 3rem; }
.mgb-h2 { margin-bottom: 0.25rem; }
.mgb-h { margin-bottom: 0.5rem; }
.mgb-1 { margin-bottom: 1rem; }
.mgb-1h { margin-bottom: 1.5rem; }
.mgb-2 { margin-bottom: 2rem; }
.mgb-2h { margin-bottom: 2.5rem; }
.mgb-3 { margin-bottom: 3rem; }
.mgl-h2 { margin-left: 0.25rem; }
.mgl-h { margin-left: 0.5rem; }
.mgl-1 { margin-left: 1rem; }
.mgl-1h { margin-left: 1.5rem; }
.mgl-2 { margin-left: 2rem; }
.mgl-2h { margin-left: 2.5rem; }
.mgl-3 { margin-left: 3rem; }
.mgr-h2 { margin-right: 0.25rem; }
.mgr-h { margin-right: 0.5rem; }
.mgr-1 { margin-right: 1rem; }
.mgr-1h { margin-right: 1.5rem; }
.mgr-2 { margin-right: 2rem; }
.mgr-2h { margin-right: 2.5rem; }
.mgr-3 { margin-right: 3rem; }

.mgt-h2-em { margin-top: 0.25em; }
.mgt-h-em { margin-top: 0.5em; }
.mgt-1-em { margin-top: 1em; }
.mgt-1h-em { margin-top: 1.5em; }
.mgt-2-em { margin-top: 2em; }
.mgt-2h-em { margin-top: 2.5em; }
.mgt-3-em { margin-top: 3em; }
.mgb-h2-em { margin-bottom: 0.25em; }
.mgb-h-em { margin-bottom: 0.5em; }
.mgb-1-em { margin-bottom: 1em; }
.mgb-1h-em { margin-bottom: 1.5em; }
.mgb-2-em { margin-bottom: 2em; }
.mgb-2h-em { margin-bottom: 2.5em; }
.mgb-3-em { margin-bottom: 3em; }
.mgl-h2-em { margin-left: 0.25em; }
.mgl-h-em { margin-left: 0.5em; }
.mgl-1-em { margin-left: 1em; }
.mgl-1h-em { margin-left: 1.5em; }
.mgl-2-em { margin-left: 2em; }
.mgl-2h-em { margin-left: 2.5em; }
.mgl-3-em { margin-left: 3em; }
.mgr-h2-em { margin-right: 0.25em; }
.mgr-h-em { margin-right: 0.5em; }
.mgr-1-em { margin-right: 1em; }
.mgr-1h-em { margin-right: 1.5em; }
.mgr-2-em { margin-right: 2em; }
.mgr-2h-em { margin-right: 2.5em; }
.mgr-3-em { margin-right: 3em; }

.mgtb-4l { margin-top: var(--space-4l); margin-bottom: var(--space-4l); }
.mgtb-3l { margin-top: var(--space-3l); margin-bottom: var(--space-3l); }
.mgtb-2l { margin-top: var(--space-2l); margin-bottom: var(--space-2l); }
.mgtb-l { margin-top: var(--space-l); margin-bottom: var(--space-l); }
.mgtb-m { margin-top: var(--space-m); margin-bottom: var(--space-m); }
.mgtb-s { margin-top: var(--space-s); margin-bottom: var(--space-s); }
.mgtb-2s { margin-top: var(--space-2s); margin-bottom: var(--space-2s); }
.mgtb-3s { margin-top: var(--space-3s); margin-bottom: var(--space-3s); }

.mglr-4l { margin-left: var(--space-4l); margin-right: var(--space-4l); }
.mglr-3l { margin-left: var(--space-3l); margin-right: var(--space-3l); }
.mglr-2l { margin-left: var(--space-2l); margin-right: var(--space-2l); }
.mglr-l { margin-left: var(--space-l); margin-right: var(--space-l); }
.mglr-m { margin-left: var(--space-m); margin-right: var(--space-m); }
.mglr-s { margin-left: var(--space-s); margin-right: var(--space-s); }
.mglr-2s { margin-left: var(--space-2s); margin-right: var(--space-2s); }
.mglr-3s { margin-left: var(--space-3s); margin-right: var(--space-3s); }

.mgtb-h2 { margin-top: 0.25rem; margin-bottom: 0.25rem; }
.mgtb-h { margin-top: 0.5rem; margin-bottom: 0.5rem; }
.mgtb-1 { margin-top: 1rem; margin-bottom: 1rem; }
.mgtb-1h { margin-top: 1.5rem; margin-bottom: 1.5rem; }
.mgtb-2 { margin-top: 2rem; margin-bottom: 2rem; }
.mgtb-2h { margin-top: 2.5rem; margin-bottom: 2.5rem; }
.mgtb-3 { margin-top: 3rem; margin-bottom: 3rem; }

.mglr-h2 { margin-left: 0.25rem; margin-right: 0.25rem; }
.mglr-h { margin-left: 0.5rem; margin-right: 0.5rem; }
.mglr-1 { margin-left: 1rem; margin-right: 1rem; }
.mglr-1h { margin-left: 1.5rem; margin-right: 1.5rem; }
.mglr-2 { margin-left: 2rem; margin-right: 2rem; }
.mglr-2h { margin-left: 2.5rem; margin-right: 2.5rem; }
.mglr-3 { margin-left: 3rem; margin-right: 3rem; }

.mgtb-h2-em { margin-top: 0.25em; margin-bottom: 0.25em; }
.mgtb-h-em { margin-top: 0.5em; margin-bottom: 0.5em; }
.mgtb-1-em { margin-top: 1em; margin-bottom: 1em; }
.mgtb-1h-em { margin-top: 1.5em; margin-bottom: 1.5em; }
.mgtb-2-em { margin-top: 2em; margin-bottom: 2em; }
.mgtb-2h-em { margin-top: 2.5em; margin-bottom: 2.5em; }
.mgtb-3-em { margin-top: 3em; margin-bottom: 3em; }

.mglr-h2-em { margin-left: 0.25em; margin-right: 0.25em; }
.mglr-h-em { margin-left: 0.5em; margin-right: 0.5em; }
.mglr-1-em { margin-left: 1em; margin-right: 1em; }
.mglr-1h-em { margin-left: 1.5em; margin-right: 1.5em; }
.mglr-2-em { margin-left: 2em; margin-right: 2em; }
.mglr-2h-em { margin-left: 2.5em; margin-right: 2.5em; }
.mglr-3-em { margin-left: 3em; margin-right: 3em; }

.mg-h2 { margin: 0.25rem; }
.mg-h { margin: 0.5rem; }
.mg-1 { margin: 1rem; }
.mg-1h { margin: 1.5rem; }
.mg-2 { margin: 2rem; }
.mg-2h { margin: 2.5rem; }
.mg-3 { margin: 3rem; }

.mg-h2-em { marginmargin: 0.25em; }
.mg-h-em { marginmargin: 0.5em; }
.mg-1-em { padding: 1em; }
.mg-1h-em { margin: 1.5em; }
.mg-2-em { margin: 2em; }
.mg-2h-em { margin: 2.5em; }
.mg-3-em { margin: 3em; }

/* !important
----------------------------------------*/
.mgt-0 { margin-top: 0 !important; }
.mgb-0 { margin-bottom: 0 !important; }
.mgl-0 { margin-left: 0 !important; }
.mgr-0 { margin-right: 0 !important; }

/*--------------------------------------------------------------------------------
  padding
--------------------------------------------------------------------------------*/
.pdt-4l { padding-top: var(--space-4l); }
.pdt-3l { padding-top: var(--space-3l); }
.pdt-2l { padding-top: var(--space-2l); }
.pdt-l { padding-top: var(--space-l); }
.pdt-m { padding-top: var(--space-m); }
.pdt-s { padding-top: var(--space-s); }
.pdt-2s { padding-top: var(--space-2s); }
.pdt-3s { padding-top: var(--space-3s); }
.pdb-4l { padding-bottom: var(--space-4l); }
.pdb-3l { padding-bottom: var(--space-3l); }
.pdb-2l { padding-bottom: var(--space-2l); }
.pdb-l { padding-bottom: var(--space-l); }
.pdb-m { padding-bottom: var(--space-m); }
.pdb-s { padding-bottom: var(--space-s); }
.pdb-2s { padding-bottom: var(--space-2s); }
.pdb-3s { padding-bottom: var(--space-3s); }
.pdl-4l { padding-left: var(--space-4l); }
.pdl-3l { padding-left: var(--space-3l); }
.pdl-2l { padding-left: var(--space-2l); }
.pdl-l { padding-left: var(--space-l); }
.pdl-m { padding-left: var(--space-m); }
.pdl-s { padding-left: var(--space-s); }
.pdl-2s { padding-left: var(--space-2s); }
.pdl-3s { padding-left: var(--space-3s); }
.pdr-4l { padding-right: var(--space-4l); }
.pdr-3l { padding-right: var(--space-3l); }
.pdr-2l { padding-right: var(--space-2l); }
.pdr-l { padding-right: var(--space-l); }
.pdr-m { padding-right: var(--space-m); }
.pdr-s { padding-right: var(--space-s); }
.pdr-2s { padding-right: var(--space-2s); }
.pdr-3s { padding-right: var(--space-3s); }

.pdt-h2 { padding-top: 0.25rem; }
.pdt-h { padding-top: 0.5rem; }
.pdt-1 { padding-top: 1rem; }
.pdt-1h { padding-top: 1.5rem; }
.pdt-2 { padding-top: 2rem; }
.pdt-2h { padding-top: 2.5rem; }
.pdt-3 { padding-top: 3rem; }
.pdb-h2 { padding-bottom: 0.25rem; }
.pdb-h { padding-bottom: 0.5rem; }
.pdb-1 { padding-bottom: 1rem; }
.pdb-1h { padding-bottom: 1.5rem; }
.pdb-2 { padding-bottom: 2rem; }
.pdb-2h { padding-bottom: 2.5rem; }
.pdb-3 { padding-bottom: 3rem; }
.pdl-h2 { padding-left: 0.25rem; }
.pdl-h { padding-left: 0.5rem; }
.pdl-1 { padding-left: 1rem; }
.pdl-1h { padding-left: 1.5rem; }
.pdl-2 { padding-left: 2rem; }
.pdl-2h { padding-left: 2.5rem; }
.pdl-3 { padding-left: 3rem; }
.pdr-h2 { padding-right: 0.25rem; }
.pdr-h { padding-right: 0.5rem; }
.pdr-1 { padding-right: 1rem; }
.pdr-1h { padding-right: 1.5rem; }
.pdr-2 { padding-right: 2rem; }
.pdr-2h { padding-right: 2.5rem; }
.pdr-3 { padding-right: 3rem; }

.pdt-h2-em { padding-top: 0.25em; }
.pdt-h-em { padding-top: 0.5em; }
.pdt-1-em { padding-top: 1em; }
.pdt-1h-em { padding-top: 1.5em; }
.pdt-2-em { padding-top: 2em; }
.pdt-2h-em { padding-top: 2.5em; }
.pdt-3-em { padding-top: 3em; }
.pdb-h2-em { padding-bottom: 0.25em; }
.pdb-h-em { padding-bottom: 0.5em; }
.pdb-1-em { padding-bottom: 1em; }
.pdb-1h-em { padding-bottom: 1.5em; }
.pdb-2-em { padding-bottom: 2em; }
.pdb-2h-em { padding-bottom: 2.5em; }
.pdb-3-em { padding-bottom: 3em; }
.pdl-h2-em { padding-left: 0.25em; }
.pdl-h-em { padding-left: 0.5em; }
.pdl-1-em { padding-left: 1em; }
.pdl-1h-em { padding-left: 1.5em; }
.pdl-2-em { padding-left: 2em; }
.pdl-2h-em { padding-left: 2.5em; }
.pdl-3-em { padding-left: 3em; }
.pdr-h2-em { padding-right: 0.25em; }
.pdr-h-em { padding-right: 0.5em; }
.pdr-1-em { padding-right: 1em; }
.pdr-1h-em { padding-right: 1.5em; }
.pdr-2-em { padding-right: 2em; }
.pdr-2h-em { padding-right: 2.5em; }
.pdr-3-em { padding-right: 3em; }

.pdtb-4l { padding-top: var(--space-4l); padding-bottom: var(--space-4l); }
.pdtb-3l { padding-top: var(--space-3l); padding-bottom: var(--space-3l); }
.pdtb-2l { padding-top: var(--space-2l); padding-bottom: var(--space-2l); }
.pdtb-l { padding-top: var(--space-l); padding-bottom: var(--space-l); }
.pdtb-m { padding-top: var(--space-m); padding-bottom: var(--space-m); }
.pdtb-s { padding-top: var(--space-s); padding-bottom: var(--space-s); }
.pdtb-2s { padding-top: var(--space-2s); padding-bottom: var(--space-2s); }
.pdtb-3s { padding-top: var(--space-3s); padding-bottom: var(--space-3s); }

.pdlr-4l { padding-left: var(--space-4l); padding-right: var(--space-4l); }
.pdlr-3l { padding-left: var(--space-3l); padding-right: var(--space-3l); }
.pdlr-2l { padding-left: var(--space-2l); padding-right: var(--space-2l); }
.pdlr-l { padding-left: var(--space-l); padding-right: var(--space-l); }
.pdlr-m { padding-left: var(--space-m); padding-right: var(--space-m); }
.pdlr-s { padding-left: var(--space-s); padding-right: var(--space-s); }
.pdlr-2s { padding-left: var(--space-2s); padding-right: var(--space-2s); }
.pdlr-3s { padding-left: var(--space-3s); padding-right: var(--space-3s); }

.pdtb-h2 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.pdtb-h { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.pdtb-1 { padding-top: 1rem; padding-bottom: 1rem; }
.pdtb-1h { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.pdtb-2 { padding-top: 2rem; padding-bottom: 2rem; }
.pdtb-2h { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.pdtb-3 { padding-top: 3rem; padding-bottom: 3rem; }

.pdlr-h2 { padding-left: 0.25rem; padding-right: 0.25rem; }
.pdlr-h { padding-left: 0.5rem; padding-right: 0.5rem; }
.pdlr-1 { padding-left: 1rem; padding-right: 1rem; }
.pdlr-1h { padding-left: 1.5rem; padding-right: 1.5rem; }
.pdlr-2 { padding-left: 2rem; padding-right: 2rem; }
.pdlr-2h { padding-left: 2.5rem; padding-right: 2.5rem; }
.pdlr-3 { padding-left: 3rem; padding-right: 3rem; }

.pdtb-h2-em { padding-top: 0.25em; padding-bottom: 0.25em; }
.pdtb-h-em { padding-top: 0.5em; padding-bottom: 0.5em; }
.pdtb-1-em { padding-top: 1em; padding-bottom: 1em; }
.pdtb-1h-em { padding-top: 1.5em; padding-bottom: 1.5em; }
.pdtb-2-em { padding-top: 2em; padding-bottom: 2em; }
.pdtb-2h-em { padding-top: 2.5em; padding-bottom: 2.5em; }
.pdtb-3-em { padding-top: 3em; padding-bottom: 3em; }

.pdlr-h2-em { padding-left: 0.25em; padding-right: 0.25em; }
.pdlr-h-em { padding-left: 0.5em; padding-right: 0.5em; }
.pdlr-1-em { padding-left: 1em; padding-right: 1em; }
.pdlr-1h-em { padding-left: 1.5em; padding-right: 1.5em; }
.pdlr-2-em { padding-left: 2em; padding-right: 2em; }
.pdlr-2h-em { padding-left: 2.5em; padding-right: 2.5em; }
.pdlr-3-em { padding-left: 3em; padding-right: 3em; }

.pd-h2 { padding: 0.25rem; }
.pd-h { padding: 0.5rem; }
.pd-1 { padding: 1rem; }
.pd-1h { padding: 1.5rem; }
.pd-2 { padding: 2rem; }
.pd-2h { padding: 2.5rem; }
.pd-3 { padding: 3rem; }

.pd-h2-em { padding: 0.25em; }
.pd-h-em { padding: 0.5em; }
.pd-1-em { padding: 1em; }
.pd-1h-em { padding: 1.5em; }
.pd-2-em { padding: 2em; }
.pd-2h-em { padding: 2.5em; }
.pd-3-em { padding: 3em; }

/* !important
----------------------------------------*/
.pdt-0 { padding-top: 0 !important; }
.pdb-0 { padding-bottom: 0 !important; }
.pdl-0 { padding-left: 0 !important; }
.pdr-0 { padding-right: 0 !important; }

/*--------------------------------------------------------------------------------
  gap
--------------------------------------------------------------------------------*/
.gap-4l { gap: var(--space-4l); }
.gap-3l { gap: var(--space-3l); }
.gap-2l { gap: var(--space-2l); }
.gap-l { gap: var(--space-l); }
.gap-m { gap: var(--space-m); }
.gap-s { gap: var(--space-s); }
.gap-2s { gap: var(--space-2s); }
.gap-3s { gap: var(--space-3s); }

.gap0 { gap: 0; }
.gap-h2 { gap: 0.25rem; }
.gap-h { gap: 0.5rem; }
.gap-1 { gap: 1rem; }
.gap-1h { gap: 1.5rem; }
.gap-1h { gap: 1.5rem; }
.gap-2 { gap: 2rem; }
.gap-2h { gap: 2.5rem; }
.gap-3 { gap: 3.5rem; }
.gap-3h { gap: 3.5rem; }

.gap-h2-em { gap: 0.25em; }
.gap-h-em { gap: 0.5em; }
.gap-1-em { gap: 1em; }
.gap-1h-em { gap: 1.5em; }
.gap-2-em { gap: 2em; }
.gap-2h-em { gap: 2.5em; }
.gap-3-em { gap: 3.5em; }
.gap-3h-em { gap: 3.5em; }

.cgap-4l { column-gap: var(--space-4l); }
.cgap-3l { column-gap: var(--space-3l); }
.cgap-2l { column-gap: var(--space-2l); }
.cgap-l { column-gap: var(--space-l); }
.cgap-m { column-gap: var(--space-m); }
.cgap-s { column-gap: var(--space-s); }
.cgap-2s { column-gap: var(--space-2s); }
.cgap-3s { column-gap: var(--space-3s); }

.cgap0 { column-gap: 0; }
.cgap-h2 { column-gap: 0.25rem; }
.cgap-h { column-gap: 0.5rem; }
.cgap-1 { column-gap: 1rem; }
.cgap-1h { column-gap: 1.5rem; }
.cgap-2 { column-gap: 2rem; }
.cgap-2h { column-gap: 2.5rem; }
.cgap-3 { column-gap: 3.5rem; }
.cgap-3h { column-gap: 3.5rem; }

.cgap-h2-em { column-gap: 0.25em; }
.cgap-h-em { column-gap: 0.5em; }
.cgap-1-em { column-gap: 1em; }
.cgap-1h-em { column-gap: 1.5em; }
.cgap-2-em { column-gap: 2em; }
.cgap-2h-em { column-gap: 2.5em; }
.cgap-3-em { column-gap: 3.5em; }
.cgap-3h-em { column-gap: 3.5em; }

.rgap-4l { row-gap: var(--space-4l); }
.rgap-3l { row-gap: var(--space-3l); }
.rgap-2l { row-gap: var(--space-2l); }
.rgap-l { row-gap: var(--space-l); }
.rgap-m { row-gap: var(--space-m); }
.rgap-s { row-gap: var(--space-s); }
.rgap-2s { row-gap: var(--space-2s); }
.rgap-3s { row-gap: var(--space-3s); }

.rgap0 { row-gap: 0; }
.rgap-h2 { row-gap: 0.25rem; }
.rgap-h { row-gap: 0.5rem; }
.rgap-1 { row-gap: 1rem; }
.rgap-1h { row-gap: 1.5rem; }
.rgap-2 { row-gap: 2rem; }
.rgap-2h { row-gap: 2.5rem; }
.rgap-3 { row-gap: 3.5rem; }
.rgap-3h { row-gap: 3.5rem; }

.rgap-h2-em { row-gap: 0.25em; }
.rgap-h-em { row-gap: 0.5em; }
.rgap-1-em { row-gap: 1em; }
.rgap-1h-em { row-gap: 1.5em; }
.rgap-2-em { row-gap: 2em; }
.rgap-2h-em { row-gap: 2.5em; }
.rgap-3-em{ row-gap: 3.5em; }
.rgap-3h-em { row-gap: 3.5em; }
