/* IF:NEED
@mixin for-IE-text() {
	@media all and (-ms-high-contrast: none) {
		position: relative;
		bottom: -0.5em;
	}
}
*/
.e__ttl {
  line-height: 1.2;
  letter-spacing: 0.32em; }
  @media screen and (max-width: 767px) {
    .e__ttl.-sm1 {
      font-size: 9.3333333333vw; }
    .e__ttl.-sm2 {
      font-size: 6.4vw; }
    .e__ttl.-sm3 {
      font-size: 4vw; }
    .e__ttl.-sm4 {
      font-size: 2.6666666667vw; }
    .e__ttl.-sm5 {
      font-size: 2.4vw; } }
  @media screen and (min-width: 768px) {
    .e__ttl.-md1 {
      font-size: 60px; }
    .e__ttl.-md2 {
      font-size: 25px; }
    .e__ttl.-md3 {
      font-size: 18px; }
    .e__ttl.-md4 {
      font-size: 16px; }
    .e__ttl.-md5 {
      font-size: 12px; } }
  .e__ttl.-en-sans {
    font-family: 'nimbus-sans', sans-serif;
    font-weight: 400;
    letter-spacing: 0.06em; }
  .e__ttl.-en-serif {
    font-family: century-old-style-std, serif;
    font-weight: 400;
    letter-spacing: 0.06em; }
  .e__ttl.-b {
    font-weight: 700; }

.e__prg {
  text-align: justify;
  text-justify: inter-ideograph;
  text-justify: inter-character; }
  @media screen and (max-width: 767px) {
    .e__prg {
      letter-spacing: 0.22em; }
      .e__prg.-sm1 {
        font-size: 3.3333333333vw; }
      .e__prg.-sm2 {
        font-size: 2.6666666667vw; } }
  @media screen and (min-width: 768px) {
    .e__prg {
      letter-spacing: 0.32em; }
      .e__prg.-md1 {
        font-size: 14px; }
      .e__prg.-md2 {
        font-size: 12px; }
      .e__prg.-md3 {
        font-size: 10px; } }
  .e__prg.-en-sans {
    font-family: 'nimbus-sans', sans-serif;
    font-weight: 400;
    letter-spacing: 0.06em; }
  .e__prg.-en-serif {
    font-family: century-old-style-std, serif;
    font-weight: 400;
    letter-spacing: 0.06em; }

.e__btn {
  display: block;
  border: solid 1px #000000;
  background-color: #FFFFFF;
  letter-spacing: 0.15em;
  padding-left: 0.15em;
  cursor: pointer;
  outline: none;
  transition: 0.3s; }
  .e__btn:hover {
    background-color: #CACACA;
    border-color: #CACACA; }
  @media screen and (max-width: 767px) {
    .e__btn {
      width: 30.1333333333vw;
      height: 25px; } }
  @media screen and (min-width: 768px) {
    .e__btn {
      width: 17.6vw;
      height: 50px; } }

.e__name {
  display: inline-block;
  font-family: 'nimbus-sans', sans-serif;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 0.8;
  vertical-align: top;
  padding-right: 0.5em;
  border-bottom: solid 1px #000000; }
  @media screen and (max-width: 767px) {
    .e__name {
      font-size: 2.6666666667vw;
      margin-bottom: 0.75em; } }
  @media screen and (min-width: 768px) {
    .e__name {
      font-size: 10px;
      margin-bottom: 1em; } }

.e__lbl {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'nimbus-sans', sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
  color: #000000;
  border: solid 1px #CACACA;
  background-color: #FFFFFF;
  transition: background 0.3s; }
  .e__lbl.-em {
    background-color: #CACACA; }
  .e__lbl.-tr {
    background-color: transparent;
    border-color: #000000; }
    .e__lbl.-tr:hover {
      background: #FFFFFF; }
  @media screen and (max-width: 767px) {
    .e__lbl {
      min-width: 16.000vw;
      height: 3.200vw;
      font-size: 2.4vw;
      padding: 0 2.13333vw; } }
  @media screen and (min-width: 768px) {
    .e__lbl {
      min-width: 72px;
      height: 16px;
      font-size: 10px;
      padding: 0 10px; } }

a.e__lbl:not(.-tr) {
  transition: opacity 0.3s ease-out; }
  a.e__lbl:not(.-tr):hover {
    opacity: 0.5; }

.e__fld-lbl {
  margin-bottom: 0.5em; }
  @media screen and (max-width: 767px) {
    .e__fld-lbl {
      font-size: 2.6666666667vw; } }
  @media screen and (min-width: 768px) {
    .e__fld-lbl {
      font-size: 12px; } }

.e__fld {
  border: solid 1px #000000; }
  @media screen and (max-width: 767px) {
    .e__fld {
      height: auto;
      font-size: 2.6666666667vw;
      padding: 0.2rem 0.5rem; } }
  @media screen and (min-width: 768px) {
    .e__fld {
      min-height: 4em;
      font-size: 12px;
      padding: 0.8rem 1rem; } }

/*# sourceMappingURL=element.css.map */
