@charset "UTF-8";
:root {
  --color-primary: #14885A;
  --color-white: #fff;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 10px;
}

body {
  margin: 0;
  font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ＭＳ ゴシック", "MS Gothic", TakaoPGothic, sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  text-align: left;
  background-color: #ECF2EF;
}
@media (min-width: 768px) {
  body {
    font-size: 15px;
    min-width: 137rem;
  }
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

ol,
ul,
dl {
  list-style-type: none;
  margin: 0;
  padding-left: 0;
}

b,
strong {
  font-weight: 700;
}

a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

img {
  vertical-align: middle;
  border-style: none;
  max-width: 100%;
  height: auto;
}

table {
  border-collapse: collapse;
}

th {
  font-weight: 400;
  text-align: inherit;
  text-align: -webkit-match-parent;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

textarea {
  overflow: auto;
  resize: vertical;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

[hidden] {
  display: none !important;
}

.aligncenter {
  text-align: center;
}

.alignright {
  text-align: right;
}

.alignleft {
  text-align: left;
}

img.aligncenter {
  display: block;
  margin: auto;
}
img.alignright {
  display: block;
  margin-left: auto;
}
img.alignleft {
  display: block;
  margin-right: auto;
}

.container {
  margin: auto;
  max-width: 131rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 100%;
}

.inner {
  margin: auto;
  max-width: 105rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 100%;
}

.d-none {
  display: none !important;
}

.d-block {
  display: block !important;
}

.d-flex {
  display: flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-flex {
    display: flex !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
}
@media (min-width: 1600px) {
  .d-xxl-none {
    display: none !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
}
.d-row {
  margin: 0 -1.2rem;
}
@media (min-width: 768px) {
  .d-row {
    display: flex;
  }
}

.d-col {
  flex: 1;
  padding: 0 1.2rem;
}

.hover {
  transition: opacity 0.3s ease;
}
.hover:hover {
  opacity: 0.7;
}

.height-100 {
  height: 100%;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-auto {
  flex: 0 auto !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-sm-auto {
    flex: 0 auto !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-md-auto {
    flex: 0 auto !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-lg-auto {
    flex: 0 auto !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xl-auto {
    flex: 0 auto !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1600px) {
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xxl-auto {
    flex: 0 auto !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
}
.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-5 {
  margin: 0.5rem !important;
}

.mt-5,
.my-5 {
  margin-top: 0.5rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 0.5rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 0.5rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 0.5rem !important;
}

.m-10 {
  margin: 1rem !important;
}

.mt-10,
.my-10 {
  margin-top: 1rem !important;
}

.mr-10,
.mx-10 {
  margin-right: 1rem !important;
}

.mb-10,
.my-10 {
  margin-bottom: 1rem !important;
}

.ml-10,
.mx-10 {
  margin-left: 1rem !important;
}

.m-20 {
  margin: 2rem !important;
}

.mt-20,
.my-20 {
  margin-top: 2rem !important;
}

.mr-20,
.mx-20 {
  margin-right: 2rem !important;
}

.mb-20,
.my-20 {
  margin-bottom: 2rem !important;
}

.ml-20,
.mx-20 {
  margin-left: 2rem !important;
}

.m-28 {
  margin: 2.8rem !important;
}

.mt-28,
.my-28 {
  margin-top: 2.8rem !important;
}

.mr-28,
.mx-28 {
  margin-right: 2.8rem !important;
}

.mb-28,
.my-28 {
  margin-bottom: 2.8rem !important;
}

.ml-28,
.mx-28 {
  margin-left: 2.8rem !important;
}

.m-30 {
  margin: 3rem !important;
}

.mt-30,
.my-30 {
  margin-top: 3rem !important;
}

.mr-30,
.mx-30 {
  margin-right: 3rem !important;
}

.mb-30,
.my-30 {
  margin-bottom: 3rem !important;
}

.ml-30,
.mx-30 {
  margin-left: 3rem !important;
}

.m-40 {
  margin: 4rem !important;
}

.mt-40,
.my-40 {
  margin-top: 4rem !important;
}

.mr-40,
.mx-40 {
  margin-right: 4rem !important;
}

.mb-40,
.my-40 {
  margin-bottom: 4rem !important;
}

.ml-40,
.mx-40 {
  margin-left: 4rem !important;
}

.m-50 {
  margin: 5rem !important;
}

.mt-50,
.my-50 {
  margin-top: 5rem !important;
}

.mr-50,
.mx-50 {
  margin-right: 5rem !important;
}

.mb-50,
.my-50 {
  margin-bottom: 5rem !important;
}

.ml-50,
.mx-50 {
  margin-left: 5rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-5 {
  padding: 0.5rem !important;
}

.pt-5,
.py-5 {
  padding-top: 0.5rem !important;
}

.pr-5,
.px-5 {
  padding-right: 0.5rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 0.5rem !important;
}

.pl-5,
.px-5 {
  padding-left: 0.5rem !important;
}

.p-10 {
  padding: 1rem !important;
}

.pt-10,
.py-10 {
  padding-top: 1rem !important;
}

.pr-10,
.px-10 {
  padding-right: 1rem !important;
}

.pb-10,
.py-10 {
  padding-bottom: 1rem !important;
}

.pl-10,
.px-10 {
  padding-left: 1rem !important;
}

.p-20 {
  padding: 2rem !important;
}

.pt-20,
.py-20 {
  padding-top: 2rem !important;
}

.pr-20,
.px-20 {
  padding-right: 2rem !important;
}

.pb-20,
.py-20 {
  padding-bottom: 2rem !important;
}

.pl-20,
.px-20 {
  padding-left: 2rem !important;
}

.p-28 {
  padding: 2.8rem !important;
}

.pt-28,
.py-28 {
  padding-top: 2.8rem !important;
}

.pr-28,
.px-28 {
  padding-right: 2.8rem !important;
}

.pb-28,
.py-28 {
  padding-bottom: 2.8rem !important;
}

.pl-28,
.px-28 {
  padding-left: 2.8rem !important;
}

.p-30 {
  padding: 3rem !important;
}

.pt-30,
.py-30 {
  padding-top: 3rem !important;
}

.pr-30,
.px-30 {
  padding-right: 3rem !important;
}

.pb-30,
.py-30 {
  padding-bottom: 3rem !important;
}

.pl-30,
.px-30 {
  padding-left: 3rem !important;
}

.p-40 {
  padding: 4rem !important;
}

.pt-40,
.py-40 {
  padding-top: 4rem !important;
}

.pr-40,
.px-40 {
  padding-right: 4rem !important;
}

.pb-40,
.py-40 {
  padding-bottom: 4rem !important;
}

.pl-40,
.px-40 {
  padding-left: 4rem !important;
}

.p-50 {
  padding: 5rem !important;
}

.pt-50,
.py-50 {
  padding-top: 5rem !important;
}

.pr-50,
.px-50 {
  padding-right: 5rem !important;
}

.pb-50,
.py-50 {
  padding-bottom: 5rem !important;
}

.pl-50,
.px-50 {
  padding-left: 5rem !important;
}

.m-n5 {
  margin: -0.5rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -0.5rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -0.5rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -0.5rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -0.5rem !important;
}

.m-n10 {
  margin: -1rem !important;
}

.mt-n10,
.my-n10 {
  margin-top: -1rem !important;
}

.mr-n10,
.mx-n10 {
  margin-right: -1rem !important;
}

.mb-n10,
.my-n10 {
  margin-bottom: -1rem !important;
}

.ml-n10,
.mx-n10 {
  margin-left: -1rem !important;
}

.m-n20 {
  margin: -2rem !important;
}

.mt-n20,
.my-n20 {
  margin-top: -2rem !important;
}

.mr-n20,
.mx-n20 {
  margin-right: -2rem !important;
}

.mb-n20,
.my-n20 {
  margin-bottom: -2rem !important;
}

.ml-n20,
.mx-n20 {
  margin-left: -2rem !important;
}

.m-n28 {
  margin: -2.8rem !important;
}

.mt-n28,
.my-n28 {
  margin-top: -2.8rem !important;
}

.mr-n28,
.mx-n28 {
  margin-right: -2.8rem !important;
}

.mb-n28,
.my-n28 {
  margin-bottom: -2.8rem !important;
}

.ml-n28,
.mx-n28 {
  margin-left: -2.8rem !important;
}

.m-n30 {
  margin: -3rem !important;
}

.mt-n30,
.my-n30 {
  margin-top: -3rem !important;
}

.mr-n30,
.mx-n30 {
  margin-right: -3rem !important;
}

.mb-n30,
.my-n30 {
  margin-bottom: -3rem !important;
}

.ml-n30,
.mx-n30 {
  margin-left: -3rem !important;
}

.m-n40 {
  margin: -4rem !important;
}

.mt-n40,
.my-n40 {
  margin-top: -4rem !important;
}

.mr-n40,
.mx-n40 {
  margin-right: -4rem !important;
}

.mb-n40,
.my-n40 {
  margin-bottom: -4rem !important;
}

.ml-n40,
.mx-n40 {
  margin-left: -4rem !important;
}

.m-n50 {
  margin: -5rem !important;
}

.mt-n50,
.my-n50 {
  margin-top: -5rem !important;
}

.mr-n50,
.mx-n50 {
  margin-right: -5rem !important;
}

.mb-n50,
.my-n50 {
  margin-bottom: -5rem !important;
}

.ml-n50,
.mx-n50 {
  margin-left: -5rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-5 {
    margin: 0.5rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 0.5rem !important;
  }
  .m-sm-10 {
    margin: 1rem !important;
  }
  .mt-sm-10,
  .my-sm-10 {
    margin-top: 1rem !important;
  }
  .mr-sm-10,
  .mx-sm-10 {
    margin-right: 1rem !important;
  }
  .mb-sm-10,
  .my-sm-10 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-10,
  .mx-sm-10 {
    margin-left: 1rem !important;
  }
  .m-sm-20 {
    margin: 2rem !important;
  }
  .mt-sm-20,
  .my-sm-20 {
    margin-top: 2rem !important;
  }
  .mr-sm-20,
  .mx-sm-20 {
    margin-right: 2rem !important;
  }
  .mb-sm-20,
  .my-sm-20 {
    margin-bottom: 2rem !important;
  }
  .ml-sm-20,
  .mx-sm-20 {
    margin-left: 2rem !important;
  }
  .m-sm-28 {
    margin: 2.8rem !important;
  }
  .mt-sm-28,
  .my-sm-28 {
    margin-top: 2.8rem !important;
  }
  .mr-sm-28,
  .mx-sm-28 {
    margin-right: 2.8rem !important;
  }
  .mb-sm-28,
  .my-sm-28 {
    margin-bottom: 2.8rem !important;
  }
  .ml-sm-28,
  .mx-sm-28 {
    margin-left: 2.8rem !important;
  }
  .m-sm-30 {
    margin: 3rem !important;
  }
  .mt-sm-30,
  .my-sm-30 {
    margin-top: 3rem !important;
  }
  .mr-sm-30,
  .mx-sm-30 {
    margin-right: 3rem !important;
  }
  .mb-sm-30,
  .my-sm-30 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-30,
  .mx-sm-30 {
    margin-left: 3rem !important;
  }
  .m-sm-40 {
    margin: 4rem !important;
  }
  .mt-sm-40,
  .my-sm-40 {
    margin-top: 4rem !important;
  }
  .mr-sm-40,
  .mx-sm-40 {
    margin-right: 4rem !important;
  }
  .mb-sm-40,
  .my-sm-40 {
    margin-bottom: 4rem !important;
  }
  .ml-sm-40,
  .mx-sm-40 {
    margin-left: 4rem !important;
  }
  .m-sm-50 {
    margin: 5rem !important;
  }
  .mt-sm-50,
  .my-sm-50 {
    margin-top: 5rem !important;
  }
  .mr-sm-50,
  .mx-sm-50 {
    margin-right: 5rem !important;
  }
  .mb-sm-50,
  .my-sm-50 {
    margin-bottom: 5rem !important;
  }
  .ml-sm-50,
  .mx-sm-50 {
    margin-left: 5rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-5 {
    padding: 0.5rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 0.5rem !important;
  }
  .p-sm-10 {
    padding: 1rem !important;
  }
  .pt-sm-10,
  .py-sm-10 {
    padding-top: 1rem !important;
  }
  .pr-sm-10,
  .px-sm-10 {
    padding-right: 1rem !important;
  }
  .pb-sm-10,
  .py-sm-10 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-10,
  .px-sm-10 {
    padding-left: 1rem !important;
  }
  .p-sm-20 {
    padding: 2rem !important;
  }
  .pt-sm-20,
  .py-sm-20 {
    padding-top: 2rem !important;
  }
  .pr-sm-20,
  .px-sm-20 {
    padding-right: 2rem !important;
  }
  .pb-sm-20,
  .py-sm-20 {
    padding-bottom: 2rem !important;
  }
  .pl-sm-20,
  .px-sm-20 {
    padding-left: 2rem !important;
  }
  .p-sm-28 {
    padding: 2.8rem !important;
  }
  .pt-sm-28,
  .py-sm-28 {
    padding-top: 2.8rem !important;
  }
  .pr-sm-28,
  .px-sm-28 {
    padding-right: 2.8rem !important;
  }
  .pb-sm-28,
  .py-sm-28 {
    padding-bottom: 2.8rem !important;
  }
  .pl-sm-28,
  .px-sm-28 {
    padding-left: 2.8rem !important;
  }
  .p-sm-30 {
    padding: 3rem !important;
  }
  .pt-sm-30,
  .py-sm-30 {
    padding-top: 3rem !important;
  }
  .pr-sm-30,
  .px-sm-30 {
    padding-right: 3rem !important;
  }
  .pb-sm-30,
  .py-sm-30 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-30,
  .px-sm-30 {
    padding-left: 3rem !important;
  }
  .p-sm-40 {
    padding: 4rem !important;
  }
  .pt-sm-40,
  .py-sm-40 {
    padding-top: 4rem !important;
  }
  .pr-sm-40,
  .px-sm-40 {
    padding-right: 4rem !important;
  }
  .pb-sm-40,
  .py-sm-40 {
    padding-bottom: 4rem !important;
  }
  .pl-sm-40,
  .px-sm-40 {
    padding-left: 4rem !important;
  }
  .p-sm-50 {
    padding: 5rem !important;
  }
  .pt-sm-50,
  .py-sm-50 {
    padding-top: 5rem !important;
  }
  .pr-sm-50,
  .px-sm-50 {
    padding-right: 5rem !important;
  }
  .pb-sm-50,
  .py-sm-50 {
    padding-bottom: 5rem !important;
  }
  .pl-sm-50,
  .px-sm-50 {
    padding-left: 5rem !important;
  }
  .m-sm-n5 {
    margin: -0.5rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n10 {
    margin: -1rem !important;
  }
  .mt-sm-n10,
  .my-sm-n10 {
    margin-top: -1rem !important;
  }
  .mr-sm-n10,
  .mx-sm-n10 {
    margin-right: -1rem !important;
  }
  .mb-sm-n10,
  .my-sm-n10 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n10,
  .mx-sm-n10 {
    margin-left: -1rem !important;
  }
  .m-sm-n20 {
    margin: -2rem !important;
  }
  .mt-sm-n20,
  .my-sm-n20 {
    margin-top: -2rem !important;
  }
  .mr-sm-n20,
  .mx-sm-n20 {
    margin-right: -2rem !important;
  }
  .mb-sm-n20,
  .my-sm-n20 {
    margin-bottom: -2rem !important;
  }
  .ml-sm-n20,
  .mx-sm-n20 {
    margin-left: -2rem !important;
  }
  .m-sm-n28 {
    margin: -2.8rem !important;
  }
  .mt-sm-n28,
  .my-sm-n28 {
    margin-top: -2.8rem !important;
  }
  .mr-sm-n28,
  .mx-sm-n28 {
    margin-right: -2.8rem !important;
  }
  .mb-sm-n28,
  .my-sm-n28 {
    margin-bottom: -2.8rem !important;
  }
  .ml-sm-n28,
  .mx-sm-n28 {
    margin-left: -2.8rem !important;
  }
  .m-sm-n30 {
    margin: -3rem !important;
  }
  .mt-sm-n30,
  .my-sm-n30 {
    margin-top: -3rem !important;
  }
  .mr-sm-n30,
  .mx-sm-n30 {
    margin-right: -3rem !important;
  }
  .mb-sm-n30,
  .my-sm-n30 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n30,
  .mx-sm-n30 {
    margin-left: -3rem !important;
  }
  .m-sm-n40 {
    margin: -4rem !important;
  }
  .mt-sm-n40,
  .my-sm-n40 {
    margin-top: -4rem !important;
  }
  .mr-sm-n40,
  .mx-sm-n40 {
    margin-right: -4rem !important;
  }
  .mb-sm-n40,
  .my-sm-n40 {
    margin-bottom: -4rem !important;
  }
  .ml-sm-n40,
  .mx-sm-n40 {
    margin-left: -4rem !important;
  }
  .m-sm-n50 {
    margin: -5rem !important;
  }
  .mt-sm-n50,
  .my-sm-n50 {
    margin-top: -5rem !important;
  }
  .mr-sm-n50,
  .mx-sm-n50 {
    margin-right: -5rem !important;
  }
  .mb-sm-n50,
  .my-sm-n50 {
    margin-bottom: -5rem !important;
  }
  .ml-sm-n50,
  .mx-sm-n50 {
    margin-left: -5rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-5 {
    margin: 0.5rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 0.5rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 0.5rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 0.5rem !important;
  }
  .m-md-10 {
    margin: 1rem !important;
  }
  .mt-md-10,
  .my-md-10 {
    margin-top: 1rem !important;
  }
  .mr-md-10,
  .mx-md-10 {
    margin-right: 1rem !important;
  }
  .mb-md-10,
  .my-md-10 {
    margin-bottom: 1rem !important;
  }
  .ml-md-10,
  .mx-md-10 {
    margin-left: 1rem !important;
  }
  .m-md-20 {
    margin: 2rem !important;
  }
  .mt-md-20,
  .my-md-20 {
    margin-top: 2rem !important;
  }
  .mr-md-20,
  .mx-md-20 {
    margin-right: 2rem !important;
  }
  .mb-md-20,
  .my-md-20 {
    margin-bottom: 2rem !important;
  }
  .ml-md-20,
  .mx-md-20 {
    margin-left: 2rem !important;
  }
  .m-md-28 {
    margin: 2.8rem !important;
  }
  .mt-md-28,
  .my-md-28 {
    margin-top: 2.8rem !important;
  }
  .mr-md-28,
  .mx-md-28 {
    margin-right: 2.8rem !important;
  }
  .mb-md-28,
  .my-md-28 {
    margin-bottom: 2.8rem !important;
  }
  .ml-md-28,
  .mx-md-28 {
    margin-left: 2.8rem !important;
  }
  .m-md-30 {
    margin: 3rem !important;
  }
  .mt-md-30,
  .my-md-30 {
    margin-top: 3rem !important;
  }
  .mr-md-30,
  .mx-md-30 {
    margin-right: 3rem !important;
  }
  .mb-md-30,
  .my-md-30 {
    margin-bottom: 3rem !important;
  }
  .ml-md-30,
  .mx-md-30 {
    margin-left: 3rem !important;
  }
  .m-md-40 {
    margin: 4rem !important;
  }
  .mt-md-40,
  .my-md-40 {
    margin-top: 4rem !important;
  }
  .mr-md-40,
  .mx-md-40 {
    margin-right: 4rem !important;
  }
  .mb-md-40,
  .my-md-40 {
    margin-bottom: 4rem !important;
  }
  .ml-md-40,
  .mx-md-40 {
    margin-left: 4rem !important;
  }
  .m-md-50 {
    margin: 5rem !important;
  }
  .mt-md-50,
  .my-md-50 {
    margin-top: 5rem !important;
  }
  .mr-md-50,
  .mx-md-50 {
    margin-right: 5rem !important;
  }
  .mb-md-50,
  .my-md-50 {
    margin-bottom: 5rem !important;
  }
  .ml-md-50,
  .mx-md-50 {
    margin-left: 5rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-5 {
    padding: 0.5rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 0.5rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 0.5rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 0.5rem !important;
  }
  .p-md-10 {
    padding: 1rem !important;
  }
  .pt-md-10,
  .py-md-10 {
    padding-top: 1rem !important;
  }
  .pr-md-10,
  .px-md-10 {
    padding-right: 1rem !important;
  }
  .pb-md-10,
  .py-md-10 {
    padding-bottom: 1rem !important;
  }
  .pl-md-10,
  .px-md-10 {
    padding-left: 1rem !important;
  }
  .p-md-20 {
    padding: 2rem !important;
  }
  .pt-md-20,
  .py-md-20 {
    padding-top: 2rem !important;
  }
  .pr-md-20,
  .px-md-20 {
    padding-right: 2rem !important;
  }
  .pb-md-20,
  .py-md-20 {
    padding-bottom: 2rem !important;
  }
  .pl-md-20,
  .px-md-20 {
    padding-left: 2rem !important;
  }
  .p-md-28 {
    padding: 2.8rem !important;
  }
  .pt-md-28,
  .py-md-28 {
    padding-top: 2.8rem !important;
  }
  .pr-md-28,
  .px-md-28 {
    padding-right: 2.8rem !important;
  }
  .pb-md-28,
  .py-md-28 {
    padding-bottom: 2.8rem !important;
  }
  .pl-md-28,
  .px-md-28 {
    padding-left: 2.8rem !important;
  }
  .p-md-30 {
    padding: 3rem !important;
  }
  .pt-md-30,
  .py-md-30 {
    padding-top: 3rem !important;
  }
  .pr-md-30,
  .px-md-30 {
    padding-right: 3rem !important;
  }
  .pb-md-30,
  .py-md-30 {
    padding-bottom: 3rem !important;
  }
  .pl-md-30,
  .px-md-30 {
    padding-left: 3rem !important;
  }
  .p-md-40 {
    padding: 4rem !important;
  }
  .pt-md-40,
  .py-md-40 {
    padding-top: 4rem !important;
  }
  .pr-md-40,
  .px-md-40 {
    padding-right: 4rem !important;
  }
  .pb-md-40,
  .py-md-40 {
    padding-bottom: 4rem !important;
  }
  .pl-md-40,
  .px-md-40 {
    padding-left: 4rem !important;
  }
  .p-md-50 {
    padding: 5rem !important;
  }
  .pt-md-50,
  .py-md-50 {
    padding-top: 5rem !important;
  }
  .pr-md-50,
  .px-md-50 {
    padding-right: 5rem !important;
  }
  .pb-md-50,
  .py-md-50 {
    padding-bottom: 5rem !important;
  }
  .pl-md-50,
  .px-md-50 {
    padding-left: 5rem !important;
  }
  .m-md-n5 {
    margin: -0.5rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -0.5rem !important;
  }
  .m-md-n10 {
    margin: -1rem !important;
  }
  .mt-md-n10,
  .my-md-n10 {
    margin-top: -1rem !important;
  }
  .mr-md-n10,
  .mx-md-n10 {
    margin-right: -1rem !important;
  }
  .mb-md-n10,
  .my-md-n10 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n10,
  .mx-md-n10 {
    margin-left: -1rem !important;
  }
  .m-md-n20 {
    margin: -2rem !important;
  }
  .mt-md-n20,
  .my-md-n20 {
    margin-top: -2rem !important;
  }
  .mr-md-n20,
  .mx-md-n20 {
    margin-right: -2rem !important;
  }
  .mb-md-n20,
  .my-md-n20 {
    margin-bottom: -2rem !important;
  }
  .ml-md-n20,
  .mx-md-n20 {
    margin-left: -2rem !important;
  }
  .m-md-n28 {
    margin: -2.8rem !important;
  }
  .mt-md-n28,
  .my-md-n28 {
    margin-top: -2.8rem !important;
  }
  .mr-md-n28,
  .mx-md-n28 {
    margin-right: -2.8rem !important;
  }
  .mb-md-n28,
  .my-md-n28 {
    margin-bottom: -2.8rem !important;
  }
  .ml-md-n28,
  .mx-md-n28 {
    margin-left: -2.8rem !important;
  }
  .m-md-n30 {
    margin: -3rem !important;
  }
  .mt-md-n30,
  .my-md-n30 {
    margin-top: -3rem !important;
  }
  .mr-md-n30,
  .mx-md-n30 {
    margin-right: -3rem !important;
  }
  .mb-md-n30,
  .my-md-n30 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n30,
  .mx-md-n30 {
    margin-left: -3rem !important;
  }
  .m-md-n40 {
    margin: -4rem !important;
  }
  .mt-md-n40,
  .my-md-n40 {
    margin-top: -4rem !important;
  }
  .mr-md-n40,
  .mx-md-n40 {
    margin-right: -4rem !important;
  }
  .mb-md-n40,
  .my-md-n40 {
    margin-bottom: -4rem !important;
  }
  .ml-md-n40,
  .mx-md-n40 {
    margin-left: -4rem !important;
  }
  .m-md-n50 {
    margin: -5rem !important;
  }
  .mt-md-n50,
  .my-md-n50 {
    margin-top: -5rem !important;
  }
  .mr-md-n50,
  .mx-md-n50 {
    margin-right: -5rem !important;
  }
  .mb-md-n50,
  .my-md-n50 {
    margin-bottom: -5rem !important;
  }
  .ml-md-n50,
  .mx-md-n50 {
    margin-left: -5rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-5 {
    margin: 0.5rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 0.5rem !important;
  }
  .m-lg-10 {
    margin: 1rem !important;
  }
  .mt-lg-10,
  .my-lg-10 {
    margin-top: 1rem !important;
  }
  .mr-lg-10,
  .mx-lg-10 {
    margin-right: 1rem !important;
  }
  .mb-lg-10,
  .my-lg-10 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-10,
  .mx-lg-10 {
    margin-left: 1rem !important;
  }
  .m-lg-20 {
    margin: 2rem !important;
  }
  .mt-lg-20,
  .my-lg-20 {
    margin-top: 2rem !important;
  }
  .mr-lg-20,
  .mx-lg-20 {
    margin-right: 2rem !important;
  }
  .mb-lg-20,
  .my-lg-20 {
    margin-bottom: 2rem !important;
  }
  .ml-lg-20,
  .mx-lg-20 {
    margin-left: 2rem !important;
  }
  .m-lg-28 {
    margin: 2.8rem !important;
  }
  .mt-lg-28,
  .my-lg-28 {
    margin-top: 2.8rem !important;
  }
  .mr-lg-28,
  .mx-lg-28 {
    margin-right: 2.8rem !important;
  }
  .mb-lg-28,
  .my-lg-28 {
    margin-bottom: 2.8rem !important;
  }
  .ml-lg-28,
  .mx-lg-28 {
    margin-left: 2.8rem !important;
  }
  .m-lg-30 {
    margin: 3rem !important;
  }
  .mt-lg-30,
  .my-lg-30 {
    margin-top: 3rem !important;
  }
  .mr-lg-30,
  .mx-lg-30 {
    margin-right: 3rem !important;
  }
  .mb-lg-30,
  .my-lg-30 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-30,
  .mx-lg-30 {
    margin-left: 3rem !important;
  }
  .m-lg-40 {
    margin: 4rem !important;
  }
  .mt-lg-40,
  .my-lg-40 {
    margin-top: 4rem !important;
  }
  .mr-lg-40,
  .mx-lg-40 {
    margin-right: 4rem !important;
  }
  .mb-lg-40,
  .my-lg-40 {
    margin-bottom: 4rem !important;
  }
  .ml-lg-40,
  .mx-lg-40 {
    margin-left: 4rem !important;
  }
  .m-lg-50 {
    margin: 5rem !important;
  }
  .mt-lg-50,
  .my-lg-50 {
    margin-top: 5rem !important;
  }
  .mr-lg-50,
  .mx-lg-50 {
    margin-right: 5rem !important;
  }
  .mb-lg-50,
  .my-lg-50 {
    margin-bottom: 5rem !important;
  }
  .ml-lg-50,
  .mx-lg-50 {
    margin-left: 5rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-5 {
    padding: 0.5rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 0.5rem !important;
  }
  .p-lg-10 {
    padding: 1rem !important;
  }
  .pt-lg-10,
  .py-lg-10 {
    padding-top: 1rem !important;
  }
  .pr-lg-10,
  .px-lg-10 {
    padding-right: 1rem !important;
  }
  .pb-lg-10,
  .py-lg-10 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-10,
  .px-lg-10 {
    padding-left: 1rem !important;
  }
  .p-lg-20 {
    padding: 2rem !important;
  }
  .pt-lg-20,
  .py-lg-20 {
    padding-top: 2rem !important;
  }
  .pr-lg-20,
  .px-lg-20 {
    padding-right: 2rem !important;
  }
  .pb-lg-20,
  .py-lg-20 {
    padding-bottom: 2rem !important;
  }
  .pl-lg-20,
  .px-lg-20 {
    padding-left: 2rem !important;
  }
  .p-lg-28 {
    padding: 2.8rem !important;
  }
  .pt-lg-28,
  .py-lg-28 {
    padding-top: 2.8rem !important;
  }
  .pr-lg-28,
  .px-lg-28 {
    padding-right: 2.8rem !important;
  }
  .pb-lg-28,
  .py-lg-28 {
    padding-bottom: 2.8rem !important;
  }
  .pl-lg-28,
  .px-lg-28 {
    padding-left: 2.8rem !important;
  }
  .p-lg-30 {
    padding: 3rem !important;
  }
  .pt-lg-30,
  .py-lg-30 {
    padding-top: 3rem !important;
  }
  .pr-lg-30,
  .px-lg-30 {
    padding-right: 3rem !important;
  }
  .pb-lg-30,
  .py-lg-30 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-30,
  .px-lg-30 {
    padding-left: 3rem !important;
  }
  .p-lg-40 {
    padding: 4rem !important;
  }
  .pt-lg-40,
  .py-lg-40 {
    padding-top: 4rem !important;
  }
  .pr-lg-40,
  .px-lg-40 {
    padding-right: 4rem !important;
  }
  .pb-lg-40,
  .py-lg-40 {
    padding-bottom: 4rem !important;
  }
  .pl-lg-40,
  .px-lg-40 {
    padding-left: 4rem !important;
  }
  .p-lg-50 {
    padding: 5rem !important;
  }
  .pt-lg-50,
  .py-lg-50 {
    padding-top: 5rem !important;
  }
  .pr-lg-50,
  .px-lg-50 {
    padding-right: 5rem !important;
  }
  .pb-lg-50,
  .py-lg-50 {
    padding-bottom: 5rem !important;
  }
  .pl-lg-50,
  .px-lg-50 {
    padding-left: 5rem !important;
  }
  .m-lg-n5 {
    margin: -0.5rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n10 {
    margin: -1rem !important;
  }
  .mt-lg-n10,
  .my-lg-n10 {
    margin-top: -1rem !important;
  }
  .mr-lg-n10,
  .mx-lg-n10 {
    margin-right: -1rem !important;
  }
  .mb-lg-n10,
  .my-lg-n10 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n10,
  .mx-lg-n10 {
    margin-left: -1rem !important;
  }
  .m-lg-n20 {
    margin: -2rem !important;
  }
  .mt-lg-n20,
  .my-lg-n20 {
    margin-top: -2rem !important;
  }
  .mr-lg-n20,
  .mx-lg-n20 {
    margin-right: -2rem !important;
  }
  .mb-lg-n20,
  .my-lg-n20 {
    margin-bottom: -2rem !important;
  }
  .ml-lg-n20,
  .mx-lg-n20 {
    margin-left: -2rem !important;
  }
  .m-lg-n28 {
    margin: -2.8rem !important;
  }
  .mt-lg-n28,
  .my-lg-n28 {
    margin-top: -2.8rem !important;
  }
  .mr-lg-n28,
  .mx-lg-n28 {
    margin-right: -2.8rem !important;
  }
  .mb-lg-n28,
  .my-lg-n28 {
    margin-bottom: -2.8rem !important;
  }
  .ml-lg-n28,
  .mx-lg-n28 {
    margin-left: -2.8rem !important;
  }
  .m-lg-n30 {
    margin: -3rem !important;
  }
  .mt-lg-n30,
  .my-lg-n30 {
    margin-top: -3rem !important;
  }
  .mr-lg-n30,
  .mx-lg-n30 {
    margin-right: -3rem !important;
  }
  .mb-lg-n30,
  .my-lg-n30 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n30,
  .mx-lg-n30 {
    margin-left: -3rem !important;
  }
  .m-lg-n40 {
    margin: -4rem !important;
  }
  .mt-lg-n40,
  .my-lg-n40 {
    margin-top: -4rem !important;
  }
  .mr-lg-n40,
  .mx-lg-n40 {
    margin-right: -4rem !important;
  }
  .mb-lg-n40,
  .my-lg-n40 {
    margin-bottom: -4rem !important;
  }
  .ml-lg-n40,
  .mx-lg-n40 {
    margin-left: -4rem !important;
  }
  .m-lg-n50 {
    margin: -5rem !important;
  }
  .mt-lg-n50,
  .my-lg-n50 {
    margin-top: -5rem !important;
  }
  .mr-lg-n50,
  .mx-lg-n50 {
    margin-right: -5rem !important;
  }
  .mb-lg-n50,
  .my-lg-n50 {
    margin-bottom: -5rem !important;
  }
  .ml-lg-n50,
  .mx-lg-n50 {
    margin-left: -5rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-5 {
    margin: 0.5rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 0.5rem !important;
  }
  .m-xl-10 {
    margin: 1rem !important;
  }
  .mt-xl-10,
  .my-xl-10 {
    margin-top: 1rem !important;
  }
  .mr-xl-10,
  .mx-xl-10 {
    margin-right: 1rem !important;
  }
  .mb-xl-10,
  .my-xl-10 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-10,
  .mx-xl-10 {
    margin-left: 1rem !important;
  }
  .m-xl-20 {
    margin: 2rem !important;
  }
  .mt-xl-20,
  .my-xl-20 {
    margin-top: 2rem !important;
  }
  .mr-xl-20,
  .mx-xl-20 {
    margin-right: 2rem !important;
  }
  .mb-xl-20,
  .my-xl-20 {
    margin-bottom: 2rem !important;
  }
  .ml-xl-20,
  .mx-xl-20 {
    margin-left: 2rem !important;
  }
  .m-xl-28 {
    margin: 2.8rem !important;
  }
  .mt-xl-28,
  .my-xl-28 {
    margin-top: 2.8rem !important;
  }
  .mr-xl-28,
  .mx-xl-28 {
    margin-right: 2.8rem !important;
  }
  .mb-xl-28,
  .my-xl-28 {
    margin-bottom: 2.8rem !important;
  }
  .ml-xl-28,
  .mx-xl-28 {
    margin-left: 2.8rem !important;
  }
  .m-xl-30 {
    margin: 3rem !important;
  }
  .mt-xl-30,
  .my-xl-30 {
    margin-top: 3rem !important;
  }
  .mr-xl-30,
  .mx-xl-30 {
    margin-right: 3rem !important;
  }
  .mb-xl-30,
  .my-xl-30 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-30,
  .mx-xl-30 {
    margin-left: 3rem !important;
  }
  .m-xl-40 {
    margin: 4rem !important;
  }
  .mt-xl-40,
  .my-xl-40 {
    margin-top: 4rem !important;
  }
  .mr-xl-40,
  .mx-xl-40 {
    margin-right: 4rem !important;
  }
  .mb-xl-40,
  .my-xl-40 {
    margin-bottom: 4rem !important;
  }
  .ml-xl-40,
  .mx-xl-40 {
    margin-left: 4rem !important;
  }
  .m-xl-50 {
    margin: 5rem !important;
  }
  .mt-xl-50,
  .my-xl-50 {
    margin-top: 5rem !important;
  }
  .mr-xl-50,
  .mx-xl-50 {
    margin-right: 5rem !important;
  }
  .mb-xl-50,
  .my-xl-50 {
    margin-bottom: 5rem !important;
  }
  .ml-xl-50,
  .mx-xl-50 {
    margin-left: 5rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-5 {
    padding: 0.5rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 0.5rem !important;
  }
  .p-xl-10 {
    padding: 1rem !important;
  }
  .pt-xl-10,
  .py-xl-10 {
    padding-top: 1rem !important;
  }
  .pr-xl-10,
  .px-xl-10 {
    padding-right: 1rem !important;
  }
  .pb-xl-10,
  .py-xl-10 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-10,
  .px-xl-10 {
    padding-left: 1rem !important;
  }
  .p-xl-20 {
    padding: 2rem !important;
  }
  .pt-xl-20,
  .py-xl-20 {
    padding-top: 2rem !important;
  }
  .pr-xl-20,
  .px-xl-20 {
    padding-right: 2rem !important;
  }
  .pb-xl-20,
  .py-xl-20 {
    padding-bottom: 2rem !important;
  }
  .pl-xl-20,
  .px-xl-20 {
    padding-left: 2rem !important;
  }
  .p-xl-28 {
    padding: 2.8rem !important;
  }
  .pt-xl-28,
  .py-xl-28 {
    padding-top: 2.8rem !important;
  }
  .pr-xl-28,
  .px-xl-28 {
    padding-right: 2.8rem !important;
  }
  .pb-xl-28,
  .py-xl-28 {
    padding-bottom: 2.8rem !important;
  }
  .pl-xl-28,
  .px-xl-28 {
    padding-left: 2.8rem !important;
  }
  .p-xl-30 {
    padding: 3rem !important;
  }
  .pt-xl-30,
  .py-xl-30 {
    padding-top: 3rem !important;
  }
  .pr-xl-30,
  .px-xl-30 {
    padding-right: 3rem !important;
  }
  .pb-xl-30,
  .py-xl-30 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-30,
  .px-xl-30 {
    padding-left: 3rem !important;
  }
  .p-xl-40 {
    padding: 4rem !important;
  }
  .pt-xl-40,
  .py-xl-40 {
    padding-top: 4rem !important;
  }
  .pr-xl-40,
  .px-xl-40 {
    padding-right: 4rem !important;
  }
  .pb-xl-40,
  .py-xl-40 {
    padding-bottom: 4rem !important;
  }
  .pl-xl-40,
  .px-xl-40 {
    padding-left: 4rem !important;
  }
  .p-xl-50 {
    padding: 5rem !important;
  }
  .pt-xl-50,
  .py-xl-50 {
    padding-top: 5rem !important;
  }
  .pr-xl-50,
  .px-xl-50 {
    padding-right: 5rem !important;
  }
  .pb-xl-50,
  .py-xl-50 {
    padding-bottom: 5rem !important;
  }
  .pl-xl-50,
  .px-xl-50 {
    padding-left: 5rem !important;
  }
  .m-xl-n5 {
    margin: -0.5rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n10 {
    margin: -1rem !important;
  }
  .mt-xl-n10,
  .my-xl-n10 {
    margin-top: -1rem !important;
  }
  .mr-xl-n10,
  .mx-xl-n10 {
    margin-right: -1rem !important;
  }
  .mb-xl-n10,
  .my-xl-n10 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n10,
  .mx-xl-n10 {
    margin-left: -1rem !important;
  }
  .m-xl-n20 {
    margin: -2rem !important;
  }
  .mt-xl-n20,
  .my-xl-n20 {
    margin-top: -2rem !important;
  }
  .mr-xl-n20,
  .mx-xl-n20 {
    margin-right: -2rem !important;
  }
  .mb-xl-n20,
  .my-xl-n20 {
    margin-bottom: -2rem !important;
  }
  .ml-xl-n20,
  .mx-xl-n20 {
    margin-left: -2rem !important;
  }
  .m-xl-n28 {
    margin: -2.8rem !important;
  }
  .mt-xl-n28,
  .my-xl-n28 {
    margin-top: -2.8rem !important;
  }
  .mr-xl-n28,
  .mx-xl-n28 {
    margin-right: -2.8rem !important;
  }
  .mb-xl-n28,
  .my-xl-n28 {
    margin-bottom: -2.8rem !important;
  }
  .ml-xl-n28,
  .mx-xl-n28 {
    margin-left: -2.8rem !important;
  }
  .m-xl-n30 {
    margin: -3rem !important;
  }
  .mt-xl-n30,
  .my-xl-n30 {
    margin-top: -3rem !important;
  }
  .mr-xl-n30,
  .mx-xl-n30 {
    margin-right: -3rem !important;
  }
  .mb-xl-n30,
  .my-xl-n30 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n30,
  .mx-xl-n30 {
    margin-left: -3rem !important;
  }
  .m-xl-n40 {
    margin: -4rem !important;
  }
  .mt-xl-n40,
  .my-xl-n40 {
    margin-top: -4rem !important;
  }
  .mr-xl-n40,
  .mx-xl-n40 {
    margin-right: -4rem !important;
  }
  .mb-xl-n40,
  .my-xl-n40 {
    margin-bottom: -4rem !important;
  }
  .ml-xl-n40,
  .mx-xl-n40 {
    margin-left: -4rem !important;
  }
  .m-xl-n50 {
    margin: -5rem !important;
  }
  .mt-xl-n50,
  .my-xl-n50 {
    margin-top: -5rem !important;
  }
  .mr-xl-n50,
  .mx-xl-n50 {
    margin-right: -5rem !important;
  }
  .mb-xl-n50,
  .my-xl-n50 {
    margin-bottom: -5rem !important;
  }
  .ml-xl-n50,
  .mx-xl-n50 {
    margin-left: -5rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1600px) {
  .m-xxl-0 {
    margin: 0 !important;
  }
  .mt-xxl-0,
  .my-xxl-0 {
    margin-top: 0 !important;
  }
  .mr-xxl-0,
  .mx-xxl-0 {
    margin-right: 0 !important;
  }
  .mb-xxl-0,
  .my-xxl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xxl-0,
  .mx-xxl-0 {
    margin-left: 0 !important;
  }
  .m-xxl-5 {
    margin: 0.5rem !important;
  }
  .mt-xxl-5,
  .my-xxl-5 {
    margin-top: 0.5rem !important;
  }
  .mr-xxl-5,
  .mx-xxl-5 {
    margin-right: 0.5rem !important;
  }
  .mb-xxl-5,
  .my-xxl-5 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xxl-5,
  .mx-xxl-5 {
    margin-left: 0.5rem !important;
  }
  .m-xxl-10 {
    margin: 1rem !important;
  }
  .mt-xxl-10,
  .my-xxl-10 {
    margin-top: 1rem !important;
  }
  .mr-xxl-10,
  .mx-xxl-10 {
    margin-right: 1rem !important;
  }
  .mb-xxl-10,
  .my-xxl-10 {
    margin-bottom: 1rem !important;
  }
  .ml-xxl-10,
  .mx-xxl-10 {
    margin-left: 1rem !important;
  }
  .m-xxl-20 {
    margin: 2rem !important;
  }
  .mt-xxl-20,
  .my-xxl-20 {
    margin-top: 2rem !important;
  }
  .mr-xxl-20,
  .mx-xxl-20 {
    margin-right: 2rem !important;
  }
  .mb-xxl-20,
  .my-xxl-20 {
    margin-bottom: 2rem !important;
  }
  .ml-xxl-20,
  .mx-xxl-20 {
    margin-left: 2rem !important;
  }
  .m-xxl-28 {
    margin: 2.8rem !important;
  }
  .mt-xxl-28,
  .my-xxl-28 {
    margin-top: 2.8rem !important;
  }
  .mr-xxl-28,
  .mx-xxl-28 {
    margin-right: 2.8rem !important;
  }
  .mb-xxl-28,
  .my-xxl-28 {
    margin-bottom: 2.8rem !important;
  }
  .ml-xxl-28,
  .mx-xxl-28 {
    margin-left: 2.8rem !important;
  }
  .m-xxl-30 {
    margin: 3rem !important;
  }
  .mt-xxl-30,
  .my-xxl-30 {
    margin-top: 3rem !important;
  }
  .mr-xxl-30,
  .mx-xxl-30 {
    margin-right: 3rem !important;
  }
  .mb-xxl-30,
  .my-xxl-30 {
    margin-bottom: 3rem !important;
  }
  .ml-xxl-30,
  .mx-xxl-30 {
    margin-left: 3rem !important;
  }
  .m-xxl-40 {
    margin: 4rem !important;
  }
  .mt-xxl-40,
  .my-xxl-40 {
    margin-top: 4rem !important;
  }
  .mr-xxl-40,
  .mx-xxl-40 {
    margin-right: 4rem !important;
  }
  .mb-xxl-40,
  .my-xxl-40 {
    margin-bottom: 4rem !important;
  }
  .ml-xxl-40,
  .mx-xxl-40 {
    margin-left: 4rem !important;
  }
  .m-xxl-50 {
    margin: 5rem !important;
  }
  .mt-xxl-50,
  .my-xxl-50 {
    margin-top: 5rem !important;
  }
  .mr-xxl-50,
  .mx-xxl-50 {
    margin-right: 5rem !important;
  }
  .mb-xxl-50,
  .my-xxl-50 {
    margin-bottom: 5rem !important;
  }
  .ml-xxl-50,
  .mx-xxl-50 {
    margin-left: 5rem !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .pt-xxl-0,
  .py-xxl-0 {
    padding-top: 0 !important;
  }
  .pr-xxl-0,
  .px-xxl-0 {
    padding-right: 0 !important;
  }
  .pb-xxl-0,
  .py-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xxl-0,
  .px-xxl-0 {
    padding-left: 0 !important;
  }
  .p-xxl-5 {
    padding: 0.5rem !important;
  }
  .pt-xxl-5,
  .py-xxl-5 {
    padding-top: 0.5rem !important;
  }
  .pr-xxl-5,
  .px-xxl-5 {
    padding-right: 0.5rem !important;
  }
  .pb-xxl-5,
  .py-xxl-5 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xxl-5,
  .px-xxl-5 {
    padding-left: 0.5rem !important;
  }
  .p-xxl-10 {
    padding: 1rem !important;
  }
  .pt-xxl-10,
  .py-xxl-10 {
    padding-top: 1rem !important;
  }
  .pr-xxl-10,
  .px-xxl-10 {
    padding-right: 1rem !important;
  }
  .pb-xxl-10,
  .py-xxl-10 {
    padding-bottom: 1rem !important;
  }
  .pl-xxl-10,
  .px-xxl-10 {
    padding-left: 1rem !important;
  }
  .p-xxl-20 {
    padding: 2rem !important;
  }
  .pt-xxl-20,
  .py-xxl-20 {
    padding-top: 2rem !important;
  }
  .pr-xxl-20,
  .px-xxl-20 {
    padding-right: 2rem !important;
  }
  .pb-xxl-20,
  .py-xxl-20 {
    padding-bottom: 2rem !important;
  }
  .pl-xxl-20,
  .px-xxl-20 {
    padding-left: 2rem !important;
  }
  .p-xxl-28 {
    padding: 2.8rem !important;
  }
  .pt-xxl-28,
  .py-xxl-28 {
    padding-top: 2.8rem !important;
  }
  .pr-xxl-28,
  .px-xxl-28 {
    padding-right: 2.8rem !important;
  }
  .pb-xxl-28,
  .py-xxl-28 {
    padding-bottom: 2.8rem !important;
  }
  .pl-xxl-28,
  .px-xxl-28 {
    padding-left: 2.8rem !important;
  }
  .p-xxl-30 {
    padding: 3rem !important;
  }
  .pt-xxl-30,
  .py-xxl-30 {
    padding-top: 3rem !important;
  }
  .pr-xxl-30,
  .px-xxl-30 {
    padding-right: 3rem !important;
  }
  .pb-xxl-30,
  .py-xxl-30 {
    padding-bottom: 3rem !important;
  }
  .pl-xxl-30,
  .px-xxl-30 {
    padding-left: 3rem !important;
  }
  .p-xxl-40 {
    padding: 4rem !important;
  }
  .pt-xxl-40,
  .py-xxl-40 {
    padding-top: 4rem !important;
  }
  .pr-xxl-40,
  .px-xxl-40 {
    padding-right: 4rem !important;
  }
  .pb-xxl-40,
  .py-xxl-40 {
    padding-bottom: 4rem !important;
  }
  .pl-xxl-40,
  .px-xxl-40 {
    padding-left: 4rem !important;
  }
  .p-xxl-50 {
    padding: 5rem !important;
  }
  .pt-xxl-50,
  .py-xxl-50 {
    padding-top: 5rem !important;
  }
  .pr-xxl-50,
  .px-xxl-50 {
    padding-right: 5rem !important;
  }
  .pb-xxl-50,
  .py-xxl-50 {
    padding-bottom: 5rem !important;
  }
  .pl-xxl-50,
  .px-xxl-50 {
    padding-left: 5rem !important;
  }
  .m-xxl-n5 {
    margin: -0.5rem !important;
  }
  .mt-xxl-n5,
  .my-xxl-n5 {
    margin-top: -0.5rem !important;
  }
  .mr-xxl-n5,
  .mx-xxl-n5 {
    margin-right: -0.5rem !important;
  }
  .mb-xxl-n5,
  .my-xxl-n5 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xxl-n5,
  .mx-xxl-n5 {
    margin-left: -0.5rem !important;
  }
  .m-xxl-n10 {
    margin: -1rem !important;
  }
  .mt-xxl-n10,
  .my-xxl-n10 {
    margin-top: -1rem !important;
  }
  .mr-xxl-n10,
  .mx-xxl-n10 {
    margin-right: -1rem !important;
  }
  .mb-xxl-n10,
  .my-xxl-n10 {
    margin-bottom: -1rem !important;
  }
  .ml-xxl-n10,
  .mx-xxl-n10 {
    margin-left: -1rem !important;
  }
  .m-xxl-n20 {
    margin: -2rem !important;
  }
  .mt-xxl-n20,
  .my-xxl-n20 {
    margin-top: -2rem !important;
  }
  .mr-xxl-n20,
  .mx-xxl-n20 {
    margin-right: -2rem !important;
  }
  .mb-xxl-n20,
  .my-xxl-n20 {
    margin-bottom: -2rem !important;
  }
  .ml-xxl-n20,
  .mx-xxl-n20 {
    margin-left: -2rem !important;
  }
  .m-xxl-n28 {
    margin: -2.8rem !important;
  }
  .mt-xxl-n28,
  .my-xxl-n28 {
    margin-top: -2.8rem !important;
  }
  .mr-xxl-n28,
  .mx-xxl-n28 {
    margin-right: -2.8rem !important;
  }
  .mb-xxl-n28,
  .my-xxl-n28 {
    margin-bottom: -2.8rem !important;
  }
  .ml-xxl-n28,
  .mx-xxl-n28 {
    margin-left: -2.8rem !important;
  }
  .m-xxl-n30 {
    margin: -3rem !important;
  }
  .mt-xxl-n30,
  .my-xxl-n30 {
    margin-top: -3rem !important;
  }
  .mr-xxl-n30,
  .mx-xxl-n30 {
    margin-right: -3rem !important;
  }
  .mb-xxl-n30,
  .my-xxl-n30 {
    margin-bottom: -3rem !important;
  }
  .ml-xxl-n30,
  .mx-xxl-n30 {
    margin-left: -3rem !important;
  }
  .m-xxl-n40 {
    margin: -4rem !important;
  }
  .mt-xxl-n40,
  .my-xxl-n40 {
    margin-top: -4rem !important;
  }
  .mr-xxl-n40,
  .mx-xxl-n40 {
    margin-right: -4rem !important;
  }
  .mb-xxl-n40,
  .my-xxl-n40 {
    margin-bottom: -4rem !important;
  }
  .ml-xxl-n40,
  .mx-xxl-n40 {
    margin-left: -4rem !important;
  }
  .m-xxl-n50 {
    margin: -5rem !important;
  }
  .mt-xxl-n50,
  .my-xxl-n50 {
    margin-top: -5rem !important;
  }
  .mr-xxl-n50,
  .mx-xxl-n50 {
    margin-right: -5rem !important;
  }
  .mb-xxl-n50,
  .my-xxl-n50 {
    margin-bottom: -5rem !important;
  }
  .ml-xxl-n50,
  .mx-xxl-n50 {
    margin-left: -5rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mt-xxl-auto,
  .my-xxl-auto {
    margin-top: auto !important;
  }
  .mr-xxl-auto,
  .mx-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-auto,
  .my-xxl-auto {
    margin-bottom: auto !important;
  }
  .ml-xxl-auto,
  .mx-xxl-auto {
    margin-left: auto !important;
  }
}
.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1600px) {
  .text-xxl-left {
    text-align: left !important;
  }
  .text-xxl-right {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.text-underline {
  text-decoration: underline;
}

.txt-link {
  color: #14885A;
}
.txt-link:hover {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .f-normal {
    font-size: 1.6rem;
  }
}

.font-sec {
  font-family: "Roboto", sans-serif;
}

.text-light {
  color: #b2b2b2;
}

.text-primary {
  color: #14885A;
}

.page-alert {
  background-color: #14885A;
  color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  font-size: 3rem;
  font-weight: 300;
  padding: 3rem 5rem;
  transform: translateY(-100%);
  transition: 0.3s ease;
  text-align: center;
  z-index: 2000;
}
.page-alert.show {
  transform: translateY(0);
}
.page-alert.page-alert--danger {
  background-color: #F23D55;
}
.page-alert .alert-close {
  background: none;
  border: none;
  color: transparent;
  cursor: pointer;
  font-size: 0;
  height: 4rem;
  width: 4rem;
  margin: 0;
  padding: 0;
  position: absolute;
  right: 1.2rem;
  top: 50%;
  margin-top: -2rem;
}
.page-alert .alert-close::before, .page-alert .alert-close::after {
  content: "";
  background-color: #fff;
  height: 4rem;
  width: 0.4rem;
  position: absolute;
  top: 0;
  left: 1.8rem;
}
.page-alert .alert-close::before {
  transform: rotate(-45deg);
}
.page-alert .alert-close::after {
  transform: rotate(45deg);
}

.error-box {
  background-color: rgba(242, 61, 85, 0.09);
  color: #F23D55;
  padding: 1.5rem;
}
@media (min-width: 768px) {
  .error-box {
    padding: 2rem;
  }
}

.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ＭＳ ゴシック", "MS Gothic", TakaoPGothic, sans-serif;
  font-weight: 400;
  color: #000;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background-color: transparent;
}
.btn:focus, .btn.focus {
  outline: 0;
}
.btn.disabled, .btn:disabled {
  opacity: 0.6;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
.btn--medium {
  min-width: 62.6rem;
}
.btn.btn-medium {
  font-size: 1.3rem;
  height: 3rem;
  width: 13rem;
}
@media (min-width: 768px) {
  .btn.btn-medium {
    font-size: 1.6rem;
    height: 4.4rem;
    width: 20rem;
  }
}

.btn-disable {
  background-color: #d9d9d9;
  border: 1px solid #d9d9d9;
  border-radius: 0.4rem;
  font-size: 1.6rem;
  font-weight: 300;
  height: 5.8rem;
  max-width: 40.8rem;
  margin: 0 auto;
  pointer-events: none;
  width: 100%;
}
.btn-disable:disabled {
  opacity: 1;
}

.btn-primary {
  background-color: #14885A;
  border: 1px solid #14885A;
  border-radius: 0.4rem;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 300;
  height: 5.8rem;
  max-width: 40.8rem;
  margin: 0 auto;
  transition: 0.3s ease;
  width: 100%;
}
.btn-primary:hover {
  background-color: transparent;
  color: #14885A;
}
@media (min-width: 768px) {
  .btn-primary.btn-primary--height {
    height: 6.4rem;
  }
}

.btn-outline-primary {
  background-color: var(--color-white);
  border: 1px solid var(--color-primary);
  border-radius: 0.4rem;
  color: var(--color-primary);
  font-size: 1.6rem;
  font-weight: 300;
  height: 5.8rem;
  max-width: 40.8rem;
  margin: 0 auto;
  transition: 0.3s ease;
  width: 100%;
}
.btn-outline-primary:hover {
  background-color: #14885A;
  color: #fff;
}

.btn-danger {
  background-color: #F23D55;
  border: 1px solid #F23D55;
  border-radius: 0.4rem;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 300;
  height: 5.8rem;
  max-width: 40.8rem;
  margin: 0 auto;
  transition: 0.3s ease;
  width: 100%;
}
.btn-danger:hover {
  background-color: transparent;
  color: #F23D55;
}

.show-password {
  background: url("../images/icon_eye.svg") no-repeat center/contain;
  border: none;
  cursor: pointer;
  height: 1.4rem;
  width: 2.3rem;
  position: absolute;
  right: 0;
  top: 1rem;
  transition: 0.3s ease;
}
.show-password.is-active {
  background-image: url("../images/icon_eye_primary.svg");
}

.btn-white {
  color: #14885A;
  font-size: 1.6rem;
  font-weight: 600;
  height: 4.5rem;
  width: 19.4rem;
}
@media (min-width: 768px) {
  .btn-white {
    height: 5.7rem;
  }
}

.btn-gray {
  background-color: #EFEFEF;
  border-radius: 0.3rem;
  height: 4.5rem;
  border: 1px solid transparent;
  width: 100%;
}

.btn-edit {
  background: url("../images/icon_edit_primary.svg") no-repeat center/contain;
  border: none;
  cursor: pointer;
  margin: 0;
  padding: 0;
  height: 2rem;
  width: 2rem;
}

.btn-done {
  background: url("../images/icon_check.svg") no-repeat center/contain;
  border: none;
  cursor: pointer;
  margin: 0;
  padding: 0;
  height: 2rem;
  width: 2rem;
}

.btn-cancel {
  background: url("../images/icon_close03.svg") no-repeat center/1.6rem;
  border: none;
  cursor: pointer;
  margin: 0;
  padding: 0;
  height: 2rem;
  width: 2rem;
}

.btn-clone-hole {
  background: #ECF2EF url("../images/icon_plus02.svg") no-repeat center/1.2rem;
  border: 2px solid #a9a9a9;
  border-radius: 50%;
  cursor: pointer;
  margin: 0;
  padding: 0;
  height: 4rem;
  width: 4rem;
}
@media (min-width: 768px) {
  .btn-clone-hole {
    background-size: 1.6rem;
    height: 4rem;
    width: 4rem;
  }
}

.btn-clear {
  background: #ECF2EF url("../images/icon_close.svg") no-repeat center/1.6rem;
  border: 2px solid #a9a9a9;
  border-radius: 50%;
  cursor: pointer;
  margin: 0;
  padding: 0;
  height: 4rem;
  width: 4rem;
}

.btn-download {
  background-color: #14885A;
  border: 1px solid #14885A;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  height: 4.5rem;
  width: 20rem;
  position: relative;
  padding-right: 2.5rem;
  transition: 0.3s ease;
}
.btn-download:hover {
  background-color: #fff;
  color: #14885A;
}
.btn-download:hover::after {
  filter: brightness(100%);
}
.btn-download::after {
  content: "";
  background: url("../images/icon_download_primary.svg") no-repeat center/contain;
  height: 1.9rem;
  width: 1.9rem;
  filter: brightness(0) invert(1);
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translateY(-50%);
  transition: 0.3s ease;
}

.p-header {
  background-color: #fff;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: center;
  padding: 1rem 1.5rem;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 20;
}
@media (min-width: 768px) {
  .p-header {
    height: 10rem;
    padding: 1.5rem 6.6rem 1.5rem 3.2rem;
  }
}
@media (max-width: 767px) {
  .p-header__logo img {
    height: 2rem;
  }
}
.p-header__user {
  margin-left: auto;
}
.p-header__user a {
  display: flex;
  align-items: center;
  transition: 0.3s ease;
}
.p-header__user a:hover {
  color: #14885A;
}
.p-header__user a img {
  border-radius: 50%;
  margin-right: 1.5rem;
  width: 4rem;
}
@media (min-width: 768px) {
  .p-header__user a img {
    width: 6.9rem;
  }
}
.p-header__user__name {
  font-size: 1.8rem;
  font-weight: 300;
}
@media (max-width: 767px) {
  .p-header__user__name {
    display: none;
  }
}
.p-header__user__name small {
  font-size: 0.78em;
}

.hamburger-box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  height: 3rem;
  width: 2.8rem;
  z-index: 1100;
}
@media (min-width: 768px) {
  .hamburger-box {
    display: none;
  }
}
.hamburger-box.is-active .hamburger-inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(45deg);
}
.hamburger-box.is-active .hamburger-inner:before {
  transition: top 75ms ease, opacity 75ms ease 0.12s;
  opacity: 0;
  top: 0;
}
.hamburger-box.is-active .hamburger-inner:after {
  transition: bottom 75ms ease, transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
  transform: rotate(-90deg);
  bottom: 0;
}

.hamburger-inner:after, .hamburger-inner:before {
  display: block;
  content: "";
}

.hamburger-inner:after, .hamburger-inner:before, .hamburger-inner {
  width: 2.8rem;
  height: 0.2rem;
  background-color: #000;
  transition: transform 0.15s ease;
  border-radius: 1.5px;
}

.hamburger-inner {
  position: relative;
  display: block;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 75ms;
}
.hamburger-inner:before {
  position: absolute;
  top: -0.8rem;
  transition: top 75ms ease 0.12s, opacity 75ms ease;
}
.hamburger-inner:after {
  position: absolute;
  bottom: -0.8rem;
  transition: bottom 75ms ease 0.12s, transform 75ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.form-control {
  display: block;
  width: 100%;
  height: 5rem;
  padding: 0.5rem 1rem;
  font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ＭＳ ゴシック", "MS Gothic", TakaoPGothic, sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  background-color: #fff;
  background-clip: padding-box;
  border: 0.1rem solid #D3D3D3;
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}
.form-control::-moz-placeholder {
  color: #D3D3D3;
  opacity: 1;
}
.form-control::placeholder {
  color: #D3D3D3;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #D1D1D1;
  opacity: 1;
}
.form-control.no-input {
  border: none;
  background-color: transparent;
  outline: none;
}

input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.form-input {
  background-color: transparent;
  border: none;
  border-bottom: 2px solid #D3D3D3;
  height: 3.8rem;
  font-size: 1.5rem;
  padding: 0;
  outline: none;
  transition: 0.3s ease;
  width: 100%;
}
.form-input::-moz-placeholder {
  color: #B9B9B9;
}
.form-input::placeholder {
  color: #B9B9B9;
}
.form-input:focus {
  background-color: #fff;
  border-bottom-color: #14885A;
  padding: 0 1.6rem;
}
.form-input.error {
  border-bottom-color: #F23D55;
}

.error:not(input):not(select):not(textarea) {
  color: #F23D55;
  display: block;
  font-weight: 300;
  margin-top: 0.8rem;
}
@media (min-width: 768px) {
  .error:not(input):not(select):not(textarea) {
    font-size: 1.5rem;
  }
}

.custom-radio {
  position: relative;
}
.custom-radio input {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  visibility: hidden;
}
.custom-radio input:checked + span {
  background-color: #14885A;
  border: 1px solid #14885A;
  color: #fff;
}
.custom-radio span {
  background-color: #efefef;
  border: 1px solid transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  height: 4.5rem;
  margin: 0;
  max-width: 12.8rem;
  padding: 0 1.5rem;
  width: 100%;
}

.table {
  width: 100%;
  background-color: #fff;
  border-radius: 0.4rem;
}
@media (max-width: 767px) {
  .table {
    margin: 3.5rem 0 5.5rem;
    padding: 1.2rem 1.5rem 3.5rem;
    overflow: auto;
  }
}
@media (min-width: 768px) {
  .table {
    margin: 3.5rem 0 5.5rem;
    padding: 1.2rem 4rem 3.5rem;
  }
}
.table__anchor {
  transition: all 0.25s ease-in-out;
  display: block;
  color: #14885A;
  font-weight: bold;
  border-radius: 0.3rem;
}
@media (max-width: 767px) {
  .table__anchor {
    height: 3rem;
    line-height: 3rem;
  }
}
@media (min-width: 768px) {
  .table__anchor {
    height: 3.7rem;
    line-height: 3.7rem;
  }
}
.table__anchor:hover {
  opacity: 0.75;
  background-color: #efefef;
}
.table table {
  width: 100%;
}
.table thead {
  border-bottom: 1px solid #14885A;
}
.table tr:not(:last-child) {
  border-bottom: 1px solid #f2f0f0;
}
@media (max-width: 767px) {
  .table th,
  .table td {
    font-size: 1.3rem;
  }
}
@media (min-width: 768px) {
  .table th,
  .table td {
    font-size: 1.5rem;
  }
}
.table th:last-child {
  width: 11.5rem;
  text-align: center;
}
.table th:last-child span {
  padding-right: 0;
}
.table td {
  padding: 0.9rem 0.4rem;
}
.table td:last-child {
  text-align: center;
  max-width: 11.4rem;
}
@media (max-width: 767px) {
  .table--medium table {
    min-width: 55rem;
  }
}
.table--medium th {
  font-weight: bold;
  padding: 1.5rem 0.4rem 2.4rem;
}
@media (max-width: 767px) {
  .table--medium th:nth-child(1) {
    width: 20%;
  }
  .table--medium th:nth-child(2) {
    width: 25%;
  }
  .table--medium th:nth-child(3) {
    width: 20%;
  }
}
@media (min-width: 768px) {
  .table--medium th:nth-child(1) {
    width: 21%;
  }
  .table--medium th:nth-child(2) {
    width: 27%;
  }
  .table--medium th:nth-child(3) {
    width: 20%;
  }
}
@media (max-width: 767px) {
  .table--small table {
    min-width: 50rem;
  }
}
.table--small th {
  font-weight: bold;
  padding: 1.5rem 0.4rem 2.4rem;
}
@media (max-width: 767px) {
  .table--small th:nth-child(1) {
    width: 20%;
  }
  .table--small th:nth-child(2) {
    width: 25%;
  }
}
@media (min-width: 768px) {
  .table--small th:nth-child(1) {
    width: 30%;
  }
  .table--small th:nth-child(2) {
    width: 30%;
  }
}
.table--small td:nth-child(4) {
  text-align: center;
}

.page-title-flex {
  margin-bottom: 3rem;
}
@media (min-width: 768px) {
  .page-title-flex {
    display: flex;
    justify-content: space-between;
  }
}
.page-title-flex .page-title {
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .page-title-flex .page-title {
    margin-bottom: 0;
  }
}

.page-title {
  font-size: 2.4rem;
  font-weight: 600;
  margin-bottom: 3rem;
}
@media (min-width: 768px) {
  .page-title {
    font-size: 3.6rem;
    margin-bottom: 4.7rem;
  }
}
@media (min-width: 768px) {
  .page-title--dashboard {
    margin-bottom: 6rem;
  }
}

.hline01 {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .hline01 {
    font-size: 2.4rem;
  }
}

.hline02 {
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.breadcrumb {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  margin-right: -1.5rem;
  padding-bottom: 1.5rem;
  overflow-x: auto;
}
@media (min-width: 768px) {
  .breadcrumb {
    margin-bottom: 3.5rem;
  }
}
.breadcrumb__item {
  font-size: 1.3rem;
  color: #3e3e3e;
  flex-shrink: 0;
  position: relative;
}
.breadcrumb__item:not(:last-child)::after {
  content: "/";
  display: inline-block;
  margin: 0 0.5rem;
}
.breadcrumb__item:last-child {
  color: #14885A;
}
.breadcrumb__anchor {
  display: inline-block;
  transition: opacity 0.25s ease-in-out;
}
.breadcrumb__anchor:hover {
  opacity: 0.75;
}

.pagination {
  display: flex;
  justify-content: center;
  font-family: "Questrial", sans-serif;
}
.pagination__anchor {
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
}
.pagination__item {
  border-radius: 0.4rem;
  color: #000;
  transition: all 0.2s ease-in-out;
  margin: 0 0.2rem;
}
.pagination__item--prev, .pagination__item--next {
  position: relative;
}
.pagination__item--prev::after, .pagination__item--next::after {
  content: "";
  top: calc(50% - 0.5rem);
  position: absolute;
  width: 1rem;
  height: 1rem;
  border-style: solid;
  border-color: #3e3e3e;
  border-width: 0 1px 1px 0;
  transition: all 0.2s ease-in-out;
}
.pagination__item--prev:hover::after, .pagination__item--next:hover::after {
  border-color: #fff;
}
.pagination__item--prev {
  margin-right: 3rem;
}
.pagination__item--prev::after {
  left: calc(50% - 0.2rem);
  transform: rotate(135deg);
}
.pagination__item--next {
  margin-left: 3rem;
}
.pagination__item--next::after {
  left: calc(50% - 0.7rem);
  transform: rotate(-45deg);
}
.pagination__item:hover, .pagination__item.is-active {
  background-color: #14885A;
  color: #fff;
}

@media (min-width: 768px) {
  #main {
    min-height: calc(100vh - 10rem);
  }
}
#main.is-show #contents {
  width: calc(100% - 23.7rem);
}

#contents {
  padding: 3rem 0 4rem;
}
@media (min-width: 768px) {
  #contents {
    flex-shrink: 0;
  }
}
@media (min-width: 768px) {
  #contents.nobreadcrumb {
    padding-top: 5rem;
  }
}

.w-100 {
  width: 100%;
}

.cl-danger {
  color: #F23D55;
}

.c-single {
  --course-head-background-color: var(--color-primary);
}
.c-single .aside-parent {
  position: relative;
  z-index: 1;
}
.c-single #aside {
  box-shadow: 0px 10px 10px 0 rgba(20, 136, 90, 0.1);
}
.c-single #contents {
  background-color: var(--color-white);
}
.c-single .course-head {
  color: #fff;
}
.c-single .course-head .btn-outline-primary:hover {
  border-color: #fff;
}

.bg-white {
  background-color: var(--color-white);
}

.white-box {
  background-color: #fff;
  border-radius: 0.4rem;
  padding: 2rem 1.5rem;
}
@media (min-width: 768px) {
  .white-box {
    padding: 2.7rem 3rem;
  }
}
@media (min-width: 768px) {
  .white-box.white-box--setting {
    padding: 5.6rem 5.2rem;
  }
}

@media (min-width: 576px) {
  .link-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.8rem;
  }
}
@media (min-width: 576px) {
  .link-list li {
    flex: 0 50%;
    max-width: 50%;
    padding: 0 0.8rem;
  }
  .link-list li:nth-child(n+3) {
    margin-top: 1.5rem;
  }
}
@media (min-width: 768px) {
  .link-list li {
    flex: 0 33.33%;
    max-width: 33.33%;
  }
  .link-list li:nth-child(n+3) {
    margin-top: 0;
  }
  .link-list li:nth-child(n+4) {
    margin-top: 1.5rem;
  }
}
@media (max-width: 575px) {
  .link-list li {
    margin-bottom: 1.5rem;
  }
  .link-list li:last-child {
    margin-bottom: 0;
  }
}
.link-list li a {
  background: url("../images/icon_arrow_right01.svg") no-repeat right 1.4rem center;
  border: 1px solid #EFEFEF;
  border-radius: 0.4rem;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  height: 7rem;
  padding: 0 2rem;
}
@media (min-width: 768px) {
  .link-list li a {
    background-position: right 3.4rem center;
    font-size: 1.6rem;
    height: 8.9rem;
    padding: 0 4rem;
  }
}

.gallery-box {
  background-color: #fff;
  border-radius: 0.4rem;
  margin-bottom: 3rem;
}
@media (min-width: 768px) {
  .gallery-box {
    margin-bottom: 7.8rem;
  }
}
.gallery-box .hline01 {
  border-bottom: 1px solid #EFEFEF;
  padding: 2rem 1.5rem;
  margin-bottom: 0.4rem;
}
@media (min-width: 768px) {
  .gallery-box .hline01 {
    padding: 3.4rem 3.6rem 2.7rem;
  }
}

.gallery-list {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0.2rem;
}
.gallery-list li {
  flex: 0 33.33%;
  max-width: 33.33%;
  margin-bottom: 0.4rem;
  padding: 0 0.15rem;
}
@media (min-width: 768px) {
  .gallery-list li {
    flex: 0 20%;
    max-width: 20%;
  }
}
.gallery-list .gallery-checkbox {
  cursor: pointer;
}
.gallery-list .gallery-checkbox input {
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.gallery-list .gallery-checkbox input:checked + span {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.06);
  transform: scale(0.8);
}
.gallery-list .gallery-checkbox input:checked + span::before, .gallery-list .gallery-checkbox input:checked + span::after {
  opacity: 1;
  transition: opacity 0.2s ease;
}
.gallery-list .gallery-checkbox span {
  display: block;
  position: relative;
  transition: transform 0.2s ease;
}
.gallery-list .gallery-checkbox span::before {
  content: "";
  background-color: rgba(0, 0, 0, 0.53);
  border-radius: 0.4rem;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  opacity: 0;
  z-index: 1;
}
.gallery-list .gallery-checkbox span::after {
  content: "";
  background: #F23D55 url("../images/icon-check.svg") no-repeat center/1.9rem 1.5rem;
  border-radius: 0.4rem;
  height: 3rem;
  width: 3rem;
  position: absolute;
  right: -0.7rem;
  top: -0.7rem;
  opacity: 0;
  z-index: 2;
}
@media (min-width: 768px) {
  .gallery-list .gallery-checkbox span::after {
    background-size: auto;
    height: 3.7rem;
    width: 3.7rem;
  }
}
.gallery-list .gallery-checkbox span img {
  border-radius: 0.4rem;
}

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-button {
  background: url(../images/icon_arrow_down_02.svg) no-repeat center right 1.2rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  cursor: pointer;
  height: 3.8rem;
  padding: 0 3.5rem 0 1rem !important;
  width: auto;
}
@media (max-width: 767px) {
  .dropdown-button {
    padding: 0 1.6rem;
    font-size: 1.4rem;
    background-size: 1rem auto;
  }
}
@media (min-width: 768px) {
  .dropdown-button {
    font-size: 1.4rem;
  }
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  right: 0;
  min-width: 26rem;
  background-color: white;
  border: 1px solid #ddd;
  border-radius: 5px;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  display: none;
}
.dropdown-menu.show {
  display: block;
}
.dropdown-menu a {
  padding: 10px 15px;
  display: block;
  text-decoration: none;
  color: #333;
}
.dropdown-menu a:hover {
  background-color: #f1f1f1;
}

.golf-bar {
  margin: 2rem 0 3rem;
}
@media (min-width: 768px) {
  .golf-bar {
    margin: 3.5rem 0 4rem;
    display: flex;
  }
}
.golf-bar input,
.golf-bar select {
  width: 100%;
  height: 5rem;
  line-height: 5rem;
  padding: 0 2.4rem;
  border-radius: 0.4rem;
  background-color: #fff;
}
@media (min-width: 768px) {
  .golf-bar input,
  .golf-bar select {
    height: 7rem;
    line-height: 7rem;
  }
}
.golf-bar__search {
  position: relative;
  width: 100%;
}
@media (max-width: 767px) {
  .golf-bar__search {
    margin-bottom: 1rem;
  }
}
@media (min-width: 768px) {
  .golf-bar__search {
    flex: 1 1;
    margin-right: 2.8rem;
  }
}
.golf-bar__search button {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 5rem;
  background: url(../images/icon_search.svg) no-repeat center;
  background-size: 2rem auto;
  outline: none;
  border: none;
  cursor: pointer;
  transition: 0.2s ease-in;
}
@media (min-width: 768px) {
  .golf-bar__search button {
    width: 8rem;
    background-size: 2.8rem auto;
  }
}
.golf-bar__search button:hover {
  opacity: 0.85;
}
.golf-bar__select {
  width: 100%;
}
@media (min-width: 768px) {
  .golf-bar__select {
    width: 30rem;
  }
}
.golf-bar__select select {
  background: #fff url(../images/icon_arrow_down_02.svg) no-repeat center right 1.2rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media (min-width: 768px) {
  .golf-bar__select select {
    background-position: center right 2.2rem;
  }
}
.golf-bar__select select::-ms-expand {
  display: none;
}

.golf-list {
  display: flex;
  flex-flow: wrap;
}
.golf-list__item {
  background: #fff;
  border-radius: 0.4rem;
  border-bottom: 2px solid #D3D3D3;
  padding: 1.5rem;
  overflow: hidden;
  width: 100%;
}
@media (min-width: 768px) {
  .golf-list__item {
    padding: 2.5rem;
    width: calc(33.33% - 1.8rem);
  }
}
@media (min-width: 768px) {
  .golf-list__item:not(:nth-child(3n+3)) {
    margin-right: 2.7rem;
  }
}
@media (min-width: 768px) {
  .golf-list__item:nth-child(n+4) {
    margin-top: 2.5rem;
  }
}
@media (max-width: 767px) {
  .golf-list__item:nth-child(n+2) {
    margin-top: 1.5rem;
  }
}
.golf-list__image img {
  width: 100%;
}
.golf-list__anchor {
  transition: 0.2s ease-in;
  display: block;
}
.golf-list__anchor:hover {
  opacity: 0.85;
}
.golf-list__sub {
  color: #14885A;
  font-size: 1.3rem;
  margin-bottom: 0.5rem;
}
.golf-list__ttl {
  font-size: 2rem;
  margin-bottom: 0.5rem;
  color: #3e3e3e;
}
.golf-list__txt {
  font-size: 1.3rem;
}
.golf-list__image {
  margin: -1.5rem -1.5rem 1.5rem;
}
@media (min-width: 768px) {
  .golf-list__image {
    margin: -2.5rem -2.5rem 1.5rem;
  }
}

.golf-detail {
  background-color: #fff;
  border-radius: 0.4rem;
  border-bottom: 4px solid #D3D3D3;
}
.golf-course .golf-detail {
  max-width: 128rem;
  margin: 0 auto;
  width: 100%;
}
.golf-detail__list {
  flex: 1 1;
}
.golf-detail__head {
  display: flex;
  justify-content: space-between;
  padding: 0.8rem 1rem 0.8rem 2rem;
  border-bottom: 1px solid #D3D3D3;
}
@media (min-width: 768px) {
  .golf-detail__head {
    padding: 1.8rem 2rem 1.4rem;
  }
}
.golf-detail__head .ttl {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  .golf-detail__head .ttl {
    font-size: 1.8rem;
  }
}
.golf-detail__head select {
  background: url(../images/icon_arrow_down_02.svg) no-repeat center right 1.2rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-bottom: 0;
  padding: 0 2.5rem 0 1rem !important;
  width: auto;
}
@media (max-width: 767px) {
  .golf-detail__head select {
    padding: 0 1.6rem;
    font-size: 1.4rem;
    background-size: 1rem auto;
  }
}
@media (min-width: 768px) {
  .golf-detail__head select {
    font-size: 1.4rem;
  }
}
.golf-detail__head select::-ms-expand {
  display: none;
}
.golf-detail__body {
  padding: 0 1rem;
}
@media (max-width: 767px) {
  .golf-detail__body {
    margin-bottom: 2rem;
  }
}
@media (min-width: 768px) {
  .golf-detail__body {
    margin: 0.8rem 0.8rem 0 0;
    padding: 0 2rem;
  }
}
.golf-detail__body .item {
  display: flex;
  align-items: center;
  padding: 1.4rem 0;
  border-bottom: 1px solid #D3D3D3;
}
.golf-detail__body .item.nopost, .golf-detail__body .item:last-child {
  border-bottom: 0;
}
.golf-detail__body .item input {
  height: 2rem;
  width: 2rem;
}
.golf-detail__body .image {
  width: 5.8rem;
  height: 5.8rem;
  margin-right: 1rem;
}
@media (min-width: 768px) {
  .golf-detail__body .image {
    width: 9.8rem;
    height: 9.8rem;
    margin-right: 2rem;
  }
}
.golf-detail__body .content {
  flex: 1 1;
  margin-right: 1rem;
}
@media (min-width: 768px) {
  .golf-detail__body .content {
    margin-right: 2rem;
  }
}
.golf-detail__body .des {
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .golf-detail__body .des {
    font-size: 1.4rem;
  }
}
.golf-detail__body .ttl {
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  .golf-detail__body .ttl {
    font-size: 1.8rem;
  }
}
.golf-detail__body .btn {
  max-width: 9.2rem;
  max-height: 3.5rem;
}
@media (max-width: 767px) {
  .golf-detail__body .btn {
    font-size: 1.2rem;
  }
}
@media (min-width: 768px) {
  .golf-detail__body .btn {
    max-width: 15.2rem;
    max-height: 4.4rem;
  }
}

.golf-image img {
  width: 100%;
}

.golf-course {
  display: grid;
  align-items: flex-start;
  gap: 1.8rem;
  position: relative;
  padding: 0 1.8rem 1.8rem;
}
.golf-course__hambuger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  height: 3rem;
  width: 2.8rem;
  z-index: 11;
  margin: 0 1rem 1rem auto;
}
@media (min-width: 768px) {
  .golf-course__hambuger {
    display: none;
  }
}
.golf-course__hambuger.is-active .item {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(45deg);
}
.golf-course__hambuger.is-active .item:before {
  transition: top 75ms ease, opacity 75ms ease 0.12s;
  opacity: 0;
  top: 0;
}
.golf-course__hambuger.is-active .item:after {
  transition: bottom 75ms ease, transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
  transform: rotate(-90deg);
  bottom: 0;
}
.golf-course__hambuger .item:after,
.golf-course__hambuger .item:before {
  display: block;
  content: "";
}
.golf-course__hambuger .item:after, .golf-course__hambuger .item:before, .golf-course__hambuger .item {
  width: 2.8rem;
  height: 0.2rem;
  background-color: #000;
  transition: transform 0.15s ease;
  border-radius: 1.5px;
}
.golf-course__hambuger .item {
  position: relative;
  display: block;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 75ms;
}
.golf-course__hambuger .item:before {
  position: absolute;
  top: -0.8rem;
  transition: top 75ms ease 0.12s, opacity 75ms ease;
}
.golf-course__hambuger .item:after {
  position: absolute;
  bottom: -0.8rem;
  transition: bottom 75ms ease 0.12s, transform 75ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.golf-course__head {
  background-color: #fff;
  display: grid;
  gap: 1.8rem;
  padding-top: 1.8rem;
}
@media (min-width: 768px) {
  .golf-course__head {
    position: sticky;
    left: 0;
    right: 0;
    top: 10rem;
    z-index: 10;
  }
}
.golf-course .course-box, .golf-course .course-head {
  background-color: #fff;
  box-shadow: 0 0 1rem rgba(20, 136, 90, 0.1);
  border-radius: 0.4rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem 2rem;
  padding: 1.5rem;
}
@media (min-width: 768px) {
  .golf-course .course-box, .golf-course .course-head {
    padding: 2rem 3rem;
  }
}
@media (max-width: 767px) {
  .golf-course .course-box .btn-download, .golf-course .course-head .btn-download {
    width: 100%;
  }
}
.golf-course .course-head {
  background-color: var(--course-head-background-color, #fff);
}
.golf-course .course-head__ttl {
  font-size: 1.6rem;
  font-weight: bold;
  margin-right: 2rem;
}
@media (min-width: 768px) {
  .golf-course .course-head__ttl {
    font-size: 2rem;
    margin-right: 5rem;
  }
}
@media (min-width: 768px) and (max-width: 1599px) {
  .golf-course .course-head__ttl {
    font-size: 1.8rem;
    margin-right: 3rem;
  }
}
.golf-course .course-head__right {
  display: flex;
  align-items: center;
}
.golf-course .course-head__des {
  font-size: 1rem;
}
@media (max-width: 767px) {
  .golf-course .course-head__des {
    margin-left: auto;
  }
}
@media (min-width: 768px) {
  .golf-course .course-head__des {
    font-size: 1.2rem;
    margin-right: auto;
  }
}
.golf-course .course-head__filter {
  display: grid;
  gap: 1px;
}
@media (min-width: 768px) {
  .golf-course .course-head__filter {
    display: flex;
    gap: 0;
  }
}
@media (max-width: 767px) {
  .golf-course .course-head__filter {
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
  }
}
.golf-course .course-head__filter li {
  flex: auto;
}
.golf-course .course-head__filter .custom-radio span {
  max-width: 100%;
}
.golf-course .course-head__select {
  position: relative;
}
@media (min-width: 768px) {
  .golf-course .course-head__select {
    border-left: 1px solid #D3D3D3;
    margin-left: 2rem;
  }
}
.golf-course .course-head__select::after {
  content: "";
  border-style: solid;
  border-width: 0.5rem 0.5rem 0 0.5rem;
  border-color: #fff transparent transparent transparent;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .golf-course .course-head__select::after {
    border-width: 0.7rem 0.7rem 0 0.7rem;
  }
}
.golf-course .course-head__select select {
  background-color: transparent;
  color: #fff;
  width: 15rem;
  height: 3.5rem;
  padding: 0 1rem 0 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media (min-width: 768px) {
  .golf-course .course-head__select select {
    width: 21.2rem;
    height: 4.9rem;
    padding: 0 2rem;
  }
}
@media (min-width: 768px) and (max-width: 1599px) {
  .golf-course .course-head__select select {
    width: 15.2rem;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .golf-course .course-head__select select {
    font-size: 1.2rem;
  }
}
.golf-course .course-head__select select::-ms-expand {
  display: none;
}
.golf-course .course-head__select select:focus {
  border: none;
}
.golf-course .course-head__select select:focus-visible {
  border: none;
  outline: none;
}
.golf-course .course-head__select select option {
  color: #000;
}
.golf-course__box {
  position: relative;
  width: 100%;
  height: 100%;
}
.golf-course__zoom {
  position: absolute;
  background-color: #fff;
  z-index: 10;
  bottom: 3rem;
  right: 3rem;
  border-radius: 0.6rem;
  padding: 1rem 0.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .golf-course__zoom {
    bottom: 3rem;
    right: 3rem;
    padding: 1rem 0.7rem;
  }
}
.golf-course__zoom .plus,
.golf-course__zoom .minus {
  position: relative;
  padding: 1rem;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
}
.golf-course__zoom .plus:hover,
.golf-course__zoom .minus:hover {
  opacity: 0.75;
}
.golf-course__zoom .plus::before, .golf-course__zoom .plus::after {
  content: "";
  position: absolute;
  left: calc(50% - 0.8rem);
  top: calc(50% - 0.1rem);
  width: 1.5rem;
  height: 0.1rem;
  border-radius: 5rem;
  background-color: #363636;
}
@media (min-width: 768px) {
  .golf-course__zoom .plus::before, .golf-course__zoom .plus::after {
    left: calc(50% - 1rem);
    width: 2rem;
    height: 0.2rem;
  }
}
.golf-course__zoom .plus::after {
  transform: rotate(-90deg);
}
.golf-course__zoom .minus {
  margin-top: 0.5rem;
  padding-top: 2.5rem;
}
.golf-course__zoom .minus::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: #efefef;
  left: 0;
  top: 0;
}
.golf-course__zoom .minus::before {
  content: "";
  position: absolute;
  left: calc(50% - 0.8rem);
  top: calc(50% - 0.1rem);
  width: 1.5rem;
  height: 0.1rem;
  border-radius: 5rem;
  background-color: #363636;
}
@media (min-width: 768px) {
  .golf-course__zoom .minus::before {
    left: calc(50% - 1rem);
    width: 2rem;
    height: 0.2rem;
  }
}
.golf-course__calendar {
  position: absolute;
  top: 7rem;
  background-color: #fff;
  display: flex;
  padding: 0.6rem;
  border-radius: 0.6rem;
  max-width: 50%;
  z-index: 2;
}
@media (min-width: 768px) {
  .golf-course__calendar {
    top: 12rem;
    max-width: 24rem;
  }
}
.golf-course__calendar--left {
  left: 0;
}
@media (min-width: 768px) {
  .golf-course__calendar--left {
    left: 1.8rem;
  }
}
.golf-course__calendar--right {
  right: 0;
}
@media (min-width: 768px) {
  .golf-course__calendar--right {
    right: 1.8rem;
  }
}
.golf-course__calendar .btn {
  width: 5.2rem;
  height: 3.1rem;
  font-size: 1.2rem;
}
@media (min-width: 768px) {
  .golf-course__calendar .btn {
    width: 6.2rem;
    font-size: 1.4rem;
  }
}
.golf-course__calendar input {
  border: none;
  padding: 0 0.5rem;
  font-size: 1rem;
  max-width: 10rem;
  margin-right: 1rem;
}
@media (min-width: 768px) {
  .golf-course__calendar input {
    font-size: 1.4rem;
    max-width: 14rem;
    margin-right: 2rem;
    padding: 0 1rem;
  }
}
.golf-course__calendar input:focus {
  border: none;
}
.golf-course__calendar input:focus-visible {
  border: none;
  outline: none;
}
.golf-course__popup {
  width: 100%;
  height: 100%;
  position: absolute;
}
.golf-course__popup .ttl {
  padding: 0.3rem;
  background-color: #fff;
  max-width: 7.2rem;
  margin: 0 auto 1.3rem;
  display: flex;
  align-items: center;
  border-radius: 0.3rem;
  justify-content: center;
  position: relative;
  cursor: pointer;
}
@media (max-width: 767px) {
  .golf-course__popup .ttl {
    font-size: 1.2rem;
  }
}
@media (min-width: 768px) {
  .golf-course__popup .ttl {
    padding: 0.8rem;
    max-width: 8.2rem;
  }
}
.golf-course__popup .ttl::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 1.8rem;
  bottom: -0.6rem;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  background: url(../images/golfselect/icon_bor_down.svg) no-repeat center/contain;
}
.golf-course__popup .ttl .icon {
  margin-right: 0.5rem;
  position: relative;
  top: -0.1rem;
}
@media (max-width: 767px) {
  .golf-course__popup .ttl .icon {
    max-width: 1.5rem;
  }
}
.golf-course__popup .item {
  position: absolute;
  z-index: 1;
  display: none;
}
.golf-course__popup .item.is-active {
  display: block;
}
.golf-course__popup .item--01 {
  left: 50%;
  top: 13rem;
}
@media (min-width: 768px) {
  .golf-course__popup .item--01 {
    left: 40%;
    top: 30%;
  }
}
.golf-course__popup .item--02 {
  left: 25%;
  top: 18rem;
}
@media (min-width: 768px) {
  .golf-course__popup .item--02 {
    left: 35%;
    top: 55%;
  }
}
.golf-course__popup .item--03 {
  left: 70%;
  top: 50%;
}
@media (min-width: 768px) {
  .golf-course__popup .item--03 {
    top: 60%;
    left: 50%;
  }
}
.golf-course__popup .circle {
  width: 5.4rem;
  height: 5.4rem;
  border-radius: 50%;
  background: rgba(255, 245, 0, 0.22);
  border: 2px solid #ffff00;
}
@media (min-width: 768px) {
  .golf-course__popup .circle {
    width: 10.4rem;
    height: 10.4rem;
  }
}
.golf-course__popup .circle--small {
  width: 4.2rem;
  height: 4.2rem;
}
@media (min-width: 768px) {
  .golf-course__popup .circle--small {
    width: 8.7rem;
    height: 8.7rem;
  }
}
.golf-course__popup .circle--medium {
  width: 7rem;
  height: 7rem;
}
@media (min-width: 768px) {
  .golf-course__popup .circle--medium {
    width: 13rem;
    height: 13rem;
  }
}
.golf-course__popup .circle.pest {
  background: rgba(255, 0, 0, 0.22);
  border-color: #ff0000;
}
.golf-course__content {
  border-radius: 1rem;
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  cursor: grab;
}
.golf-course__content:active {
  cursor: grabbing;
}
.golf-course .golf-comp {
  position: relative;
  height: auto;
  width: 100%;
  top: 12rem;
}
@media (min-width: 768px) {
  .golf-course .golf-comp {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.golf-course .golf-comp__side {
  position: absolute;
  z-index: 29;
  cursor: col-resize;
  padding: 0 1rem;
  height: 10rem;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.golf-course .golf-comp__side::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0.2rem;
  height: 100%;
  background-color: #fff;
}
@media (min-width: 768px) {
  .golf-course .golf-comp__side::after {
    width: 0.3rem;
    height: 20rem;
  }
}
@media (min-width: 768px) {
  .golf-course .golf-comp__side {
    padding: 0 0.5rem;
    width: 0.3rem;
    height: 20rem;
  }
}
.golf-course .golf-comp__responsive {
  height: 0;
  width: 100%;
  padding-bottom: 75%;
}
.golf-course .golf-comp__image {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.golf-course .golf-comp__image img {
  width: auto;
  height: 100%;
  max-width: initial;
  display: block;
  vertical-align: middle;
}
.golf-course .golf-comp__overlay {
  width: 50%;
  border-right: 2px solid #000;
}
.golf-course .golf-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  z-index: 39;
  display: none;
}
.golf-course .golf-modal.is-active {
  display: flex;
}
.golf-course .golf-modal__body {
  flex: 1 1;
}
.golf-course .golf-modal__overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.67);
}
.golf-course .golf-modal__close {
  position: absolute;
  right: 1.5rem;
  top: 1.5rem;
  width: 2.2rem;
  height: 2.2rem;
  cursor: pointer;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__close {
    right: 3.5rem;
    top: 3.5rem;
  }
}
.golf-course .golf-modal__close::before, .golf-course .golf-modal__close::after {
  position: absolute;
  left: 1.1rem;
  content: " ";
  height: 2.5rem;
  width: 0.2rem;
  background-color: #1d1d1d;
}
.golf-course .golf-modal__close::before {
  transform: rotate(45deg);
}
.golf-course .golf-modal__close::after {
  transform: rotate(-45deg);
}
.golf-course .golf-modal__media {
  background-color: #fff;
  z-index: 3;
  padding: 1.5rem 1rem;
  position: relative;
  max-width: calc(100% - 2rem);
}
@media (min-width: 768px) {
  .golf-course .golf-modal__media {
    display: flex;
    align-items: flex-end;
    padding: 5rem 6rem 2.8rem 2rem;
  }
}
.golf-course .golf-modal__image {
  width: 60%;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__image {
    max-width: 43.4rem;
    width: 100%;
  }
}
.golf-course .golf-modal__des {
  margin-bottom: 0.5rem;
  font-size: 1.7rem;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__des {
    font-size: 2.4rem;
  }
}
.golf-course .golf-modal__ttl {
  font-size: 2.4rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__ttl {
    margin-bottom: 1.5rem;
    font-size: 3.6rem;
  }
}
.golf-course .golf-modal__txt {
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__txt {
    font-size: 1.6rem;
  }
}
.golf-course .golf-modal__price {
  font-size: 2rem;
  color: #14885A;
  margin: 20px 0 1rem;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__price {
    font-size: 2.4rem;
    margin: 45px 0 2.5rem;
  }
}
.golf-course .golf-modal__number {
  font-size: 1.8rem;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .golf-course .golf-modal__number {
    font-size: 2.2rem;
    margin-bottom: 3rem;
  }
}
.golf-course .golf-modal__number input {
  margin-left: 1rem;
  max-width: 7.7rem;
  padding: 0.2rem 1rem;
  background-color: #fafafa;
  border: 1px solid #e0e0e0;
}
.golf-course .golf-modal__btn {
  max-width: 100%;
}
/*# sourceMappingURL=sourcemaps/style.css.map */
