html {
  height: 100%;
  font-size: 62.5%;
}

body {
  height: 100%;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Droid Sans", sans-serif;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #1A1A1A;
  overflow-wrap: anywhere;
  word-break: break-all;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

button {
  border: none;
}

input,
[type="checkbox"],
[type="radio"] {
  appearance: none;
}

img {
  max-width: 100%;
  vertical-align: middle;
}

a:hover {
  text-decoration: underline;
}

:root {
  --base: #1A1A1A;
  --hover: #DFF5FA;
  --disabled: #B3B3B3;
  --disabled-filter: invert(79%) sepia(12%) saturate(13%) hue-rotate(77deg) brightness(92%) contrast(82%);

  --primary: #077989;
  --primary-hover: #04575E;
  --primary-active: #013D42;
  --primary-filter: invert(31%) sepia(52%) saturate(5771%) hue-rotate(169deg) brightness(85%) contrast(94%);
  --secondary: #C6E8ED;
  --secondary-hover: #DFF5FA;
  --secondary-active: #BCE5EE;

  --inform: #1278D3;

  --white-filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(126deg) brightness(109%) contrast(101%);
  /* #FFFFFF */
  --red-filter: invert(12%) sepia(94%) saturate(6501%) hue-rotate(29deg) brightness(101%) contrast(110%);
  /* #D00000 */

  --zeb: #2C854B;
  /* 『ZEB』 */
  --nearly: #1278D3;
  /* Nearly ZEB */
  --ready: #3058BE;
  /* ZEB Ready */
  --oriented: #6052B4;
  /* ZEB Oriented */
  --use: #4D4D4D;

  --kuutyou: #BAE0E0;
  /* 空調 */
  --kanki: #ADD7E9;
  /* 換気 */
  --syoumei: #EDE5BE;
  /* 照明 */
  --kyuutou: #E9CDC7;
  /* 給湯 */
  --syoukouki: #C1BEE8;
  /* 昇降機 */
  --others: #CBCED3;
  /* その他 */
  --kojene: #CBD664;
  /* コジェネ */
  --saiene: #A4CC7E;
  /* 再エネ（オンサイト） */
  --saiene-off: #83C8B7;
  /* 再エネ（オフサイト） */
  --total: #666666;

  --scrollbar: 0;
  --headerHeight: 0;
  --footerHeight: 0;
}

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

.header {
  width: 100%;
  border-bottom: 1px solid var(--base);
  background-color: #FFF;
  z-index: 1;
}

.header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 72px;
  margin: 0 auto;
  padding: 0 30px;
}

.header__logo {
  display: flex;
  align-items: center;
  width: 180px;
}

@media screen and (max-width: 767px) {
  .header {
    position: fixed;
    top: 0;
  }

  .header__inner {
    height: 56px;
    padding: 0 8px;
  }

  .header__logo {
    width: 112px;
  }
}


.footer {
  width: 100%;
  border-top: 1px solid var(--base);
}

.footer__inner {
  padding: 16px 30px;
}

.footer__copyright small {
  font-size: 1.2rem;
}

@media screen and (max-width: 767px) {
  .footer__inner {
    padding: 16px;
  }
}


/* 1col full width */
.main__wrap {
  width: 100%;
}

.main__wrapInner {
  width: 100%;
  max-width: 1072px;
  margin: 0 auto;
  padding: 40px 32px;
}

@media screen and (max-width: 767px) {
  .main {
    margin-top: var(--headerHeight);
  }

  .main__wrapInner {
    padding: 40px 24px;
  }
}


/* 1col layout */
.l-1col .main {
  width: 100%;
  min-height: calc(100vh - var(--headerHeight) - var(--footerHeight))
}

.l-1col .main__contents {
  width: 100%;
  max-width: 864px;
  padding: 0 32px 40px;
  margin: 25px auto 0;
}

@media screen and (max-width: 767px) {
  .l-1col .main {
    margin-top: 0;
  }

  .l-1col .main__contents {
    margin-top: 75px;
    padding: 0 16px 40px;
  }
}


.breadcrumbs {
  margin-bottom: 24px;
}

.breadcrumbs ol {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.breadcrumbs__item {
  margin-right: 8px;
}

.breadcrumbs__item:nth-of-type(n+2) {
  padding-left: 15px;
  background: url(../../img/common/icon/icon_ang_right.svg) no-repeat left 2px;
  background-position: left 3px;
  background-size: 7px 14px;
}

@media screen and (max-width: 767px) {
  .breadcrumbs {
    margin-bottom: 16px;
    font-size: 1.2rem;
  }

  .breadcrumbs__item:nth-of-type(n+2) {
    background-size: 6px 11px;
    background-position-y: 3px;
  }
}


.heading .heading__ttl {
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .heading .heading__ttl {
    font-size: 2.4rem;
  }
}

.heading-page {
  margin-bottom: 24px;
}

.heading-section .heading__ttl {
  padding-bottom: 8px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  border-bottom: 1px solid #1A1A1A;
}

@media screen and (max-width: 767px) {
  .heading-section .heading__ttl {
    padding-bottom: 6px;
    font-size: 2rem;
  }
}


.heading-block .heading__ttl {
  padding-left: 8px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  border-left: 6px solid var(--primary);
}

@media screen and (max-width: 767px) {
  .heading-block .heading__ttl {
    font-size: 1.8rem;
  }
}


.section {
  margin-top: 40px;
}

.main__wrapInner .section {
  margin-top: 0;
}

.main__wrapInner .section+.section {
  margin-top: 40px;
}

.section>*:nth-child(n+2) {
  margin-top: 24px;
}


.grid {
  position: relative;
  display: flex;
  justify-content: flex-start;
  width: calc(100% + 32px);
  height: 100%;
  margin-top: -32px;
  margin-left: -32px;
}

.section>.grid {
  margin-top: -8px;
}

.grid__item {
  margin-top: 32px;
  margin-left: 32px;
}

.col-1>.grid__item {
  width: calc(100% - 32px);
}

.col-2>.grid__item {
  width: calc(100% / 2 - 32px);
}

.col-3>.grid__item {
  width: calc(100% / 3 - 32px);
}

@media screen and (max-width: 767px) {
  .grid {
    flex-direction: column;
    width: 100%;
    margin-left: 0;
  }

  .grid__item {
    margin-left: 0;
  }

  .col-1>.grid__item,
  .col-2>.grid__item,
  .col-3>.grid__item {
    width: 100%;
  }
}


.page-guide {
  margin-top: 40px;
}

.page-guide__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.page-guide__list .prev {
  position: relative;
  padding-left: 20px;
}

.page-guide__list .prev a::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(../../img/common/icon/icon_ang_left.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 7px 14px;
}

.page-guide__list .next {
  position: relative;
  padding-right: 20px;
}

.page-guide__list .next a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(../../img/common/icon/icon_ang_right.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 7px 14px;
}


.notice-list__list {
  border-top: 1px solid #CCC;
}

.notice-list__item {
  padding: 24px 0;
  border-bottom: 1px solid #CCC;
}

.notice-list__item a {
  text-decoration: underline;
}

.notice-list__item a:hover {
  text-decoration: none;
}

.notice-list__dl {
  display: flex;
  align-items: flex-start;
}

.notice-list__dt {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin-top: 2px;
  margin-right: 24px;
  font-weight: normal;
}

.notice-list__date {
  width: 120px;
}

.notice-list__label {
  margin-left: 24px;
}

.notice-list__label .label {
  width: 90px;
}

.notice-list__dd {
  font-size: 1.6rem;
}

.notice-list__all {
  margin-top: 24px;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .notice-list__item {
    padding: 16px 0;
  }

  .notice-list__dl {
    display: block;
  }

  .notice-list__dt {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    font-size: 1.2rem;
    margin-top: 0;
    margin-right: 0;
  }

  .notice-list__date {
    width: 105px;
  }

  .notice-list__dd {
    margin-top: 8px;
    font-size: 1.4rem;
  }
}


.pagenation {
  margin: 20px 0;
}

.pagenation__list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
}

.pagenation__list li {
  width: 32px;
  height: 32px;
  margin: 4px;
}

.pagenation__list .prev,
.pagenation__list .next {
  width: 24px;
  height: 24px;
}

.pagenation__list a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding-top: 2px;
  border: 1px solid var(--primary);
  border-radius: 4px;
  transition: 0.3s ease;
}

.pagenation__list li a.is-current {
  color: #FFF;
  background-color: var(--primary);
}

.pagenation__list li a.is-disabled {
  pointer-events: none;
  cursor: default;
}

.pagenation__list a:hover {
  color: #FFF;
  text-decoration: none;
  border: 1px solid var(--primary-hover);
  background-color: var(--primary-hover);
}

.pagenation__list .prev a,
.pagenation__list .next a {
  width: 24px;
  height: 24px;
  border: none;
}

.pagenation__list .prev a:hover,
.pagenation__list .next a:hover {
  border: none;
  background-color: transparent;
}

.pagenation__list .prev a {
  filter: var(--primary-filter);
}

.pagenation__list .prev a.is-disabled {
  filter: var(--disabled-filter);
}

.pagenation__list .next a {
  filter: var(--primary-filter);
}

.pagenation__list .next a.is-disabled {
  filter: var(--disabled-filter);
}

.pagenation__list .extend {
  width: 16px;
}

.pagenation__list .extend span {
  line-height: 48px;
}


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

@media screen and (max-width: 767px) {
  .list-notes>.list-item {
    font-size: 1.2rem;
    text-indent: -1em;
    padding-left: 1em;
  }
}


.list-attnTxt>.list-item {
  text-indent: -2em;
  padding-left: 2em;
}

@media screen and (max-width: 767px) {
  .list-attnTxt>.list-item {
    font-size: 1.2rem;
    text-indent: -2em;
    padding-left: 2em;
  }
}


.list-label {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  margin-top: -4px;
}

.list-label>.label {
  margin-right: 8px;
  margin-top: 4px;
}


.label {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 20px;
  padding: 3px 8px 0;
  font-size: 1.2rem;
  line-height: 1.5em;
  color: #FFF;
  border-radius: 10px;
  background-color: var(--primary);
}

.label.label-square {
  width: 64px;
  height: 27px;
  padding: 3px 8px 0;
  color: #666;
  border-radius: 4px;
  background-color: #F2F2F2;
}

.label.label-square:checked {
  color: var(--base);
  background-color: var(--secondary);
}

.label.label-square:hover {
  background-color: var(--secondary-hover);
}

.label.label-rectangle {
  height: 22px;
  font-size: 1.2rem;
  font-weight: normal;
  border-radius: 0;
}

.label-required {
  background-color: #FCF1F1 !important;
  color: #EC0000 !important;
}

.label-black {
  background-color: #4D4D4D !important;
  color: #FFF !important;
}

.label-gray {
  background-color: #767676 !important;
  color: #FFF !important;
}

.label-event {
  background-color: #F0F2F6 !important;
  color: #283A69 !important;
}

.label-mainte {
  background-color: #F8F1F7 !important;
  color: #693C64 !important;
}

.label-zeb {
  background-color: var(--zeb) !important;
  color: #FFF !important;
}

.label-nearly {
  background-color: var(--nearly) !important;
  color: #FFF !important;
}

.label-ready {
  background-color: var(--ready) !important;
  color: #FFF !important;
}

.label-oriented {
  background-color: var(--oriented) !important;
  color: #FFF !important;
}

.label-use {
  background-color: var(--use) !important;
  color: #FFF !important;
}


.link {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}

.link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
}

.link.-icon-right {
  padding-left: 0;
  padding-right: 20px;
}

.link.-icon-right::before {
  left: auto;
  right: 0;
}

.link-ang-right::before {
  background-image: url(../../img/common/icon/icon_ang_right.svg);
  background-size: 8px 14px;
  background-repeat: no-repeat;
  background-position: left center;
  filter: var(--primary-filter);
}

.link-ang-down::before {
  background-image: url(../../img/common/icon/icon_ang_down.svg);
  background-size: 14px 9px;
  background-repeat: no-repeat;
  background-position: left center;
}

.link-ang-down-white::before {
  background-image: url(../../img/common/icon/icon_ang_down.svg);
  background-repeat: no-repeat;
  background-position: left center;
  filter: var(--white-filter);
}

.link-info::before {
  background-image: url(../../img/common/icon/icon_info.svg);
  background-size: 13px 14px;
  background-repeat: no-repeat;
  background-position: left center;
  filter: var(--primary-filter);
}

.link-help::before {
  width: 16px;
  height: 16px;
  background-image: url(../../img/common/icon/icon_help.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: cover;
  filter: var(--primary-filter);
}

.link-clear::before {
  background-image: url(../../img/common/icon/icon_clear.svg);
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: left center;
  filter: var(--primary-filter);
}

.-icon-right.link-ang-right::before,
.-icon-right.link-ang-down::before,
.-icon-right.link-ang-down-white::before,
.-icon-right.link-info::before,
.-icon-right.link-help::before,
.-icon-right.link-clear::before {
  background-position: right center;
}

.icon-blank[target="_blank"]::after {
  content: url(../../img/common/icon/icon_blank.svg);
  display: inline-block;
  margin-left: 4px;
  vertical-align: middle;
  transform: translateY(2px);
  filter: var(--primary-filter);
}

.icon-pdf::before {
  content: url(../../img/common/icon/icon_pdf.svg);
  display: inline-block;
  margin-right: 4px;
  vertical-align: middle;
  transform: translateY(4px);
  filter: var(--primary-filter);
}

.icon-close::before {
  content: url(../../img/common/icon/icon_close.svg);
  display: inline-block;
  margin-right: 4px;
  vertical-align: middle;
  transform: translateY(-1px);
  filter: var(--primary-filter);
}

.txt-link {
  text-decoration: underline;
}

.txt-link:hover {
  text-decoration: none;
}


.btns {
  display: flex;
  justify-content: center;
  align-items: center;
}

.btns>* {
  margin: 0 5px;
}

.btn {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 240px;
  padding: 12px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5em;
  border-radius: 8px;
  transition: 0.3s ease;
}

.btn.-large {
  width: 100%;
  max-width: 400px;
  padding: 22px;
  font-size: 2.4rem;
}

.btn.-auto {
  width: auto !important;
  padding: 6px 12px 4px !important;
  font-size: 1.4rem !important;
}

.btn:hover {
  text-decoration: none;
}

.btn.-primary {
  color: #FFF;
  background-color: var(--primary);
}

.btn.-primary:hover {
  background-color: var(--primary-hover);
}

.btn.-primary:active {
  background-color: var(--primary-active);
}

.btn.-primary:disabled,
.btn.-primary.-disabled {
  color: rgba(255, 255, 255, .5);
  background-color: var(--disabled);
  cursor: default;
  pointer-events: none;
}

.btn.-secondary {
  padding: 11px 12px 10px;
  color: var(--primary);
  border: 2px solid var(--primary);
  background-color: #FFF;
}

.btn.-secondary:hover {
  background-color: var(--secondary-hover);
}

.btn.-secondary:active {
  background-color: var(--secondary-active);
}

.btn.-secondary:disabled,
.btn.-secondary.-disabled {
  color: rgba(255, 255, 255, .5);
  border-color: var(--disabled);
  background-color: var(--disabled);
  cursor: default;
  pointer-events: none;
}

.btn.icon-close::before {
  margin-right: 10px;
}


.box {}

.box.-white {
  background-color: #FFF;
}

.box__inner {
  padding: 24px;
}


.table {
  width: 100%;
  table-layout: fixed;
  overflow: hidden;
}

.table thead th {
  text-align: center;
}

.table.th-center th,
.table.td-center td {
  text-align: center;
}

.table.th-right th,
.table.td-right td {
  text-align: right;
}

.table.th-v-middle th,
.table.td-v-middle td {
  vertical-align: middle;
}

.table th,
.table td {
  padding: 6px 5px 4px;
  font-size: 1.3rem;
  line-height: 1.5em;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
}

.table th {
  font-weight: normal;
  background: #EFEFEF;
}

.table th.-baseColor {
  background: #F8F8F8;
}

.table td {
  background: #F8F8F8;
}

.table .separator-solid th,
.table .separator-solid td {
  position: relative;
  padding-top: 11px;
}

.table .separator-solid th::before,
.table .separator-solid td::before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  display: block;
  width: calc(100% + 2px);
  height: 4px;
  border-top: 2px solid var(--base);
  background-color: #FFF;
}

.table .separator-dashed th,
.table .separator-dashed td {
  position: relative;
  padding-top: 11px;
}

.table .separator-dashed th::before,
.table .separator-dashed td::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 3px;
  border-top: 1px dashed var(--base);
  background-color: #FFF;
}

.table .separator-blank th,
.table .separator-blank td {
  position: relative;
  padding-top: 11px;
}

.table .separator-blank th::before,
.table .separator-blank td::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 3px;
  background-color: #FFF;
}

.js-scrollable {
  width: 100%;
}

.scroll-hint-icon {
  height: 85px;
}

@media screen and (max-width: 767px) {
  .table-scroll-x {
    overflow-x: auto;
  }

  .table-scroll-x .table {
    width: 150%;
    max-width: 800px;
    overflow: visible;
  }
}


input[type="text"],
input[type="password"],
select {
  width: 100%;
  padding: 12px 16px 10px;
  font-size: 1.4rem;
  border: 1px solid var(--base);
  outline: 1px solid transparent;
  border-radius: 5px;
  background-color: #FFF;
}

input[type="text"]:focus,
input[type="password"]:focus,
select:focus {
  outline: none;
  border: 1px solid transparent;
  box-shadow: 0 0 0 2px var(--primary);
}

input[type="text"]:disabled,
select:disabled {
  color: #949494;
  border: 1px solid #949494;
  outline: 1px solid transparent;
  border-radius: 5px;
  background-color: #F2F2F2;
}

.form-item {
  position: relative;
}

.form-item__select {
  position: relative;
}

.form-item__select::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 16px;
  height: 16px;
  background-image: url(../../img/common/icon/icon_angtrg_down.svg);
  background-size: 11px 6px;
  background-repeat: no-repeat;
  background-position: center center;
  transform: translateY(-50%);
  pointer-events: none;
}

.form-item__select select {
  padding-right: 40px;
}

.form-item__checkbox label,
.form-item__radiobox label {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  text-align: left;
  cursor: pointer;
}

.form-item__checkbox.-label label,
.form-item__radiobox.-label label {
  width: 64px;
  height: 27px;
  padding-left: 0;
  text-align: center;
}

.form-item__checkbox.-label span.label-square,
.form-item__radiobox.-label span.label-square {
  position: absolute;
  top: 0;
  left: 0;
  color: #666;
}

input[type="checkbox"]+span.label-square:hover {
  background-color: var(--secondary-hover);
}

input[type="checkbox"]:checked+span.label-square {
  color: var(--base);
  background-color: var(--secondary);
}

input[type="checkbox"]+.checkbox-icon {
  position: absolute;
  top: 3px;
  left: 0;
  display: block;
  width: 17px;
  height: 17px;
  border: 2px solid var(--base);
  border-radius: 2px;
  background-color: #FFF;
  background-repeat: no-repeat;
  background-position: center center;
}

input[type="checkbox"]:hover+.checkbox-icon {
  border: 2px solid var(--primary);
  box-shadow: 0 0 0 3px var(--hover);
}

input[type="checkbox"]:checked+.checkbox-icon {
  border-color: transparent;
  background-image: url(../../img/common/icon/icon_check_white.svg);
  background-color: var(--primary);
}

input[type="radio"]+.radiobox-icon {
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 19px;
  height: 19px;
}

input[type="radio"]+.radiobox-icon::before {
  content: "";
  display: block;
  width: 19px;
  height: 19px;
  border: 2px solid var(--base);
  border-radius: 50%;
  background-color: #FFF;
}

input[type="radio"]:hover+.radiobox-icon::before {
  border: 2px solid var(--primary);
  box-shadow: 0 0 0 3px var(--hover);
}

input[type="radio"]:checked+.radiobox-icon::before {
  border: 2px solid var(--primary);
}

input[type="radio"]+.radiobox-icon::after {
  opacity: 0;
  transition: all 0.2s;
}

input[type="radio"]:checked+.radiobox-icon::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: var(--primary);
  opacity: 1;
}

.list-input>li:nth-of-type(n+2) {
  margin-top: 6px;
}

.list-input.-row {
  display: flex;
}

.list-input.-row>li:nth-of-type(n+2) {
  margin-top: 0;
  margin-left: 16px;
}

.formset {
  display: flex;
}

.form-ttl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
  max-width: 100%;
  margin-right: 8px;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.5;
}

.form-ttl .label {
  margin-left: 8px;
}

.form-item,
.form-item input {
  max-width: 100%;
}

.error {
  color: #D00000;
}


.tooltip {
  cursor: pointer;
  font-family: none !important;
}

.tippy-tooltip.balloon-theme {
  padding: 8px 0 4px;
  font-size: 1.3rem;
  color: var(--base);
  border-radius: 8px;
  border: 1px solid var(--primary);
  background-color: #E8F7F9;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, .2);
}

@media screen and (max-width: 768px) {
  .tippy-tooltip.balloon-theme {
    position: relative;
    padding-right: 26px;
    margin-right: 6px;
  }

  .tippy-tooltip.balloon-theme::before {
    content: "";
    position: absolute;
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
    background-image: url(../../img/common/icon/icon_close.svg);
    background-size: 12px 12px;
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
  }
}


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

.-block-pc {
  display: block !important;
}

.-block-sp {
  display: none !important;
}

.-flex-pc {
  display: flex !important;
}

.-flex-sp {
  display: none !important;
}

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

  .-block-sp {
    display: block !important;
  }

  .-flex-pc {
    display: none !important;
  }

  .-flex-sp {
    display: flex !important;
  }
}

.-col-w-1 {
  width: calc(100% / 24 * 1) !important;
}

.-col-w-2 {
  width: calc(100% / 24 * 2) !important;
}

.-col-w-3 {
  width: calc(100% / 24 * 3) !important;
}

.-col-w-4 {
  width: calc(100% / 24 * 4) !important;
}

.-col-w-5 {
  width: calc(100% / 24 * 5) !important;
}

.-col-w-6 {
  width: calc(100% / 24 * 6) !important;
}

.-col-w-7 {
  width: calc(100% / 24 * 7) !important;
}

.-col-w-8 {
  width: calc(100% / 24 * 8) !important;
}

.-col-w-9 {
  width: calc(100% / 24 * 9) !important;
}

.-col-w-10 {
  width: calc(100% / 24 * 10) !important;
}

.-col-w-11 {
  width: calc(100% / 24 * 11) !important;
}

.-col-w-12 {
  width: calc(100% / 24 * 12) !important;
}

.-col-w-13 {
  width: calc(100% / 24 * 13) !important;
}

.-col-w-14 {
  width: calc(100% / 24 * 14) !important;
}

.-col-w-15 {
  width: calc(100% / 24 * 15) !important;
}

.-col-w-16 {
  width: calc(100% / 24 * 16) !important;
}

.-col-w-17 {
  width: calc(100% / 24 * 17) !important;
}

.-col-w-18 {
  width: calc(100% / 24 * 18) !important;
}

.-col-w-19 {
  width: calc(100% / 24 * 19) !important;
}

.-col-w-20 {
  width: calc(100% / 24 * 20) !important;
}

.-col-w-21 {
  width: calc(100% / 24 * 21) !important;
}

.-col-w-22 {
  width: calc(100% / 24 * 22) !important;
}

.-col-w-23 {
  width: calc(100% / 24 * 23) !important;
}

.-col-w-24 {
  width: calc(100% / 24 * 24) !important;
}

.-w-full {
  width: 100% !important;
}

.-h-full {
  height: 100% !important;
}

@media screen and (max-width: 767px) {
  .-w-full-sp {
    width: 100% !important;
  }

  .-h-full-sp {
    height: 100% !important;
  }
}

.-fs-10 {
  font-size: 1rem !important;
}

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

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

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

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

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

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

@media screen and (max-width: 767px) {
  .-fs-10-sp {
    font-size: 1rem !important;
  }

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

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

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

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

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

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

.-center {
  text-align: center !important;
}

.-right {
  text-align: right !important;
}

.-left {
  text-align: left !important;
}

.-v-middle {
  vertical-align: middle !important;
}

@media screen and (max-width: 767px) {
  .-center-sp {
    text-align: center !important;
  }

  .-right-sp {
    text-align: right !important;
  }

  .-left-sp {
    text-align: left !important;
  }
}

.-d-b {
  display: block !important;
}

.-d-i {
  display: inline !important;
}

.-d-ib {
  display: inline-block !important;
}

.-d-f {
  display: flex !important;
}

.-d-if {
  display: inline-flex !important;
}

.-jc-fs {
  justify-content: flex-start !important;
}

.-jc-fe {
  justify-content: flex-end !important;
  ;
}

.-jc-sb {
  justify-content: space-between !important;
}

.-jc-sa {
  justify-content: space-around !important;
}

.-jc-c {
  justify-content: center !important;
}

.-ai-c {
  align-items: center !important;
}

.-al-fs {
  align-items: flex-start !important;
}

.-al-fe {
  align-items: flex-end !important;
}

.-al-stretch {
  align-items: stretch !important;
}

.-as-c {
  align-self: center !important;
}

.-as-fs {
  align-self: flex-start !important;
}

.-as-fe {
  align-self: flex-end !important;
}

.-fw-wrap {
  flex-wrap: wrap !important;
}

.-fw-nowrap {
  flex-wrap: nowrap !important;
}

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

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

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

.-mt-16 {
  margin-top: 16px !important;
}

.-mt-18 {
  margin-top: 18px !important;
}

.-mt-24 {
  margin-top: 24px !important;
}

.-mt-32 {
  margin-top: 32px !important;
}

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

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

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

.-mr-16 {
  margin-right: 16px !important;
}

.-mr-18 {
  margin-right: 18px !important;
}

.-mr-24 {
  margin-right: 24px !important;
}

.-mr-32 {
  margin-right: 32px !important;
}

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

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

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

.-mb-16 {
  margin-bottom: 16px !important;
}

.-mb-18 {
  margin-bottom: 18px !important;
}

.-mb-24 {
  margin-bottom: 24px !important;
}

.-mb-32 {
  margin-bottom: 32px !important;
}

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

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

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

.-ml-16 {
  margin-left: 16px !important;
}

.-ml-18 {
  margin-left: 18px !important;
}

.-ml-24 {
  margin-left: 24px !important;
}

.-ml-32 {
  margin-left: 32px !important;
}

/* dialog css */
.modal-dialog {
  width: 600px !important;
  max-width: 600px !important;
  margin: 0 auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%) !important;
}

.modal-content {
  width: 600px !important;
}

.modal-header {
  border-bottom: 0;
  padding-bottom: 0;
}

.modal-footer {
  padding: 15px;
  text-align: center;
  border-top: 0;
  justify-content: center !important;
}

.-modal-title {
  font-weight: bold;
  font-size: 2rem;
}

.-modal-content {
  margin: 16px 32px;
}

.modal-footer .btn {
  width: 240px;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5em;
  border-radius: 8px;
}

.modal-footer .btn+.btn {
  margin-left: 24px;
}

.modal-body {
  padding-bottom: 0;
}

dd {
  margin-bottom: 0 !important;
}

.ZebHidden {
  display: none;
}

label[for] {
  pointer-events: none;
  cursor: auto;
}