@charset "UTF-8";
/* mixin var
-----------------------------------------------------*/
/* reset
-----------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

img {
  vertical-align: top;
}

h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
}

body {
  line-height: 1;
}

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/* html
-----------------------------------------------------*/
html {
  overflow: auto;
  font-size: 62.5%;
  scroll-padding-top: 66px;
  scroll-behavior: smooth;
  box-sizing: border-box;
}
@media (max-width: 575px) {
  html {
    scroll-padding-top: 60px;
  }
}

body {
  color: #333;
  font: 1.6rem/1.8 YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 500;
  overflow-wrap: break-word;
  word-break: break-word;
  overflow: hidden;
}
@media (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

/* link
-----------------------------------------------------*/
a {
  transition: 0.3s linear;
}

/*flex
-----------------------------------------------------*/
.flex {
  display: flex;
}
@media (max-width: 1199px) {
  .flex-xl {
    display: flex;
  }
}
@media (max-width: 1023px) {
  .flex-lg {
    display: flex;
  }
}
@media (max-width: 767px) {
  .flex-md {
    display: flex;
  }
}
@media (max-width: 575px) {
  .flex-sm {
    display: flex;
  }
}

.justify-start {
  justify-content: start;
}
@media (max-width: 1199px) {
  .justify-start-xl {
    justify-content: start;
  }
}
@media (max-width: 1023px) {
  .justify-start-lg {
    justify-content: start;
  }
}
@media (max-width: 767px) {
  .justify-start-md {
    justify-content: start;
  }
}
@media (max-width: 575px) {
  .justify-start-sm {
    justify-content: start;
  }
}

.justify-center {
  justify-content: center;
}
@media (max-width: 1199px) {
  .justify-center-xl {
    justify-content: center;
  }
}
@media (max-width: 1023px) {
  .justify-center-lg {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .justify-center-md {
    justify-content: center;
  }
}
@media (max-width: 575px) {
  .justify-center-sm {
    justify-content: center;
  }
}

.justify-between {
  justify-content: space-between;
}
@media (max-width: 1199px) {
  .justify-between-xl {
    justify-content: space-between;
  }
}
@media (max-width: 1023px) {
  .justify-between-lg {
    justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .justify-between-md {
    justify-content: space-between;
  }
}
@media (max-width: 575px) {
  .justify-between-sm {
    justify-content: space-between;
  }
}

.justify-around {
  justify-content: space-around;
}
@media (max-width: 1199px) {
  .justify-around-xl {
    justify-content: space-around;
  }
}
@media (max-width: 1023px) {
  .justify-around-lg {
    justify-content: space-around;
  }
}
@media (max-width: 767px) {
  .justify-around-md {
    justify-content: space-around;
  }
}
@media (max-width: 575px) {
  .justify-around-sm {
    justify-content: space-around;
  }
}

.justify-end {
  justify-content: end;
}
@media (max-width: 1199px) {
  .justify-end-xl {
    justify-content: end;
  }
}
@media (max-width: 1023px) {
  .justify-end-lg {
    justify-content: end;
  }
}
@media (max-width: 767px) {
  .justify-end-md {
    justify-content: end;
  }
}
@media (max-width: 575px) {
  .justify-end-sm {
    justify-content: end;
  }
}

.align-items-start {
  align-items: flex-start;
}
@media (max-width: 1199px) {
  .align-items-start-xl {
    align-items: flex-start;
  }
}
@media (max-width: 1023px) {
  .align-items-start-lg {
    align-items: flex-start;
  }
}
@media (max-width: 767px) {
  .align-items-start-md {
    align-items: flex-start;
  }
}
@media (max-width: 575px) {
  .align-items-start-sm {
    align-items: flex-start;
  }
}

.align-items-center {
  align-items: center;
}
@media (max-width: 1199px) {
  .align-items-center-xl {
    align-items: center;
  }
}
@media (max-width: 1023px) {
  .align-items-center-lg {
    align-items: center;
  }
}
@media (max-width: 767px) {
  .align-items-center-md {
    align-items: center;
  }
}
@media (max-width: 575px) {
  .align-items-center-sm {
    align-items: center;
  }
}

.align-items-end {
  align-items: end;
}
@media (max-width: 1199px) {
  .align-items-end-xl {
    align-items: end;
  }
}
@media (max-width: 1023px) {
  .align-items-end-lg {
    align-items: end;
  }
}
@media (max-width: 767px) {
  .align-items-end-md {
    align-items: end;
  }
}
@media (max-width: 575px) {
  .align-items-end-sm {
    align-items: end;
  }
}

.flex-wrap {
  flex-wrap: wrap;
}
@media (max-width: 1199px) {
  .flex-wrap-xl {
    flex-wrap: wrap;
  }
}
@media (max-width: 1023px) {
  .flex-wrap-lg {
    flex-wrap: wrap;
  }
}
@media (max-width: 767px) {
  .flex-wrap-md {
    flex-wrap: wrap;
  }
}
@media (max-width: 575px) {
  .flex-wrap-sm {
    flex-wrap: wrap;
  }
}

.flex-nowrap {
  flex-wrap: nowrap;
}
@media (max-width: 1199px) {
  .flex-nowrap-xl {
    flex-wrap: nowrap;
  }
}
@media (max-width: 1023px) {
  .flex-nowrap-lg {
    flex-wrap: nowrap;
  }
}
@media (max-width: 767px) {
  .flex-nowrap-md {
    flex-wrap: nowrap;
  }
}
@media (max-width: 575px) {
  .flex-nowrap-sm {
    flex-wrap: nowrap;
  }
}

/*font-size
-----------------------------------------------------*/
.fs-10 {
  font-size: 1rem;
}

.fs-11 {
  font-size: 1.1rem;
}

.fs-12 {
  font-size: 1.2rem;
}

.fs-13 {
  font-size: 1.3rem;
}

.fs-14 {
  font-size: 1.4rem;
}

.fs-15 {
  font-size: 1.5rem;
}

.fs-16 {
  font-size: 1.6rem;
}

.fs-17 {
  font-size: 1.7rem;
}

.fs-18 {
  font-size: 1.8rem;
}

.fs-19 {
  font-size: 1.9rem;
}

.fs-20 {
  font-size: 2rem;
}

.fs-21 {
  font-size: 2.1rem;
}

.fs-22 {
  font-size: 2.2rem;
}

.fs-23 {
  font-size: 2.3rem;
}

.fs-24 {
  font-size: 2.4rem;
}

.fs-25 {
  font-size: 2.5rem;
}

.fs-26 {
  font-size: 2.6rem;
}

.fs-27 {
  font-size: 2.7rem;
}

.fs-28 {
  font-size: 2.8rem;
}

.fs-29 {
  font-size: 2.9rem;
}

.fs-30 {
  font-size: 3rem;
}

.fs-31 {
  font-size: 3.1rem;
}

.fs-32 {
  font-size: 3.2rem;
}

.fs-33 {
  font-size: 3.3rem;
}

.fs-34 {
  font-size: 3.4rem;
}

.fs-35 {
  font-size: 3.5rem;
}

.fs-36 {
  font-size: 3.6rem;
}

.fs-37 {
  font-size: 3.7rem;
}

.fs-38 {
  font-size: 3.8rem;
}

.fs-39 {
  font-size: 3.9rem;
}

.fs-40 {
  font-size: 4rem;
}

@media (max-width: 1199px) {
  .fs-10-xl {
    font-size: 1rem !important;
  }
  .fs-11-xl {
    font-size: 1.1rem !important;
  }
  .fs-12-xl {
    font-size: 1.2rem !important;
  }
  .fs-13-xl {
    font-size: 1.3rem !important;
  }
  .fs-14-xl {
    font-size: 1.4rem !important;
  }
  .fs-15-xl {
    font-size: 1.5rem !important;
  }
  .fs-16-xl {
    font-size: 1.6rem !important;
  }
  .fs-17-xl {
    font-size: 1.7rem !important;
  }
  .fs-18-xl {
    font-size: 1.8rem !important;
  }
  .fs-19-xl {
    font-size: 1.9rem !important;
  }
  .fs-20-xl {
    font-size: 2rem !important;
  }
  .fs-21-xl {
    font-size: 2.1rem !important;
  }
  .fs-22-xl {
    font-size: 2.2rem !important;
  }
  .fs-23-xl {
    font-size: 2.3rem !important;
  }
  .fs-24-xl {
    font-size: 2.4rem !important;
  }
  .fs-25-xl {
    font-size: 2.5rem !important;
  }
  .fs-26-xl {
    font-size: 2.6rem !important;
  }
  .fs-27-xl {
    font-size: 2.7rem !important;
  }
  .fs-28-xl {
    font-size: 2.8rem !important;
  }
  .fs-29-xl {
    font-size: 2.9rem !important;
  }
  .fs-30-xl {
    font-size: 3rem !important;
  }
  .fs-31-xl {
    font-size: 3.1rem !important;
  }
  .fs-32-xl {
    font-size: 3.2rem !important;
  }
  .fs-33-xl {
    font-size: 3.3rem !important;
  }
  .fs-34-xl {
    font-size: 3.4rem !important;
  }
  .fs-35-xl {
    font-size: 3.5rem !important;
  }
  .fs-36-xl {
    font-size: 3.6rem !important;
  }
  .fs-37-xl {
    font-size: 3.7rem !important;
  }
  .fs-38-xl {
    font-size: 3.8rem !important;
  }
  .fs-39-xl {
    font-size: 3.9rem !important;
  }
  .fs-40-xl {
    font-size: 4rem !important;
  }
}
@media (max-width: 1023px) {
  .fs-10-lg {
    font-size: 1rem !important;
  }
  .fs-11-lg {
    font-size: 1.1rem !important;
  }
  .fs-12-lg {
    font-size: 1.2rem !important;
  }
  .fs-13-lg {
    font-size: 1.3rem !important;
  }
  .fs-14-lg {
    font-size: 1.4rem !important;
  }
  .fs-15-lg {
    font-size: 1.5rem !important;
  }
  .fs-16-lg {
    font-size: 1.6rem !important;
  }
  .fs-17-lg {
    font-size: 1.7rem !important;
  }
  .fs-18-lg {
    font-size: 1.8rem !important;
  }
  .fs-19-lg {
    font-size: 1.9rem !important;
  }
  .fs-20-lg {
    font-size: 2rem !important;
  }
  .fs-21-lg {
    font-size: 2.1rem !important;
  }
  .fs-22-lg {
    font-size: 2.2rem !important;
  }
  .fs-23-lg {
    font-size: 2.3rem !important;
  }
  .fs-24-lg {
    font-size: 2.4rem !important;
  }
  .fs-25-lg {
    font-size: 2.5rem !important;
  }
  .fs-26-lg {
    font-size: 2.6rem !important;
  }
  .fs-27-lg {
    font-size: 2.7rem !important;
  }
  .fs-28-lg {
    font-size: 2.8rem !important;
  }
  .fs-29-lg {
    font-size: 2.9rem !important;
  }
  .fs-30-lg {
    font-size: 3rem !important;
  }
  .fs-31-lg {
    font-size: 3.1rem !important;
  }
  .fs-32-lg {
    font-size: 3.2rem !important;
  }
  .fs-33-lg {
    font-size: 3.3rem !important;
  }
  .fs-34-lg {
    font-size: 3.4rem !important;
  }
  .fs-35-lg {
    font-size: 3.5rem !important;
  }
  .fs-36-lg {
    font-size: 3.6rem !important;
  }
  .fs-37-lg {
    font-size: 3.7rem !important;
  }
  .fs-38-lg {
    font-size: 3.8rem !important;
  }
  .fs-39-lg {
    font-size: 3.9rem !important;
  }
  .fs-40-lg {
    font-size: 4rem !important;
  }
}
@media (max-width: 767px) {
  .fs-10-md {
    font-size: 1rem !important;
  }
  .fs-11-md {
    font-size: 1.1rem !important;
  }
  .fs-12-md {
    font-size: 1.2rem !important;
  }
  .fs-13-md {
    font-size: 1.3rem !important;
  }
  .fs-14-md {
    font-size: 1.4rem !important;
  }
  .fs-15-md {
    font-size: 1.5rem !important;
  }
  .fs-16-md {
    font-size: 1.6rem !important;
  }
  .fs-17-md {
    font-size: 1.7rem !important;
  }
  .fs-18-md {
    font-size: 1.8rem !important;
  }
  .fs-19-md {
    font-size: 1.9rem !important;
  }
  .fs-20-md {
    font-size: 2rem !important;
  }
  .fs-21-md {
    font-size: 2.1rem !important;
  }
  .fs-22-md {
    font-size: 2.2rem !important;
  }
  .fs-23-md {
    font-size: 2.3rem !important;
  }
  .fs-24-md {
    font-size: 2.4rem !important;
  }
  .fs-25-md {
    font-size: 2.5rem !important;
  }
  .fs-26-md {
    font-size: 2.6rem !important;
  }
  .fs-27-md {
    font-size: 2.7rem !important;
  }
  .fs-28-md {
    font-size: 2.8rem !important;
  }
  .fs-29-md {
    font-size: 2.9rem !important;
  }
  .fs-30-md {
    font-size: 3rem !important;
  }
  .fs-31-md {
    font-size: 3.1rem !important;
  }
  .fs-32-md {
    font-size: 3.2rem !important;
  }
  .fs-33-md {
    font-size: 3.3rem !important;
  }
  .fs-34-md {
    font-size: 3.4rem !important;
  }
  .fs-35-md {
    font-size: 3.5rem !important;
  }
  .fs-36-md {
    font-size: 3.6rem !important;
  }
  .fs-37-md {
    font-size: 3.7rem !important;
  }
  .fs-38-md {
    font-size: 3.8rem !important;
  }
  .fs-39-md {
    font-size: 3.9rem !important;
  }
  .fs-40-md {
    font-size: 4rem !important;
  }
}
@media (max-width: 575px) {
  .fs-10-sm {
    font-size: 1rem !important;
  }
  .fs-11-sm {
    font-size: 1.1rem !important;
  }
  .fs-12-sm {
    font-size: 1.2rem !important;
  }
  .fs-13-sm {
    font-size: 1.3rem !important;
  }
  .fs-14-sm {
    font-size: 1.4rem !important;
  }
  .fs-15-sm {
    font-size: 1.5rem !important;
  }
  .fs-16-sm {
    font-size: 1.6rem !important;
  }
  .fs-17-sm {
    font-size: 1.7rem !important;
  }
  .fs-18-sm {
    font-size: 1.8rem !important;
  }
  .fs-19-sm {
    font-size: 1.9rem !important;
  }
  .fs-20-sm {
    font-size: 2rem !important;
  }
  .fs-21-sm {
    font-size: 2.1rem !important;
  }
  .fs-22-sm {
    font-size: 2.2rem !important;
  }
  .fs-23-sm {
    font-size: 2.3rem !important;
  }
  .fs-24-sm {
    font-size: 2.4rem !important;
  }
  .fs-25-sm {
    font-size: 2.5rem !important;
  }
  .fs-26-sm {
    font-size: 2.6rem !important;
  }
  .fs-27-sm {
    font-size: 2.7rem !important;
  }
  .fs-28-sm {
    font-size: 2.8rem !important;
  }
  .fs-29-sm {
    font-size: 2.9rem !important;
  }
  .fs-30-sm {
    font-size: 3rem !important;
  }
  .fs-31-sm {
    font-size: 3.1rem !important;
  }
  .fs-32-sm {
    font-size: 3.2rem !important;
  }
  .fs-33-sm {
    font-size: 3.3rem !important;
  }
  .fs-34-sm {
    font-size: 3.4rem !important;
  }
  .fs-35-sm {
    font-size: 3.5rem !important;
  }
  .fs-36-sm {
    font-size: 3.6rem !important;
  }
  .fs-37-sm {
    font-size: 3.7rem !important;
  }
  .fs-38-sm {
    font-size: 3.8rem !important;
  }
  .fs-39-sm {
    font-size: 3.9rem !important;
  }
  .fs-40-sm {
    font-size: 4rem !important;
  }
}
.lh-1 {
  line-height: 1.1;
}

.lh-2 {
  line-height: 1.2;
}

.lh-3 {
  line-height: 1.3;
}

.lh-4 {
  line-height: 1.4;
}

.lh-5 {
  line-height: 1.5;
}

.lh-6 {
  line-height: 1.6;
}

@media (max-width: 1199px) {
  .lh-1-xl {
    line-height: 1.1;
  }
  .lh-2-xl {
    line-height: 1.2;
  }
  .lh-3-xl {
    line-height: 1.3;
  }
  .lh-4-xl {
    line-height: 1.4;
  }
  .lh-5-xl {
    line-height: 1.5;
  }
  .lh-6-xl {
    line-height: 1.6;
  }
}
@media (max-width: 1023px) {
  .lh-1-lg {
    line-height: 1.1;
  }
  .lh-2-lg {
    line-height: 1.2;
  }
  .lh-3-lg {
    line-height: 1.3;
  }
  .lh-4-lg {
    line-height: 1.4;
  }
  .lh-5-lg {
    line-height: 1.5;
  }
  .lh-6-lg {
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .lh-1-md {
    line-height: 1.1;
  }
  .lh-2-md {
    line-height: 1.2;
  }
  .lh-3-md {
    line-height: 1.3;
  }
  .lh-4-md {
    line-height: 1.4;
  }
  .lh-5-md {
    line-height: 1.5;
  }
  .lh-6-md {
    line-height: 1.6;
  }
}
@media (max-width: 575px) {
  .lh-1-sm {
    line-height: 1.1;
  }
  .lh-2-sm {
    line-height: 1.2;
  }
  .lh-3-sm {
    line-height: 1.3;
  }
  .lh-4-sm {
    line-height: 1.4;
  }
  .lh-5-sm {
    line-height: 1.5;
  }
  .lh-6-sm {
    line-height: 1.6;
  }
}
/*utility
-----------------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
}

ol {
  padding-left: 1em;
}

.float-l {
  float: left;
}

.float-r {
  float: right;
}

.en {
  font-family: "Archivo Narrow", sans-serif;
  text-transform: uppercase;
}

.en-normal {
  text-transform: none;
}

.mincho {
  font-family: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

em {
  font-style: normal;
  font-weight: bold;
}

.line {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 80%, #fffa73 0%) repeat scroll 0 0;
}

.indent-list {
  text-indent: -1em;
  padding-left: 1em;
}

.disc-list {
  list-style: disc;
  padding-left: 1.5em;
}

.color-main {
  color: #174A79 !important;
}

.color-blue01 {
  color: !important;
}

.color-white {
  color: #fff;
}

.bold {
  font-weight: bold;
}

.normal {
  font-weight: normal;
}

.link-none {
  pointer-events: none;
}

.align-l {
  text-align: left;
}
@media (max-width: 1199px) {
  .align-l-xl {
    text-align: left;
  }
}
@media (max-width: 1023px) {
  .align-l-lg {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .align-l-md {
    text-align: left;
  }
}
@media (max-width: 575px) {
  .align-l-sm {
    text-align: left;
  }
}

.align-c {
  text-align: center;
}
@media (max-width: 1199px) {
  .align-c-xl {
    text-align: center;
  }
}
@media (max-width: 1023px) {
  .align-c-lg {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .align-c-md {
    text-align: center;
  }
}
@media (max-width: 575px) {
  .align-c-sm {
    text-align: center;
  }
}

.align-r {
  text-align: right;
}
@media (max-width: 1199px) {
  .align-r-xl {
    text-align: right;
  }
}
@media (max-width: 1023px) {
  .align-r-lg {
    text-align: right;
  }
}
@media (max-width: 767px) {
  .align-r-md {
    text-align: right;
  }
}
@media (max-width: 575px) {
  .align-r-sm {
    text-align: right;
  }
}

.pos-r {
  position: relative;
}

.box-shadow {
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
}

.bg-light-blue01 {
  background: #00a4d8;
}

.bg-black {
  background: #000;
}

.bg-blue-pattern01 {
  background: repeating-linear-gradient(-45deg, #0171bb, #0171bb 10px, #0674bc 0, #0674bc 20px);
}

.none {
  display: none;
}
@media (max-width: 1199px) {
  .none-xl {
    display: none;
  }
}
@media (max-width: 1023px) {
  .none-lg {
    display: none;
  }
}
@media (max-width: 767px) {
  .none-md {
    display: none;
  }
}
@media (max-width: 575px) {
  .none-sm {
    display: none;
  }
}

.block {
  display: block;
}
@media (max-width: 1199px) {
  .block-xl {
    display: block;
  }
}
@media (max-width: 1023px) {
  .block-lg {
    display: block;
  }
}
@media (max-width: 767px) {
  .block-md {
    display: block;
  }
}
@media (max-width: 575px) {
  .block-sm {
    display: block;
  }
}

.inline-block {
  display: inline-block;
}
@media (max-width: 1199px) {
  .inline-block-xl {
    display: inline-block;
  }
}
@media (max-width: 1023px) {
  .inline-block-lg {
    display: inline-block;
  }
}
@media (max-width: 767px) {
  .inline-block-md {
    display: inline-block;
  }
}
@media (max-width: 575px) {
  .inline-block-sm {
    display: inline-block;
  }
}

/* margin padding gap
-----------------------------------------------------*/
.mt-0 {
  margin-top: 0rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt-25 {
  margin-top: 2.5rem !important;
}

.pt-25 {
  padding-top: 2.5rem !important;
}

.mb-25 {
  margin-bottom: 2.5rem !important;
}

.pb-25 {
  padding-bottom: 2.5rem !important;
}

.ml-25 {
  margin-left: 2.5rem !important;
}

.pl-25 {
  padding-left: 2.5rem !important;
}

.mr-25 {
  margin-right: 2.5rem !important;
}

.pr-25 {
  padding-right: 2.5rem !important;
}

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

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

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

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

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

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

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

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

.mt-35 {
  margin-top: 3.5rem !important;
}

.pt-35 {
  padding-top: 3.5rem !important;
}

.mb-35 {
  margin-bottom: 3.5rem !important;
}

.pb-35 {
  padding-bottom: 3.5rem !important;
}

.ml-35 {
  margin-left: 3.5rem !important;
}

.pl-35 {
  padding-left: 3.5rem !important;
}

.mr-35 {
  margin-right: 3.5rem !important;
}

.pr-35 {
  padding-right: 3.5rem !important;
}

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

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

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

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

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

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

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

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

.mt-45 {
  margin-top: 4.5rem !important;
}

.pt-45 {
  padding-top: 4.5rem !important;
}

.mb-45 {
  margin-bottom: 4.5rem !important;
}

.pb-45 {
  padding-bottom: 4.5rem !important;
}

.ml-45 {
  margin-left: 4.5rem !important;
}

.pl-45 {
  padding-left: 4.5rem !important;
}

.mr-45 {
  margin-right: 4.5rem !important;
}

.pr-45 {
  padding-right: 4.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt-100 {
  margin-top: 10rem !important;
}

.pt-100 {
  padding-top: 10rem !important;
}

.mb-100 {
  margin-bottom: 10rem !important;
}

.pb-100 {
  padding-bottom: 10rem !important;
}

.ml-100 {
  margin-left: 10rem !important;
}

.pl-100 {
  padding-left: 10rem !important;
}

.mr-100 {
  margin-right: 10rem !important;
}

.pr-100 {
  padding-right: 10rem !important;
}

.mt-110 {
  margin-top: 11rem !important;
}

.pt-110 {
  padding-top: 11rem !important;
}

.mb-110 {
  margin-bottom: 11rem !important;
}

.pb-110 {
  padding-bottom: 11rem !important;
}

.ml-110 {
  margin-left: 11rem !important;
}

.pl-110 {
  padding-left: 11rem !important;
}

.mr-110 {
  margin-right: 11rem !important;
}

.pr-110 {
  padding-right: 11rem !important;
}

.mt-120 {
  margin-top: 12rem !important;
}

.pt-120 {
  padding-top: 12rem !important;
}

.mb-120 {
  margin-bottom: 12rem !important;
}

.pb-120 {
  padding-bottom: 12rem !important;
}

.ml-120 {
  margin-left: 12rem !important;
}

.pl-120 {
  padding-left: 12rem !important;
}

.mr-120 {
  margin-right: 12rem !important;
}

.pr-120 {
  padding-right: 12rem !important;
}

@media (max-width: 1199px) {
  .mt-0-xl {
    margin-top: 0rem !important;
  }
  .pt-0-xl {
    padding-top: 0rem !important;
  }
  .mb-0-xl {
    margin-bottom: 0rem !important;
  }
  .pb-0-xl {
    padding-bottom: 0rem !important;
  }
  .ml-0-xl {
    margin-left: 0rem !important;
  }
  .pl-0-xl {
    padding-left: 0rem !important;
  }
  .mr-0-xl {
    margin-right: 0rem !important;
  }
  .pr-0-xl {
    padding-right: 0rem !important;
  }
  .mt-10-xl {
    margin-top: 1rem !important;
  }
  .pt-10-xl {
    padding-top: 1rem !important;
  }
  .mb-10-xl {
    margin-bottom: 1rem !important;
  }
  .pb-10-xl {
    padding-bottom: 1rem !important;
  }
  .ml-10-xl {
    margin-left: 1rem !important;
  }
  .pl-10-xl {
    padding-left: 1rem !important;
  }
  .mr-10-xl {
    margin-right: 1rem !important;
  }
  .pr-10-xl {
    padding-right: 1rem !important;
  }
  .mt-15-xl {
    margin-top: 1.5rem !important;
  }
  .pt-15-xl {
    padding-top: 1.5rem !important;
  }
  .mb-15-xl {
    margin-bottom: 1.5rem !important;
  }
  .pb-15-xl {
    padding-bottom: 1.5rem !important;
  }
  .ml-15-xl {
    margin-left: 1.5rem !important;
  }
  .pl-15-xl {
    padding-left: 1.5rem !important;
  }
  .mr-15-xl {
    margin-right: 1.5rem !important;
  }
  .pr-15-xl {
    padding-right: 1.5rem !important;
  }
  .mt-20-xl {
    margin-top: 2rem !important;
  }
  .pt-20-xl {
    padding-top: 2rem !important;
  }
  .mb-20-xl {
    margin-bottom: 2rem !important;
  }
  .pb-20-xl {
    padding-bottom: 2rem !important;
  }
  .ml-20-xl {
    margin-left: 2rem !important;
  }
  .pl-20-xl {
    padding-left: 2rem !important;
  }
  .mr-20-xl {
    margin-right: 2rem !important;
  }
  .pr-20-xl {
    padding-right: 2rem !important;
  }
  .mt-25-xl {
    margin-top: 2.5rem !important;
  }
  .pt-25-xl {
    padding-top: 2.5rem !important;
  }
  .mb-25-xl {
    margin-bottom: 2.5rem !important;
  }
  .pb-25-xl {
    padding-bottom: 2.5rem !important;
  }
  .ml-25-xl {
    margin-left: 2.5rem !important;
  }
  .pl-25-xl {
    padding-left: 2.5rem !important;
  }
  .mr-25-xl {
    margin-right: 2.5rem !important;
  }
  .pr-25-xl {
    padding-right: 2.5rem !important;
  }
  .mt-30-xl {
    margin-top: 3rem !important;
  }
  .pt-30-xl {
    padding-top: 3rem !important;
  }
  .mb-30-xl {
    margin-bottom: 3rem !important;
  }
  .pb-30-xl {
    padding-bottom: 3rem !important;
  }
  .ml-30-xl {
    margin-left: 3rem !important;
  }
  .pl-30-xl {
    padding-left: 3rem !important;
  }
  .mr-30-xl {
    margin-right: 3rem !important;
  }
  .pr-30-xl {
    padding-right: 3rem !important;
  }
  .mt-35-xl {
    margin-top: 3.5rem !important;
  }
  .pt-35-xl {
    padding-top: 3.5rem !important;
  }
  .mb-35-xl {
    margin-bottom: 3.5rem !important;
  }
  .pb-35-xl {
    padding-bottom: 3.5rem !important;
  }
  .ml-35-xl {
    margin-left: 3.5rem !important;
  }
  .pl-35-xl {
    padding-left: 3.5rem !important;
  }
  .mr-35-xl {
    margin-right: 3.5rem !important;
  }
  .pr-35-xl {
    padding-right: 3.5rem !important;
  }
  .mt-40-xl {
    margin-top: 4rem !important;
  }
  .pt-40-xl {
    padding-top: 4rem !important;
  }
  .mb-40-xl {
    margin-bottom: 4rem !important;
  }
  .pb-40-xl {
    padding-bottom: 4rem !important;
  }
  .ml-40-xl {
    margin-left: 4rem !important;
  }
  .pl-40-xl {
    padding-left: 4rem !important;
  }
  .mr-40-xl {
    margin-right: 4rem !important;
  }
  .pr-40-xl {
    padding-right: 4rem !important;
  }
  .mt-45-xl {
    margin-top: 4.5rem !important;
  }
  .pt-45-xl {
    padding-top: 4.5rem !important;
  }
  .mb-45-xl {
    margin-bottom: 4.5rem !important;
  }
  .pb-45-xl {
    padding-bottom: 4.5rem !important;
  }
  .ml-45-xl {
    margin-left: 4.5rem !important;
  }
  .pl-45-xl {
    padding-left: 4.5rem !important;
  }
  .mr-45-xl {
    margin-right: 4.5rem !important;
  }
  .pr-45-xl {
    padding-right: 4.5rem !important;
  }
  .mt-50-xl {
    margin-top: 5rem !important;
  }
  .pt-50-xl {
    padding-top: 5rem !important;
  }
  .mb-50-xl {
    margin-bottom: 5rem !important;
  }
  .pb-50-xl {
    padding-bottom: 5rem !important;
  }
  .ml-50-xl {
    margin-left: 5rem !important;
  }
  .pl-50-xl {
    padding-left: 5rem !important;
  }
  .mr-50-xl {
    margin-right: 5rem !important;
  }
  .pr-50-xl {
    padding-right: 5rem !important;
  }
  .mt-60-xl {
    margin-top: 6rem !important;
  }
  .pt-60-xl {
    padding-top: 6rem !important;
  }
  .mb-60-xl {
    margin-bottom: 6rem !important;
  }
  .pb-60-xl {
    padding-bottom: 6rem !important;
  }
  .ml-60-xl {
    margin-left: 6rem !important;
  }
  .pl-60-xl {
    padding-left: 6rem !important;
  }
  .mr-60-xl {
    margin-right: 6rem !important;
  }
  .pr-60-xl {
    padding-right: 6rem !important;
  }
  .mt-70-xl {
    margin-top: 7rem !important;
  }
  .pt-70-xl {
    padding-top: 7rem !important;
  }
  .mb-70-xl {
    margin-bottom: 7rem !important;
  }
  .pb-70-xl {
    padding-bottom: 7rem !important;
  }
  .ml-70-xl {
    margin-left: 7rem !important;
  }
  .pl-70-xl {
    padding-left: 7rem !important;
  }
  .mr-70-xl {
    margin-right: 7rem !important;
  }
  .pr-70-xl {
    padding-right: 7rem !important;
  }
  .mt-80-xl {
    margin-top: 8rem !important;
  }
  .pt-80-xl {
    padding-top: 8rem !important;
  }
  .mb-80-xl {
    margin-bottom: 8rem !important;
  }
  .pb-80-xl {
    padding-bottom: 8rem !important;
  }
  .ml-80-xl {
    margin-left: 8rem !important;
  }
  .pl-80-xl {
    padding-left: 8rem !important;
  }
  .mr-80-xl {
    margin-right: 8rem !important;
  }
  .pr-80-xl {
    padding-right: 8rem !important;
  }
  .mt-90-xl {
    margin-top: 9rem !important;
  }
  .pt-90-xl {
    padding-top: 9rem !important;
  }
  .mb-90-xl {
    margin-bottom: 9rem !important;
  }
  .pb-90-xl {
    padding-bottom: 9rem !important;
  }
  .ml-90-xl {
    margin-left: 9rem !important;
  }
  .pl-90-xl {
    padding-left: 9rem !important;
  }
  .mr-90-xl {
    margin-right: 9rem !important;
  }
  .pr-90-xl {
    padding-right: 9rem !important;
  }
  .mt-100-xl {
    margin-top: 10rem !important;
  }
  .pt-100-xl {
    padding-top: 10rem !important;
  }
  .mb-100-xl {
    margin-bottom: 10rem !important;
  }
  .pb-100-xl {
    padding-bottom: 10rem !important;
  }
  .ml-100-xl {
    margin-left: 10rem !important;
  }
  .pl-100-xl {
    padding-left: 10rem !important;
  }
  .mr-100-xl {
    margin-right: 10rem !important;
  }
  .pr-100-xl {
    padding-right: 10rem !important;
  }
  .mt-110-xl {
    margin-top: 11rem !important;
  }
  .pt-110-xl {
    padding-top: 11rem !important;
  }
  .mb-110-xl {
    margin-bottom: 11rem !important;
  }
  .pb-110-xl {
    padding-bottom: 11rem !important;
  }
  .ml-110-xl {
    margin-left: 11rem !important;
  }
  .pl-110-xl {
    padding-left: 11rem !important;
  }
  .mr-110-xl {
    margin-right: 11rem !important;
  }
  .pr-110-xl {
    padding-right: 11rem !important;
  }
  .mt-120-xl {
    margin-top: 12rem !important;
  }
  .pt-120-xl {
    padding-top: 12rem !important;
  }
  .mb-120-xl {
    margin-bottom: 12rem !important;
  }
  .pb-120-xl {
    padding-bottom: 12rem !important;
  }
  .ml-120-xl {
    margin-left: 12rem !important;
  }
  .pl-120-xl {
    padding-left: 12rem !important;
  }
  .mr-120-xl {
    margin-right: 12rem !important;
  }
  .pr-120-xl {
    padding-right: 12rem !important;
  }
}
@media (max-width: 1023px) {
  .mt-0-lg {
    margin-top: 0rem !important;
  }
  .pt-0-lg {
    padding-top: 0rem !important;
  }
  .mb-0-lg {
    margin-bottom: 0rem !important;
  }
  .pb-0-lg {
    padding-bottom: 0rem !important;
  }
  .ml-0-lg {
    margin-left: 0rem !important;
  }
  .pl-0-lg {
    padding-left: 0rem !important;
  }
  .mr-0-lg {
    margin-right: 0rem !important;
  }
  .pr-0-lg {
    padding-right: 0rem !important;
  }
  .mt-10-lg {
    margin-top: 1rem !important;
  }
  .pt-10-lg {
    padding-top: 1rem !important;
  }
  .mb-10-lg {
    margin-bottom: 1rem !important;
  }
  .pb-10-lg {
    padding-bottom: 1rem !important;
  }
  .ml-10-lg {
    margin-left: 1rem !important;
  }
  .pl-10-lg {
    padding-left: 1rem !important;
  }
  .mr-10-lg {
    margin-right: 1rem !important;
  }
  .pr-10-lg {
    padding-right: 1rem !important;
  }
  .mt-15-lg {
    margin-top: 1.5rem !important;
  }
  .pt-15-lg {
    padding-top: 1.5rem !important;
  }
  .mb-15-lg {
    margin-bottom: 1.5rem !important;
  }
  .pb-15-lg {
    padding-bottom: 1.5rem !important;
  }
  .ml-15-lg {
    margin-left: 1.5rem !important;
  }
  .pl-15-lg {
    padding-left: 1.5rem !important;
  }
  .mr-15-lg {
    margin-right: 1.5rem !important;
  }
  .pr-15-lg {
    padding-right: 1.5rem !important;
  }
  .mt-20-lg {
    margin-top: 2rem !important;
  }
  .pt-20-lg {
    padding-top: 2rem !important;
  }
  .mb-20-lg {
    margin-bottom: 2rem !important;
  }
  .pb-20-lg {
    padding-bottom: 2rem !important;
  }
  .ml-20-lg {
    margin-left: 2rem !important;
  }
  .pl-20-lg {
    padding-left: 2rem !important;
  }
  .mr-20-lg {
    margin-right: 2rem !important;
  }
  .pr-20-lg {
    padding-right: 2rem !important;
  }
  .mt-25-lg {
    margin-top: 2.5rem !important;
  }
  .pt-25-lg {
    padding-top: 2.5rem !important;
  }
  .mb-25-lg {
    margin-bottom: 2.5rem !important;
  }
  .pb-25-lg {
    padding-bottom: 2.5rem !important;
  }
  .ml-25-lg {
    margin-left: 2.5rem !important;
  }
  .pl-25-lg {
    padding-left: 2.5rem !important;
  }
  .mr-25-lg {
    margin-right: 2.5rem !important;
  }
  .pr-25-lg {
    padding-right: 2.5rem !important;
  }
  .mt-30-lg {
    margin-top: 3rem !important;
  }
  .pt-30-lg {
    padding-top: 3rem !important;
  }
  .mb-30-lg {
    margin-bottom: 3rem !important;
  }
  .pb-30-lg {
    padding-bottom: 3rem !important;
  }
  .ml-30-lg {
    margin-left: 3rem !important;
  }
  .pl-30-lg {
    padding-left: 3rem !important;
  }
  .mr-30-lg {
    margin-right: 3rem !important;
  }
  .pr-30-lg {
    padding-right: 3rem !important;
  }
  .mt-35-lg {
    margin-top: 3.5rem !important;
  }
  .pt-35-lg {
    padding-top: 3.5rem !important;
  }
  .mb-35-lg {
    margin-bottom: 3.5rem !important;
  }
  .pb-35-lg {
    padding-bottom: 3.5rem !important;
  }
  .ml-35-lg {
    margin-left: 3.5rem !important;
  }
  .pl-35-lg {
    padding-left: 3.5rem !important;
  }
  .mr-35-lg {
    margin-right: 3.5rem !important;
  }
  .pr-35-lg {
    padding-right: 3.5rem !important;
  }
  .mt-40-lg {
    margin-top: 4rem !important;
  }
  .pt-40-lg {
    padding-top: 4rem !important;
  }
  .mb-40-lg {
    margin-bottom: 4rem !important;
  }
  .pb-40-lg {
    padding-bottom: 4rem !important;
  }
  .ml-40-lg {
    margin-left: 4rem !important;
  }
  .pl-40-lg {
    padding-left: 4rem !important;
  }
  .mr-40-lg {
    margin-right: 4rem !important;
  }
  .pr-40-lg {
    padding-right: 4rem !important;
  }
  .mt-45-lg {
    margin-top: 4.5rem !important;
  }
  .pt-45-lg {
    padding-top: 4.5rem !important;
  }
  .mb-45-lg {
    margin-bottom: 4.5rem !important;
  }
  .pb-45-lg {
    padding-bottom: 4.5rem !important;
  }
  .ml-45-lg {
    margin-left: 4.5rem !important;
  }
  .pl-45-lg {
    padding-left: 4.5rem !important;
  }
  .mr-45-lg {
    margin-right: 4.5rem !important;
  }
  .pr-45-lg {
    padding-right: 4.5rem !important;
  }
  .mt-50-lg {
    margin-top: 5rem !important;
  }
  .pt-50-lg {
    padding-top: 5rem !important;
  }
  .mb-50-lg {
    margin-bottom: 5rem !important;
  }
  .pb-50-lg {
    padding-bottom: 5rem !important;
  }
  .ml-50-lg {
    margin-left: 5rem !important;
  }
  .pl-50-lg {
    padding-left: 5rem !important;
  }
  .mr-50-lg {
    margin-right: 5rem !important;
  }
  .pr-50-lg {
    padding-right: 5rem !important;
  }
  .mt-60-lg {
    margin-top: 6rem !important;
  }
  .pt-60-lg {
    padding-top: 6rem !important;
  }
  .mb-60-lg {
    margin-bottom: 6rem !important;
  }
  .pb-60-lg {
    padding-bottom: 6rem !important;
  }
  .ml-60-lg {
    margin-left: 6rem !important;
  }
  .pl-60-lg {
    padding-left: 6rem !important;
  }
  .mr-60-lg {
    margin-right: 6rem !important;
  }
  .pr-60-lg {
    padding-right: 6rem !important;
  }
  .mt-70-lg {
    margin-top: 7rem !important;
  }
  .pt-70-lg {
    padding-top: 7rem !important;
  }
  .mb-70-lg {
    margin-bottom: 7rem !important;
  }
  .pb-70-lg {
    padding-bottom: 7rem !important;
  }
  .ml-70-lg {
    margin-left: 7rem !important;
  }
  .pl-70-lg {
    padding-left: 7rem !important;
  }
  .mr-70-lg {
    margin-right: 7rem !important;
  }
  .pr-70-lg {
    padding-right: 7rem !important;
  }
  .mt-80-lg {
    margin-top: 8rem !important;
  }
  .pt-80-lg {
    padding-top: 8rem !important;
  }
  .mb-80-lg {
    margin-bottom: 8rem !important;
  }
  .pb-80-lg {
    padding-bottom: 8rem !important;
  }
  .ml-80-lg {
    margin-left: 8rem !important;
  }
  .pl-80-lg {
    padding-left: 8rem !important;
  }
  .mr-80-lg {
    margin-right: 8rem !important;
  }
  .pr-80-lg {
    padding-right: 8rem !important;
  }
  .mt-90-lg {
    margin-top: 9rem !important;
  }
  .pt-90-lg {
    padding-top: 9rem !important;
  }
  .mb-90-lg {
    margin-bottom: 9rem !important;
  }
  .pb-90-lg {
    padding-bottom: 9rem !important;
  }
  .ml-90-lg {
    margin-left: 9rem !important;
  }
  .pl-90-lg {
    padding-left: 9rem !important;
  }
  .mr-90-lg {
    margin-right: 9rem !important;
  }
  .pr-90-lg {
    padding-right: 9rem !important;
  }
  .mt-100-lg {
    margin-top: 10rem !important;
  }
  .pt-100-lg {
    padding-top: 10rem !important;
  }
  .mb-100-lg {
    margin-bottom: 10rem !important;
  }
  .pb-100-lg {
    padding-bottom: 10rem !important;
  }
  .ml-100-lg {
    margin-left: 10rem !important;
  }
  .pl-100-lg {
    padding-left: 10rem !important;
  }
  .mr-100-lg {
    margin-right: 10rem !important;
  }
  .pr-100-lg {
    padding-right: 10rem !important;
  }
  .mt-110-lg {
    margin-top: 11rem !important;
  }
  .pt-110-lg {
    padding-top: 11rem !important;
  }
  .mb-110-lg {
    margin-bottom: 11rem !important;
  }
  .pb-110-lg {
    padding-bottom: 11rem !important;
  }
  .ml-110-lg {
    margin-left: 11rem !important;
  }
  .pl-110-lg {
    padding-left: 11rem !important;
  }
  .mr-110-lg {
    margin-right: 11rem !important;
  }
  .pr-110-lg {
    padding-right: 11rem !important;
  }
  .mt-120-lg {
    margin-top: 12rem !important;
  }
  .pt-120-lg {
    padding-top: 12rem !important;
  }
  .mb-120-lg {
    margin-bottom: 12rem !important;
  }
  .pb-120-lg {
    padding-bottom: 12rem !important;
  }
  .ml-120-lg {
    margin-left: 12rem !important;
  }
  .pl-120-lg {
    padding-left: 12rem !important;
  }
  .mr-120-lg {
    margin-right: 12rem !important;
  }
  .pr-120-lg {
    padding-right: 12rem !important;
  }
}
@media (max-width: 767px) {
  .mt-0-md {
    margin-top: 0rem !important;
  }
  .pt-0-md {
    padding-top: 0rem !important;
  }
  .mb-0-md {
    margin-bottom: 0rem !important;
  }
  .pb-0-md {
    padding-bottom: 0rem !important;
  }
  .ml-0-md {
    margin-left: 0rem !important;
  }
  .pl-0-md {
    padding-left: 0rem !important;
  }
  .mr-0-md {
    margin-right: 0rem !important;
  }
  .pr-0-md {
    padding-right: 0rem !important;
  }
  .mt-10-md {
    margin-top: 1rem !important;
  }
  .pt-10-md {
    padding-top: 1rem !important;
  }
  .mb-10-md {
    margin-bottom: 1rem !important;
  }
  .pb-10-md {
    padding-bottom: 1rem !important;
  }
  .ml-10-md {
    margin-left: 1rem !important;
  }
  .pl-10-md {
    padding-left: 1rem !important;
  }
  .mr-10-md {
    margin-right: 1rem !important;
  }
  .pr-10-md {
    padding-right: 1rem !important;
  }
  .mt-15-md {
    margin-top: 1.5rem !important;
  }
  .pt-15-md {
    padding-top: 1.5rem !important;
  }
  .mb-15-md {
    margin-bottom: 1.5rem !important;
  }
  .pb-15-md {
    padding-bottom: 1.5rem !important;
  }
  .ml-15-md {
    margin-left: 1.5rem !important;
  }
  .pl-15-md {
    padding-left: 1.5rem !important;
  }
  .mr-15-md {
    margin-right: 1.5rem !important;
  }
  .pr-15-md {
    padding-right: 1.5rem !important;
  }
  .mt-20-md {
    margin-top: 2rem !important;
  }
  .pt-20-md {
    padding-top: 2rem !important;
  }
  .mb-20-md {
    margin-bottom: 2rem !important;
  }
  .pb-20-md {
    padding-bottom: 2rem !important;
  }
  .ml-20-md {
    margin-left: 2rem !important;
  }
  .pl-20-md {
    padding-left: 2rem !important;
  }
  .mr-20-md {
    margin-right: 2rem !important;
  }
  .pr-20-md {
    padding-right: 2rem !important;
  }
  .mt-25-md {
    margin-top: 2.5rem !important;
  }
  .pt-25-md {
    padding-top: 2.5rem !important;
  }
  .mb-25-md {
    margin-bottom: 2.5rem !important;
  }
  .pb-25-md {
    padding-bottom: 2.5rem !important;
  }
  .ml-25-md {
    margin-left: 2.5rem !important;
  }
  .pl-25-md {
    padding-left: 2.5rem !important;
  }
  .mr-25-md {
    margin-right: 2.5rem !important;
  }
  .pr-25-md {
    padding-right: 2.5rem !important;
  }
  .mt-30-md {
    margin-top: 3rem !important;
  }
  .pt-30-md {
    padding-top: 3rem !important;
  }
  .mb-30-md {
    margin-bottom: 3rem !important;
  }
  .pb-30-md {
    padding-bottom: 3rem !important;
  }
  .ml-30-md {
    margin-left: 3rem !important;
  }
  .pl-30-md {
    padding-left: 3rem !important;
  }
  .mr-30-md {
    margin-right: 3rem !important;
  }
  .pr-30-md {
    padding-right: 3rem !important;
  }
  .mt-35-md {
    margin-top: 3.5rem !important;
  }
  .pt-35-md {
    padding-top: 3.5rem !important;
  }
  .mb-35-md {
    margin-bottom: 3.5rem !important;
  }
  .pb-35-md {
    padding-bottom: 3.5rem !important;
  }
  .ml-35-md {
    margin-left: 3.5rem !important;
  }
  .pl-35-md {
    padding-left: 3.5rem !important;
  }
  .mr-35-md {
    margin-right: 3.5rem !important;
  }
  .pr-35-md {
    padding-right: 3.5rem !important;
  }
  .mt-40-md {
    margin-top: 4rem !important;
  }
  .pt-40-md {
    padding-top: 4rem !important;
  }
  .mb-40-md {
    margin-bottom: 4rem !important;
  }
  .pb-40-md {
    padding-bottom: 4rem !important;
  }
  .ml-40-md {
    margin-left: 4rem !important;
  }
  .pl-40-md {
    padding-left: 4rem !important;
  }
  .mr-40-md {
    margin-right: 4rem !important;
  }
  .pr-40-md {
    padding-right: 4rem !important;
  }
  .mt-45-md {
    margin-top: 4.5rem !important;
  }
  .pt-45-md {
    padding-top: 4.5rem !important;
  }
  .mb-45-md {
    margin-bottom: 4.5rem !important;
  }
  .pb-45-md {
    padding-bottom: 4.5rem !important;
  }
  .ml-45-md {
    margin-left: 4.5rem !important;
  }
  .pl-45-md {
    padding-left: 4.5rem !important;
  }
  .mr-45-md {
    margin-right: 4.5rem !important;
  }
  .pr-45-md {
    padding-right: 4.5rem !important;
  }
  .mt-50-md {
    margin-top: 5rem !important;
  }
  .pt-50-md {
    padding-top: 5rem !important;
  }
  .mb-50-md {
    margin-bottom: 5rem !important;
  }
  .pb-50-md {
    padding-bottom: 5rem !important;
  }
  .ml-50-md {
    margin-left: 5rem !important;
  }
  .pl-50-md {
    padding-left: 5rem !important;
  }
  .mr-50-md {
    margin-right: 5rem !important;
  }
  .pr-50-md {
    padding-right: 5rem !important;
  }
  .mt-60-md {
    margin-top: 6rem !important;
  }
  .pt-60-md {
    padding-top: 6rem !important;
  }
  .mb-60-md {
    margin-bottom: 6rem !important;
  }
  .pb-60-md {
    padding-bottom: 6rem !important;
  }
  .ml-60-md {
    margin-left: 6rem !important;
  }
  .pl-60-md {
    padding-left: 6rem !important;
  }
  .mr-60-md {
    margin-right: 6rem !important;
  }
  .pr-60-md {
    padding-right: 6rem !important;
  }
  .mt-70-md {
    margin-top: 7rem !important;
  }
  .pt-70-md {
    padding-top: 7rem !important;
  }
  .mb-70-md {
    margin-bottom: 7rem !important;
  }
  .pb-70-md {
    padding-bottom: 7rem !important;
  }
  .ml-70-md {
    margin-left: 7rem !important;
  }
  .pl-70-md {
    padding-left: 7rem !important;
  }
  .mr-70-md {
    margin-right: 7rem !important;
  }
  .pr-70-md {
    padding-right: 7rem !important;
  }
  .mt-80-md {
    margin-top: 8rem !important;
  }
  .pt-80-md {
    padding-top: 8rem !important;
  }
  .mb-80-md {
    margin-bottom: 8rem !important;
  }
  .pb-80-md {
    padding-bottom: 8rem !important;
  }
  .ml-80-md {
    margin-left: 8rem !important;
  }
  .pl-80-md {
    padding-left: 8rem !important;
  }
  .mr-80-md {
    margin-right: 8rem !important;
  }
  .pr-80-md {
    padding-right: 8rem !important;
  }
  .mt-90-md {
    margin-top: 9rem !important;
  }
  .pt-90-md {
    padding-top: 9rem !important;
  }
  .mb-90-md {
    margin-bottom: 9rem !important;
  }
  .pb-90-md {
    padding-bottom: 9rem !important;
  }
  .ml-90-md {
    margin-left: 9rem !important;
  }
  .pl-90-md {
    padding-left: 9rem !important;
  }
  .mr-90-md {
    margin-right: 9rem !important;
  }
  .pr-90-md {
    padding-right: 9rem !important;
  }
  .mt-100-md {
    margin-top: 10rem !important;
  }
  .pt-100-md {
    padding-top: 10rem !important;
  }
  .mb-100-md {
    margin-bottom: 10rem !important;
  }
  .pb-100-md {
    padding-bottom: 10rem !important;
  }
  .ml-100-md {
    margin-left: 10rem !important;
  }
  .pl-100-md {
    padding-left: 10rem !important;
  }
  .mr-100-md {
    margin-right: 10rem !important;
  }
  .pr-100-md {
    padding-right: 10rem !important;
  }
  .mt-110-md {
    margin-top: 11rem !important;
  }
  .pt-110-md {
    padding-top: 11rem !important;
  }
  .mb-110-md {
    margin-bottom: 11rem !important;
  }
  .pb-110-md {
    padding-bottom: 11rem !important;
  }
  .ml-110-md {
    margin-left: 11rem !important;
  }
  .pl-110-md {
    padding-left: 11rem !important;
  }
  .mr-110-md {
    margin-right: 11rem !important;
  }
  .pr-110-md {
    padding-right: 11rem !important;
  }
  .mt-120-md {
    margin-top: 12rem !important;
  }
  .pt-120-md {
    padding-top: 12rem !important;
  }
  .mb-120-md {
    margin-bottom: 12rem !important;
  }
  .pb-120-md {
    padding-bottom: 12rem !important;
  }
  .ml-120-md {
    margin-left: 12rem !important;
  }
  .pl-120-md {
    padding-left: 12rem !important;
  }
  .mr-120-md {
    margin-right: 12rem !important;
  }
  .pr-120-md {
    padding-right: 12rem !important;
  }
}
@media (max-width: 575px) {
  .mt-0-sm {
    margin-top: 0rem !important;
  }
  .pt-0-sm {
    padding-top: 0rem !important;
  }
  .mb-0-sm {
    margin-bottom: 0rem !important;
  }
  .pb-0-sm {
    padding-bottom: 0rem !important;
  }
  .ml-0-sm {
    margin-left: 0rem !important;
  }
  .pl-0-sm {
    padding-left: 0rem !important;
  }
  .mr-0-sm {
    margin-right: 0rem !important;
  }
  .pr-0-sm {
    padding-right: 0rem !important;
  }
  .mt-10-sm {
    margin-top: 1rem !important;
  }
  .pt-10-sm {
    padding-top: 1rem !important;
  }
  .mb-10-sm {
    margin-bottom: 1rem !important;
  }
  .pb-10-sm {
    padding-bottom: 1rem !important;
  }
  .ml-10-sm {
    margin-left: 1rem !important;
  }
  .pl-10-sm {
    padding-left: 1rem !important;
  }
  .mr-10-sm {
    margin-right: 1rem !important;
  }
  .pr-10-sm {
    padding-right: 1rem !important;
  }
  .mt-15-sm {
    margin-top: 1.5rem !important;
  }
  .pt-15-sm {
    padding-top: 1.5rem !important;
  }
  .mb-15-sm {
    margin-bottom: 1.5rem !important;
  }
  .pb-15-sm {
    padding-bottom: 1.5rem !important;
  }
  .ml-15-sm {
    margin-left: 1.5rem !important;
  }
  .pl-15-sm {
    padding-left: 1.5rem !important;
  }
  .mr-15-sm {
    margin-right: 1.5rem !important;
  }
  .pr-15-sm {
    padding-right: 1.5rem !important;
  }
  .mt-20-sm {
    margin-top: 2rem !important;
  }
  .pt-20-sm {
    padding-top: 2rem !important;
  }
  .mb-20-sm {
    margin-bottom: 2rem !important;
  }
  .pb-20-sm {
    padding-bottom: 2rem !important;
  }
  .ml-20-sm {
    margin-left: 2rem !important;
  }
  .pl-20-sm {
    padding-left: 2rem !important;
  }
  .mr-20-sm {
    margin-right: 2rem !important;
  }
  .pr-20-sm {
    padding-right: 2rem !important;
  }
  .mt-25-sm {
    margin-top: 2.5rem !important;
  }
  .pt-25-sm {
    padding-top: 2.5rem !important;
  }
  .mb-25-sm {
    margin-bottom: 2.5rem !important;
  }
  .pb-25-sm {
    padding-bottom: 2.5rem !important;
  }
  .ml-25-sm {
    margin-left: 2.5rem !important;
  }
  .pl-25-sm {
    padding-left: 2.5rem !important;
  }
  .mr-25-sm {
    margin-right: 2.5rem !important;
  }
  .pr-25-sm {
    padding-right: 2.5rem !important;
  }
  .mt-30-sm {
    margin-top: 3rem !important;
  }
  .pt-30-sm {
    padding-top: 3rem !important;
  }
  .mb-30-sm {
    margin-bottom: 3rem !important;
  }
  .pb-30-sm {
    padding-bottom: 3rem !important;
  }
  .ml-30-sm {
    margin-left: 3rem !important;
  }
  .pl-30-sm {
    padding-left: 3rem !important;
  }
  .mr-30-sm {
    margin-right: 3rem !important;
  }
  .pr-30-sm {
    padding-right: 3rem !important;
  }
  .mt-35-sm {
    margin-top: 3.5rem !important;
  }
  .pt-35-sm {
    padding-top: 3.5rem !important;
  }
  .mb-35-sm {
    margin-bottom: 3.5rem !important;
  }
  .pb-35-sm {
    padding-bottom: 3.5rem !important;
  }
  .ml-35-sm {
    margin-left: 3.5rem !important;
  }
  .pl-35-sm {
    padding-left: 3.5rem !important;
  }
  .mr-35-sm {
    margin-right: 3.5rem !important;
  }
  .pr-35-sm {
    padding-right: 3.5rem !important;
  }
  .mt-40-sm {
    margin-top: 4rem !important;
  }
  .pt-40-sm {
    padding-top: 4rem !important;
  }
  .mb-40-sm {
    margin-bottom: 4rem !important;
  }
  .pb-40-sm {
    padding-bottom: 4rem !important;
  }
  .ml-40-sm {
    margin-left: 4rem !important;
  }
  .pl-40-sm {
    padding-left: 4rem !important;
  }
  .mr-40-sm {
    margin-right: 4rem !important;
  }
  .pr-40-sm {
    padding-right: 4rem !important;
  }
  .mt-45-sm {
    margin-top: 4.5rem !important;
  }
  .pt-45-sm {
    padding-top: 4.5rem !important;
  }
  .mb-45-sm {
    margin-bottom: 4.5rem !important;
  }
  .pb-45-sm {
    padding-bottom: 4.5rem !important;
  }
  .ml-45-sm {
    margin-left: 4.5rem !important;
  }
  .pl-45-sm {
    padding-left: 4.5rem !important;
  }
  .mr-45-sm {
    margin-right: 4.5rem !important;
  }
  .pr-45-sm {
    padding-right: 4.5rem !important;
  }
  .mt-50-sm {
    margin-top: 5rem !important;
  }
  .pt-50-sm {
    padding-top: 5rem !important;
  }
  .mb-50-sm {
    margin-bottom: 5rem !important;
  }
  .pb-50-sm {
    padding-bottom: 5rem !important;
  }
  .ml-50-sm {
    margin-left: 5rem !important;
  }
  .pl-50-sm {
    padding-left: 5rem !important;
  }
  .mr-50-sm {
    margin-right: 5rem !important;
  }
  .pr-50-sm {
    padding-right: 5rem !important;
  }
  .mt-60-sm {
    margin-top: 6rem !important;
  }
  .pt-60-sm {
    padding-top: 6rem !important;
  }
  .mb-60-sm {
    margin-bottom: 6rem !important;
  }
  .pb-60-sm {
    padding-bottom: 6rem !important;
  }
  .ml-60-sm {
    margin-left: 6rem !important;
  }
  .pl-60-sm {
    padding-left: 6rem !important;
  }
  .mr-60-sm {
    margin-right: 6rem !important;
  }
  .pr-60-sm {
    padding-right: 6rem !important;
  }
  .mt-70-sm {
    margin-top: 7rem !important;
  }
  .pt-70-sm {
    padding-top: 7rem !important;
  }
  .mb-70-sm {
    margin-bottom: 7rem !important;
  }
  .pb-70-sm {
    padding-bottom: 7rem !important;
  }
  .ml-70-sm {
    margin-left: 7rem !important;
  }
  .pl-70-sm {
    padding-left: 7rem !important;
  }
  .mr-70-sm {
    margin-right: 7rem !important;
  }
  .pr-70-sm {
    padding-right: 7rem !important;
  }
  .mt-80-sm {
    margin-top: 8rem !important;
  }
  .pt-80-sm {
    padding-top: 8rem !important;
  }
  .mb-80-sm {
    margin-bottom: 8rem !important;
  }
  .pb-80-sm {
    padding-bottom: 8rem !important;
  }
  .ml-80-sm {
    margin-left: 8rem !important;
  }
  .pl-80-sm {
    padding-left: 8rem !important;
  }
  .mr-80-sm {
    margin-right: 8rem !important;
  }
  .pr-80-sm {
    padding-right: 8rem !important;
  }
  .mt-90-sm {
    margin-top: 9rem !important;
  }
  .pt-90-sm {
    padding-top: 9rem !important;
  }
  .mb-90-sm {
    margin-bottom: 9rem !important;
  }
  .pb-90-sm {
    padding-bottom: 9rem !important;
  }
  .ml-90-sm {
    margin-left: 9rem !important;
  }
  .pl-90-sm {
    padding-left: 9rem !important;
  }
  .mr-90-sm {
    margin-right: 9rem !important;
  }
  .pr-90-sm {
    padding-right: 9rem !important;
  }
  .mt-100-sm {
    margin-top: 10rem !important;
  }
  .pt-100-sm {
    padding-top: 10rem !important;
  }
  .mb-100-sm {
    margin-bottom: 10rem !important;
  }
  .pb-100-sm {
    padding-bottom: 10rem !important;
  }
  .ml-100-sm {
    margin-left: 10rem !important;
  }
  .pl-100-sm {
    padding-left: 10rem !important;
  }
  .mr-100-sm {
    margin-right: 10rem !important;
  }
  .pr-100-sm {
    padding-right: 10rem !important;
  }
  .mt-110-sm {
    margin-top: 11rem !important;
  }
  .pt-110-sm {
    padding-top: 11rem !important;
  }
  .mb-110-sm {
    margin-bottom: 11rem !important;
  }
  .pb-110-sm {
    padding-bottom: 11rem !important;
  }
  .ml-110-sm {
    margin-left: 11rem !important;
  }
  .pl-110-sm {
    padding-left: 11rem !important;
  }
  .mr-110-sm {
    margin-right: 11rem !important;
  }
  .pr-110-sm {
    padding-right: 11rem !important;
  }
  .mt-120-sm {
    margin-top: 12rem !important;
  }
  .pt-120-sm {
    padding-top: 12rem !important;
  }
  .mb-120-sm {
    margin-bottom: 12rem !important;
  }
  .pb-120-sm {
    padding-bottom: 12rem !important;
  }
  .ml-120-sm {
    margin-left: 12rem !important;
  }
  .pl-120-sm {
    padding-left: 12rem !important;
  }
  .mr-120-sm {
    margin-right: 12rem !important;
  }
  .pr-120-sm {
    padding-right: 12rem !important;
  }
}
/*
  mx px
*/
.mx-0 {
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}

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

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

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

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

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

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

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

.mx-25 {
  margin-right: 2.5rem !important;
  margin-left: 2.5rem !important;
}

.px-25 {
  padding-right: 2.5rem !important;
  padding-left: 2.5rem !important;
}

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

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

.mx-35 {
  margin-right: 3.5rem !important;
  margin-left: 3.5rem !important;
}

.px-35 {
  padding-right: 3.5rem !important;
  padding-left: 3.5rem !important;
}

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

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

.mx-45 {
  margin-right: 4.5rem !important;
  margin-left: 4.5rem !important;
}

.px-45 {
  padding-right: 4.5rem !important;
  padding-left: 4.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

.mx-100 {
  margin-right: 10rem !important;
  margin-left: 10rem !important;
}

.px-100 {
  padding-right: 10rem !important;
  padding-left: 10rem !important;
}

.mx-110 {
  margin-right: 11rem !important;
  margin-left: 11rem !important;
}

.px-110 {
  padding-right: 11rem !important;
  padding-left: 11rem !important;
}

.mx-120 {
  margin-right: 12rem !important;
  margin-left: 12rem !important;
}

.px-120 {
  padding-right: 12rem !important;
  padding-left: 12rem !important;
}

@media (max-width: 1599px) {
  .mx-0-xxl {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .px-0-xxl {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .mx-10-xxl {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .px-10-xxl {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .mx-15-xxl {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .px-15-xxl {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .mx-20-xxl {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .px-20-xxl {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .mx-25-xxl {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .px-25-xxl {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .mx-30-xxl {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .px-30-xxl {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .mx-35-xxl {
    margin-right: 3.5rem !important;
    margin-left: 3.5rem !important;
  }
  .px-35-xxl {
    padding-right: 3.5rem !important;
    padding-left: 3.5rem !important;
  }
  .mx-40-xxl {
    margin-right: 4rem !important;
    margin-left: 4rem !important;
  }
  .px-40-xxl {
    padding-right: 4rem !important;
    padding-left: 4rem !important;
  }
  .mx-45-xxl {
    margin-right: 4.5rem !important;
    margin-left: 4.5rem !important;
  }
  .px-45-xxl {
    padding-right: 4.5rem !important;
    padding-left: 4.5rem !important;
  }
  .mx-50-xxl {
    margin-right: 5rem !important;
    margin-left: 5rem !important;
  }
  .px-50-xxl {
    padding-right: 5rem !important;
    padding-left: 5rem !important;
  }
  .mx-60-xxl {
    margin-right: 6rem !important;
    margin-left: 6rem !important;
  }
  .px-60-xxl {
    padding-right: 6rem !important;
    padding-left: 6rem !important;
  }
  .mx-70-xxl {
    margin-right: 7rem !important;
    margin-left: 7rem !important;
  }
  .px-70-xxl {
    padding-right: 7rem !important;
    padding-left: 7rem !important;
  }
  .mx-80-xxl {
    margin-right: 8rem !important;
    margin-left: 8rem !important;
  }
  .px-80-xxl {
    padding-right: 8rem !important;
    padding-left: 8rem !important;
  }
  .mx-90-xxl {
    margin-right: 9rem !important;
    margin-left: 9rem !important;
  }
  .px-90-xxl {
    padding-right: 9rem !important;
    padding-left: 9rem !important;
  }
  .mx-100-xxl {
    margin-right: 10rem !important;
    margin-left: 10rem !important;
  }
  .px-100-xxl {
    padding-right: 10rem !important;
    padding-left: 10rem !important;
  }
  .mx-110-xxl {
    margin-right: 11rem !important;
    margin-left: 11rem !important;
  }
  .px-110-xxl {
    padding-right: 11rem !important;
    padding-left: 11rem !important;
  }
  .mx-120-xxl {
    margin-right: 12rem !important;
    margin-left: 12rem !important;
  }
  .px-120-xxl {
    padding-right: 12rem !important;
    padding-left: 12rem !important;
  }
}
@media (max-width: 1199px) {
  .mx-0-xl {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .px-0-xl {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .mx-10-xl {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .px-10-xl {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .mx-15-xl {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .px-15-xl {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .mx-20-xl {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .px-20-xl {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .mx-25-xl {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .px-25-xl {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .mx-30-xl {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .px-30-xl {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .mx-35-xl {
    margin-right: 3.5rem !important;
    margin-left: 3.5rem !important;
  }
  .px-35-xl {
    padding-right: 3.5rem !important;
    padding-left: 3.5rem !important;
  }
  .mx-40-xl {
    margin-right: 4rem !important;
    margin-left: 4rem !important;
  }
  .px-40-xl {
    padding-right: 4rem !important;
    padding-left: 4rem !important;
  }
  .mx-45-xl {
    margin-right: 4.5rem !important;
    margin-left: 4.5rem !important;
  }
  .px-45-xl {
    padding-right: 4.5rem !important;
    padding-left: 4.5rem !important;
  }
  .mx-50-xl {
    margin-right: 5rem !important;
    margin-left: 5rem !important;
  }
  .px-50-xl {
    padding-right: 5rem !important;
    padding-left: 5rem !important;
  }
  .mx-60-xl {
    margin-right: 6rem !important;
    margin-left: 6rem !important;
  }
  .px-60-xl {
    padding-right: 6rem !important;
    padding-left: 6rem !important;
  }
  .mx-70-xl {
    margin-right: 7rem !important;
    margin-left: 7rem !important;
  }
  .px-70-xl {
    padding-right: 7rem !important;
    padding-left: 7rem !important;
  }
  .mx-80-xl {
    margin-right: 8rem !important;
    margin-left: 8rem !important;
  }
  .px-80-xl {
    padding-right: 8rem !important;
    padding-left: 8rem !important;
  }
  .mx-90-xl {
    margin-right: 9rem !important;
    margin-left: 9rem !important;
  }
  .px-90-xl {
    padding-right: 9rem !important;
    padding-left: 9rem !important;
  }
  .mx-100-xl {
    margin-right: 10rem !important;
    margin-left: 10rem !important;
  }
  .px-100-xl {
    padding-right: 10rem !important;
    padding-left: 10rem !important;
  }
  .mx-110-xl {
    margin-right: 11rem !important;
    margin-left: 11rem !important;
  }
  .px-110-xl {
    padding-right: 11rem !important;
    padding-left: 11rem !important;
  }
  .mx-120-xl {
    margin-right: 12rem !important;
    margin-left: 12rem !important;
  }
  .px-120-xl {
    padding-right: 12rem !important;
    padding-left: 12rem !important;
  }
}
@media (max-width: 1023px) {
  .mx-0-lg {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .px-0-lg {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .mx-10-lg {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .px-10-lg {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .mx-15-lg {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .px-15-lg {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .mx-20-lg {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .px-20-lg {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .mx-25-lg {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .px-25-lg {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .mx-30-lg {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .px-30-lg {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .mx-35-lg {
    margin-right: 3.5rem !important;
    margin-left: 3.5rem !important;
  }
  .px-35-lg {
    padding-right: 3.5rem !important;
    padding-left: 3.5rem !important;
  }
  .mx-40-lg {
    margin-right: 4rem !important;
    margin-left: 4rem !important;
  }
  .px-40-lg {
    padding-right: 4rem !important;
    padding-left: 4rem !important;
  }
  .mx-45-lg {
    margin-right: 4.5rem !important;
    margin-left: 4.5rem !important;
  }
  .px-45-lg {
    padding-right: 4.5rem !important;
    padding-left: 4.5rem !important;
  }
  .mx-50-lg {
    margin-right: 5rem !important;
    margin-left: 5rem !important;
  }
  .px-50-lg {
    padding-right: 5rem !important;
    padding-left: 5rem !important;
  }
  .mx-60-lg {
    margin-right: 6rem !important;
    margin-left: 6rem !important;
  }
  .px-60-lg {
    padding-right: 6rem !important;
    padding-left: 6rem !important;
  }
  .mx-70-lg {
    margin-right: 7rem !important;
    margin-left: 7rem !important;
  }
  .px-70-lg {
    padding-right: 7rem !important;
    padding-left: 7rem !important;
  }
  .mx-80-lg {
    margin-right: 8rem !important;
    margin-left: 8rem !important;
  }
  .px-80-lg {
    padding-right: 8rem !important;
    padding-left: 8rem !important;
  }
  .mx-90-lg {
    margin-right: 9rem !important;
    margin-left: 9rem !important;
  }
  .px-90-lg {
    padding-right: 9rem !important;
    padding-left: 9rem !important;
  }
  .mx-100-lg {
    margin-right: 10rem !important;
    margin-left: 10rem !important;
  }
  .px-100-lg {
    padding-right: 10rem !important;
    padding-left: 10rem !important;
  }
  .mx-110-lg {
    margin-right: 11rem !important;
    margin-left: 11rem !important;
  }
  .px-110-lg {
    padding-right: 11rem !important;
    padding-left: 11rem !important;
  }
  .mx-120-lg {
    margin-right: 12rem !important;
    margin-left: 12rem !important;
  }
  .px-120-lg {
    padding-right: 12rem !important;
    padding-left: 12rem !important;
  }
}
@media (max-width: 767px) {
  .mx-0-md {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .px-0-md {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .mx-10-md {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .px-10-md {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .mx-15-md {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .px-15-md {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .mx-20-md {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .px-20-md {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .mx-25-md {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .px-25-md {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .mx-30-md {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .px-30-md {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .mx-35-md {
    margin-right: 3.5rem !important;
    margin-left: 3.5rem !important;
  }
  .px-35-md {
    padding-right: 3.5rem !important;
    padding-left: 3.5rem !important;
  }
  .mx-40-md {
    margin-right: 4rem !important;
    margin-left: 4rem !important;
  }
  .px-40-md {
    padding-right: 4rem !important;
    padding-left: 4rem !important;
  }
  .mx-45-md {
    margin-right: 4.5rem !important;
    margin-left: 4.5rem !important;
  }
  .px-45-md {
    padding-right: 4.5rem !important;
    padding-left: 4.5rem !important;
  }
  .mx-50-md {
    margin-right: 5rem !important;
    margin-left: 5rem !important;
  }
  .px-50-md {
    padding-right: 5rem !important;
    padding-left: 5rem !important;
  }
  .mx-60-md {
    margin-right: 6rem !important;
    margin-left: 6rem !important;
  }
  .px-60-md {
    padding-right: 6rem !important;
    padding-left: 6rem !important;
  }
  .mx-70-md {
    margin-right: 7rem !important;
    margin-left: 7rem !important;
  }
  .px-70-md {
    padding-right: 7rem !important;
    padding-left: 7rem !important;
  }
  .mx-80-md {
    margin-right: 8rem !important;
    margin-left: 8rem !important;
  }
  .px-80-md {
    padding-right: 8rem !important;
    padding-left: 8rem !important;
  }
  .mx-90-md {
    margin-right: 9rem !important;
    margin-left: 9rem !important;
  }
  .px-90-md {
    padding-right: 9rem !important;
    padding-left: 9rem !important;
  }
  .mx-100-md {
    margin-right: 10rem !important;
    margin-left: 10rem !important;
  }
  .px-100-md {
    padding-right: 10rem !important;
    padding-left: 10rem !important;
  }
  .mx-110-md {
    margin-right: 11rem !important;
    margin-left: 11rem !important;
  }
  .px-110-md {
    padding-right: 11rem !important;
    padding-left: 11rem !important;
  }
  .mx-120-md {
    margin-right: 12rem !important;
    margin-left: 12rem !important;
  }
  .px-120-md {
    padding-right: 12rem !important;
    padding-left: 12rem !important;
  }
}
@media (max-width: 575px) {
  .mx-0-sm {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .px-0-sm {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .mx-10-sm {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .px-10-sm {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .mx-15-sm {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .px-15-sm {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .mx-20-sm {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .px-20-sm {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .mx-25-sm {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .px-25-sm {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .mx-30-sm {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .px-30-sm {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .mx-35-sm {
    margin-right: 3.5rem !important;
    margin-left: 3.5rem !important;
  }
  .px-35-sm {
    padding-right: 3.5rem !important;
    padding-left: 3.5rem !important;
  }
  .mx-40-sm {
    margin-right: 4rem !important;
    margin-left: 4rem !important;
  }
  .px-40-sm {
    padding-right: 4rem !important;
    padding-left: 4rem !important;
  }
  .mx-45-sm {
    margin-right: 4.5rem !important;
    margin-left: 4.5rem !important;
  }
  .px-45-sm {
    padding-right: 4.5rem !important;
    padding-left: 4.5rem !important;
  }
  .mx-50-sm {
    margin-right: 5rem !important;
    margin-left: 5rem !important;
  }
  .px-50-sm {
    padding-right: 5rem !important;
    padding-left: 5rem !important;
  }
  .mx-60-sm {
    margin-right: 6rem !important;
    margin-left: 6rem !important;
  }
  .px-60-sm {
    padding-right: 6rem !important;
    padding-left: 6rem !important;
  }
  .mx-70-sm {
    margin-right: 7rem !important;
    margin-left: 7rem !important;
  }
  .px-70-sm {
    padding-right: 7rem !important;
    padding-left: 7rem !important;
  }
  .mx-80-sm {
    margin-right: 8rem !important;
    margin-left: 8rem !important;
  }
  .px-80-sm {
    padding-right: 8rem !important;
    padding-left: 8rem !important;
  }
  .mx-90-sm {
    margin-right: 9rem !important;
    margin-left: 9rem !important;
  }
  .px-90-sm {
    padding-right: 9rem !important;
    padding-left: 9rem !important;
  }
  .mx-100-sm {
    margin-right: 10rem !important;
    margin-left: 10rem !important;
  }
  .px-100-sm {
    padding-right: 10rem !important;
    padding-left: 10rem !important;
  }
  .mx-110-sm {
    margin-right: 11rem !important;
    margin-left: 11rem !important;
  }
  .px-110-sm {
    padding-right: 11rem !important;
    padding-left: 11rem !important;
  }
  .mx-120-sm {
    margin-right: 12rem !important;
    margin-left: 12rem !important;
  }
  .px-120-sm {
    padding-right: 12rem !important;
    padding-left: 12rem !important;
  }
}
/*
  my py
*/
.my-0 {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}

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

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

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

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

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

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

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

.my-25 {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

.py-25 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

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

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

.my-35 {
  margin-top: 3.5rem !important;
  margin-bottom: 3.5rem !important;
}

.py-35 {
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
}

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

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

.my-45 {
  margin-top: 4.5rem !important;
  margin-bottom: 4.5rem !important;
}

.py-45 {
  padding-top: 4.5rem !important;
  padding-bottom: 4.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

.my-100 {
  margin-top: 10rem !important;
  margin-bottom: 10rem !important;
}

.py-100 {
  padding-top: 10rem !important;
  padding-bottom: 10rem !important;
}

.my-110 {
  margin-top: 11rem !important;
  margin-bottom: 11rem !important;
}

.py-110 {
  padding-top: 11rem !important;
  padding-bottom: 11rem !important;
}

.my-120 {
  margin-top: 12rem !important;
  margin-bottom: 12rem !important;
}

.py-120 {
  padding-top: 12rem !important;
  padding-bottom: 12rem !important;
}

@media (max-width: 1199px) {
  .my-0-xl {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .py-0-xl {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .my-10-xl {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .py-10-xl {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .my-15-xl {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .py-15-xl {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .my-20-xl {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .py-20-xl {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .my-25-xl {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .py-25-xl {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .my-30-xl {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .py-30-xl {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .my-35-xl {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;
  }
  .py-35-xl {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .my-40-xl {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .py-40-xl {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .my-45-xl {
    margin-top: 4.5rem !important;
    margin-bottom: 4.5rem !important;
  }
  .py-45-xl {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .my-50-xl {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .py-50-xl {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
  .my-60-xl {
    margin-top: 6rem !important;
    margin-bottom: 6rem !important;
  }
  .py-60-xl {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .my-70-xl {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important;
  }
  .py-70-xl {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important;
  }
  .my-80-xl {
    margin-top: 8rem !important;
    margin-bottom: 8rem !important;
  }
  .py-80-xl {
    padding-top: 8rem !important;
    padding-bottom: 8rem !important;
  }
  .my-90-xl {
    margin-top: 9rem !important;
    margin-bottom: 9rem !important;
  }
  .py-90-xl {
    padding-top: 9rem !important;
    padding-bottom: 9rem !important;
  }
  .my-100-xl {
    margin-top: 10rem !important;
    margin-bottom: 10rem !important;
  }
  .py-100-xl {
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }
  .my-110-xl {
    margin-top: 11rem !important;
    margin-bottom: 11rem !important;
  }
  .py-110-xl {
    padding-top: 11rem !important;
    padding-bottom: 11rem !important;
  }
  .my-120-xl {
    margin-top: 12rem !important;
    margin-bottom: 12rem !important;
  }
  .py-120-xl {
    padding-top: 12rem !important;
    padding-bottom: 12rem !important;
  }
}
@media (max-width: 1023px) {
  .my-0-lg {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .py-0-lg {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .my-10-lg {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .py-10-lg {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .my-15-lg {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .py-15-lg {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .my-20-lg {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .py-20-lg {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .my-25-lg {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .py-25-lg {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .my-30-lg {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .py-30-lg {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .my-35-lg {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;
  }
  .py-35-lg {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .my-40-lg {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .py-40-lg {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .my-45-lg {
    margin-top: 4.5rem !important;
    margin-bottom: 4.5rem !important;
  }
  .py-45-lg {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .my-50-lg {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .py-50-lg {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
  .my-60-lg {
    margin-top: 6rem !important;
    margin-bottom: 6rem !important;
  }
  .py-60-lg {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .my-70-lg {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important;
  }
  .py-70-lg {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important;
  }
  .my-80-lg {
    margin-top: 8rem !important;
    margin-bottom: 8rem !important;
  }
  .py-80-lg {
    padding-top: 8rem !important;
    padding-bottom: 8rem !important;
  }
  .my-90-lg {
    margin-top: 9rem !important;
    margin-bottom: 9rem !important;
  }
  .py-90-lg {
    padding-top: 9rem !important;
    padding-bottom: 9rem !important;
  }
  .my-100-lg {
    margin-top: 10rem !important;
    margin-bottom: 10rem !important;
  }
  .py-100-lg {
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }
  .my-110-lg {
    margin-top: 11rem !important;
    margin-bottom: 11rem !important;
  }
  .py-110-lg {
    padding-top: 11rem !important;
    padding-bottom: 11rem !important;
  }
  .my-120-lg {
    margin-top: 12rem !important;
    margin-bottom: 12rem !important;
  }
  .py-120-lg {
    padding-top: 12rem !important;
    padding-bottom: 12rem !important;
  }
}
@media (max-width: 767px) {
  .my-0-md {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .py-0-md {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .my-10-md {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .py-10-md {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .my-15-md {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .py-15-md {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .my-20-md {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .py-20-md {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .my-25-md {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .py-25-md {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .my-30-md {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .py-30-md {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .my-35-md {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;
  }
  .py-35-md {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .my-40-md {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .py-40-md {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .my-45-md {
    margin-top: 4.5rem !important;
    margin-bottom: 4.5rem !important;
  }
  .py-45-md {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .my-50-md {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .py-50-md {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
  .my-60-md {
    margin-top: 6rem !important;
    margin-bottom: 6rem !important;
  }
  .py-60-md {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .my-70-md {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important;
  }
  .py-70-md {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important;
  }
  .my-80-md {
    margin-top: 8rem !important;
    margin-bottom: 8rem !important;
  }
  .py-80-md {
    padding-top: 8rem !important;
    padding-bottom: 8rem !important;
  }
  .my-90-md {
    margin-top: 9rem !important;
    margin-bottom: 9rem !important;
  }
  .py-90-md {
    padding-top: 9rem !important;
    padding-bottom: 9rem !important;
  }
  .my-100-md {
    margin-top: 10rem !important;
    margin-bottom: 10rem !important;
  }
  .py-100-md {
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }
  .my-110-md {
    margin-top: 11rem !important;
    margin-bottom: 11rem !important;
  }
  .py-110-md {
    padding-top: 11rem !important;
    padding-bottom: 11rem !important;
  }
  .my-120-md {
    margin-top: 12rem !important;
    margin-bottom: 12rem !important;
  }
  .py-120-md {
    padding-top: 12rem !important;
    padding-bottom: 12rem !important;
  }
}
@media (max-width: 575px) {
  .my-0-sm {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .py-0-sm {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .my-10-sm {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .py-10-sm {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .my-15-sm {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .py-15-sm {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .my-20-sm {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .py-20-sm {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .my-25-sm {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .py-25-sm {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .my-30-sm {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .py-30-sm {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .my-35-sm {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;
  }
  .py-35-sm {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .my-40-sm {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .py-40-sm {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .my-45-sm {
    margin-top: 4.5rem !important;
    margin-bottom: 4.5rem !important;
  }
  .py-45-sm {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .my-50-sm {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .py-50-sm {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
  .my-60-sm {
    margin-top: 6rem !important;
    margin-bottom: 6rem !important;
  }
  .py-60-sm {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .my-70-sm {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important;
  }
  .py-70-sm {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important;
  }
  .my-80-sm {
    margin-top: 8rem !important;
    margin-bottom: 8rem !important;
  }
  .py-80-sm {
    padding-top: 8rem !important;
    padding-bottom: 8rem !important;
  }
  .my-90-sm {
    margin-top: 9rem !important;
    margin-bottom: 9rem !important;
  }
  .py-90-sm {
    padding-top: 9rem !important;
    padding-bottom: 9rem !important;
  }
  .my-100-sm {
    margin-top: 10rem !important;
    margin-bottom: 10rem !important;
  }
  .py-100-sm {
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }
  .my-110-sm {
    margin-top: 11rem !important;
    margin-bottom: 11rem !important;
  }
  .py-110-sm {
    padding-top: 11rem !important;
    padding-bottom: 11rem !important;
  }
  .my-120-sm {
    margin-top: 12rem !important;
    margin-bottom: 12rem !important;
  }
  .py-120-sm {
    padding-top: 12rem !important;
    padding-bottom: 12rem !important;
  }
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1199px) {
  .mx-auto-xl {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 1023px) {
  .mx-auto-lg {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 767px) {
  .mx-auto-md {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 575px) {
  .mx-auto-sm {
    margin-left: auto;
    margin-right: auto;
  }
}

.gap-none {
  gap: 0 !important;
}

a {
  text-decoration: none;
}

/*sp-header
-----------------------------------------------------*/
.sp-header-inner {
  display: none;
  background: #fff;
}
@media (max-width: 685px) {
  .sp-header-inner {
    position: relative;
    display: block;
    padding: 1rem;
    box-sizing: border-box;
    z-index: 2;
  }
  .sp-header-inner .header-logo {
    line-height: 1;
  }
}

.sp-header-inner.sp-page-header {
  box-shadow: 0px 5px 18px -6px #d6d6d6;
}

.sp-header-nav {
  display: none;
}
@media (max-width: 685px) {
  .sp-header-nav {
    display: block;
  }
}
.sp-header-nav .header-logo {
  display: none;
}

/* hamburger-menu */
.hamburger {
  display: block;
  position: fixed;
  z-index: 30;
  right: 10px;
  top: 10px;
  width: 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
  border-radius: 5px;
  z-index: 10001;
  background-color: #00a4d8;
}
.hamburger.active {
  top: 15px;
}
.hamburger span {
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 6px;
  background-color: #fff;
  transition: 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* open */
.hamburger.active span:nth-child(1) {
  top: 16px;
  left: 6px;
  background: #fff;
  transform: rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background: #fff;
  transform: rotate(45deg);
}

.globalMenuSp {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  background-color: #00a4d8;
  width: 100%;
  transform: translateY(-100%);
  transition: all 0.6s;
  height: 100%;
  box-sizing: border-box;
  overscroll-behavior-y: contain;
  overflow-y: auto;
}

.sp-header-nav_list {
  margin: 0 auto;
  padding: 3rem 2rem;
  width: 100%;
  border-top: solid 1px rgba(255, 255, 255, 0.2);
  box-sizing: border-box;
}
.sp-header-nav_list li {
  padding: 0 1rem;
  list-style-type: none;
  width: 100%;
  transition: 0.4s all;
  font-size: 1.5rem;
  font-weight: bold;
  box-sizing: border-box;
}
.sp-header-nav_list li:last-child {
  padding-bottom: 0;
}
.sp-header-nav_list li a {
  display: block;
  color: #fff;
  font-size: 1.6rem;
  padding: 2rem 0;
  text-decoration: none;
}
.sp-header-nav_list li a:hover {
  opacity: 1;
}
.sp-header-nav_list li.menu-item-has-children {
  position: relative;
}
.sp-header-nav_list li.menu-item-has-children.parent-link-none > a {
  pointer-events: none;
}
.sp-header-nav_list li .sub-menu {
  display: none;
}
.sp-header-nav_list li .sub-menu li {
  padding-left: 1rem;
  font-size: 1.3rem;
}
.sp-header-nav_list li .sub-menu li a {
  transition: 0.3s linear;
  padding: 1rem 0;
  font-weight: normal;
}
.sp-header-nav_list .accordion-btn {
  display: block;
  width: 40px;
  height: 68px;
  position: absolute;
  top: 0;
  right: 0;
}
.sp-header-nav_list .accordion-btn::before, .sp-header-nav_list .accordion-btn::after {
  position: absolute;
  content: "";
  display: block;
  transition: all 0.4s;
  background: #fff;
  left: 50%;
  top: 50%;
  width: 40%;
  height: 1px;
  transform: translate(-50%, -50%);
}
.sp-header-nav_list .accordion-btn::before {
  transform: translate(-50%, -50%) rotate(90deg);
}
.sp-header-nav_list .accordion-btn.active::before {
  transform: translate(-50%, -50%) rotate(0deg);
}

.globalMenuSp.active {
  opacity: 100;
  display: block;
  transform: translateY(0%);
  z-index: 10000;
}

.sp-btn {
  display: flex;
  align-items: center;
  margin-top: 1rem;
  padding: 0 2rem;
}
@media (max-width: 699px) {
  .sp-btn {
    justify-content: center;
  }
}
.sp-btn li {
  margin-right: 20px;
  min-width: 300px;
}
@media (max-width: 1199px) {
  .sp-btn li {
    min-width: 250px;
  }
}
@media (max-width: 1023px) {
  .sp-btn li {
    margin-right: 10px;
    min-width: 200px;
  }
}
@media (max-width: 699px) {
  .sp-btn li {
    width: 45%;
    min-width: auto;
  }
}
.sp-btn a {
  text-decoration: none;
  padding: 1.5rem 2rem;
  font-size: 2rem;
  transition: 0.3s linear;
}
@media (max-width: 1199px) {
  .sp-btn a {
    padding: 1.5rem 1rem;
    font-size: 1.5rem;
  }
}
@media (max-width: 1023px) {
  .sp-btn a {
    padding: 1rem 1rem;
  }
}
@media (max-width: 699px) {
  .sp-btn a {
    letter-spacing: 0;
    font-size: 3vw;
  }
}

/*masthead
-----------------------------------------------------*/
.header-pc {
  padding: 2rem;
  border-bottom: solid 1px #E3F0F0;
}
@media (max-width: 685px) {
  .header-pc {
    padding: 1rem;
  }
}
@media (max-width: 1023px) {
  .header-pc .container-md {
    padding: 0;
  }
}
.header-pc .logo {
  max-width: 136px;
}
.header-btn {
  gap: 0 1rem;
}
@media (max-width: 685px) {
  .header-btn {
    display: none;
  }
}
.header-btn a {
  display: flex;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 0.5rem 1rem;
}
.header-btn .login a {
  border: solid 1px;
  border-color: #16a6aa;
  color: #16a6aa;
}
.header-btn .login a span {
  position: relative;
  display: block;
  padding: 0.5rem 1rem;
  align-items: center;
  justify-content: flex-end;
}
.header-btn .login a span::before {
  display: inline-block;
  content: "";
  margin-right: 0.5rem;
  background: url(../images/common/login.svg) no-repeat;
  background-size: cover;
  width: 20px;
  height: 20px;
  vertical-align: sub;
}
.header-btn .login a:hover {
  background-color: #16a6aa;
  color: #fff;
  opacity: 1;
}
.header-btn .contact a {
  border: solid 1px;
  border-color: #f69306;
  background-color: #f69306;
  color: #fff;
}
.header-btn .contact a span {
  position: relative;
  display: block;
  padding: 0.5rem 1rem;
  align-items: center;
  justify-content: flex-end;
}
.header-btn .contact a span::before {
  display: inline-block;
  content: "";
  margin-right: 0.5rem;
  background: url(../images/common/mail.svg) no-repeat;
  background-size: cover;
  width: 16px;
  height: 16px;
  vertical-align: sub;
}
.header-btn .contact a:hover {
  background-color: #f66606;
  opacity: 1;
}
.header-select {
  min-width: 395px;
}
@media (max-width: 575px) {
  .header-select {
    min-width: auto;
  }
}
.header-select li {
  width: 49%;
  z-index: 0;
  font-size: 2.2rem;
}
@media (max-width: 767px) {
  .header-select li {
    font-size: 1.6rem;
  }
}
@media (max-width: 665px) {
  .header-select li {
    width: 100%;
  }
  .header-select li:first-child {
    margin-bottom: 3rem;
  }
}
.header-select a {
  border-radius: 5px;
  display: flex;
  font-weight: bold;
  line-height: 3;
  color: #fff;
  width: 100%;
}
.header-select .icon {
  position: relative;
  padding: 0.5rem 1rem;
  align-items: center;
}
.header-select .select-in {
  padding-left: 5rem;
  width: 100%;
}
@media (max-width: 575px) {
  .header-select .select-in {
    padding-left: 0;
  }
}
.header-select .batsumou a {
  background-color: #16a6aa;
}
.header-select .batsumou a .icon::before {
  display: inline-block;
  content: "";
  margin-right: 1.5rem;
  background: url(../images/common/user.svg) no-repeat;
  background-size: cover;
  width: 33px;
  height: 33px;
  vertical-align: sub;
}
@media (max-width: 767px) {
  .header-select .batsumou a .icon::before {
    width: 20px;
    height: 20px;
  }
}
.header-select .batsumou .arrow {
  background-color: #29bcc0;
}
.header-select .hairdresser a {
  background-color: #f3678f;
}
.header-select .hairdresser a .icon::before {
  display: inline-block;
  content: "";
  margin-right: 1.5rem;
  background: url(../images/common/scissors.svg) no-repeat;
  background-size: cover;
  width: 28px;
  height: 28px;
  vertical-align: sub;
}
@media (max-width: 767px) {
  .header-select .hairdresser a .icon::before {
    width: 20px;
    height: 20px;
  }
}
.header-select .hairdresser .arrow {
  background-color: #f586a5;
}
.header-select .arrow {
  position: relative;
  height: 100%;
  min-width: 80px;
  border-radius: 0 5px 5px 0;
}
@media (max-width: 575px) {
  .header-select .arrow {
    min-width: 55px;
  }
  .header-select .arrow::before {
    right: 20px;
  }
  .header-select .arrow::after {
    right: 20px;
  }
}

.nav-pc {
  padding-top: 1.5rem;
}
.nav-pc a {
  font-weight: bold;
  color: #222222;
}
@media (max-width: 685px) {
  .nav-pc {
    display: none;
  }
}

/*header-mv
-----------------------------------------------------*/
.header-mv {
  background: url(../images/common/mv_bg.png) no-repeat bottom right;
}

/*top-first
-----------------------------------------------------*/
.first-con {
  padding: 7rem 0;
  color: #174A79;
}
@media (max-width: 767px) {
  .first-con {
    padding: 4rem 0;
  }
}
.first-con .fig_1 {
  display: none;
}
@media (max-width: 890px) {
  .first-con .fig_1 {
    display: block;
    max-height: 40rem;
    overflow: hidden;
  }
}
.first-con .fig_2 {
  display: none;
}
@media (max-width: 890px) {
  .first-con .fig_2 {
    display: block;
    margin-bottom: 4rem;
    max-height: 40rem;
    overflow: hidden;
  }
}
.first-con .fig_2 img {
  width: 100%;
}
.first-1 {
  position: relative !important;
}
.first-1::before {
  content: "";
  width: calc(60% - 3rem);
  height: 100%;
  right: 0;
  background: url("../images/top/fig_1.jpg") center center/cover no-repeat;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
}
@media (max-width: 1199px) {
  .first-1::before {
    height: 80%;
  }
}
@media (max-width: 890px) {
  .first-1::before {
    content: none;
  }
}
.first-1 .col-1 {
  flex: 0 0 auto;
  width: 45%;
}
@media (max-width: 890px) {
  .first-1 .col-1 {
    width: 100%;
  }
}
.first-1 .col-2 {
  flex: 0 0 auto;
  width: 55%;
}
@media (max-width: 890px) {
  .first-1 .col-2 {
    width: 0;
  }
}
.first-2 {
  margin: 10rem auto;
  position: relative !important;
}
@media (max-width: 890px) {
  .first-2 {
    margin: 2rem auto;
  }
}
.first-2::before {
  content: "";
  width: calc(50% - 3rem);
  height: 100%;
  left: 0;
  background: url("../images/top/fig_2.jpg") center center/cover no-repeat;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 1199px) {
  .first-2::before {
    height: 80%;
  }
}
@media (max-width: 890px) {
  .first-2::before {
    content: none;
  }
}
.first-2-in {
  box-sizing: border-box;
}
.first-2 .col-1 {
  width: 50%;
}
@media (max-width: 890px) {
  .first-2 .col-1 {
    width: 0;
  }
}
.first-2 .col-2 {
  width: 50%;
  padding-left: 4rem;
}
@media (max-width: 890px) {
  .first-2 .col-2 {
    width: 100%;
    padding-left: 0;
  }
}
.first-txt {
  line-height: 2.5;
}
@media (max-width: 890px) {
  .first-txt {
    margin-bottom: 2rem;
  }
}

/*news
-----------------------------------------------------*/
.news {
  position: relative;
  padding: 60px 0 140px;
}
@media (max-width: 767px) {
  .news {
    padding: 0 0 80px;
  }
}
.news-box {
  display: flex;
  flex-wrap: wrap;
}
.news .h2-headline01 {
  width: auto;
  margin-bottom: 1rem;
}
.news .h2-headline01 .ja {
  display: block;
}
.news-tit {
  min-width: 190px;
}
.news-in {
  flex: 1;
  width: 100%;
  margin-left: 11rem;
}
@media (max-width: 1199px) {
  .news-in {
    margin-left: 5rem;
  }
}
@media (max-width: 890px) {
  .news-box {
    display: block;
  }
  .news-in {
    margin-top: 3rem;
    margin-left: 0;
  }
  .news-tit {
    max-width: 100%;
  }
}

/*program
-----------------------------------------------------*/
.program {
  display: flex;
  color: #fff;
}
.program a {
  display: flex;
  font-weight: bold;
  line-height: 3;
  background-color: #fff;
  width: 100%;
}
.program-in {
  position: inherit;
  z-index: 1;
}
.program-in::after {
  position: absolute;
  content: "";
  top: 1rem;
  left: 1rem;
  width: 18px;
  height: 18px;
  background: #fff;
  -webkit-clip-path: polygon(100% 0, 0 100%, 0 0);
  clip-path: polygon(100% 0, 0 100%, 0 0);
  z-index: 0;
}
.program .program-in {
  width: 100%;
}
.program .course-btn {
  margin: 0 auto;
  max-width: 260px;
}
.program .course-btn a {
  color: #08969a;
}
.program .course-btn .arrow {
  position: relative;
  height: 100%;
  min-width: 80px;
  background-color: #88e2e5;
}
.program .course-btn .arrow::before {
  background: #08969a;
}
.program .course-btn .arrow::after {
  border-top: 1px solid #08969a;
  border-right: 1px solid #08969a;
}
.program .seminar-btn {
  margin: 0 auto;
  max-width: 260px;
}
.program .seminar-btn a {
  color: #e34875;
}
.program .seminar-btn .arrow {
  position: relative;
  height: 100%;
  min-width: 80px;
  background-color: #f9abc1;
}
.program .seminar-btn .arrow::before {
  background: #e34875;
}
.program .seminar-btn .arrow::after {
  border-top: 1px solid #e34875;
  border-right: 1px solid #e34875;
}
.program .h2-headline02 {
  padding-top: 5rem;
}
.program .course {
  width: 50%;
  position: relative;
  background-color: #24c1c5;
}
.program .course::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #1bb3b7;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
  z-index: 0;
}
.program .seminar {
  width: 50%;
  position: relative;
  background-color: #f17095;
}
.program .seminar::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f57fa1;
  -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  z-index: 0;
}
.program-box {
  margin: 0 auto;
  padding: 5rem 0;
  width: 80%;
  max-width: 570px;
  box-sizing: border-box;
}
.program-box img {
  width: 100%;
}
.program-box-border {
  background: #FFF;
  padding: 4rem;
  border: 1px solid #1375CE;
}
@media (max-width: 767px) {
  .program-box-border {
    padding: 4rem 3rem;
  }
}
.program-box-border .price {
  font-size: 2.6rem;
  color: #FF0000;
  margin-right: 1rem;
}
@media (max-width: 767px) {
  .program-box-border .price {
    font-size: 2.2rem;
  }
}
.program-box-border small {
  font-size: 1.8rem;
}
.program-box-border ul {
  margin-bottom: 4rem;
}
.program-box-border ul li + li {
  margin-top: 1rem;
}
.program-box-border ul .color-red {
  color: #FF0000;
}
.program-box-table {
  color: #333333;
}
.program-box-table table,
.program-box-table td,
.program-box-table th {
  border-collapse: collapse;
  vertical-align: middle;
}
.program-box-table table {
  table-layout: fixed;
  width: 100%;
}
@media (max-width: 575px) {
  .program-box-table table {
    border-bottom: 1px solid #C8E3E3;
  }
}
.program-box-table td,
.program-box-table th {
  padding: 1.5rem;
  border: 1px solid #C8E3E3;
}
@media (max-width: 575px) {
  .program-box-table td,
  .program-box-table th {
    display: block;
    border-bottom: 0;
  }
}
.program-box-table th {
  background: #F1F8F9;
  width: 173px;
}
@media (max-width: 575px) {
  .program-box-table th {
    width: 100%;
    box-sizing: border-box;
  }
}
.program-box-table p + p {
  margin-top: 2rem;
}
@media (max-width: 575px) {
  .program {
    display: block;
  }
  .program .course {
    width: 100%;
  }
  .program .seminar {
    width: 100%;
  }
  .program-box {
    width: 90%;
  }
}

.program-intr p {
  line-height: 2;
}
.program-intr strong {
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  .program-intr strong {
    font-size: 2.2rem;
  }
}
@media (max-width: 575px) {
  .program-intr strong {
    font-size: 2rem;
  }
}

/*top-list
-----------------------------------------------------*/
.top-list {
  padding: 130px 0 160px;
}
@media (max-width: 767px) {
  .top-list {
    padding: 100px 0;
  }
}

/*partnership
-----------------------------------------------------*/
.partnership {
  background: url(../images/top/partnership_bg.jpg) no-repeat center top/cover;
}
.partnership .h2-headline02 .ja {
  color: #174A79;
}
.partnership .h2-headline02 .en {
  color: #1375cf;
}
.partnership .h2-headline02 .deco::before {
  height: 1px;
  width: 40px;
  left: 50%;
  margin-left: -20px;
  background-color: #1375cf;
}
.partnership-box {
  margin: 0 auto;
  padding: 6rem 7rem;
  max-width: 1100px;
  width: 96%;
  background: #fff;
  border-radius: 5px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .partnership-box {
    padding: 5rem 3rem;
  }
}
.partnership-area {
  display: flex;
  justify-content: space-between;
  padding-bottom: 5rem;
}
@media (max-width: 800px) {
  .partnership-area {
    display: block;
  }
}
.partnership-img {
  max-width: 525px;
}
@media (max-width: 1199px) {
  .partnership-img {
    width: 335px;
  }
}
@media (max-width: 1023px) {
  .partnership-img {
    width: 280px;
  }
}
@media (max-width: 800px) {
  .partnership-img {
    width: 100%;
    margin: 0 auto;
  }
}
.partnership-in {
  padding-left: 5rem;
  flex: 1;
  width: 100%;
  color: #174A79;
}
@media (max-width: 800px) {
  .partnership-in {
    padding-left: 0;
    padding-top: 5rem;
  }
}

/*advisor
-----------------------------------------------------*/
.advisor {
  max-width: 960px;
  margin: 0 auto;
  padding: 13rem 2rem 16rem 2rem;
}
@media (max-width: 767px) {
  .advisor {
    padding: 10rem 2rem;
  }
}
.advisor-img {
  max-width: 420px;
  margin-right: 6rem;
}
@media (max-width: 1023px) {
  .advisor-img {
    width: 300px;
    margin-right: 4rem;
  }
}
@media (max-width: 575px) {
  .advisor-img {
    width: 100%;
    max-width: 420px;
    margin: 0 auto 3rem auto;
  }
}
.advisor-area {
  display: flex;
}
@media (max-width: 575px) {
  .advisor-area {
    display: block;
  }
}
.advisor-box {
  padding: 3rem 0 0 1rem;
}
.advisor-box li:first-child {
  margin-right: 1rem;
}
.advisor-in {
  color: #174A79;
}
.advisor-txt {
  padding-top: 8rem;
  line-height: 2;
  color: #174A79;
}
@media (max-width: 767px) {
  .advisor-txt {
    padding-top: 5rem;
  }
}
.advisor-btn {
  display: flex;
  padding-top: 6rem;
}
@media (max-width: 980px) {
  .advisor-btn {
    display: block;
    margin: 0 auto;
  }
  .advisor-btn li {
    margin: 0 auto 4rem auto;
  }
}
.advisor-btn a {
  width: 100%;
}
.advisor .btn02 {
  max-width: 470px;
}
@media (max-width: 980px) {
  .advisor .btn02 {
    font-size: 1.6rem;
  }
}
.advisor .btn02-in::after {
  position: absolute;
  background: url(../images/common/arrow-1.svg) no-repeat;
  background-size: cover;
  margin-top: -10px;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
}
.advisor .btn03 {
  max-width: 470px;
}
@media (max-width: 575px) {
  .advisor .btn03 .icon {
    width: 80px;
  }
}
.advisor .btn03-in {
  font-size: 1.6rem;
  line-height: 1.5;
}
.advisor .btn03-in::after {
  position: absolute;
  background: url(../images/common/arrow-2.svg) no-repeat;
  background-size: cover;
  margin-top: -10px;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
}
.advisor .btn03 a {
  min-height: 80px;
}
@media (max-width: 767px) {
  .advisor .h2-headline01 {
    margin: 0 auto;
  }
}

/*magazine
-----------------------------------------------------*/
.magazine {
  background: url(../images/common/magazine_bg.jpg) no-repeat center top/cover;
}
.magazine-box {
  padding: 15rem 0;
}
@media (max-width: 767px) {
  .magazine-box {
    padding: 7rem 0;
  }
}
.magazine-in {
  text-align: center;
}
.magazine-in a:hover {
  opacity: 0.9;
}
.magazine-area {
  position: relative;
  width: 100%;
}
.magazine-area::before {
  content: "";
  display: block;
  position: absolute;
  background: #fff;
  height: 50%;
  width: 100%;
  bottom: 0;
  left: 0;
}
.magazine-area ul {
  display: flex;
}
@media (max-width: 767px) {
  .magazine-area ul {
    display: block;
  }
}
.magazine-area li {
  width: 50%;
}
@media (max-width: 767px) {
  .magazine-area li {
    width: 100%;
  }
}
.magazine-area a {
  padding: 3rem 1rem;
  color: #fff;
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  .magazine-area a {
    padding: 2rem 1rem;
    font-size: 2rem;
  }
}
@media (max-width: 575px) {
  .magazine-area a {
    font-size: 1.6rem;
  }
}
.magazine .institution a {
  background-color: #16a6aa;
}
.magazine .institution a .icon::before {
  display: inline-block;
  content: "";
  margin-right: 1.5rem;
  background: url(../images/common/institution.svg) no-repeat;
  background-size: cover;
  width: 28px;
  height: 28px;
  vertical-align: sub;
}
@media (max-width: 767px) {
  .magazine .institution a .icon::before {
    width: 22px;
    height: 22px;
  }
}
.magazine .institution a:hover {
  background-color: #0b87b0;
  opacity: 1;
}
.magazine .contact a {
  background-color: #f69306;
}
.magazine .contact a .icon::before {
  display: inline-block;
  content: "";
  margin-right: 1.5rem;
  background: url(../images/common/mail.svg) no-repeat;
  background-size: cover;
  width: 28px;
  height: 28px;
  vertical-align: sub;
}
@media (max-width: 767px) {
  .magazine .contact a .icon::before {
    width: 22px;
    height: 22px;
  }
}
.magazine .contact a:hover {
  background-color: #f66606;
  opacity: 1;
}
@media (max-width: 767px) {
  .magazine .arrow::before {
    right: 20px;
  }
}
@media (max-width: 767px) {
  .magazine .arrow::after {
    right: 20px;
  }
}

/*footer
-----------------------------------------------------*/
.footer {
  padding: 10rem 0 5rem 0;
  border-bottom: solid 1px #d7e6ec;
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .footer {
    padding: 7rem 0 5rem 0;
  }
}
@media (max-width: 575px) {
  .footer {
    font-size: 1.2rem;
  }
}
.footer-box {
  margin: 0 auto;
  max-width: 960px;
  padding: 0 2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  box-sizing: border-box;
}
@media (max-width: 575px) {
  .footer-box {
    justify-content: flex-start;
  }
}
@media (max-width: 380px) {
  .footer-box {
    display: block;
  }
}
.footer-box a {
  display: block;
  padding: 0.5rem 0;
  color: #174A79;
}
.footer-box ul {
  margin: 0 2rem 4rem 0;
}
.footer-box ul:last-child {
  margin-right: 0;
}
@media (max-width: 575px) {
  .footer-box ul {
    margin-right: 4rem;
  }
}
@media (max-width: 380px) {
  .footer-box ul {
    margin: 0 0 2rem 0;
  }
}
.footer .sub-menu li {
  position: relative;
  padding-left: 2rem;
  line-height: 2;
}
.footer .sub-menu li::before {
  content: "";
  display: block;
  position: absolute;
  width: 10px;
  height: 1px;
  left: 0;
  top: 50%;
  margin-top: -1px;
  background-color: #174A79;
}

.footer-2 {
  padding: 4rem 2rem;
}
.footer-2 .logo {
  max-width: 290px;
}
@media (max-width: 800px) {
  .footer-2 .logo {
    max-width: 180px;
  }
}
@media (max-width: 575px) {
  .footer-2 .logo {
    margin: 0 auto;
    width: 90%;
  }
}
.footer-2-in {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 575px) {
  .footer-2-in {
    display: block;
  }
}
.footer-2-box {
  flex: 1;
  max-width: 450px;
  margin-left: 2rem;
}
@media (max-width: 575px) {
  .footer-2-box {
    max-width: 100%;
    margin-left: 0;
    margin-top: 4rem;
  }
}
.footer-2 .sns {
  gap: 6%;
  justify-content: end;
}
@media (max-width: 575px) {
  .footer-2 .sns {
    justify-content: center;
    gap: 0;
  }
  .footer-2 .sns li {
    margin-right: 2rem;
  }
  .footer-2 .sns li:last-child {
    margin-right: 0;
  }
}
.footer-2 .fb {
  width: 35px;
}
.footer-2 .ins {
  width: 35px;
}
.footer-2 .tw {
  width: 35px;
}
.footer-2 .yt {
  width: 35px;
}
.footer-2-link {
  display: flex;
  padding: 2rem 0;
}
@media (max-width: 575px) {
  .footer-2-link {
    display: block;
  }
  .footer-2-link li {
    margin-top: 2rem;
  }
}
.footer-2-link a {
  font-size: 1.4rem;
  color: #174A79;
}
@media (max-width: 767px) {
  .footer-2-link a {
    font-size: 1.2rem;
  }
}

.copy {
  font-size: 1.2rem;
  color: #333;
  text-align: right;
}
@media (max-width: 575px) {
  .copy {
    text-align: center;
  }
}

/*breadcrumb
-----------------------------------------------------*/
#breadcrumb {
  font-size: 1.4rem;
  line-height: 1.5;
  max-width: 1200px;
  padding: 5rem 4rem 0 4rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  #breadcrumb {
    font-size: 1.2rem;
    margin: 2rem auto 5rem 0;
    padding: 5rem 0 0 0;
  }
}
@media (max-width: 575px) {
  #breadcrumb {
    padding: 3rem 0 0 0;
  }
}
#breadcrumb a {
  color: #333;
  text-decoration: none;
}
#breadcrumb .space {
  margin: 0 1.5rem;
  color: #DFDFDF;
}
#breadcrumb br {
  display: none;
}
#breadcrumb img {
  width: 13px;
  height: auto;
}

/*list-type
-----------------------------------------------------*/
.list01 li {
  padding: 2.5rem 2rem;
  line-height: 1.5;
  align-items: flex-start;
  border-bottom: solid 1px #ccc;
  box-sizing: border-box;
  width: 100%;
}
.list01 li:first-child {
  border-top: solid 1px #ccc;
}
.list01-in {
  display: flex;
  align-items: center;
}
@media (max-width: 575px) {
  .list01-in {
    display: block;
  }
}
.list01 .date {
  margin-right: 2rem;
  color: #174A79;
}
.list01 .tit {
  flex: 1;
}
.list01 .tit a {
  color: #174A79;
  text-decoration: none;
}
.list01 .post-categories li {
  padding: 0;
  border: none;
}
@media (max-width: 767px) {
  .list01 {
    display: block;
    padding: 0;
  }
  .list01-in {
    margin-bottom: 1rem;
  }
  .list01 li {
    display: block;
    padding: 1.5rem 1rem;
  }
}
@media (max-width: 575px) {
  .list01 .label {
    margin-bottom: 0;
  }
}

.list02 {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem 3%;
}
.list02 li {
  width: 31.3%;
  max-width: 380px;
}
@media (max-width: 767px) {
  .list02 li {
    width: 48%;
  }
}
.list02-img {
  width: 100%;
}
.list02-img img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
.list02-tit {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 2rem 0 2.5rem;
  padding-right: 2.5rem;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.5;
}
.list02-tit::after {
  content: "";
  position: absolute;
  background: url(../images/common/arrow-1.svg) no-repeat;
  background-size: cover;
  margin-top: -12px;
  top: 50%;
  right: 6px;
  width: 24px;
  height: 24px;
}
@media (max-width: 575px) {
  .list02-tit::after {
    font-size: 1.6rem;
    width: 15px;
    height: 15px;
  }
}
@media (max-width: 767px) {
  .list02-tit {
    font-size: 1.6rem;
  }
}
.list02 .ja {
  color: #174A79;
  padding-right: 1.5rem;
}
.list02 .en {
  font-size: 1.3rem;
  color: #1375cf;
}
@media (max-width: 767px) {
  .list02 .en {
    font-size: 1.2rem;
  }
}

.list03 {
  margin-bottom: 4rem;
}
.list03 li {
  display: flex;
  flex-wrap: wrap;
  color: #002F5B;
  gap: 0 1.5rem;
  line-height: 1.6;
}
.list03 li p {
  display: block;
  padding: 2rem 0.5rem;
  margin-top: 0;
}
@media (max-width: 575px) {
  .list03 li p {
    padding: 1.5rem 0.5rem;
  }
}
.list03 li p:first-of-type {
  flex-basis: 90px;
  font-weight: bold;
  border-bottom: 1px solid #1374D0;
}
.list03 li p:nth-of-type(2) {
  flex-basis: 350px;
  flex-grow: 1;
  border-bottom: 1px solid #D4DFE4;
}
.list03 li p + p {
  margin-top: 0;
}
.list03 .list03-img:first-of-type {
  display: inline-block;
  margin-right: 2rem;
  border: none;
  max-width: 120px;
}
.list03 p.list03-box {
  display: flex;
}

.list04 {
  display: flex;
  gap: 6rem 3.75%;
  flex-wrap: wrap;
}
@media (max-width: 575px) {
  .list04 {
    display: block;
  }
}
.list04 img {
  display: block;
  width: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
  object-fit: cover;
}
.list04 li {
  max-width: 370px;
  width: 30.8%;
}
@media (max-width: 767px) {
  .list04 li {
    width: 48%;
  }
}
@media (max-width: 575px) {
  .list04 li {
    width: 100%;
    max-width: 100%;
  }
  .list04 li + li {
    margin-bottom: 4rem;
  }
  .list04 li:first-child {
    margin-bottom: 4rem;
  }
}
.list04 .label ul {
  align-items: flex-start;
}
.list04 .date {
  padding: 0;
  color: #174A79;
}
.list04 .list_info {
  padding-top: 1.5rem;
}
.list04 .list_tit a {
  color: #174A79;
  font-weight: bold;
}
.list04 .list_txt {
  font-size: 1.4rem;
  padding: 0;
  margin-bottom: 2rem;
}

.list05 {
  display: flex;
  gap: 6rem 3.75%;
  flex-wrap: wrap;
}
@media (max-width: 575px) {
  .list05 {
    display: block;
  }
}
.list05 li {
  max-width: 560px;
}
@media (max-width: 575px) {
  .list05 li {
    width: 100%;
  }
}
.list05 .date {
  padding: 0;
  color: #174A79;
}
.list05 .list_info {
  padding-top: 1.5rem;
}
.list05 .list_tit a {
  color: #174A79;
  font-weight: bold;
}
.list05 .list_txt {
  font-size: 1.4rem;
  padding: 0;
}

.list06 li {
  position: relative;
}
.list06 li::before {
  content: ""; /* 空の要素作成 */
  width: 8px; /* 幅指定 */
  height: 8px; /* 高さ指定 */
  display: inline-block; /* インラインブロックにする */
  background-color: #1375D0; /* 背景色指定 */
  border-radius: 50%; /* 要素を丸くする */
  margin-right: 1rem;
}

/*page-common
-----------------------------------------------------*/
.container-sm {
  max-width: 780px;
  padding: 0 4rem;
  margin: 0 auto;
}

.container-md {
  max-width: 960px;
  padding: 0 4rem;
  margin: 0 auto;
}

.container-lg {
  max-width: 1200px;
  padding: 0 4rem;
  margin: 0 auto;
}

.container-ex {
  max-width: 1000px;
  padding: 0 4rem;
  margin: 0 auto;
}

.container-xl {
  max-width: 1400px;
  padding: 0 4rem;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .container-sm,
  .container-md,
  .container-ex,
  .container-lg,
  .container-xl {
    padding: 0 2rem;
  }
}
/* parts */
@media (max-width: 767px) {
  .h2-headline01 {
    margin: 0 auto 3rem auto;
  }
}
.h2-headline01 .en {
  font-size: 1.6rem;
  color: #1375cf;
}
@media (max-width: 800px) {
  .h2-headline01 .en {
    font-size: 2rem;
  }
}
.h2-headline01 .sub {
  font-size: 2.5rem;
  color: #1375cf;
  font-weight: bold;
}
@media (max-width: 767px) {
  .h2-headline01 .sub {
    font-size: 2rem;
  }
}
.h2-headline01 .ja {
  padding: 5rem 0 5rem;
  font-size: 4.5rem;
  color: #174A79;
}
@media (max-width: 1199px) {
  .h2-headline01 .ja {
    font-size: 3.5vw;
  }
}
@media (max-width: 767px) {
  .h2-headline01 .ja {
    display: block;
    padding: 3rem 0 0;
    font-size: 3rem;
    line-height: 2;
  }
}
.h2-headline01 .deco {
  position: relative;
}
.h2-headline01 .deco::before {
  content: "";
  position: absolute;
  display: block;
  height: 2px;
  width: 60px;
  bottom: -20px;
  left: 0;
  background-color: #1375cf;
}
@media (max-width: 575px) {
  .h2-headline01 .deco::before {
    bottom: -20px;
  }
}

.h2-headline02 {
  text-align: center;
}
.h2-headline02 .ja {
  font-size: 3.9rem;
}
@media (max-width: 1023px) {
  .h2-headline02 .ja {
    font-size: 4vw;
  }
}
@media (max-width: 575px) {
  .h2-headline02 .ja {
    font-size: 3rem;
  }
}
.h2-headline02 .en {
  font-size: 1.6rem;
}
.h2-headline02 .deco {
  position: relative;
}
.h2-headline02 .deco::before {
  content: "";
  position: absolute;
  display: block;
  height: 1px;
  width: 36px;
  bottom: -20px;
  left: 50%;
  margin-left: -16px;
  background-color: #fff;
}
@media (max-width: 575px) {
  .h2-headline02 .deco::before {
    bottom: -20px;
  }
}

.h3-headline01 {
  padding-left: 2rem;
  font-size: 2.8rem;
  color: #174A79;
  border-left: 4px solid #1375cf;
}
.h3-headline01 .sub {
  font-size: 1.6rem;
  color: #1375cf;
}

.arrow {
  position: relative;
}
.arrow::before {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  width: 15px;
  height: 1px;
  background: #fff;
  z-index: 10;
}
.arrow::after {
  content: "";
  position: absolute;
  right: 29px;
  margin-top: -3px;
  top: 50%;
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  z-index: 10;
}

.btn a {
  position: relative;
  display: block;
  margin: 0 auto;
  padding: 0.8rem;
  font-weight: bold;
  text-align: center;
  color: #174A79;
  border: 1px solid #174A79;
  border-radius: 100px;
}
.btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 6px;
  height: 6px;
  transform: translateY(-50%) rotate(45deg);
  border-top: 1px solid #174A79;
  border-right: 1px solid #174A79;
}
@media (max-width: 575px) {
  .btn {
    margin-top: 4rem;
  }
}

.btn02 {
  width: 100%;
  font-size: 2rem;
}
@media (max-width: 575px) {
  .btn02 {
    font-size: 1.6rem;
  }
}
.btn02 a {
  position: relative;
  width: 100%;
  max-width: 450px;
  border-radius: 5px;
  border: solid 1px #7fbfe2;
  color: #005083;
}
.btn02 a::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/arrow-1.svg) no-repeat;
  background-size: cover;
  top: 50%;
  right: 2rem;
  margin-top: -10px;
  width: 20px;
  height: 20px;
}
@media (max-width: 575px) {
  .btn02 a::after {
    right: 1rem;
  }
}
.btn02 .icon {
  width: 40px;
  padding: 2rem;
}
.btn02-in {
  padding: 0 6rem;
  height: 100%;
  width: 100%;
  flex: 1;
  min-width: 80px;
  background-color: #d2e7f3;
  line-height: 1.5;
}
@media (max-width: 575px) {
  .btn02-in {
    padding: 0 3rem;
  }
}

.btn03 {
  width: 100%;
  font-size: 2rem;
}
@media (max-width: 575px) {
  .btn03 {
    font-size: 1.6rem;
  }
}
.btn03 a {
  position: relative;
  width: 100%;
  max-width: 450px;
  border-radius: 5px;
  border: solid 1px #f2aabf;
  color: #b92165;
}
.btn03 a::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/arrow-2.svg) no-repeat;
  background-size: cover;
  top: 50%;
  right: 2rem;
  margin-top: -10px;
  width: 20px;
  height: 20px;
}
@media (max-width: 575px) {
  .btn03 a::after {
    right: 1rem;
  }
}
.btn03 .icon {
  width: 105px;
  padding: 2rem;
}
.btn03-in {
  padding: 0 6rem;
  height: 100%;
  width: 100%;
  flex: 1;
  min-width: 80px;
  background-color: #fce4eb;
  line-height: 1.5;
}
@media (max-width: 575px) {
  .btn03-in {
    padding: 0 3rem;
  }
}

.label {
  margin-bottom: 1.5rem;
}
.label a {
  display: inline-block;
  padding: 0.1rem 1rem;
  font-size: 1.1rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background: #f24e7c;
}
.label ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.label ul li {
  display: flex;
  width: auto;
  margin-right: 1rem;
  margin-bottom: 1rem;
  box-sizing: border-box;
}
.label ul a {
  width: 100%;
}

.top-btn {
  position: fixed;
  width: 50px;
  height: 50px;
  background-color: #00a4d8;
  bottom: 15px;
  right: 20px;
  transition-delay: 0s;
  opacity: 1;
  visibility: visible;
  border-radius: 5px;
  cursor: pointer;
}
@media (max-width: 575px) {
  .top-btn {
    position: relative;
    width: 100%;
    bottom: auto;
    right: auto;
  }
}
.top-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: 3px;
  margin-left: -4px;
  width: 8px;
  height: 8px;
  transform: translateY(-50%) rotate(45deg);
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}

@media (max-width: 890px) {
  .pc-none {
    display: none;
  }
}

.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
  box-shadow: 0px 3px 10px -6px #d6d6d6;
}

a:hover {
  opacity: 0.6;
}

/*右側へ要素を広げる*/
.column-outside-right {
  flex: 1;
  margin-right: calc(50% - 50vw);
}

/*左側へ要素を広げる*/
.column-outside-left {
  flex: 1;
  margin-left: calc(50% - 50vw);
}

/*common
-----------------------------------------------------*/
.youtube {
  aspect-ratio: 16/9;
}

.youtube iframe {
  width: 100%;
  height: 100%;
}

/*page
-----------------------------------------------------*/
.page-header {
  background: url(../images/common/page-top_bg.png) no-repeat;
  background-size: cover;
}
.page-header__inner {
  padding: 8rem 0 16rem 0;
}
@media (max-width: 575px) {
  .page-header__inner {
    padding: 5rem 0 6rem 0;
  }
}
.page-header__inner__ja {
  font-size: 3.5rem;
  color: #174A79;
  line-height: 1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem 2rem;
}
@media (max-width: 575px) {
  .page-header__inner__ja {
    font-size: 2.5rem;
  }
}
.page-header__inner__en {
  font-size: 1.6rem;
  color: #1375CF;
  font-weight: 500;
  position: relative;
  display: inline-block;
  padding-left: 5rem;
}
.page-header__inner__en::before {
  content: "";
  background-color: #1375CF;
  position: absolute;
  top: 49%;
  display: inline-block;
  width: 3rem;
  height: 1px;
  left: 0;
}

.archivo {
  font-family: "Archivo Narrow", sans-serif;
}

/* btn */
.btn-1 {
  margin-top: 5rem;
}
.btn-1 a {
  position: relative;
  display: inline-block;
  padding: 1.5rem 4.5rem 1.5rem 4rem;
  color: #184979;
  text-decoration: none;
  border: 1px solid #184979;
  border-radius: 60px;
  line-height: 1;
  background: #FFF;
}
.btn-1 a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 6px;
  height: 6px;
  transform: translateY(-50%) rotate(45deg);
  border-top: 1px solid #184979;
  border-right: 1px solid #184979;
}

.btn-2 a {
  position: relative;
  display: block;
  padding: 1.5rem 3.5rem 1.5rem 3rem;
  color: #184979;
  text-decoration: none;
  border: 1px solid #184979;
  border-radius: 60px;
  line-height: 1;
  text-align: center;
}
.btn-2 a .arrow {
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  right: 1rem;
}
.btn-2 a .arrow:before {
  content: "";
  position: static;
  display: inline-block;
  width: 6px;
  height: 6px;
  border-right: 2px solid #0f48b1;
  border-bottom: 2px solid #0f48b1;
  transform: rotate(45deg);
  margin-right: 1rem;
  margin-bottom: 0.2rem;
}

.btn-3 a {
  position: relative;
  display: inline-block;
  padding: 2rem 3rem 2rem 4rem;
  color: #FFF;
  background: #F69306;
  text-decoration: none;
  border-radius: 60px;
  line-height: 1;
  font-weight: bold;
}

.btn-4 a {
  position: relative;
  display: inline-block;
  padding: 1.5rem 2rem 1.5rem 3rem;
  color: #fff;
  background: #184979;
  text-decoration: none;
  border: 1px solid #184979;
  border-radius: 60px;
  line-height: 1;
}
.btn-4 a .arrow {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  margin-left: 1.5rem;
}
.btn-4 a .arrow:before {
  content: "";
  position: static;
  display: inline-block;
  width: 6px;
  height: 6px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  margin-right: 1rem;
  margin-bottom: 0.2rem;
}

.page-sec {
  margin: 8rem 0;
}
@media (max-width: 575px) {
  .page-sec {
    margin: 6rem 0;
  }
}
.page-sec p + p {
  margin-top: 3rem;
}
@media (max-width: 575px) {
  .page-sec p + p {
    margin-top: 2rem;
  }
}

.post-sec h1,
.h1-line {
  padding: 1rem 0;
  line-height: 1.5;
}

.post-sec h1 + p {
  margin-top: 5rem;
}

.post-sec h2,
.cat_title,
.h2-line {
  margin: 4rem 0 3rem 0;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.5;
  padding: 0 2rem;
  border-left: 6px solid #1375CE;
  color: #174A79;
}
@media (max-width: 575px) {
  .post-sec h2,
  .cat_title,
  .h2-line {
    font-size: 2.2rem;
    padding: 1rem 1.5rem;
    margin: 3rem 0 2rem 0;
  }
}

.post-sec h3,
.h3-line {
  position: relative;
  font-size: 2.6rem;
  color: #002F5B;
  line-height: 1.6;
  margin: 5rem 0 3rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #D4DFE4;
}
@media (max-width: 575px) {
  .post-sec h3,
  .h3-line {
    font-size: 2rem;
    margin: 3rem 0 2rem;
    padding-bottom: 1rem;
  }
}
.post-sec h3::after,
.h3-line::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -2px;
  width: 12rem;
  border-bottom: 2px solid #1972D8;
  -o-border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
     border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image-slice: 1;
}

.post-sec h4,
.h4-line {
  position: relative;
  font-size: 2.2rem;
  color: #1174CF;
  line-height: 1.2;
  margin: 4rem 0 2rem 0;
  padding: 0 1rem 1rem 1rem;
  border-bottom: 1px solid #D4DFE4;
}
@media (max-width: 575px) {
  .post-sec h4,
  .h4-line {
    font-size: 1.8rem;
    margin: 3rem 0 2rem;
  }
}

.eye-catch {
  margin: 3rem 0;
}

/*.post-sec h5 {
	font-size: 1.8rem;
	line-height: 1.6;
	margin: 3rem 0 2rem 0;
}*/
/*.post-sec {

	table,
	td,
	th {
		border-collapse: collapse;
		text-align: left;
	}

	table {
		table-layout: fixed;
		width: 100%;
	}

	td,
	th {
		padding: 2.5rem;
		border-bottom: 1px solid #DFDFDF;

		@include mq(sm) {
			display: block;
		}
	}

	th {
		background: #F8F8F8;
		width: 230px;

		@include mq(md) {
			width: 190px;
		}

		@include mq(sm) {
			width: initial;
		}
	}
}*/
/*pagenation
-----------------------------------------------------*/
.pagination-box {
  font-size: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 7rem 0 0;
  gap: 1rem;
}
@media (max-width: 767px) {
  .pagination-box {
    position: relative;
    font-size: 1.1rem;
    margin: 5rem 0 0;
  }
}
.pagination-box .current {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #3EADB0;
  width: 40px;
  height: 40px;
  text-align: center;
}
@media (max-width: 767px) {
  .pagination-box .current {
    width: 28px;
    height: 28px;
  }
}
.pagination-box a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  text-align: center;
  text-decoration: none;
  color: #3EADB0;
  box-sizing: border-box;
  background: #FFF;
  border: 1px solid #3EADB0;
}
@media (max-width: 767px) {
  .pagination-box a {
    width: 28px;
    height: 28px;
  }
}
.pagination-box a:hover {
  opacity: 1;
  color: #FFF;
  background: #3EADB0;
}
.pagination-box .page-of {
  display: none;
}

/*single
-----------------------------------------------------*/
.post-info {
  margin-top: 2rem;
}
.post-info__date {
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  line-height: 2;
}
.post-info__cat {
  margin-left: 2.5rem;
  gap: 0 1rem;
}
.post-info__cat .label {
  display: flex;
  align-items: center;
}
.post-info__cat .label a {
  display: inline-block;
  padding: 0.5rem 1rem;
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background: #000;
}

.post-contens {
  margin-top: 6rem;
}
@media (max-width: 575px) {
  .post-contens {
    margin-top: 4rem;
  }
}

.featured-image {
  margin-bottom: 5rem;
}
@media (max-width: 575px) {
  .featured-image {
    margin-bottom: 4rem;
  }
}
.featured-image + * {
  margin-top: 0;
}

.news-box {
  display: flex;
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .news-box {
    display: block;
  }
}
.news-box p + p {
  margin: 2rem 0;
}

.container-sec {
  margin-right: 12rem;
  max-width: 780px;
  width: 100%;
  flex: 1;
}
@media (max-width: 800px) {
  .container-sec {
    margin-right: 6rem;
  }
}

.sec-side {
  width: 300px;
}
@media (max-width: 767px) {
  .sec-side {
    margin-top: 3rem;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .sec-side .member-menu {
    max-width: 100%;
  }
}

.statistics-sec {
  margin: 8rem auto;
}

/*side
-----------------------------------------------------*/
.widget_archive {
  margin-top: 5rem;
}
.widget_archive li {
  position: relative;
  border-bottom: 1px solid #88e2e5;
  font-size: 1.6rem;
}
.widget_archive li::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 5px;
  height: 5px;
  transform: translateY(-50%) rotate(45deg);
  border-top: 2px solid #1375cf;
  border-right: 2px solid #1375cf;
}

.widget_archive li,
.widget_archive li a {
  display: block;
  width: 100%;
  padding: 0.5rem 3rem 0.5rem 0.5rem;
  text-decoration: none;
  color: #333;
  line-height: 1.5;
  box-sizing: border-box;
}

.post-sec h2.widgettitle {
  color: #333;
  font-size: 1.8rem;
  position: relative;
  line-height: 1.6;
  padding-bottom: 0.7rem;
  border-bottom: solid 1px #88e2e5;
  margin: 0rem 0 1rem 0;
}

.widget_categories {
  margin-top: 5rem;
}
.widget_categories li {
  position: relative;
  border-bottom: 1px solid #88e2e5;
  font-size: 1.6rem;
}
.widget_categories li::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 5px;
  height: 5px;
  transform: translateY(-50%) rotate(45deg);
  border-top: 2px solid #1375cf;
  border-right: 2px solid #1375cf;
}

.widget_categories li,
.widget_categories li a {
  display: block;
  width: 100%;
  padding: 0.5rem 3rem 0.5rem 0.5rem;
  text-decoration: none;
  color: #333;
  line-height: 1.5;
  box-sizing: border-box;
}

/*common
-----------------------------------------------------*/
.common-sec {
  margin-top: 8rem;
  margin-bottom: 8rem;
}
@media (max-width: 575px) {
  .common-sec {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
}

/*privacy
-----------------------------------------------------*/
.page-privacy ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.page-privacy ul li::before {
  content: "";
  width: 4px;
  height: 4px;
  display: inline-block;
  background-color: #333;
  border-radius: 50%;
  margin: 0 10px 4px 3px;
}

/*video
-----------------------------------------------------*/
.video-sec .caution-mod {
  margin: 5rem 0 8rem 0;
}

/*about
-----------------------------------------------------*/
.about-box {
  padding: 6rem 4rem;
  border: 1px solid #1375CE;
  margin-bottom: 5rem;
}
@media (max-width: 575px) {
  .about-box {
    padding: 3rem 2rem;
    margin-bottom: 3rem;
  }
}
.about-box .br-md {
  display: none;
}
@media (max-width: 767px) {
  .about-box .br-md {
    display: block;
  }
}
.about-box h3 {
  font-size: 2.2rem;
  color: #184979;
  line-height: 1.4;
  padding: 1rem 2rem;
  border-left: 4px solid #1375D0;
  border-bottom: 0;
  margin: 0 0 4rem 0;
}
@media (max-width: 767px) {
  .about-box h3 {
    margin: 0 0 3rem 0;
  }
}
@media (max-width: 575px) {
  .about-box h3 {
    font-size: 1.8rem;
  }
}
.about-box h3::after {
  border: none;
}
.about-box h3 .position {
  display: block;
  color: #1374D0;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}
@media (max-width: 575px) {
  .about-box h3 .position {
    font-size: 1.6rem;
  }
}
.about-box__flex {
  display: flex;
  gap: 2rem;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .about-box__flex {
    flex-wrap: wrap;
  }
}
.about-box__flex strong {
  font-size: 2.2rem;
  color: #184979;
}
@media (max-width: 575px) {
  .about-box__flex strong {
    font-size: 1.8rem;
  }
}
.about-box__flex-l {
  width: 32%;
}
@media (max-width: 767px) {
  .about-box__flex-l {
    width: 100%;
  }
}
.about-box__flex-l img {
  max-width: 307px;
  width: 100%;
  height: auto;
}
.about-box__flex-r {
  width: 68%;
}
@media (max-width: 767px) {
  .about-box__flex-r {
    width: 100%;
  }
}
.about-box__flex .btn-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  margin-top: 3rem;
}
.about-box .history {
  margin-bottom: 4rem;
}
.about-box .history li {
  display: flex;
  flex-wrap: wrap;
  color: #002F5B;
  gap: 0 1.5rem;
  line-height: 1.6;
}
.about-box .history li span {
  display: block;
  padding: 2rem 0.5rem;
}
@media (max-width: 575px) {
  .about-box .history li span {
    padding: 1.5rem 0.5rem;
  }
}
.about-box .history li span:first-of-type {
  flex-basis: 90px;
  font-weight: bold;
  border-bottom: 1px solid #1374D0;
}
.about-box .history li span:nth-of-type(2) {
  flex-basis: 350px;
  flex-grow: 1;
  border-bottom: 1px solid #D4DFE4;
}
.about-box .capa-list li {
  line-height: 2;
}
.about-box .capa-list li::before {
  content: "";
  width: 8px;
  height: 8px;
  display: inline-block;
  background-color: #1375D0;
  border-radius: 50%;
  margin: 0 10px 2px 3px;
}
.about-box .mailmagazine {
  margin: 4rem auto;
}
.about-box .mailmagazine p {
  font-size: 1.8rem;
  font-weight: bold;
  color: #184979;
  margin-bottom: 2rem;
}
.about-box h4 {
  position: relative;
  font-size: 2.6rem;
  color: #002F5B;
  line-height: 1.6;
  margin: 5rem 0 3rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #D4DFE4;
}
@media (max-width: 575px) {
  .about-box h4 {
    font-size: 2rem;
    margin: 3rem 0 2rem;
    padding-bottom: 1rem;
  }
}
.about-box h4::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -2px;
  width: 12rem;
  border-bottom: 2px solid #1972D8;
  -o-border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
     border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image-slice: 1;
}

.access__flex {
  display: flex;
  border-bottom: 1px solid #CFD5DF;
  border-top: 1px solid #CFD5DF;
  padding: 6rem 0;
  gap: 2rem 3rem;
}
@media (max-width: 575px) {
  .access__flex {
    flex-wrap: wrap;
    padding: 3rem 0;
  }
}
.access__flex:last-child {
  border-top: 0;
}
.access__flex-l {
  width: 50%;
}
@media (max-width: 575px) {
  .access__flex-l {
    width: 100%;
  }
}
.access__flex-l h3 {
  padding-bottom: 0;
  border-bottom: 0;
  margin-top: 0;
  margin-bottom: 2rem;
}
.access__flex-l h3::after {
  border-bottom: none;
  -o-border-image: none;
     border-image: none;
}
.access__flex-l .btn-1 {
  margin-top: 4rem;
}
@media (max-width: 575px) {
  .access__flex-l .btn-1 {
    margin-top: 1rem;
  }
}
.access__flex-r {
  width: 50%;
}
@media (max-width: 575px) {
  .access__flex-r {
    width: 100%;
  }
}
.access__flex iframe {
  width: 100%;
  height: 325px;
}

/*voice
-----------------------------------------------------*/
.page-voice .voice-box {
  padding: 5rem;
  border: 1px solid #1375CE;
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .page-voice .voice-box {
    padding: 3rem 2rem;
    margin-bottom: 3rem;
  }
}
.page-voice .voice-box__flex {
  display: flex;
  gap: 3rem;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .page-voice .voice-box__flex {
    flex-wrap: wrap;
  }
}
.page-voice .voice-box__flex-l {
  width: 53%;
}
@media (max-width: 767px) {
  .page-voice .voice-box__flex-l {
    width: 100%;
  }
}
.page-voice .voice-box__flex-l h2 {
  position: relative;
  font-size: 2.6rem;
  color: #002F5B;
  line-height: 1.6;
  margin: 0 0 3rem 0;
  padding-bottom: 1rem;
  border-bottom: 2px solid #D4DFE4;
  border-left: 0;
  padding: 0;
}
@media (max-width: 575px) {
  .page-voice .voice-box__flex-l h2 {
    font-size: 2rem;
    margin: 0 0 2rem 0;
    padding-bottom: 1rem;
  }
}
.page-voice .voice-box__flex-l h2::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -2px;
  width: 12rem;
  border-bottom: 2px solid #1972D8;
  -o-border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
     border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image-slice: 1;
}
.page-voice .voice-box__flex-l p {
  font-size: 2rem;
  color: #002F5B;
  font-weight: bold;
}
@media (max-width: 575px) {
  .page-voice .voice-box__flex-l p {
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  .page-voice .voice-box__flex-r {
    width: 100%;
    text-align: center;
  }
}
.page-voice .voice-box__flex-r img {
  max-width: 395px;
  width: 100%;
  height: auto;
}
.page-voice .voice-box .voice-text {
  margin: 2rem auto;
}
.page-voice .voice-box .voice-text li {
  display: flex;
  justify-content: center;
}

/*institution
-----------------------------------------------------*/
/*institution
-----------------------------------------------------*/
.caution {
  background: #F1F8F9;
  padding: 5rem;
}
@media (max-width: 575px) {
  .caution {
    padding: 2.5rem;
  }
}
.caution p + p {
  margin-top: 2rem;
}
.caution-h {
  color: #1174CF;
  font-weight: bold;
  font-size: 2.4rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #D4DFE4;
}
@media (max-width: 575px) {
  .caution-h {
    font-size: 2rem;
  }
}
.caution-bold {
  color: #FF0000;
  font-weight: bold;
  font-size: 2rem;
}
@media (max-width: 575px) {
  .caution-bold {
    font-size: 1.8rem;
  }
}
.caution-red {
  color: #FF0000;
}

.institution-link {
  margin: 6rem 0 7rem 0;
}
@media (max-width: 575px) {
  .institution-link {
    margin: 3rem 0 4rem 0;
  }
}
.institution-link .btn-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 2rem;
}
.institution-link .btn-flex .btn-2 {
  width: 16%;
  flex-grow: 1;
}
@media (max-width: 767px) {
  .institution-link .btn-flex .btn-2 {
    width: 40%;
  }
}

.wp-block-table table {
  border-collapse: collapse;
  vertical-align: middle;
  table-layout: fixed;
  width: 100%;
  min-width: 767px;
  overflow-x: scroll;
}
.wp-block-table table td,
.wp-block-table table th {
  border-collapse: collapse;
  vertical-align: middle;
}
.wp-block-table table td,
.wp-block-table table th {
  padding: 2.5rem 2rem;
  border: 1px solid #C8E3E3;
}
@media (max-width: 575px) {
  .wp-block-table table td,
  .wp-block-table table th {
    padding: 1.5rem 1rem;
  }
}
.wp-block-table table tr:first-child td {
  background: #F1F8F9;
}
.wp-block-table table tr:first-child td:nth-of-type(1) {
  width: 200px;
}
@media (max-width: 767px) {
  .wp-block-table table tr:first-child td:nth-of-type(1) {
    width: initial;
  }
}
.wp-block-table table a {
  text-decoration: none;
  color: #184979;
}

.institution-btn {
  margin: 4rem auto 8rem auto;
  text-align: center;
}
@media (max-width: 575px) {
  .institution-btn {
    margin: 2rem auto 6rem auto;
  }
}

/*contact
-----------------------------------------------------*/
.page-contact {
  /*submit*/
}
.page-contact .red {
  color: #FF0000;
}
.page-contact .atn {
  margin-top: 0;
  font-size: 1.6rem;
  font-weight: normal;
}
.page-contact .contact-box {
  margin: 5rem 0;
  padding: 5rem 0;
  border-top: 1px solid #CFD5DF;
  border-bottom: 1px solid #CFD5DF;
  /*check*/
}
.page-contact .contact-box dt {
  color: #003567;
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}
.page-contact .contact-box dt .required {
  color: #FFF;
  background: #F24E7C;
  border-radius: 3px;
  font-weight: 400;
  font-size: 1.3rem;
  padding: 0.4rem 0.8rem;
  margin-left: 1rem;
}
.page-contact .contact-box dd {
  margin-bottom: 3rem;
}
.page-contact .contact-box dd input.input-text,
.page-contact .contact-box dd textarea {
  border: 1px solid #C1D1D1;
  background: #F1F9F9;
  width: 100%;
  height: 3rem;
  padding: 2rem;
  box-sizing: border-box;
  border-radius: 4px;
}
.page-contact .contact-box dd input.input-text:hover,
.page-contact .contact-box dd textarea:hover {
  cursor: pointer;
}
.page-contact .contact-box dd select {
  border: 1px solid #C1D1D1;
  background: #F1F9F9;
  width: 38%;
  height: 3rem;
  padding: 2rem;
  box-sizing: border-box;
  border-radius: 4px;
}
.page-contact .contact-box dd textarea {
  height: 20rem;
}
.page-contact .contact-box dd .wpcf7-radio {
  margin: 0.5rem 0;
}
.page-contact .contact-box dd .wpcf7-radio .wpcf7-list-item + .wpcf7-list-item {
  margin-top: 1rem;
}
.page-contact .contact-box dd .wpcf7-checkbox {
  margin: 0.5rem 0;
}
.page-contact .contact-box dd .wpcf7-checkbox .wpcf7-list-item + .wpcf7-list-item {
  margin-top: 1rem;
}
.page-contact .contact-box dd .wpcf7-select:hover {
  cursor: pointer;
}
.page-contact .contact-box .radio {
  /*radio*/
}
.page-contact .contact-box .radio input[type=radio] {
  box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
}
.page-contact .contact-box .radio input[type=radio]::before {
  box-sizing: border-box;
}
.page-contact .contact-box .radio input[type=radio]::after {
  box-sizing: border-box;
}
.page-contact .contact-box .radio .wpcf7-list-item {
  display: block;
  margin-left: 0;
}
.page-contact .contact-box .radio .wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
}
.page-contact .contact-box .radio .wpcf7-list-item-label::before {
  content: "";
  display: block;
  border-radius: 50%;
  border: 1px solid #C1D1D1;
  background: #F1F9F9;
  max-width: 22px;
  width: 100%;
  height: 22px;
  margin-right: 1rem;
}
.page-contact .contact-box .radio input[type=radio]:checked + .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: 5px;
  display: block;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  background-color: #003567;
}
.page-contact .contact-box .check input[type=checkbox] {
  box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
}
.page-contact .contact-box .check input[type=checkbox]::before {
  box-sizing: border-box;
}
.page-contact .contact-box .check input[type=checkbox]::after {
  box-sizing: border-box;
}
.page-contact .contact-box .check .wpcf7-list-item {
  display: block;
  margin-left: 0;
}
.page-contact .contact-box .check .wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
}
.page-contact .contact-box .check .wpcf7-list-item-label:hover {
  cursor: pointer;
}
.page-contact .contact-box .check .wpcf7-list-item-label::before {
  left: 0;
  display: block;
  border: 1px solid #C1D1D1;
  background: #F1F9F9;
  border-radius: 4px;
  content: "";
  max-width: 22px;
  width: 100%;
  height: 22px;
  margin-right: 1rem;
}
.page-contact .contact-box .check input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  position: absolute;
  top: 4px;
  left: 7px;
  display: block;
  border-right: 2px solid #003567;
  border-bottom: 2px solid #003567;
  content: "";
  width: 8px;
  height: 12px;
  transform: rotate(45deg);
}
.page-contact .submit-box {
  margin: 6rem auto 0 auto;
  text-align: center;
}
.page-contact .submit-box .submit {
  display: inline-block;
  position: relative;
  transition: all 0.3s;
}
.page-contact .submit-box .submit:after {
  display: inline-block;
  position: absolute;
  right: 10%;
  top: 42%;
  content: "";
  width: 6px;
  height: 6px;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: rotate(-45deg);
}
.page-contact .submit-box input[type=submit] {
  display: inline-block;
  width: 300px;
  padding: 2rem 4rem;
  color: #FFF;
  background: #F69306;
  text-decoration: none;
  border-radius: 60px;
  line-height: 1;
  font-weight: bold;
  outline: none;
  border: none;
  font-size: 1.6rem;
  transition: 0.3s linear;
  cursor: pointer;
}
.page-contact .submit-box input[type=submit]:hover {
  opacity: 0.6;
}
.page-contact .contact-bottom p + p {
  margin: 0;
}
.page-contact .contact-bottom a {
  color: #003567;
}
.page-contact .form-box {
  margin-top: 5rem;
  margin-bottom: 10rem;
  position: relative;
  width: 100%;
  padding: 56.25% 0;
}
.page-contact .form-box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.page-contact .contact-table {
  border-collapse: collapse;
  vertical-align: middle;
  table-layout: fixed;
  width: 100%;
  overflow-x: scroll;
  background: #fff;
}
@media (max-width: 575px) {
  .page-contact .contact-table {
    display: block;
  }
}
@media (max-width: 575px) {
  .page-contact .contact-table tbody {
    display: block;
    width: 100%;
  }
}
@media (max-width: 575px) {
  .page-contact .contact-table tr {
    display: block;
    width: 100%;
  }
}
@media (max-width: 575px) {
  .page-contact .contact-table tr:last-child td {
    border-bottom: solid 1px #D4DFE4;
  }
}
.page-contact .contact-table th {
  width: 200px;
  padding: 2rem;
  font-weight: normal;
  white-space: nowrap;
  background: #F1F8F9;
  text-align: left;
  border-bottom: none;
  box-sizing: border-box;
  border: solid 1px #D4DFE4;
}
@media (max-width: 575px) {
  .page-contact .contact-table th {
    display: block;
    width: 100%;
  }
}
.page-contact .contact-table td {
  border: solid 1px #D4DFE4;
  padding: 2rem;
  font-size: 1.6rem;
  vertical-align: middle;
  box-sizing: border-box;
}
@media (max-width: 639px) {
  .page-contact .contact-table td {
    display: block;
    width: 100%;
  }
}
@media (max-width: 575px) {
  .page-contact .contact-table td {
    display: block;
    width: 100%;
    padding: 2rem;
    border-top: none;
    border-bottom: none;
  }
}
.page-contact .contact-table a {
  color: #003567;
  text-decoration: underline;
}
@media (max-width: 639px) {
  .page-contact .contact-table tr:nth-child(n+2) td:nth-of-type(1) {
    border-top: none;
  }
}
.page-contact .contact-table p + p {
  margin-top: 1rem;
}
@media (max-width: 575px) {
  .page-contact .contact-table p + p {
    margin-top: 2rem;
  }
}
.page-contact .contact-table textarea {
  border: 1px solid #cbcbcb;
  width: 100%;
}
.page-contact .contact-table select {
  border: 1px solid #cbcbcb;
  max-width: 380px;
  width: 100%;
  height: 40px;
}
@media (max-width: 575px) {
  .page-contact .contact-table select {
    max-width: 100%;
  }
}
.page-contact .contact-table input {
  border: 1px solid #cbcbcb;
  max-width: 500px;
  width: 100%;
  height: 40px;
}

/*faq
-----------------------------------------------------*/
.container-2col {
  display: flex;
  justify-content: space-between;
  gap: 6rem 2rem;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .container-2col {
    flex-wrap: wrap;
  }
}

.member-menu {
  background: #FFF;
  padding: 2rem;
  border-radius: 4px;
  max-width: 250px;
  width: 100%;
  box-shadow: 0px 0px 15px 0px rgba(103, 121, 135, 0.2);
  box-sizing: border-box;
}
.member-menu-h {
  color: #1D7BD1;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #CBD9E6;
  padding-bottom: 1rem;
}
.member-menu li {
  border-bottom: 1px solid #EBEBEB;
  padding: 1.5rem 0.5rem;
  position: relative;
}
.member-menu li:after {
  content: "";
  position: absolute;
  display: inline-block;
  right: 0;
  top: 43%;
  width: 6px;
  height: 6px;
  border-right: 1px solid #0f48b1;
  border-bottom: 1px solid #0f48b1;
  transform: rotate(-45deg);
  margin-right: 1rem;
  margin-bottom: 0.2rem;
}
.member-menu li a {
  text-decoration: none;
  color: #333;
}

.main-column {
  max-width: 850px;
  width: 100%;
  margin-right: 0;
}
.main-column h1 {
  position: relative;
  background: #1D7BD1;
  margin: 0 0 4rem 0;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.4;
  padding: 1rem 2rem 1rem 4rem;
  border-left: 0;
  color: #FFF;
}
.main-column h1:before {
  position: absolute;
  top: 25%;
  left: 20px;
  width: 4px;
  height: 50%;
  content: "";
  background: #FFF;
}

.faq-accordion {
  width: 100%;
  background: none;
  border: none;
  padding: 0;
}
.faq-accordion .faq-main {
  width: 100%;
  background: none;
  border: none;
  padding: 0;
}
.faq-accordion h4 {
  position: relative;
  color: #333;
  display: flex;
  width: 100%;
  border-bottom: none;
  align-items: center;
}
.faq-accordion h4::before {
  content: "Q";
  width: 100%;
  max-width: 35px;
  height: 35px;
  background: #16A5A9;
  border-radius: 50px;
  font-size: 2.3rem;
  text-align: center;
  line-height: 1.5;
  color: #FFF;
  margin-right: 1.5rem;
  font-weight: 400;
}
.faq-accordion .faq-title {
  background: #F1F8F9;
  cursor: pointer;
  font-size: 1.8rem;
  padding: 2rem 7rem 2rem 2rem !important;
  position: relative;
  box-sizing: border-box;
  font-weight: bold;
  color: #000;
  border-radius: 4px;
  display: flex;
}
.faq-accordion .faq-title:before {
  position: absolute;
  content: "";
  top: 50%;
  right: 25px;
  height: 3px;
  width: 2rem;
  background: #16A5A9;
  transform: rotate(90deg);
  transition: all 0.3s ease-in-out;
}
.faq-accordion .faq-title:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 25px;
  height: 3px;
  width: 2rem;
  background: #16A5A9;
  transition: all 0.3s ease-in-out;
}
.faq-accordion .faq-title.open:before {
  transform: rotate(180deg);
}
.faq-accordion [data-accordion].open > [data-control]:after {
  opacity: 0;
}
.faq-accordion .faq-content {
  border-left: 1px solid #F1F8F9;
  border-right: 1px solid #F1F8F9;
  border-bottom: 1px solid #F1F8F9;
  padding: 2rem 7rem 2rem 2rem;
  box-sizing: border-box;
}
.faq-accordion .faq-content p {
  display: flex;
}
.faq-accordion .faq-q {
  display: inline-block;
  width: 100%;
  max-width: 35px;
  height: 35px;
  background: #16A5A9;
  border-radius: 50px;
  font-size: 2.3rem;
  text-align: center;
  line-height: 1.5;
  color: #FFF;
  margin-right: 1.5rem;
  font-weight: 400;
}

/*philosophy
-----------------------------------------------------*/
.philosophy {
  margin: 8rem 0;
  color: #174A79;
}
.philosophy .first-1 {
  margin-top: 10rem;
}
.philosophy .h2-headline01 {
  padding-bottom: 4rem;
}
.philosophy .h2-headline01 .ja {
  padding: 0 0 1rem;
}
@media (max-width: 575px) {
  .philosophy .h2-headline01 {
    padding-bottom: 0;
  }
}
.philosophy .h2-headline02 {
  margin-bottom: 8rem;
}
.philosophy .h2-headline02 .ja {
  color: #174A79;
}
.philosophy .h2-headline02 .en {
  color: #1375cf;
}
.philosophy .h2-headline02 .deco::before {
  height: 1px;
  width: 40px;
  left: 50%;
  margin-left: -20px;
  background-color: #1375cf;
}
.philosophy-txt {
  text-align: center;
}
.philosophy .list03-img {
  vertical-align: top;
}
.philosophy-item {
  display: flex;
  margin-top: 8rem;
  gap: 0% 5%;
}
.philosophy-item li {
  max-width: 570px;
}
@media (max-width: 575px) {
  .philosophy-item {
    display: block;
  }
  .philosophy-item li + li {
    margin-top: 7rem;
  }
}

.atn {
  color: #BF2626;
}

.red {
  color: #FF0000;
}

.caution-mod {
  background: #F1F8F9;
  padding: 5rem;
}
.caution-mod .h3-line {
  margin-top: 0;
}
.caution-mod .h4-line {
  margin-bottom: 1;
  font-size: 2rem;
}
@media (max-width: 575px) {
  .caution-mod {
    padding: 2.5rem;
  }
}
.caution-mod p + p {
  margin-top: 2rem;
}
.caution-mod-h {
  color: #1174CF;
  font-weight: bold;
  font-size: 2.4rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #D4DFE4;
}
@media (max-width: 575px) {
  .caution-mod-h {
    font-size: 2rem;
  }
}
.caution-mod-bold {
  color: #FF0000;
  font-weight: bold;
  font-size: 2rem;
}
@media (max-width: 575px) {
  .caution-mod-bold {
    font-size: 1.8rem;
  }
}
.caution-mod-red {
  color: #FF0000;
}
.caution-mod a {
  color: #174A79;
}

.beautyandbarbar_host {
  margin-top: 4rem;
}
.beautyandbarbar_host h2 {
  position: relative;
  font-size: 2.6rem;
  color: #002F5B;
  line-height: 1.6;
  margin: 5rem 0 3rem;
  padding-left: 0;
  padding-bottom: 1rem;
  border-bottom: 2px solid #D4DFE4;
  border-left: 0;
}
@media (max-width: 575px) {
  .beautyandbarbar_host h2 {
    font-size: 2rem;
    margin: 3rem 0 2rem;
    padding-bottom: 1rem;
  }
}
.beautyandbarbar_host h2::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -2px;
  width: 12rem;
  border-bottom: 2px solid #1972D8;
  -o-border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
     border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image-slice: 1;
}
.beautyandbarbar_host h3 {
  position: relative;
  font-size: 2.2rem;
  color: #1174CF;
  line-height: 1.2;
  margin: 4rem 0 2rem 0;
  padding: 0 1rem 1rem 1rem;
  border-bottom: 1px solid #D4DFE4;
}
.beautyandbarbar_host h3::after {
  content: none;
}
@media (max-width: 575px) {
  .beautyandbarbar_host h3 {
    font-size: 1.8rem;
    margin: 3rem 0 2rem;
  }
}
.beautyandbarbar_host dl + dl {
  margin-top: 7rem;
}
.beautyandbarbar_host p + p {
  margin-top: 4rem;
}
.beautyandbarbar_host table {
  border-collapse: collapse;
  vertical-align: middle;
  table-layout: fixed;
  width: 100%;
  min-width: 767px;
  overflow-x: scroll;
  background: #fff;
}
.beautyandbarbar_host table th {
  width: 200px;
  padding: 2rem;
  font-weight: normal;
  white-space: nowrap;
  background: #F1F8F9;
  text-align: left;
  border-bottom: none;
  box-sizing: border-box;
  border: solid 1px #D4DFE4;
}
@media (max-width: 575px) {
  .beautyandbarbar_host table th {
    border-bottom: 1px solid #dfdfdf;
  }
}
.beautyandbarbar_host table td {
  border: solid 1px #D4DFE4;
  padding: 2rem;
  font-size: 1.6rem;
  vertical-align: middle;
  box-sizing: border-box;
}
@media (max-width: 639px) {
  .beautyandbarbar_host table td {
    display: block;
    width: 100%;
  }
}
@media (max-width: 575px) {
  .beautyandbarbar_host table td {
    padding: 2rem;
  }
}
.beautyandbarbar_host table a {
  color: #003567;
  text-decoration: underline;
}
@media (max-width: 639px) {
  .beautyandbarbar_host table tr:nth-child(n+2) td:nth-of-type(1) {
    border-top: none;
  }
}
.beautyandbarbar_host table p + p {
  margin-top: 1rem;
}
@media (max-width: 575px) {
  .beautyandbarbar_host table p + p {
    margin-top: 2rem;
  }
}
.beautyandbarbar_host table + table {
  margin-top: 5rem;
}
.beautyandbarbar_host .beautyandbarbar-news .list01 li:first-child {
  border-top: none;
}
.beautyandbarbar_host .container-2col {
  flex-direction: row-reverse;
}
.beautyandbarbar_host .link a {
  color: #003567;
  text-decoration: underline;
}
.beautyandbarbar_host .link a:hover {
  text-decoration: none;
}

/*beautyandbarbar
-----------------------------------------------------*/
.beauty {
  /*偶数番目にstyle*/
}
.beauty .img-full img {
  width: 100%;
}
.beauty .ques {
  padding: 3rem 0;
  font-size: 3.9rem;
}
.beauty .txt01 {
  padding: 3rem 0;
  font-size: 2.8rem;
}
.beauty .full-width {
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.beauty .bg-nayami {
  background: linear-gradient(#999999, #FFFFFF);
  padding-top: 20px;
}
.beauty .bg-nayami img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.beauty .barbarbox {
  display: flex;
  gap: 0% 2%;
}
.beauty .img_center {
  display: block;
  margin: 0 auto;
}
.beauty .barbarbox .barbar {
  max-width: 220px;
  border: solid 1px #71b8bc;
  padding: 10px;
  margin-bottom: 20px;
}
.beauty .barbarbox .barbar h3 {
  text-align: center;
  font-size: 110%;
  margin-bottom: 10px;
  background-color: #71b8bc;
  color: #FFFFFF;
  padding: 5px 2px;
}
.beauty .balloon3 {
  position: relative;
  padding: 10px 20px;
  background-color: #71b8bc;
  border-radius: 50px;
  text-align: center;
  font-size: 2.8rem;
}
.beauty .balloon3::before {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  bottom: -15px;
  margin: 0 auto;
  border-top: 15px solid #71b8bc;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
}
.beauty .balloon3 p {
  margin: 0;
  padding: 5px 30px;
  text-align: center;
}
.beauty .fbig02 {
  font-size: 2.8rem;
}
.beauty .fbig03 {
  font-size: 3.9rem;
}
.beauty .check1 {
  list-style: none;
  padding: 10px 20px 10px 20px;
}
.beauty .check1 li {
  margin-top: 5px;
}
.beauty .check1 li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f14a";
  padding-right: 5px;
  color: #ff0000;
}
.beauty .wid1000 {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
  max-width: 100%;
  box-sizing: border-box;
}
@media (max-width: 1023px) {
  .beauty .wid1000 {
    width: 100%;
  }
}
.beauty .nonepc {
  display: none;
}
@media (max-width: 767px) {
  .beauty .nonepc {
    display: block;
  }
}
.beauty .syoukai {
  display: flex;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .beauty .syoukai {
    display: block;
  }
}
@media (max-width: 767px) {
  .beauty .flex_box_voice {
    display: block;
  }
}
.beauty .flex_box_voice .flex_contents img {
  margin: 0 auto;
}
@media (max-width: 767px) {
  .beauty .flex_box_voice .flex_contents {
    width: 100%;
  }
  .beauty .flex_box_voice .flex_contents + .flex_contents {
    margin-top: 7rem;
  }
}
.beauty .youtube {
  max-width: 500px;
  margin: 0 auto;
}
.beauty .nomalTB {
  width: 100%;
  border-collapse: collapse;
  empty-cells: show;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #CCCCCC;
  font-size: 90%;
  line-height: 150%;
}
.beauty .nomalTB th {
  width: 30%;
  border-right: 1px solid #CCCCCC;
  padding: 15px 10px;
  text-align: left;
  font-weight: normal;
  vertical-align: top;
}
.beauty .nomalTB td {
  padding: 15px 10px;
  vertical-align: top;
}
.beauty .hiroku th {
  width: 40% !important;
}
.beauty .nomalTB tr:nth-child(odd) td, .beauty .nomalTB tr:nth-child(odd) th {
  background-color: #f4f4f4;
}
.beauty .noborderTB {
  width: 95%;
  border-collapse: collapse;
  empty-cells: show;
  margin-left: auto;
  margin-right: auto;
}
.beauty .noborderTB th {
  width: 20%;
  padding: 5px;
  text-align: left;
  font-weight: normal;
  vertical-align: top;
  text-align: left;
}
.beauty .noborderTB td {
  padding: 5px;
  vertical-align: top;
  text-align: left;
}

/*batsumouyokusi
-----------------------------------------------------*/
.batsumouyokusi h2 {
  margin-top: 0;
  font-weight: bold;
}
.batsumouyokusi-box {
  margin-bottom: 5rem;
}
.batsumouyokusi .caution {
  color: #174A79;
}
.batsumouyokusi .arrow::after {
  content: none;
}
@media (max-width: 782px) {
  .batsumouyokusi .wp-block-columns {
    display: block;
  }
  .batsumouyokusi .wp-block-column + .wp-block-column {
    margin-bottom: 4rem;
  }
  .batsumouyokusi .wp-block-column:nth-child(2n) {
    margin-left: 0;
  }
}

.products-box {
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  .products-box {
    padding: 3rem 2rem;
    margin-bottom: 3rem;
  }
}

.video-container {
  aspect-ratio: 16/9;
}
.video-container iframe {
  width: 100%;
  height: 100%;
}

.slider-box {
  position: relative;
}

.slider .slick-slide {
  max-width: 960px;
  max-height: 430px;
  height: auto;
  width: 100vw;
  margin: 0 40px;
  position: relative;
  overflow: hidden;
}

.slider .slick-slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.slider .slick-arrow {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
  border: none;
  outline: none;
  font-size: 0;
  position: absolute;
  top: 180px;
  z-index: 1;
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
}
@media (max-width: 575px) {
  .slider .slick-arrow {
    display: none !important;
  }
}

.slider .slick-arrow::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border: 1px solid #09000d;
  border-width: 3px 3px 0 0;
  position: absolute;
  top: 24px;
  transform: rotate(45deg);
}

.slider .slick-next {
  right: 0;
}

.slider .slick-prev {
  left: 0;
}

.slider .slick-next::before {
  left: 20px;
}

.slider .slick-prev::before {
  border-width: 0 0 3px 3px;
  right: 22px;
}

.dots .slick-dots {
  text-align: center;
}

.dots .slick-dots li {
  display: inline-block;
}

.dots .slick-dots button {
  display: block;
  width: 10px;
  height: 10px;
  margin: 6px;
  font-size: 0;
  padding: 0;
  border: 0;
  outline: none;
  cursor: pointer;
  background: #b6d0db;
  border-radius: 50%;
}

.dots .slick-dots .slick-active button {
  background: #78929a;
}

.slick-dots li.slick-active button:before,
.slick-dots li button:before,
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 0;
}

.table-box {
  overflow-x: auto;
}

.kaizen th {
  min-width: 150px;
  text-align: left;
}

.login-box p + p {
  margin-top: 1rem;
}
.login-box a {
  color: #174A79;
}
.login-box a:hover {
  color: #174A79;
}
.login-box a:visited {
  color: #174A79;
}
.login-item {
  margin-top: 2rem;
}

.ribiyou-img {
  display: flex !important;
  justify-content: center;
}

/*process*/
.process {
  padding-top: 10rem;
}
@media (max-width: 767px) {
  .process {
    padding-top: 8rem;
  }
}
@media (max-width: 575px) {
  .process {
    padding-top: 6rem;
  }
}
.process p {
  color: #333;
}
.process .color-red {
  color: #FF0000;
}
.process p + p {
  margin-top: 2rem;
}
.process-img {
  text-align: center;
  background: #F5F5F5;
  padding: 5.5rem 5rem;
  margin: 4rem auto 5rem auto;
}
@media (max-width: 767px) {
  .process-img {
    padding: 3.5rem 2rem;
    margin: 3rem auto;
  }
}
.process-img p {
  color: #333;
  margin-bottom: 2rem;
}

/*counseling*/
.counseling {
  text-align: center;
  padding: 9rem 0 6rem 0;
}
@media (max-width: 767px) {
  .counseling {
    padding: 8rem 0 6rem 0;
  }
}
@media (max-width: 575px) {
  .counseling {
    padding: 6rem 0 4rem 0;
  }
}
.counseling p {
  font-size: 2.4rem;
  font-weight: bold;
  color: #FF0000;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .counseling p {
    font-size: 2rem;
  }
}
@media (max-width: 575px) {
  .counseling p {
    font-size: 1.8rem;
  }
}

.counseling-box {
  padding: 4.5rem;
  border: 4px solid #C2DFF9;
}
@media (max-width: 767px) {
  .counseling-box {
    padding: 3rem;
  }
}
@media (max-width: 575px) {
  .counseling-box {
    padding: 2.5rem;
  }
}
.counseling-box h4 {
  font-size: 3rem;
  color: #0053A5;
  margin-bottom: 1rem;
  margin-top: 0;
  padding: 0;
  border-bottom: 0;
}
@media (max-width: 767px) {
  .counseling-box h4 {
    font-size: 2.4rem;
  }
}
@media (max-width: 575px) {
  .counseling-box h4 {
    font-size: 2rem;
  }
}
.counseling-box p {
  line-height: 2;
}

@media (min-width: 768px) {
  .md-br {
    display: none;
  }
}

/*h*/
h2.h2-blue01 {
  position: relative;
  text-align: center;
  font-size: 4rem;
  line-height: 1.2;
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  h2.h2-blue01 {
    font-size: 3rem;
    margin-bottom: 6rem;
  }
}
@media (max-width: 575px) {
  h2.h2-blue01 {
    font-size: 2.6rem;
  }
}
h2.h2-blue01::before {
  background-color: #1375CF;
  bottom: -30px;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 70px;
}
h2.h2-blue01 span {
  font-size: 2.2rem;
  color: #1375CF;
}
@media (max-width: 767px) {
  h2.h2-blue01 span {
    font-size: 2rem;
  }
}
@media (max-width: 575px) {
  h2.h2-blue01 span {
    font-size: 1.8rem;
  }
}

h2.h2-blue02 {
  position: relative;
  text-align: center;
  font-size: 4rem;
  line-height: 1.6;
  margin-bottom: 9rem;
}
@media (max-width: 767px) {
  h2.h2-blue02 {
    font-size: 3rem;
    margin-bottom: 6rem;
  }
}
@media (max-width: 575px) {
  h2.h2-blue02 {
    font-size: 2.6rem;
  }
}
h2.h2-blue02::before {
  background-color: #1375CF;
  bottom: -30px;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 70px;
}

h2.h2-blue03 {
  position: relative;
  text-align: center;
  font-size: 4rem;
  line-height: 1;
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  h2.h2-blue03 {
    font-size: 3rem;
  }
}
@media (max-width: 575px) {
  h2.h2-blue03 {
    font-size: 2.6rem;
  }
}
h2.h2-blue03::before {
  background-color: #1375CF;
  bottom: -30px;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 70px;
}
h2.h2-blue03 span {
  font-size: 2.2rem;
  color: #1375CF;
}
@media (max-width: 575px) {
  h2.h2-blue03 span {
    font-size: 1.8rem;
  }
}

h2.h2-line {
  margin: 6rem 0 3rem 0;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.4;
  padding: 0 2rem;
  border-left: 6px solid #1375CE;
  color: #174A79;
}
@media (max-width: 575px) {
  h2.h2-line {
    font-size: 2.2rem;
  }
}

h3.h3-blue02 {
  position: relative;
  text-align: center;
  font-size: 3rem;
  line-height: 1.6;
  margin-bottom: 7rem;
  color: #1375CF;
}
@media (max-width: 575px) {
  h3.h3-blue02 {
    font-size: 2.6rem;
  }
}
h3.h3-blue02::before {
  background-color: #1375CF;
  bottom: -20px;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 70px;
}

h3.h3-bgblue {
  background: #1BB3B8;
  background: linear-gradient(90deg, rgb(27, 179, 184), rgb(0, 163, 215));
  border-radius: 2px;
  color: #FFF;
  font-size: 2.4rem;
  padding: 0.8rem 2.5rem;
  margin: 7rem 0 4rem 0;
}
@media (max-width: 767px) {
  h3.h3-bgblue {
    font-size: 2.2rem;
    margin: 6rem 0 2rem 0;
  }
}
@media (max-width: 575px) {
  h3.h3-bgblue {
    font-size: 2rem;
  }
}

h3.h3-grada {
  position: relative;
  font-size: 2.6rem;
  color: #002F5B;
  line-height: 1.6;
  margin: 0 0 3rem 0;
  padding-bottom: 1rem;
  border-bottom: 3px solid #D4DFE4;
  border-left: 0;
  padding-bottom: 1rem;
}
@media (max-width: 575px) {
  h3.h3-grada {
    font-size: 2rem;
  }
}
h3.h3-grada::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -3px;
  width: 12rem;
  border-bottom: 3px solid #1972D8;
  -o-border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image-slice: 1;
}

h4.h4-grada {
  position: relative;
  font-size: 2.3rem;
  color: #002F5B;
  line-height: 1.6;
  margin: 0 0 3rem 0;
  padding-bottom: 1rem;
  border-bottom: 3px solid #D4DFE4;
  border-left: 0;
  padding-bottom: 1rem;
}
@media (max-width: 575px) {
  h4.h4-grada {
    font-size: 2.2rem;
  }
}
h4.h4-grada::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -3px;
  width: 12rem;
  border-bottom: 3px solid #1972D8;
  -o-border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image: linear-gradient(to right, #1972D8 0%, #2ACF88 100%);
  border-image-slice: 1;
}

.sec01 {
  padding: 10rem 0;
}
@media (max-width: 767px) {
  .sec01 {
    padding: 8rem 0;
  }
}
@media (max-width: 575px) {
  .sec01 {
    padding: 6rem 0;
  }
}

.bg-sky {
  background: #F1F8F9;
}

.bg-sky-half {
  background: #F1F8F9;
  background: linear-gradient(180deg, #F1F8F9 0%, #F1F8F9 25%, #FFF 25%, #FFF 100%);
}

.bg-diagonal {
  background: url(../images/hairdressers/bg-img03.jpg);
  background-repeat: no-repeat;
  background-position: center;
  padding: 10rem 2rem;
}
@media (max-width: 767px) {
  .bg-diagonal {
    padding: 4rem 0;
  }
}

/*ul*/
.ul-check01 {
  font-size: 2.6rem;
  font-weight: bold;
  width: 50%;
  margin: 0 auto 10rem auto;
}
@media (max-width: 1199px) {
  .ul-check01 {
    font-size: 2.2rem;
    width: 70%;
  }
}
@media (max-width: 767px) {
  .ul-check01 {
    width: 100%;
    margin-left: 2rem;
    margin-bottom: 6rem;
    font-size: 2.6rem;
  }
}
@media (max-width: 575px) {
  .ul-check01 {
    font-size: 1.8rem;
    margin-left: 0;
    margin-bottom: 4rem;
  }
}
.ul-check01 li {
  background-image: url(../images/hairdressers/icon-check.png);
  background-position: left;
  background-position-y: 7px;
  background-repeat: no-repeat;
  background-size: auto 30px;
  padding-left: 4.5rem;
}
@media (max-width: 1199px) {
  .ul-check01 li {
    background-size: auto 25px;
    padding-left: 4rem;
  }
}
@media (max-width: 767px) {
  .ul-check01 li {
    background-size: auto 30px;
    padding-left: 4.5rem;
  }
}
@media (max-width: 575px) {
  .ul-check01 li {
    background-position-y: 6px;
    background-size: auto 20px;
    padding-left: 3rem;
  }
}
.ul-check01 li + li {
  margin-top: 3rem;
}
@media (max-width: 1199px) {
  .ul-check01 li + li {
    margin-top: 2rem;
  }
}
@media (max-width: 767px) {
  .ul-check01 li + li {
    margin-top: 1.5rem;
  }
}

.ul-check02 {
  font-size: 1.8rem;
}
@media (max-width: 575px) {
  .ul-check02 {
    font-size: 1.6rem;
  }
}
.ul-check02 li {
  background-image: url(../images/hairdressers/icon-check.png);
  background-position: left;
  background-position-y: 5px;
  background-repeat: no-repeat;
  background-size: auto 20px;
  padding-left: 3rem;
}
@media (max-width: 575px) {
  .ul-check02 li {
    background-size: auto 18px;
  }
}
.ul-check02 li + li {
  margin-top: 0.5rem;
}

ul.list-circle li {
  padding-left: 2rem;
  text-indent: -2rem;
}
ul.list-circle li:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #1375D0;
  border-radius: 50%;
  vertical-align: middle;
  margin-right: 1rem;
}
ul.list-circle li + li {
  margin-top: 0.5rem;
}

/*flex*/
.flex-box01 {
  display: flex;
  gap: 2rem 6rem;
}
@media (max-width: 767px) {
  .flex-box01 {
    gap: 2rem;
  }
}
@media (max-width: 575px) {
  .flex-box01 {
    flex-wrap: wrap;
  }
}
.flex-box01 .col01 {
  width: 44%;
}
@media (max-width: 575px) {
  .flex-box01 .col01 {
    width: 100%;
  }
}
.flex-box01 .col02 {
  width: 50%;
}
@media (max-width: 575px) {
  .flex-box01 .col02 {
    width: 100%;
  }
}
.flex-box01 .col02 p strong {
  font-weight: bold;
  color: #F6235E;
}

.flex-box02 {
  display: flex;
  gap: 2rem 5rem;
}
@media (max-width: 767px) {
  .flex-box02 {
    flex-wrap: wrap;
  }
}
.flex-box02 .col01 {
  width: 50%;
  padding-left: 2rem;
}
@media (max-width: 767px) {
  .flex-box02 .col01 {
    width: 100%;
    padding-left: 0;
  }
}
.flex-box02 .col02 {
  width: 44%;
}
@media (max-width: 767px) {
  .flex-box02 .col02 {
    width: 100%;
  }
}

.flex-box03 {
  display: flex;
  gap: 2.5rem;
}
@media (max-width: 767px) {
  .flex-box03 {
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
  }
}
.flex-box03 .col01 {
  max-width: 260px;
  width: 100%;
}
.flex-box03 .col02 {
  width: 100%;
}

.flex-box04 {
  display: flex;
  gap: 3rem 4rem;
  justify-content: center;
  flex-wrap: wrap;
}

.flex-box05 {
  display: flex;
  gap: 3rem 3.5rem;
  justify-content: center;
}
@media (max-width: 767px) {
  .flex-box05 {
    gap: 2rem;
  }
}
@media (max-width: 575px) {
  .flex-box05 {
    flex-wrap: wrap;
  }
}

/*hairdressers
-----------------------------------------------------*/
.hairdressers .btn-1 {
  margin-top: 5rem;
}

.topimg {
  width: 100%;
  margin: 0 auto;
  padding-top: 6rem;
}
@media (max-width: 767px) {
  .topimg {
    padding-top: 2rem;
  }
}

.trouble-sec {
  background: url(../images/hairdressers/bg-img01.png);
  background-repeat: no-repeat;
  background-size: 80%;
  background-position: -28rem 0;
  position: relative;
  z-index: -1;
}
@media (max-width: 1023px) {
  .trouble-sec {
    background-size: cover;
    background-position: -18rem 10rem;
  }
}
@media (max-width: 1023px) {
  .trouble-sec .bg-img-box {
    display: flex;
    gap: 4rem;
    padding: 4rem 2rem 0 2rem;
    justify-content: center;
  }
}
.trouble-sec .bg-img01,
.trouble-sec .bg-img02 {
  position: absolute;
  width: 280px;
  z-index: -1;
}
@media (max-width: 1199px) {
  .trouble-sec .bg-img01,
  .trouble-sec .bg-img02 {
    width: 200px;
  }
}
@media (max-width: 1023px) {
  .trouble-sec .bg-img01,
  .trouble-sec .bg-img02 {
    width: 180px;
  }
}
.trouble-sec .bg-img01 {
  top: 16rem;
  right: 4rem;
}
@media (max-width: 1023px) {
  .trouble-sec .bg-img01 {
    position: static;
  }
}
.trouble-sec .bg-img02 {
  bottom: 20rem;
  left: 4rem;
}
@media (max-width: 1199px) {
  .trouble-sec .bg-img02 {
    left: auto;
    right: 12rem;
    bottom: 30rem;
  }
}
@media (max-width: 1023px) {
  .trouble-sec .bg-img02 {
    position: static;
  }
}

.trouble h2 {
  font-size: 4.5rem;
  color: #174A79;
  text-align: center;
  letter-spacing: 5px;
  margin-bottom: 10rem;
}
@media (max-width: 767px) {
  .trouble h2 {
    margin-bottom: 6rem;
  }
}
@media (max-width: 575px) {
  .trouble h2 {
    margin-bottom: 4rem;
    font-size: 3rem;
  }
}
.trouble h2 strong {
  font-size: 5.5rem;
}
@media (max-width: 575px) {
  .trouble h2 strong {
    font-size: 3.5rem;
  }
}
.trouble h2 strong span {
  background: linear-gradient(transparent 70%, #F0FF68 30%);
  background-position-y: -5px;
}
.trouble p {
  text-align: center;
}

.box-w01 {
  background: #FFF;
  padding: 6.5rem;
  border-radius: 10px;
}
@media (max-width: 767px) {
  .box-w01 {
    padding: 3.5rem;
  }
}
.box-w01 p {
  text-align: center;
}

.box-w02 {
  background: #FFF;
  padding: 4rem;
  border: 1px solid #1375CE;
  margin-top: 7rem;
}
@media (max-width: 767px) {
  .box-w02 {
    padding: 3rem;
  }
}
.box-w02 p {
  text-align: center;
}

/*about-program
-----------------------------------------------------*/
@media (max-width: 575px) {
  .about-program .btn-1 {
    text-align: center;
  }
}

/*method
-----------------------------------------------------*/
.method p {
  text-align: center;
}
.method-box {
  position: relative;
  padding: 5rem 4rem;
  border: 4px solid #C2DFF9;
  box-sizing: border-box;
  margin-top: 3rem;
}
@media (max-width: 767px) {
  .method-box {
    margin-top: 2rem;
  }
}
.method-box:first-of-type {
  margin-top: 6rem;
}
@media (max-width: 767px) {
  .method-box:first-of-type {
    margin-top: 4rem;
  }
}
.method-box h3 {
  font-size: 3rem;
  color: #0053A5;
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .method-box h3 {
    font-size: 2.4rem;
    margin-bottom: 1rem;
  }
}
@media (max-width: 575px) {
  .method-box h3 {
    font-size: 2rem;
  }
}
.method-num {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 11px;
  left: 24.5px;
}
.method-num .num {
  position: absolute;
  font-size: 3.5rem;
  width: 40px;
  text-align: center;
  z-index: 1;
  left: -23px;
  top: -24px;
  color: #FFF;
}
.method-num .triangle {
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 73px solid transparent;
  border-left: 48px solid transparent;
  border-bottom: 59px solid #00A3D7;
  border-top: 0;
  transform: rotate(321deg);
}

/*features
-----------------------------------------------------*/
.features h3 {
  margin-bottom: 5rem;
}
.features h4 {
  margin-bottom: 2rem;
}
.features-box {
  position: relative;
  background: #F1F8F9;
  width: calc(50% - 2rem);
  padding: 6rem 3.5rem 4rem 3.5rem;
  box-sizing: border-box;
}
@media (max-width: 575px) {
  .features-box {
    width: 100%;
    padding: 6rem 2.5rem 4rem 2.5rem;
  }
}
.features-box .point-num {
  background: #1294BE;
  position: absolute;
  width: 62px;
  height: 62px;
  color: #FFF;
  display: flex;
  justify-content: center;
  text-align: center;
  flex-direction: column;
  line-height: 1;
  border-radius: 100px;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}
.features-box .point-num span {
  font-size: 1.2rem;
}
.features-box .point-num strong {
  font-size: 2.8rem;
  font-weight: 500;
}
.features-box p {
  text-align: left;
  line-height: 2;
}
.features-box p strong {
  color: #F6235E;
}

/*achieve
-----------------------------------------------------*/
.achieve .h2-blue02 {
  margin-bottom: 9rem;
}
.achieve .btn-1 {
  text-align: center;
  margin-top: 6rem;
}
.achieve-box {
  width: calc(33.3333333333% - 1rem);
  box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.05);
  border-radius: 0 0 10px 10px;
  background: #FFF;
}
@media (max-width: 575px) {
  .achieve-box {
    width: 100%;
  }
}
.achieve-box a {
  text-decoration: none;
  color: #333;
}
.achieve-box h3 {
  font-size: 2.2rem;
  color: #174A79;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #D4DFE4;
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
  width: 100%;
}
@media (max-width: 767px) {
  .achieve-box h3 {
    flex-wrap: wrap;
    font-size: 2rem;
    margin-right: 2rem;
  }
}
.achieve-box h3 span {
  color: #1375CF;
  font-size: 1.6rem;
  margin-left: 2rem;
}
@media (max-width: 767px) {
  .achieve-box h3 span {
    margin-left: 0;
  }
}
@media (max-width: 575px) {
  .achieve-box h3 span {
    margin-left: 2rem;
  }
}
.achieve-box p {
  line-height: 1.8;
}
.achieve-box .pre {
  font-size: 1.2rem;
  color: #FFF;
  background: #F24E7C;
  border-radius: 3px;
  padding: 0.3rem 1.5rem;
  margin-top: 2rem;
  margin-left: auto;
  display: inline-block;
}
.achieve-box-text {
  padding: 2rem 2.5rem;
  display: flex;
  flex-wrap: wrap;
}

/*voice
-----------------------------------------------------*/
.achieve-voice {
  padding-top: 0;
}
@media (max-width: 575px) {
  .achieve-voice {
    padding-top: 0;
  }
}
.achieve-voice-box {
  display: flex;
  align-items: center;
  gap: 3.5rem;
  margin-top: 3rem;
}
@media (max-width: 575px) {
  .achieve-voice-box {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.achieve-voice-box:first-of-type {
  margin-top: 0;
}
.achieve-voice-box-img {
  max-width: 134px;
  height: auto;
  width: 100%;
}
.achieve-voice-box-text {
  position: relative;
  background: #FFFFFF;
  padding: 2.8rem 3rem;
  border: 1px solid #70A6D6;
  font-size: 1.4rem;
  width: 100%;
}
@media (max-width: 575px) {
  .achieve-voice-box-text {
    order: -1;
  }
}
.achieve-voice-box-text:after, .achieve-voice-box-text:before {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  right: 100%;
  top: 50%;
}
@media (max-width: 575px) {
  .achieve-voice-box-text:after, .achieve-voice-box-text:before {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    right: 0;
  }
}
.achieve-voice-box-text:after {
  border-color: rgba(255, 255, 255, 0);
  border-top-width: 10px;
  border-bottom-width: 10px;
  border-left-width: 20px;
  border-right-width: 20px;
  margin-top: -10px;
  border-right-color: #FFFFFF;
}
@media (max-width: 575px) {
  .achieve-voice-box-text:after {
    border-color: rgba(255, 255, 255, 0);
    border-top-color: #FFF;
    border-width: 20px;
    margin-left: -20px;
    margin-top: 0;
  }
}
.achieve-voice-box-text:before {
  border-color: rgba(112, 166, 214, 0);
  border-top-width: 11px;
  border-bottom-width: 11px;
  border-left-width: 22px;
  border-right-width: 22px;
  margin-top: -11px;
  margin-right: 1px;
  border-right-color: #70A6D6;
}
@media (max-width: 575px) {
  .achieve-voice-box-text:before {
    border-color: rgba(112, 166, 214, 0);
    border-top-color: #70A6D6;
    border-width: 21px;
    margin-left: -21px;
    margin-right: 0;
    margin-top: 0;
  }
}
.achieve-voice-box-text dt {
  font-weight: bold;
  font-size: 1.8rem;
}
.achieve-voice-sub {
  padding-top: 1rem;
}
.achieve-voice-img {
  display: flex;
  justify-content: center;
  padding: 2rem 0;
}
.achieve-voice-link {
  text-align: right;
  font-size: 1.6rem;
}
@media (max-width: 575px) {
  .achieve-voice-link {
    text-align: left;
  }
}
.achieve-voice-link a {
  color: #174A79;
  text-decoration: underline;
}

.mailmaga-area {
  background: #fff;
  padding: 8rem 2rem;
  box-sizing: border-box;
}
.mailmaga-area .btn-3 a {
  font-size: 1.8rem;
  padding: 3rem 3rem 3rem 4rem;
  line-height: 1.5;
  border-radius: 100px;
}
@media (max-width: 767px) {
  .mailmaga-area {
    padding: 4rem 2rem;
  }
}

/*briefing
-----------------------------------------------------*/
.briefing {
  padding-bottom: 0;
}
.briefing .h2-blue02 {
  margin-bottom: 9rem;
}
@media (max-width: 767px) {
  .briefing .h2-blue02 {
    margin-bottom: 6rem;
  }
}
.briefing .h3-bgblue {
  margin-bottom: 0;
}
.briefing .appbox {
  background: #FFF;
  padding: 6rem;
}
@media (max-width: 767px) {
  .briefing .appbox {
    padding: 4rem 2rem;
  }
}
.briefing .appbox .btn-3 {
  margin-top: 2rem;
}
.briefing .mailmaga {
  margin-top: 13rem;
}
@media (max-width: 767px) {
  .briefing .mailmaga {
    margin-top: 8rem;
  }
}
@media (max-width: 575px) {
  .briefing .mailmaga {
    margin-top: 6rem;
  }
}
.briefing .mailmaga a:hover {
  opacity: 0.9;
}

/*introduction
-----------------------------------------------------*/
.introduction-box {
  padding: 6rem 4rem;
  border: 1px solid #1375CE;
}
@media (max-width: 575px) {
  .introduction-box {
    padding: 3rem 2rem;
    margin-bottom: 3rem;
  }
}
.introduction-box .br-md {
  display: none;
}
@media (max-width: 767px) {
  .introduction-box .br-md {
    display: block;
  }
}
.introduction-box h3 {
  font-size: 2.2rem;
  color: #184979;
  line-height: 1.4;
  padding: 1rem 2rem;
  border-left: 4px solid #1375D0;
  border-bottom: 0;
  margin: 0 0 4rem 0;
}
@media (max-width: 767px) {
  .introduction-box h3 {
    margin: 0 0 3rem 0;
  }
}
@media (max-width: 575px) {
  .introduction-box h3 {
    font-size: 1.8rem;
  }
}
.introduction-box h3::after {
  border: none;
}
.introduction-box h3 .position {
  display: block;
  color: #1374D0;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}
@media (max-width: 575px) {
  .introduction-box h3 .position {
    font-size: 1.6rem;
  }
}
.introduction-box__flex {
  display: flex;
  gap: 2rem;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .introduction-box__flex {
    flex-wrap: wrap;
  }
}
.introduction-box__flex strong {
  font-size: 2.2rem;
  color: #184979;
}
@media (max-width: 575px) {
  .introduction-box__flex strong {
    font-size: 1.8rem;
  }
}
.introduction-box__flex-l {
  width: 32%;
}
@media (max-width: 767px) {
  .introduction-box__flex-l {
    width: 100%;
  }
}
.introduction-box__flex-l img {
  max-width: 307px;
  width: 100%;
  height: auto;
}
.introduction-box__flex-r {
  width: 68%;
}
@media (max-width: 767px) {
  .introduction-box__flex-r {
    width: 100%;
  }
}
.introduction-box__flex .btn-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  margin-top: 3rem;
}
.introduction-box__flex .btn-flex .btn-1 {
  margin: 0;
}

.history {
  margin-bottom: 4rem;
}
.history li {
  display: flex;
  flex-wrap: wrap;
  color: #002F5B;
  gap: 0 1.5rem;
  line-height: 1.6;
}
.history li span {
  display: block;
  padding: 2rem 0.5rem;
}
@media (max-width: 575px) {
  .history li span {
    padding: 1.5rem 0.5rem;
  }
}
.history li span:first-of-type {
  flex-basis: 90px;
  font-weight: bold;
  border-bottom: 1px solid #1374D0;
}
.history li span:nth-of-type(2) {
  flex-basis: 350px;
  flex-grow: 1;
  border-bottom: 1px solid #D4DFE4;
}

/*page-activity
-----------------------------------------------------*/
.activity h2.h2-blue03 {
  border-left: none;
}

.activity-list {
  padding-top: 8rem;
  padding-bottom: 12rem;
}
@media (max-width: 767px) {
  .activity-list {
    padding-bottom: 8rem;
  }
}
@media (max-width: 575px) {
  .activity-list {
    padding-bottom: 6rem;
  }
}
.activity-list-box {
  padding: 4.5rem;
  border: 4px solid #C2DFF9;
  margin-top: 3rem;
}
@media (max-width: 767px) {
  .activity-list-box {
    padding: 3rem;
  }
}
@media (max-width: 575px) {
  .activity-list-box {
    padding: 2.5rem;
  }
}
.activity-list-box:first-of-type {
  margin-top: 0;
}
.activity-list-box h2 {
  font-size: 3rem;
  color: #0053A5;
  margin-bottom: 1rem;
}
@media (max-width: 767px) {
  .activity-list-box h2 {
    font-size: 2.4rem;
  }
}
@media (max-width: 575px) {
  .activity-list-box h2 {
    font-size: 2rem;
  }
}
.activity-list-box p {
  line-height: 2;
}

/*page-achievements
-----------------------------------------------------*/
.achievements-box {
  margin-top: 4rem;
  padding: 5rem;
  border: 1px solid #1375CE;
}
.achievements-box:first-of-type {
  margin-top: 0;
}
.achievements-box-noflex {
  width: 100%;
  margin-bottom: 4rem;
}
.achievements-box-noflex h2 {
  font-size: 2.6rem;
  color: #002F5B;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #D4DFE4;
  padding: 0.5rem 0;
  margin-bottom: 2rem;
}
@media (max-width: 575px) {
  .achievements-box-noflex h2 {
    font-size: 2.2rem;
  }
}
.achievements-box-noflex ul.shop-info li {
  font-size: 1.8rem;
  display: flex;
  align-items: center;
}
@media (max-width: 575px) {
  .achievements-box-noflex ul.shop-info li {
    font-size: 1.6rem;
  }
}
.achievements-box-noflex ul.shop-info li + li {
  margin-top: 1rem;
}
.achievements-box-noflex ul.shop-info span {
  font-size: 1.2rem;
  color: #FFF;
  background: #F24E7C;
  border-radius: 3px;
  padding: 0.3rem 1rem;
  display: inline-block;
  width: 65px;
  text-align: center;
  box-sizing: border-box;
  margin-right: 2rem;
}
@media (max-width: 575px) {
  .achievements-box-noflex ul.shop-info span {
    margin-right: 1rem;
  }
}
@media (max-width: 767px) {
  .achievements-box {
    padding: 4rem 3rem;
  }
}
.achievements-box-flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  .achievements-box-flex {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.achievements-box-flex-img img {
  display: block;
  max-width: 290px;
  margin-right: 5rem;
}
.achievements-box-flex-text {
  width: 100%;
}
@media (max-width: 767px) {
  .achievements-box-flex-text {
    order: -1;
  }
}
.achievements-box-flex-text h2 {
  font-size: 2.6rem;
  color: #002F5B;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #D4DFE4;
  padding: 0.5rem 0;
  margin-bottom: 2rem;
  width: 100%;
}
@media (max-width: 575px) {
  .achievements-box-flex-text h2 {
    font-size: 2.2rem;
  }
}
.achievements-box-flex-text ul.shop-info li {
  font-size: 1.8rem;
  display: flex;
  align-items: center;
}
@media (max-width: 575px) {
  .achievements-box-flex-text ul.shop-info li {
    font-size: 1.6rem;
  }
}
.achievements-box-flex-text ul.shop-info li + li {
  margin-top: 1rem;
}
.achievements-box-flex-text ul.shop-info span {
  font-size: 1.2rem;
  color: #FFF;
  background: #F24E7C;
  border-radius: 3px;
  padding: 0.3rem 1rem;
  display: inline-block;
  width: 65px;
  text-align: center;
  box-sizing: border-box;
  margin-right: 2rem;
}
@media (max-width: 575px) {
  .achievements-box-flex-text ul.shop-info span {
    margin-right: 1rem;
  }
}
.achievements-box-img {
  display: flex;
  justify-content: center;
  gap: 3rem;
  margin-top: 4rem;
}
@media (max-width: 575px) {
  .achievements-box-img {
    flex-wrap: wrap;
  }
}
.achievements-box-img .col {
  width: calc(50% - 1.5rem);
}
@media (max-width: 575px) {
  .achievements-box-img .col {
    width: 100%;
  }
}

.navigation {
  display: flex;
  justify-content: center;
  margin-top: 6rem;
}

.navigation a {
  padding: 6px 12px;
  border: 1px solid #3EADB0;
  background: #fff;
  color: #3EADB0;
}

.navigation a:hover, .navigation a:active {
  padding: 6px 12px;
  border: 1px solid #3EADB0;
  background: #3EADB0;
  color: #fff;
}

.navigation .current {
  padding: 6px 12px;
  border: 1px solid #3EADB0;
  background: #3EADB0;
  color: #fff;
}

.top-movie {
  margin: 12rem auto 0 auto;
  max-width: 860px;
}
@media (max-width: 575px) {
  .top-movie {
    margin: 8rem auto 0 auto;
  }
}

.youtube {
  width: 100%;
  aspect-ratio: 16/9;
}
.youtube .h2-headline02 .ja {
  color: #174A79;
  font-size: 2.9rem;
}
@media (max-width: 767px) {
  .youtube .h2-headline02 .ja {
    padding-right: 1rem;
    padding-left: 1rem;
    font-size: 2.5rem;
  }
}
.youtube .h2-headline02 .deco::before {
  height: 1px;
  width: 40px;
  left: 50%;
  margin-left: -20px;
  background-color: #1375cf;
}

.youtube iframe {
  width: 100%;
  height: 100%;
}

.clm-2 {
  display: flex;
}
@media (max-width: 1023px) {
  .clm-2 {
    display: block;
  }
}

.faq-container {
  width: 100%;
}

.faq-container .en {
  font-weight: 600;
}

.faq-list {
  border: solid 1px #d4e5ef;
  border-radius: 5px;
}

.faq-container .faq-list:not(:first-child) {
  margin-top: 2.8rem;
}

.faq-container .faq-title {
  background: #fff;
  cursor: pointer;
  font-size: 1.8rem;
  padding: 2rem 6rem 2rem 2rem;
  position: relative;
  box-sizing: border-box;
  font-weight: 700;
  color: #000;
  border-radius: 4px;
  display: flex;
  align-items: center;
}

.faq-container .faq-title:after {
  content: "";
  position: absolute;
  top: 44%;
  right: 20px;
  width: 8px;
  height: 8px;
  transform: translateY(-44%) rotate(-135deg);
  border-top: 3px solid #1294BE;
  border-left: 3px solid #1294BE;
}

.faq-container .faq-title.open {
  border-radius: 4px 4px 0 0;
}

.faq-container .faq-text {
  border-top: 1px solid #d5e4f4;
  display: none;
  padding: 2rem;
  box-sizing: border-box;
  background: #fff;
  border-radius: 0 0 4px 4px;
}

.faq-container .faq-text p {
  display: flex;
}

.faq-container .faq-q {
  display: inline-block;
  width: 100%;
  max-width: 38px;
  height: 38px;
  background: #1294BE;
  border-radius: 50px;
  font-size: 2.2rem;
  text-align: center;
  line-height: 1.6;
  color: #fff;
  margin-right: 2rem;
}

.faq-container .faq-a {
  display: inline-block;
  width: 100%;
  max-width: 38px;
  height: 38px;
  background: #f24e7c;
  border-radius: 50px;
  font-size: 2.2rem;
  text-align: center;
  line-height: 1.6;
  color: #fff;
  margin-right: 2rem;
}

.request-sec {
  margin: 0 auto;
  padding: 3rem;
  width: 700px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .request-sec {
    width: 100%;
  }
}
.request-sec .btn-3 a {
  font-size: 1.8rem;
  padding: 2rem 3rem 2rem 4rem;
  line-height: 1.5;
  border-radius: 100px;
  width: 100%;
}
@media (max-width: 767px) {
  .request-sec .btn-3 a {
    font-size: 1.4rem;
  }
}
.request-sec .btn-3 .arrow {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  margin-left: 1.5rem;
}
.request-sec .btn-3 .arrow::before {
  content: none;
}
.request-sec .btn-3 .arrow:after {
  content: "";
  position: static;
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: none;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: rotate(-45deg);
  margin-right: 1rem;
  margin-bottom: 0.2rem;
  background: none;
}
.request-sec .btn-4 {
  margin-top: 3rem;
}
.request-sec .btn-4 a {
  font-size: 1.8rem;
  padding: 2rem 3rem 2rem 4rem;
  line-height: 1.5;
  border-radius: 100px;
  width: 100%;
  font-weight: bold;
}
@media (max-width: 767px) {
  .request-sec .btn-4 a {
    font-size: 1.4rem;
  }
}
.request-sec .btn-4 .arrow {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
  position: relative;
  margin-left: 1.5rem;
}
.request-sec .btn-4 .arrow::before {
  content: none;
}
.request-sec .btn-4 .arrow:after {
  content: "";
  position: static;
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: none;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: rotate(-45deg);
  margin-right: 1rem;
  margin-bottom: 0.2rem;
  background: none;
}
.request-sec a {
  box-sizing: border-box;
}/*# sourceMappingURL=style.css.map */