@font-face {
    font-family: 'OriginalGaramondC BT';
    src: url('../fonts/garamond/OriginalGaramondCBT-Bold.woff2') format('woff2'),
        url('../fonts/garamond/OriginalGaramondCBT-Bold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
  font-family: 'Neuropolitical';
  src: url('../fonts/neuropolitical/NeuropoliticalRg-Regular.woff2') format('woff2'),
      url('../fonts/neuropolitical/NeuropoliticalRg-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Taxon';
  src: url('../fonts/taxon/Taxon.woff2') format('woff2'),
      url('../fonts/taxon/Taxon.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Monofonto';
  src: url('../fonts/monofonto/Monofonto-Regular.woff2') format('woff2'),
      url('../fonts/monofonto/Monofonto-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Bk';
  src: url('../fonts/roboto/Roboto-Black.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Bk';
  src: url('../fonts/roboto/Roboto-BlackItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-BlackItalic.woff') format('woff');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('../fonts/roboto/Roboto-Bold.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('../fonts/roboto/Roboto-Italic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Italic.woff') format('woff');
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Cn';
  src: url('../fonts/roboto/Roboto-CondensedItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-CondensedItalic.woff') format('woff');
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Cn';
  src: url('../fonts/roboto/Roboto-BoldCondensed.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-BoldCondensed.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Cn';
  src: url('../fonts/roboto/Roboto-Condensed.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Condensed.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('../fonts/roboto/Roboto-BoldItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-BoldItalic.woff') format('woff');
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Cn';
  src: url('../fonts/roboto/Roboto-BoldCondensedItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-BoldCondensedItalic.woff') format('woff');
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Lt';
  src: url('../fonts/roboto/Roboto-Light.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Lt';
  src: url('../fonts/roboto/Roboto-Medium.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Lt';
  src: url('../fonts/roboto/Roboto-MediumItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-MediumItalic.woff') format('woff');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Lt';
  src: url('../fonts/roboto/Roboto-LightItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-LightItalic.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Th';
  src: url('../fonts/roboto/Roboto-ThinItalic.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-ThinItalic.woff') format('woff');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('../fonts/roboto/Roboto-Regular.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto Th';
  src: url('../fonts/roboto/Roboto-Thin.woff2') format('woff2'),
      url('../fonts/roboto/Roboto-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

html,
body {
  height: 100vh;
  max-height: 100dvh;
  max-width: 100vw;
  background: #000;
  overflow: hidden;
}

.variable {
    width: 100%;
    position: absolute;
    display: inline-flex;
    top: 0px;
    background: #ccc;
    justify-content: space-around;
    z-index:9;
    display: none;
}

.wrapper {
    align-items: center;
    display: flex;
    justify-content: center;
    height: 100vh;
    max-height: 100dvh;
    max-width: 100vw;
}

area {
    cursor: pointer;
}

.start-page {
  position:absolute;
  -webkit-animation: fadein 2s; 
  -moz-animation: fadein 2s; 
  -ms-animation: fadein 2s;
  -o-animation: fadein 2s;
  animation: fadein 2s;
}

#start-page1 {
  z-index: 2;
}

#start-page2 {
  display: none;
  z-index: 1;
}

#start-page1-b {
  z-index: 2;
}

#start-page2-b {
  display: none;
  z-index: 1;
}

#start-page1-c {
  z-index: 2;
}

#start-page2-c {
  display: none;
  z-index: 1;
}

#start-page1-d {
  z-index: 2;
}

#start-page2-d {
  display: none;
  z-index: 1;
}

#start-page1-e {
  z-index: 2;
}

#start-page2-e {
  display: none;
  z-index: 1;
}

#start-page1-f {
  z-index: 2;
}

#start-page2-f {
  display: none;
  z-index: 1;
}

#start-page1-g {
  z-index: 2;
}

#start-page2-g {
  display: none;
  z-index: 1;
}

.background-intro {
  max-height: 100dvh;
  max-width: 100vw;
}

.background-intro-2 {
  max-height: 100dvh;
  max-width: 100vw;
}

.background-image {
  max-height: 100dvh;
  max-width: 100vw;
}

.background-image-loading {
  max-height: 100dvh;
  max-width: 100vw;
  display: none;
}

.rules {
  max-height: 100dvh;
  max-width: 100vw;
}

.rules-none {
  display:none;
  position: absolute;
}

#rules-page {
  display:none;
}

.arrow {
  position: absolute;
  top: 40%;
  right: 0%;
  width: 15%;
  cursor: pointer;
}

.arrow .arrow-hover {
  display: none;
}

.arrow:hover .arrow-hover {
  display: block;
  width: 100%;
}

.arrow .arrow-normal {
  width: 100%;
}

.arrow:hover .arrow-normal {
  display: none;
}

.background-video {
  max-height: 100dvh;
  max-width: 100vw;
  min-width: 100vw;
}

.video {
  background-color: black;
  max-height: 100dvh;
  max-width: 100vw;
  display: none;
}

.video-loading {
  background-color: black;
  max-height: 100dvh;
  max-width: 100vw;
  display: block;
}

#countdown {
  font-size: 2em;
  background-color: white;
}

.outsidetop {
  margin-top: -350%;
  transition: margin 1.5s;
}

.insidetop {
  position:absolute !important;
  margin-bottom: 0% !important;
  transition: margin 1.5s !important;
}

.outsideright {
  margin-right: -250%;
  transition: margin .9s;
}

.insideright {
  position:absolute !important;
  margin-right: 0% !important;
  transition: margin 1.5s !important;
}

.subtitle {
  display: inline-flex;
  margin-top: -10%;
  position: absolute;
  color: #fff;
  padding: 20px;
  background: transparent;
  text-shadow: -1px 1px 0 #000, 1px 1px 0 #000, 1px -1px 0 #000, -1px -1px 0 #000;
  margin-left: 50%;
  transform: translateX(-50%);
  font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  min-height: 0vw;
  width: max-content;
}

.none {
  display: none;
}

.opacity {
  opacity: 0.5;
}

.skip-button {
  position: absolute;
  top: 4%;
  right: 1%;
  width: 8%;
  cursor: pointer;
  opacity: 0.4;
  display: none;
  z-index: 999999999999999999999;
}

.skip-button:hover {
  opacity: 1;
}

.text-rules {
  position: absolute;
  top: 15%;
  left: 37%;
  transform: rotate(7.5deg);
  width: 44%;
  height: 45%;
  overflow: auto;
}

.text-rules1b {
  position: absolute;
  top: 34.3%;
  left: 18.7%;
  transform: rotate(-3.4deg);
  width: 12.3%;
  height: 20%;
  overflow: auto;
}

.text-rules1c {
  position: absolute;
  top: 62%;
  left: 16%;
  transform: rotate(7.5deg);
  width: 42%;
  height: 28%;
  overflow: auto;
}

.text-rules2 {
  position: absolute;
  top: 13.5%;
  left: 12.4%;
  transform: rotate(-15.1deg);
  width: 65%;
  height: 16%;
  overflow: auto;
}

.text-rules2b {
  position: absolute;
  top: 55%;
  left: 27%;
  transform: rotate(-15.1deg);
  width: 17%;
  height: 18%;
  overflow: auto;
}

.text-rules2c {
  position: absolute;
  top: 47.5%;
  left: 43%;
  transform: rotate(-15.1deg);
  width: 17%;
  height: 18%;
  overflow: auto;
}

.text-rules2d {
  position: absolute;
  top: 41%;
  left: 57%;
  transform: rotate(-15.1deg);
  width: 17%;
  height: 18%;
  overflow: auto;
}

.text-rules2e {
  position: absolute;
  top: 87%;
  left: 31%;
  transform: rotate(-15.1deg);
  width: 17%;
  height: 18%;
  overflow: auto;
}

.text-rules2f {
  position: absolute;
  top: 80.1%;
  left: 46.7%;
  transform: rotate(-15.1deg);
  width: 17%;
  height: 18%;
  overflow: auto;
}

.text-rules2g {
  position: absolute;
  top: 73%;
  left: 62.5%;
  transform: rotate(-15.1deg);
  width: 17%;
  height: 18%;
  overflow: auto;
}

.text-rules3 {
  position: absolute;
  top: 16%;
  left: 14%;
  transform: rotate(-15.1deg);
  width: 60%;
  height: 48%;
  overflow: auto;
}

.text-rules4 {
  position: absolute;
  top: 12%;
  left: 19%;
  transform: rotate(1deg);
  width: 35%;
  height: 18%;
  overflow: auto;
}

.text-rules4b {
  position: absolute;
  top: 30%;
  left: 46%;
  transform: rotate(1deg);
  width: 35%;
  height: 28%;
  overflow: auto;
}

.text-rules4c {
  position: absolute;
  top: 59%;
  left: 19%;
  transform: rotate(1deg);
  width: 35%;
  height: 18%;
  overflow: auto;
}

.text-rules5 {
  position: absolute;
  top: 7%;
  left: 17%;
  transform: rotate(-3deg);
  width: 65%;
  height: 19%;
  overflow: auto;
}

#text-rules5 .title-rule
{
  margin-bottom: 0.5%;
}

.text-rules5b {
  position: absolute;
  top: 27.5%;
  left: 17.5%;
  transform: rotate(-3deg);
  width: 51.5%;
  height: 18%;
  overflow: auto;
}

.text-rules5c {
  position: absolute;
  top: 45%;
  left: 30%;
  transform: rotate(-3deg);
  width: 53%;
  height: 23%;
  overflow: auto;
}

.text-rules5d {
  position: absolute;
  top: 70%;
  left: 19%;
  transform: rotate(-3deg);
  width: 53%;
  height: 21%;
  overflow: auto;
}

.text-rep7b {
    position: absolute;
    top: 21%;
    left: 47%;
    transform: rotate(3deg);
    width: 28%;
    height: 59%;
    overflow: auto;
    display: none;
    z-index: 1;
}

.p-rep7b {
    font-family: 'OriginalGaramondC BT';
    font-size: calc(0.36rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.7rem + ((1vw - 0.48rem) * 1.3889));
    font-weight: bold;
    margin-bottom: 0rem;
    text-align: left;
    color: #000;
    text-align: center;
}

.title-rule {
  font-family: 'OriginalGaramondC BT';
  color: #000;
  font-size: calc(2.5rem + ((1vw - 0.48rem) * 1.3889));
  text-align: center;
  font-weight: bold;
  margin-bottom: 0rem;
  margin-bottom: 1%;
}

.title-rule2 {
  font-family: 'OriginalGaramondC BT';
  color: #000;
  font-size: calc(1.5rem + ((1vw - 0.48rem) * 1.3889));
  text-align: center;
  font-weight: bold;
  margin-bottom: 0rem;
  margin-top: 3%;
}

.p-rule-note {
  font-family: 'Monofonto';
  font-size: calc(0.7rem + ((1vw - 0.48rem) * 1.3889));
  line-height: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  text-align: left;
  font-weight: normal;
  margin-bottom: 0rem;
  color: #000;
}

.p-rule {
    font-family: 'OriginalGaramondC BT';
    font-size: calc(1.5rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(2rem + ((1vw - 0.48rem) * 1.3889));
    text-align: center;
    font-weight: normal;
    margin-bottom: 0rem;
    color: #000;
}

.align-left {
    text-align: left !important;
}

.align-center {
  text-align: center !important;
}

.align-right {
  text-align: right !important;
}

.transparentdraw {
    float: right;
    height: 83%;
    width: 28%;
    margin-left: 15px;
    object-fit: contain;
    object-position: bottom;
    shape-outside: inset(calc(150% - 105%) 0 0);
}

.begin-button {
  position: absolute;
  cursor: pointer;
  z-index: 99999999;
  left: 21%;
  top: 65.7%;
  width: 56%;
}

.begin-button .begin-button-hover {
  display: none;
}

.begin-button:hover .begin-button-hover {
  display: block;
  width: 100%;
}

.begin-button .begin-button-normal {
  width: 100%;
}

.begin-button:hover .begin-button-normal {
  display: none;
}

.start-button {
  position: absolute;
  cursor: pointer;
  z-index: 99999999999;
  left: 26.3%;
  top: 82.4%;
  width: 46.3%;
  display: none;
}

.start-button:hover {
  filter: brightness(1.55);
}

.reconnect-button {
  position: absolute;
  cursor: pointer;
  z-index: 99999999;
  left: 0%;
  top: 0%;
  width: 100%;
  display: none;
}

.reconnect-button .reconnect-button-hover {
  display: none;
}

.reconnect-button:hover .reconnect-button-hover {
  display: block;
  width: 100%;
}

.reconnect-button .reconnect-button-normal {
  width: 100%;
}

.reconnect-button:hover .reconnect-button-normal {
  display: none;
}

.send-button {
  position: absolute;
  cursor: pointer;
  z-index: 99999999;
  left: 4.5%;
  top: 85%;
  width: 28%;
  display: none;
}

.send-button:hover {
  filter: brightness(1.55);
}

.interface-frame {
    position: absolute;
    top: 10.9%;
    left: 56.8%;
    width: 21.8%;
    display: none;
}

.interface-gif {
  position: absolute;
  top: 60%;
  left: 47.4%;
  width: 8.8%;
  display: none;
}

.battery {
    position: absolute;
    top: 78%;
    left: 84%;
    width: 9.3%;
    display: none;
}

.code-div {
    position: absolute;
    display: inline-block;
    top: 34%;
    width: 100%;
    display: none;
}

.message-input {
  position: absolute;
  top: 45.55%;
  left: 14.3%;
  color: #000000;
  background: #A2A2A2;
  width: 75%;
  z-index: 3;
  height: 9.5%;
  line-height: 9.5%;
  border: 0px;
  display: none;
  text-transform: uppercase;
}

.message-input:focus {
  border-color: #00c7ff;
  outline: transparent;
}

.p-message {
  position: absolute;
  display: contents;
}

.button-loop {
  position: absolute;
  width: 22%;
  left: 15.1%;
  top: 63%;
  display: none;
  cursor: pointer;
}

.button-loop .button-loop-hover {
  display: none;
}

.button-loop:hover .button-loop-hover {
  display: block;
  width: 100%;
}

.button-loop .button-loop-normal {
  width: 100%;
}

.button-loop:hover .button-loop-normal {
  display: none;
}

.code-button {
  position: absolute;
  width: 6%;
  left: 90.5%;
  top: 45.5%;
  display: none;
  cursor: pointer;
  z-index: 4;
}

.code-button:hover {
  filter: saturate(5);
}

.code-button-close {
  position: absolute;
  top: 45.5%;
  left: 3%;
  width: 7%;
  z-index: 2;
  display: none;
  cursor: pointer;
}

.code-button-close:hover {
  filter: saturate(5);
}

.code-bar {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  z-index: 2;
  display:none;
}

.code-popup {
  position: absolute;
  top: 80%;
  left: 58%;
  width: 19%;
  display:none;
}

.code-red {
  cursor: not-allowed;
}

.code-green {
  cursor: pointer;
}

.code-green:hover {
  filter: saturate(5);
}

.database-popup {
  position: absolute;
  top: 68%;
  left: 58%;
  width: 19%;
  cursor: pointer;
  display:none;
}

.database-popup:hover {
  filter: saturate(5);
}

.noblue {
  color: #ffffff;
  cursor: default;
  text-decoration: none;
}

.noblue:hover {
  color: #ffffff;
  cursor: default;
  text-decoration: none;
}

.gif-spin {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  display: none;
  z-index: 9999999999;
  opacity: 0.9;
}

.communication1 {
  font-family: 'Taxon';
  position: absolute;
  top: 48%;
  left: 6.8%;
  width: 38%;
  display: none;   
  font-size: 13px;
  font-size: min(max(1.8vh, 13px), 6vh);
  color: #000;
  white-space: pre-line;
  overflow: auto;
  height: 37%;
  flex-direction: column-reverse;
}

.communication2 {
  font-family: 'Taxon';
  position: absolute;
  top: 37%;
  left: 81.6%;
  width: 14%;
  display: none;   
  font-size: 13px;
  font-size: min(max(1.8vh, 13px), 6vh);
  color: #000;
  white-space: pre-line;
  overflow: auto;
  height: 19%;
}

.communication3 {
  font-family: 'Taxon';
  position: absolute;
  top: 60%;
  left: 4%;
  width: 29.6%;
  display: none;   
  font-size: 13px;
  font-size: min(max(1.8vh, 13px), 6vh);
  color: #e2e2e1;
  white-space: pre-line;
  overflow: auto;
  height: 36%;
  flex-direction: column-reverse;
}

.communication4 {
  font-family: 'Taxon';
  position: absolute;
  top: 60%;
  left: 4%;
  width: 29.6%;
  display: none;   
  font-size: 13px;
  font-size: min(max(3vh, 13px), 6vh);
  color: #1b6610;
  white-space: pre-line;
  overflow: auto;
  height: 36%;
  flex-direction: column-reverse;
}

.communication5 {
  font-family: 'Taxon';
  position: absolute;
  top: 60%;
  left: 4%;
  width: 29.6%;
  display: none;   
  font-size: 13px;
  font-size: min(max(3vh, 13px), 6vh);
  color: #b50a01;
  white-space: pre-line;
  overflow: auto;
  height: 36%;
  flex-direction: column-reverse;
}

.communication6 {
  font-family: 'Taxon';
  position: absolute;
  top: 60%;
  left: 4%;
  width: 29.6%;
  display: none;   
  font-size: 13px;
  font-size: min(max(1.8vh, 13px), 6vh);
  color: #cdae2d;
  white-space: pre-line;
  overflow: auto;
  height: 36%;
  flex-direction: column-reverse;
}

.jim-afro-angle {
  position: absolute;
  top: 3.5%;
  left: 83.8%;
  width: 9.6%;
  display: none;
}

.right-arrow {
  position: absolute;
  top: 3.9%;
  left: 69%;
  width: 9%;
  display: none;
}

.help-light {
  position: absolute;
  top: 8.6%;
  left: 94%;
  width: 3%;
  display: none;
}

.help-button {
  position: absolute;
  top: 56%;
  left: 81.6%;
  width: 14%;
  display: none;
  cursor: pointer;
}

.help-button-1 {
  position: absolute;
  top: 49%;
  left: 81.2%;
  width: 10%;
  display: none;
  z-index: 3;
  cursor: pointer;
}

.help-button-2 {
  position: absolute;
  top: 63%;
  left: 81.2%;
  width: 10%;
  display: none;
  z-index: 3;
  cursor: pointer;
}

.help-button-3 {
  position: absolute;
  top: 77%;
  left: 81.2%;
  width: 10%;
  display: none;
  z-index: 3;
  cursor: pointer;
}

.newspaper-picture {
  position: absolute;
  top: 11.6%;
  left: 9.7%;
  width: 32%;
  display: none;
}

.crime-scene {
  position: absolute;
  top: 11.5%;
  left: 11%;
  width: 30%;
  display: none;
}

.killer-simbol {
  position: absolute;
  top: 11.8%;
  left: 18%;
  width: 16%;
  display: none;
}

.document-0 {
  position: absolute;
  top: 11.8%;
  left: 13.35%;
  width: 25%;
  display: none;
}

.documents {
  position: absolute;
  top: 11.3%;
  left: 6.8%;
  width: 38%;
  display: none;
}

.documents-timer {
  position: absolute;
  top: 28.8%;
  left: 30%;
  width: 15%;
  display: none;
}

.database-files {
  position: absolute;
  top: 28.3%;
  left: 60.4%;
  width: 26.9%;
  height: 48.2%;
  z-index: 2;
  overflow: auto;
  display: none;
}

.modal {
  display: none;
  position: relative;
  z-index: 99999999999999999999999999999999999999;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.7);
}

.modal-content {
  font-family: 'Taxon';
  background-color: #091143;
  margin: auto;
  padding: 5%;
  border: 2px solid #ffffff;
  width: 90%;
  height: 60%;
  color: #ffffff;
  border-radius: 25px;
  text-align: center;
  font-weight: bold;
  font-size: min(max(5vh, 13px), 6vh);
  line-height: min(max(5vh, 13px), 6vh);
  margin-top: 7%;
}

.begin {
  font-family: 'Taxon';
  color: #ffffff;
  float: left;
  background: #7a0024;
  border-radius: 35px;
  border: 0px transparent;
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
  padding: 5px 10px;
  width: 27%;
  height: 170%;
  font-size: min(max(5vh, 13px), 6vh);
  line-height: min(max(5vh, 13px), 6vh);
  margin-left: 14%;
}

.begin:hover {
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
  background: #510017;
}

.rescue {
  font-family: 'Taxon';
  color: #091143;
  float: right;
  background: #74BF0D;
  border-radius: 35px;
  border: 0px transparent;
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
  padding: 5px 10px;
  width: 27%;
  height: 170%;
  font-size: min(max(5vh, 13px), 6vh);
  line-height: min(max(5vh, 13px), 6vh);
  margin-right: 14%;
}

.rescue:hover {
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
  background: #5a9408;
}

.modal-button {
  margin-top: 5%;
}

html:fullscreen .modal-button {
  margin-top: 12.5%;
}

.rep0 {
  position: absolute;
  top: 4%;
  left: 3.5%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep0 .rep0-hover {
  display: none;
}

.rep0:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep0 .rep0-normal {
  width: 100%;
}

.rep0:hover .rep0-normal {
  display: none;
}

.rep1 {
  position: absolute;
  top: 4%;
  left: 37.3%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep1 .rep0-hover {
  display: none;
}

.rep1:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep1 .rep0-normal {
  width: 100%;
}

.rep1:hover .rep0-normal {
  display: none;
}

.rep2 {
  position: absolute;
  top: 4%;
  left: 71%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep2 .rep0-hover {
  display: none;
}

.rep2:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep2 .rep0-normal {
  width: 100%;
}

.rep2:hover .rep0-normal {
  display: none;
}

.rep3 {
  position: absolute;
  top: 48%;
  left: 3.5%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep3 .rep0-hover {
  display: none;
}

.rep3:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep3 .rep0-normal {
  width: 100%;
}

.rep3:hover .rep0-normal {
  display: none;
}

.rep4 {
  position: absolute;
  top: 48%;
  left: 37.3%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep4 .rep0-hover {
  display: none;
}

.rep4:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep4 .rep0-normal {
  width: 100%;
}

.rep4:hover .rep0-normal {
  display: none;
}

.rep5 {
  position: absolute;
  top: 48%;
  left: 71%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep5 .rep0-hover {
  display: none;
}

.rep5:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep5 .rep0-normal {
  width: 100%;
}

.rep5:hover .rep0-normal {
  display: none;
}

.rep6 {
  position: absolute;
  top: 92%;
  left: 3.5%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep6 .rep0-hover {
  display: none;
}

.rep6:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep6 .rep0-normal {
  width: 100%;
}

.rep6:hover .rep0-normal {
  display: none;
}

.rep7 {
  position: absolute;
  top: 92%;
  left: 37.3%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep7 .rep0-hover {
  display: none;
}

.rep7:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep7 .rep0-normal {
  width: 100%;
}

.rep7:hover .rep0-normal {
  display: none;
}

.rep8 {
  position: absolute;
  top: 92%;
  left: 71%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep8 .rep0-hover {
  display: none;
}

.rep8:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep8 .rep0-normal {
  width: 100%;
}

.rep8:hover .rep0-normal {
  display: none;
}

.rep9 {
  position: absolute;
  top: 136%;
  left: 3.5%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep9 .rep0-hover {
  display: none;
}

.rep9:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep9 .rep0-normal {
  width: 100%;
}

.rep9:hover .rep0-normal {
  display: none;
}

.rep10 {
  position: absolute;
  top: 136%;
  left: 37.3%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep10 .rep0-hover {
  display: none;
}

.rep10:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep10 .rep0-normal {
  width: 100%;
}

.rep10:hover .rep0-normal {
  display: none;
}

.rep11 {
  position: absolute;
  top: 136%;
  left: 71%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep11 .rep0-hover {
  display: none;
}

.rep11:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep11 .rep0-normal {
  width: 100%;
}

.rep11:hover .rep0-normal {
  display: none;
}

.rep12 {
  position: absolute;
  top: 180%;
  left: 3.5%;
  width: 25%;
  z-index: 2;
  cursor: pointer;
  display: none;
}

.rep12 .rep0-hover {
  display: none;
}

.rep12:hover .rep0-hover {
  display: block;
  width: 100%;
}

.rep12 .rep0-normal {
  width: 100%;
}

.rep12:hover .rep0-normal {
  display: none;
}

.img-magnifier-glass:not(:last-of-type) {
  display: none !important;
}

.img-magnifier-glass {
	position: absolute;
	border: 3px solid #000;
	border-radius: 50%;
	cursor: none;
	width: 100px;
	height: 100px;
  -webkit-box-shadow: 0px 0px 8px 2px #000000; 
  box-shadow: 0px 0px 8px 2px #000000;
  z-index: 3;
}

.zoom-rep-0 {
  position: absolute;
  top: 13.5%;
  left: 13%;
  width: 39%;
  z-index: 2;
  display: none;
}

.zoom-rep {
  position: absolute;
  top: 12.9%;
  left: 10.5%;
  width: 44.5%;
  z-index: 2;
  display: none;
}

.zoom-rep-1 {
  position: absolute;
  top: 12.9%;
  left: 10.5%;
  width: 44.5%;
  z-index: 2;
  display: none;
  cursor: pointer;
}

.zoom-rep-1 .zoom-rep-0-img-hover {
  display: none;
}

.zoom-rep-1:hover .zoom-rep-0-img-hover {
  display: block;
  width: 100%;
}

.zoom-rep-1 .zoom-rep-0-img-normal {
  width: 100%;
}

.zoom-rep-1:hover .zoom-rep-0-img-normal {
  display: none;
}

.zoom-rep-2 {
  position: absolute;
  top: 12.9%;
  left: 10.5%;
  width: 44.5%;
  z-index: 2;
  display: none;
  cursor: pointer;
}

.zoom-rep-2 .zoom-rep-0-img-hover {
  display: none;
}

.zoom-rep-2:hover .zoom-rep-0-img-hover {
  display: block;
  width: 100%;
}

.zoom-rep-2 .zoom-rep-0-img-normal {
  width: 100%;
}

.zoom-rep-2:hover .zoom-rep-0-img-normal {
  display: none;
}

.zoom-help {
  position: absolute;
  top: 12.9%;
  left: 10.8%;
  width: 68.5%;
  z-index: 2;
  display: none;
  cursor: pointer;
}

.zoom-help .zoom-rep-0-img-hover {
  display: none;
}

.zoom-help:hover .zoom-rep-0-img-hover {
  display: block;
  width: 100%;
}

.zoom-help .zoom-rep-0-img-normal {
  width: 100%;
}

.zoom-help:hover .zoom-rep-0-img-normal {
  display: none;
}

.zoom-rep-0-img {
  width:100%;
  height:auto;
}

.zoom-close {
  position: absolute;
  top: 11%;
  left: 86%;
  width: 4%;
  z-index: 2;
  display: none;
  cursor: pointer;
}

.zoom-close:hover {
  filter: brightness(1.40);
}

.play_button {
  margin: 0 2px;
  outline: none;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  font: 18px/100% Arial, Helvetica, sans-serif;
  font-size: 18px;
  text-shadow: 0 1px 1px rgba(0,0,0,.3);
  -webkit-border-radius: .5em;
  -moz-border-radius: .5em;
  border-radius: .5em;
  -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  box-shadow: 0 1px 2px rgba(0,0,0,.2);
  color: #fef4e9;
  border: solid 1px #cccaca;
  background: #595959;
  background: -webkit-gradient(linear, left top, left bottom, from(#595959), to(#000));
  background: -moz-linear-gradient(top, #595959, #000);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#595959', endColorstr='#000');
}

.play-button {
  position: absolute;
  z-index: 1;
  font-size: 2.8vmin;
  font-family: Tahoma;
  left: 3.2%;
  top: 90%;
  width: 30%;
  height: 5%; 
  display: none;
}

.scroll-1 {
  font-family: 'Roboto Lt';
  overflow: hidden;
  text-align: left;
  height: 100%;
  -moz-transform: translateY(0%);
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  -o-transform: translateY(0%);
  transform: translateY(0%);
  -moz-animation: scroll-team 3s linear infinite;
  -webkit-animation: scroll-team 3s linear infinite;
  -ms-animation: scroll-team 3s linear infinite;
  -o-animation: scroll-team 3s linear infinite;
  animation: scroll-team 3s linear infinite;
}

@-moz-keyframes scroll-team {
  from { -moz-transform: translateY(-20%); }
  to { -moz-transform: translateY(-120%); }
}

@-webkit-keyframes scroll-team {
  from { -webkit-transform: translateY(-20%); }
  to { -webkit-transform: translateY(-120%); }
}

@-ms-keyframes scroll-team {
  from { -ms-transform: translateY(-20%); }
  to { -ms-transform: translateY(-120%); }
}

@keyframes scroll-team {
  from {
    -moz-transform: translateY(-20%);
    -webkit-transform: translateY(-20%);
    -ms-transform: translateY(-20%);
    -o-transform: translateY(-20%);
    transform: translateY(-20%);
  }
  to {
    -moz-transform: translateY(-120%);
    -webkit-transform: translateY(-120%);
    -ms-transform: translateY(-120%);
    -o-transform: translateY(-120%);
    transform: translateY(-120%);
  }
}

.scroll-container {
  background: rgba(0,0,0,0.6);
  width: 32%;
  margin-left: 18%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0%;
  color: #fff;
  font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  line-height: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  text-shadow: -1px 1px 0 #000, 1px 1px 0 #000, 1px -1px 0 #000, -1px -1px 0 #000;
}

.scroll-text {
  font-family: 'Veteran Typewriter';
  padding: 0 20px;
  text-align: left;
  height: 100%;
  -moz-transform: translateY(20%);
  -webkit-transform: translateY(20%);
  -ms-transform: translateY(20%);
  -o-transform: translateY(20%);
  transform: translateY(20%);
  -moz-animation: text-scroll-up 140s linear infinite;
  -webkit-animation: text-scroll-up 140s linear infinite;
  -ms-animation: text-scroll-up 140s linear infinite;
  -o-animation: text-scroll-up 140s linear infinite;
  animation: text-scroll-up 140s linear infinite;
}

@-moz-keyframes text-scroll-up {
  from { -moz-transform: translateY(20%); }
  to { -moz-transform: translateY(-200%); }
}

@-webkit-keyframes text-scroll-up {
  from { -webkit-transform: translateY(20%); }
  to { -webkit-transform: translateY(-200%); }
}

@-ms-keyframes text-scroll-up {
  from { -ms-transform: translateY(20%); }
  to { -ms-transform: translateY(-200%); }
}

@keyframes text-scroll-up {
  from {
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
  }
  to {
    -moz-transform: translateY(-200%);
    -webkit-transform: translateY(-200%);
    -ms-transform: translateY(-200%);
    -o-transform: translateY(-200%);
    transform: translateY(-200%);
  }
}

.shake {
  animation: shake 0.92s cubic-bezier(.36,.07,.19,.97) both;
  -moz-animation: shake 0.92s cubic-bezier(.36,.07,.19,.97) both;
  -webkit-animation: shake 0.92s cubic-bezier(.36,.07,.19,.97) both;
  -ms-animation: shake 0.92s cubic-bezier(.36,.07,.19,.97) both;
  -o-animation: shake 0.92s cubic-bezier(.36,.07,.19,.97) both;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  perspective: 1000px;
}

@-moz-keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

@-webkit-keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

@-ms-keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

.blink-image {
    -moz-animation: blink normal 2s infinite ease-in-out;
    -webkit-animation: blink normal 2s infinite ease-in-out;
    -ms-animation: blink normal 2s infinite ease-in-out;
    -o-animation: blink normal 2s infinite ease-in-out;
    animation: blink normal 2s infinite ease-in-out;
}
 
@-moz-keyframes blink {
    0% {
        opacity:1;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
} 
 
@-webkit-keyframes blink {
    0% {
        opacity:1;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}

@-ms-keyframes blink {
    0% {
        opacity:1;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
} 

@keyframes blink {
    0% {
        opacity:1;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
} 

@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes fadeout {
    from { opacity: 1; }
    to   { opacity: 0; }
}

@-moz-keyframes fadein {
    from { opacity: 1; }
    to   { opacity: 0; }
}

@-webkit-keyframes fadein {
    from { opacity: 1; }
    to   { opacity: 0; }
}

@-ms-keyframes fadein {
    from { opacity: 1; }
    to   { opacity: 0; }
}

.clues-carousel {
  position: absolute;
  width: 45%;
  top: 12.2%;
  left: 38.3%;
  z-index: 1;
  display: none;
}

.carousel {
  box-sizing: border-box;
  scrollbar-color: transparent transparent;
  scrollbar-width: 0px;
  -ms-overflow-style: none;
}

.carousel::-webkit-scrollbar {
  width: 0;
}

.carousel::-webkit-scrollbar-track {
  background: transparent;
}

.carousel::-webkit-scrollbar-thumb {
  background: transparent;
  border: none;
}

ol, li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.carousel {
  position: relative;
  padding-top: 88%;
}

.carousel__viewport {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  overflow-x: hidden;
  counter-reset: item;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}

.slide_img1 {
  background: url("../images/zoom_quadro_1.png") no-repeat center; 
  background-size: contain;
}

.slide_img2 {
  background: url("../images/zoom_quadro_2.png") no-repeat center;
  background-size: contain; 
}
.carousel__slide {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  counter-increment: item;
}

.carousel__snapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  scroll-snap-align: center;
}

.carousel:hover .carousel__snapper,
.carousel:focus-within .carousel__snapper {
  animation-name: none;
}

.carousel::before,
.carousel::after,
.carousel__prev,
.carousel__next {
  position: absolute;
  top: 0;
  margin: 42.5% -2%;
  width: 12%;
  height: 30%;
  transform: translateY(-50%);
  font-size: 0;
  outline: 0;
}

.carousel::before,
.carousel__prev {
  left: 0rem;
}

.carousel::after,
.carousel__next {
  right: 0rem;
}

.carousel::before,
.carousel::after {
  z-index: 1;
  background-position: center center;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: 100%;
  content: "";
}

.carousel::before {
  background-image: url("../images/freccia_sinistra.png");
}

.carousel::after {
  background-image: url("../images/freccia_destra.png");
}


@media only screen and (min-width: 1920px) {
  .title-rule {
    font-size: calc(2.5rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1.5rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(1.5rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep7b {
    font-size: calc(0.1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.4rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(0.7rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.3rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media (min-width: 1281px) and (max-width: 1919px) {

  .title-rule {
    font-size: calc(2.2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.5rem + ((1vw - 0.48rem) * 1.3889));
  }
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(0.3rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.6rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media (min-width: 1025px) and (max-width: 1280px) {

  .scroll-text {
    padding: 0 15px;
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
    -moz-animation: text-scroll-up 140s linear infinite;
    -webkit-animation: text-scroll-up 140s linear infinite;
    -ms-animation: text-scroll-up 140s linear infinite;
    -o-animation: text-scroll-up 140s linear infinite;
    animation: text-scroll-up 140s linear infinite;
  }
  
  @-moz-keyframes text-scroll-up {
    from { -moz-transform: translateY(20%); }
    to { -moz-transform: translateY(-250%); }
  }
  
  @-webkit-keyframes text-scroll-up {
    from { -webkit-transform: translateY(20%); }
    to { -webkit-transform: translateY(-250%); }
  }
  
  @-ms-keyframes text-scroll-up {
    from { -ms-transform: translateY(20%); }
    to { -ms-transform: translateY(-250%); }
  }
  
  @keyframes text-scroll-up {
    from {
      -moz-transform: translateY(20%);
      -webkit-transform: translateY(20%);
      -ms-transform: translateY(20%);
      -o-transform: translateY(20%);
      transform: translateY(20%);
    }
    to {
      -moz-transform: translateY(-250%);
      -webkit-transform: translateY(-250%);
      -ms-transform: translateY(-250%);
      -o-transform: translateY(-250%);
      transform: translateY(-250%);
    }
  }
  .title-rule {
    font-size: calc(1.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule-note {
    font-size: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
}
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(0.5rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.7rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media (min-width: 768px) and (max-width: 1024px) {

  .scroll-text {
    padding: 0 15px;
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
    -moz-animation: text-scroll-up 140s linear infinite;
    -webkit-animation: text-scroll-up 140s linear infinite;
    -ms-animation: text-scroll-up 140s linear infinite;
    -o-animation: text-scroll-up 140s linear infinite;
    animation: text-scroll-up 140s linear infinite;
  }
  
  @-moz-keyframes text-scroll-up {
    from { -moz-transform: translateY(20%); }
    to { -moz-transform: translateY(-350%); }
  }
  
  @-webkit-keyframes text-scroll-up {
    from { -webkit-transform: translateY(20%); }
    to { -webkit-transform: translateY(-350%); }
  }
  
  @-ms-keyframes text-scroll-up {
    from { -ms-transform: translateY(20%); }
    to { -ms-transform: translateY(-350%); }
  }
  
  @keyframes text-scroll-up {
    from {
      -moz-transform: translateY(20%);
      -webkit-transform: translateY(20%);
      -ms-transform: translateY(20%);
      -o-transform: translateY(20%);
      transform: translateY(20%);
    }
    to {
      -moz-transform: translateY(-350%);
      -webkit-transform: translateY(-350%);
      -ms-transform: translateY(-350%);
      -o-transform: translateY(-350%);
      transform: translateY(-350%);
    }
  }
  .title-rule {
    font-size: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule-note {
    font-size: calc(0.699rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(0.6rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {

  .scroll-text {
    padding: 0 15px;
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
    -moz-animation: text-scroll-up 140s linear infinite;
    -webkit-animation: text-scroll-up 140s linear infinite;
    -ms-animation: text-scroll-up 140s linear infinite;
    -o-animation: text-scroll-up 140s linear infinite;
    animation: text-scroll-up 140s linear infinite;
  }
  
  @-moz-keyframes text-scroll-up {
    from { -moz-transform: translateY(20%); }
    to { -moz-transform: translateY(-350%); }
  }
  
  @-webkit-keyframes text-scroll-up {
    from { -webkit-transform: translateY(20%); }
    to { -webkit-transform: translateY(-350%); }
  }
  
  @-ms-keyframes text-scroll-up {
    from { -ms-transform: translateY(20%); }
    to { -ms-transform: translateY(-350%); }
  }
  
  @keyframes text-scroll-up {
    from {
      -moz-transform: translateY(20%);
      -webkit-transform: translateY(20%);
      -ms-transform: translateY(20%);
      -o-transform: translateY(20%);
      transform: translateY(20%);
    }
    to {
      -moz-transform: translateY(-350%);
      -webkit-transform: translateY(-350%);
      -ms-transform: translateY(-350%);
      -o-transform: translateY(-350%);
      transform: translateY(-350%);
    }
  }
  .title-rule {
    font-size: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule-note {
    font-size: calc(0.699rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(0.6rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media (min-width: 481px) and (max-width: 767px) {

  .scroll-text {
    padding: 0 15px;
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
    -moz-animation: text-scroll-up 140s linear infinite;
    -webkit-animation: text-scroll-up 140s linear infinite;
    -ms-animation: text-scroll-up 140s linear infinite;
    -o-animation: text-scroll-up 140s linear infinite;
    animation: text-scroll-up 140s linear infinite;
  }
  
  @-moz-keyframes text-scroll-up {
    from { -moz-transform: translateY(20%); }
    to { -moz-transform: translateY(-400%); }
  }
  
  @-webkit-keyframes text-scroll-up {
    from { -webkit-transform: translateY(20%); }
    to { -webkit-transform: translateY(-400%); }
  }
  
  @-ms-keyframes text-scroll-up {
    from { -ms-transform: translateY(20%); }
    to { -ms-transform: translateY(-400%); }
  }
  
  @keyframes text-scroll-up {
    from {
      -moz-transform: translateY(20%);
      -webkit-transform: translateY(20%);
      -ms-transform: translateY(20%);
      -o-transform: translateY(20%);
      transform: translateY(20%);
    }
    to {
      -moz-transform: translateY(-400%);
      -webkit-transform: translateY(-400%);
      -ms-transform: translateY(-400%);
      -o-transform: translateY(-400%);
      transform: translateY(-400%);
    }
  }
  .title-rule {
    font-size: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule-note {
    font-size: calc(0.699rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.2rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media (min-width: 1px) and (max-width: 480px) {

  .scroll-text {
    padding: 0 15px;
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
    -moz-animation: text-scroll-up 140s linear infinite;
    -webkit-animation: text-scroll-up 140s linear infinite;
    -ms-animation: text-scroll-up 140s linear infinite;
    -o-animation: text-scroll-up 140s linear infinite;
    animation: text-scroll-up 140s linear infinite;
  }
  
  @-moz-keyframes text-scroll-up {
    from { -moz-transform: translateY(20%); }
    to { -moz-transform: translateY(-650%); }
  }
  
  @-webkit-keyframes text-scroll-up {
    from { -webkit-transform: translateY(20%); }
    to { -webkit-transform: translateY(-650%); }
  }
  
  @-ms-keyframes text-scroll-up {
    from { -ms-transform: translateY(20%); }
    to { -ms-transform: translateY(-650%); }
  }
  
  @keyframes text-scroll-up {
    from {
      -moz-transform: translateY(20%);
      -webkit-transform: translateY(20%);
      -ms-transform: translateY(20%);
      -o-transform: translateY(20%);
      transform: translateY(20%);
    }
    to {
      -moz-transform: translateY(-650%);
      -webkit-transform: translateY(-650%);
      -ms-transform: translateY(-650%);
      -o-transform: translateY(-650%);
      transform: translateY(-650%);
    }
  }
  .title-rule {
    font-size: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule-note {
    font-size: calc(0.699rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.4rem + ((1vw - 0.48rem) * 1.3889));
  }
}

@media screen and (orientation:landscape) and (max-height: 480px) {
  .scroll-text {
    padding: 0 15px;
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
    -moz-animation: text-scroll-up 140s linear infinite;
    -webkit-animation: text-scroll-up 140s linear infinite;
    -ms-animation: text-scroll-up 140s linear infinite;
    -o-animation: text-scroll-up 140s linear infinite;
    animation: text-scroll-up 140s linear infinite;
  }
  
  @-moz-keyframes text-scroll-up {
    from { -moz-transform: translateY(20%); }
    to { -moz-transform: translateY(-420%); }
  }
  
  @-webkit-keyframes text-scroll-up {
    from { -webkit-transform: translateY(20%); }
    to { -webkit-transform: translateY(-420%); }
  }
  
  @-ms-keyframes text-scroll-up {
    from { -ms-transform: translateY(20%); }
    to { -ms-transform: translateY(-420%); }
  }
  
  @keyframes text-scroll-up {
    from {
      -moz-transform: translateY(20%);
      -webkit-transform: translateY(20%);
      -ms-transform: translateY(20%);
      -o-transform: translateY(20%);
      transform: translateY(20%);
    }
    to {
      -moz-transform: translateY(-420%);
      -webkit-transform: translateY(-420%);
      -ms-transform: translateY(-420%);
      -o-transform: translateY(-420%);
      transform: translateY(-420%);
    }
  }
  .title-rule {
    font-size: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .title-rule2 {
    font-size: calc(1rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule {
    font-size: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rule-note {
    font-size: calc(0.699rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
  }
  .text-rep7b {
    height: 46%;
  }
  .p-rep7b {
    font-size: calc(0.7rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(0.9rem + ((1vw - 0.48rem) * 1.3889));
  }
  .p-rep8a2 {
    font-size: calc(0.8rem + ((1vw - 0.48rem) * 1.3889));
    line-height: calc(1.1rem + ((1vw - 0.48rem) * 1.3889));
  }
}