/* =============================================================
    Page
============================================================= */
/**
 * #Font
 */
.u-font-ja {
  font-family: var(--font-ja) !important;
}

.u-font-en {
  font-family: var(--font-en) !important;
}

/**
* #Text
*/
/* Color */
.u-text-main {
  color: var(--color-main) !important;
}

.u-text-primary {
  color: var(--color-primary) !important;
}

.u-text-light {
  color: var(--color-light) !important;
}

.u-text-dark {
  color: var(--color-dark) !important;
}

.u-text-warning {
  color: var(--color-warning) !important;
}

.u-text-danger {
  color: var(--color-danger) !important;
}

.u-text-white {
  color: var(--color-white) !important;
}

.u-text-black {
  color: var(--color-black) !important;
}

.u-text-blue {
  color: var(--color-blue) !important;
}

.u-text-blue-light {
  color: var(--color-blue-light) !important;
}

.u-text-red {
  color: var(--color-red) !important;
}

.u-text-yellow {
  color: var(--color-yellow) !important;
}

.u-text-yellow-light {
  color: var(--color-yellow-light) !important;
}

.u-text-orange {
  color: var(--color-orange) !important;
}

.u-text-orange-light {
  color: var(--color-orange-light) !important;
}

.u-text-green {
  color: var(--color-green) !important;
}

.u-text-purple {
  color: var(--color-purple) !important;
}

.u-text-pink {
  color: var(--color-pink) !important;
}

.u-text-gray {
  color: var(--color-gray) !important;
}

.u-text-gray-light {
  color: var(--color-gray-light) !important;
}

.u-text-gray-middle {
  color: var(--color-gray-middle) !important;
}

.u-text-gray-dark {
  color: var(--color-gray-dark) !important;
}

/* Weight */
.u-text-bold {
  font-weight: 600;
}

/* small */
.u-text-small {
  font-size: 1.1rem;
}

/* Align */
.u-text-center {
  text-align: center;
}

@media screen and (min-width: 576px) {
  .u-text-sm-center {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .u-text-md-center {
    text-align: center;
  }
}

@media screen and (min-width: 992px) {
  .u-text-lg-center {
    text-align: center;
  }
}

@media screen and (min-width: 1200px) {
  .u-text-xl-center {
    text-align: center;
  }
}

@media screen and (min-width: 1400px) {
  .u-text-xxl-center {
    text-align: center;
  }
}

.u-text-left {
  text-align: left;
}

@media screen and (min-width: 576px) {
  .u-text-sm-left {
    text-align: left;
  }
}

@media screen and (min-width: 768px) {
  .u-text-md-left {
    text-align: left;
  }
}

@media screen and (min-width: 992px) {
  .u-text-lg-left {
    text-align: left;
  }
}

@media screen and (min-width: 1200px) {
  .u-text-xl-left {
    text-align: left;
  }
}

@media screen and (min-width: 1400px) {
  .u-text-xxl-left {
    text-align: left;
  }
}

.u-text-right {
  text-align: right;
}

@media screen and (min-width: 576px) {
  .u-text-sm-right {
    text-align: right;
  }
}

@media screen and (min-width: 768px) {
  .u-text-md-right {
    text-align: right;
  }
}

@media screen and (min-width: 992px) {
  .u-text-lg-right {
    text-align: right;
  }
}

@media screen and (min-width: 1200px) {
  .u-text-xl-right {
    text-align: right;
  }
}

@media screen and (min-width: 1400px) {
  .u-text-xxl-right {
    text-align: right;
  }
}

/**
* #Background Color
*/
.u-bg-main {
  background-color: var(--color-main) !important;
}

.u-bg-primary {
  background-color: var(--color-primary) !important;
}

.u-bg-light {
  background-color: var(--color-light) !important;
}

.u-bg-dark {
  background-color: var(--color-dark) !important;
}

.u-bg-warning {
  background-color: var(--color-warning) !important;
}

.u-bg-danger {
  background-color: var(--color-danger) !important;
}

.u-bg-white {
  background-color: var(--color-white) !important;
}

.u-bg-black {
  background-color: var(--color-black) !important;
}

.u-bg-blue {
  background-color: var(--color-blue) !important;
}

.u-bg-blue-light {
  background-color: var(--color-blue-light) !important;
}

.u-bg-red {
  background-color: var(--color-red) !important;
}

.u-bg-yellow {
  background-color: var(--color-yellow) !important;
}

.u-bg-yellow-light {
  background-color: var(--color-yellow-light) !important;
}

.u-bg-orange {
  background-color: var(--color-orange) !important;
}

.u-bg-orange-light {
  background-color: var(--color-orange-light) !important;
}

.u-bg-green {
  background-color: var(--color-green) !important;
}

.u-bg-purple {
  background-color: var(--color-purple) !important;
}

.u-bg-pink {
  background-color: var(--color-pink) !important;
}

.u-bg-gray-light {
  background-color: var(--color-gray-light) !important;
}

.u-bg-gray {
  background-color: var(--color-gray) !important;
}

.u-bg-gray-middle {
  background-color: var(--color-gray-middle) !important;
}

.u-bg-gray-dark {
  background-color: var(--color-gray-dark) !important;
}

/**
* #Hidden Responsive
*/
.u-hidden {
  display: none !important;
}

@media screen and (min-width: 576px) {
  .u-hidden-sm-up {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .u-hidden-md-up {
    display: none !important;
  }
}

@media screen and (min-width: 992px) {
  .u-hidden-lg-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .u-hidden-xl-up {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .u-hidden-xxl-up {
    display: none !important;
  }
}

@media screen and (max-width: 575px) {
  .u-hidden-sm-down {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .u-hidden-md-down {
    display: none !important;
  }
}

@media screen and (max-width: 991px) {
  .u-hidden-lg-down {
    display: none !important;
  }
}

@media screen and (max-width: 1199px) {
  .u-hidden-xl-down {
    display: none !important;
  }
}

@media screen and (max-width: 1399px) {
  .u-hidden-xxl-down {
    display: none !important;
  }
}

/**
* #Hidden Responsive
*/
/* law
------------------------------------------------------------- */
.p-law-content .c-page-title {
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
}
@media screen and (min-width: 768px) {
  .p-law-content .c-page-title {
    padding-top: 0.2rem;
    padding-bottom: 1.2rem;
  }
}
.p-law-content .c-page-subtitle {
  padding-bottom: 0.7rem;
  margin: 3.6rem 0 2rem;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  border-bottom: 1px solid var(--color-light);
}
.p-law-content .c-page-subtitle:first-of-type {
  margin-top: 5.7rem;
}
@media screen and (min-width: 768px) {
  .p-law-content .c-page-subtitle {
    margin: 3.5rem 0 1.5rem;
    line-height: 1.1;
  }
  .p-law-content .c-page-subtitle:first-of-type {
    margin-top: 3.5rem;
  }
}
.p-law-content .c-page-toptext {
  margin-top: 2.58rem;
}
@media screen and (min-width: 768px) {
  .p-law-content .c-page-toptext {
    margin-top: 4rem;
  }
}
.p-law-content .c-page-textcontent {
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: 0.02em;
}
.p-law-content .c-page-textlink {
  display: inline;
  cursor: pointer;
  text-decoration: underline;
}