/* footer style**************************************************************************************/
footer {
  background: var(--bg_base);
  padding: 6rem 2rem 1rem;
}
footer > .wrapper {
  max-width: 108rem;
  margin: auto;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 1lh 5rem;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .logo-wrap .logo {
  max-width: 21.4rem;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .logo-wrap .info-txt {
  margin-top: 0.5em;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .logo-wrap .info-txt p {
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 0.5em;
  position: relative;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap::before {
  content: "";
  width: 0;
  height: 100%;
  border-left: 0.1rem solid var(--bdr_gray_pale);
  position: absolute;
  top: 0;
  left: -2.5rem;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap li {
  height: 100%;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap li a {
  border: 0.1rem solid;
  border-radius: 0.8rem;
  padding: 0.75lh 1lh;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap li a:hover, footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap li a:focus {
  background: var(--c_primary_light);
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap li a.add-arrow-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5lh;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 0.8rem;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a {
  min-width: 13rem;
  height: 100%;
  border-radius: 100vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5lh;
  padding: 0.75em 0.5lh;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a.cta-download {
  color: var(--c_white);
  background: var(--c_primary);
  border: 0.1rem solid var(--c_primary);
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a.cta-download:hover, footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a.cta-download:focus {
  color: var(--c_primary);
  background: var(--c_white);
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a.cta-contact {
  color: var(--c_txt);
  border: 0.1rem solid var(--c_accent);
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a.cta-contact:hover, footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a.cta-contact:focus {
  background: var(--c_white);
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a .fa-icon {
  font-size: 1.25em;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a[target=_blank]::after {
  content: none;
}
footer > .wrapper > .inner nav.main-nav {
  margin-top: 5rem;
}
footer > .wrapper > .inner nav.main-nav .flex-wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 1lh 3rem;
}
footer > .wrapper > .inner nav.main-nav .flex-wrap .wrap .flex-wrap {
  padding-left: 1.7em;
}
footer > .wrapper > .inner nav.main-nav .flex-wrap ul li + li {
  margin-top: 0.5em;
}
footer > .wrapper > .inner nav.main-nav .flex-wrap ul li:not(.ttl-link, .parent-link) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding-left: 1em;
}
footer > .wrapper > .inner nav.main-nav .flex-wrap ul li:not(.ttl-link, .parent-link) a {
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.25em;
}
footer > .wrapper > .inner nav.main-nav .flex-wrap ul li:not(.ttl-link, .parent-link) a::before {
  content: "";
  width: 0.75em;
  height: 0.75em;
  border-bottom: 0.1rem solid;
  translate: 0 -50%;
}
footer > .wrapper > .inner nav.main-nav .ttl-link {
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
footer > .wrapper > .inner nav.main-nav .ttl-link + * {
  margin-top: 1em;
}
footer > .wrapper > .inner nav.main-nav .ttl-link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
}
footer > .wrapper > .inner nav.main-nav .ttl-link a .circle-icon {
  color: var(--c_white);
  background: var(--c_primary);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner nav.main-nav .ttl-link a:hover .circle-icon, footer > .wrapper > .inner nav.main-nav .ttl-link a:focus .circle-icon {
  color: var(--c_primary);
  background: var(--c_white);
}
footer > .wrapper > .inner nav.main-nav .parent-link {
  font-size: 1.4rem;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
footer > .wrapper > .inner nav.main-nav .parent-link + * {
  margin-top: 0.5em;
}
footer > .wrapper > .inner nav.main-nav .parent-link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
}
footer > .wrapper > .inner nav.main-nav .parent-link a .fa-icon {
  width: 1em;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner nav.main-nav .parent-link a:hover, footer > .wrapper > .inner nav.main-nav .parent-link a:focus {
  color: var(--c_primary);
}
footer > .wrapper > .inner nav.main-nav .parent-link a:hover .fa-icon, footer > .wrapper > .inner nav.main-nav .parent-link a:focus .fa-icon {
  translate: 50% 0;
}
footer > .wrapper > .inner nav.main-nav a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner nav.main-nav a:hover, footer > .wrapper > .inner nav.main-nav a:focus {
  color: var(--c_primary);
}
footer > .wrapper > .inner nav.sub-nav {
  margin-top: 10rem;
}
footer > .wrapper > .inner nav.sub-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2em;
}
footer > .wrapper > .inner nav.sub-nav ul li {
  font-size: 1.2rem;
}
footer > .wrapper > .inner nav.sub-nav ul li + li {
  position: relative;
}
footer > .wrapper > .inner nav.sub-nav ul li + li::before {
  content: "";
  width: 1em;
  height: 1em;
  border-left: 0.1rem solid;
  position: absolute;
  top: 50%;
  left: -1em;
  translate: -50% -50%;
}
footer > .wrapper > .inner nav.sub-nav a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner nav.sub-nav a:hover, footer > .wrapper > .inner nav.sub-nav a:focus {
  color: var(--c_primary);
}
footer > .wrapper > .inner nav.main-nav a span:not([class]), footer > .wrapper > .inner nav.sub-nav a span:not([class]) {
  border-bottom: 0.1rem solid transparent;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer > .wrapper > .inner nav.main-nav a:hover span:not([class]), footer > .wrapper > .inner nav.main-nav a:focus span:not([class]), footer > .wrapper > .inner nav.sub-nav a:hover span:not([class]), footer > .wrapper > .inner nav.sub-nav a:focus span:not([class]) {
  border-color: var(--c_primary);
}

.fixed-nav-wrap {
  display: inline-block;
  position: fixed;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  z-index: 9999;
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 0.5em 0.2rem;
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li {
  font-size: 1.3rem;
  font-weight: 500;
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a {
  width: 100%;
  border-radius: 1rem 0 0 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
  padding: 2lh 1lh;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-contact[target=_blank]::after, .fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-magazine[target=_blank]::after {
  content: none;
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-magazine {
  color: var(--c_white);
  background: var(--c_primary);
  border: 0.1rem solid var(--c_primary);
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-magazine:hover, .fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-magazine:focus {
  color: var(--c_primary);
  background: var(--c_white);
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-contact {
  background: var(--c_accent);
  border: 0.1rem solid var(--c_accent);
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-contact:hover, .fixed-nav-wrap .fixed-nav ul.magazine-contact li a.mail-contact:focus {
  background: var(--c_white);
}
.fixed-nav-wrap .fixed-nav ul.magazine-contact li a .fa-icon {
  width: 1.25lh;
  height: 1.25lh;
}

.foot-outer {
  background: var(--bg_base);
  padding: 1rem 2rem;
}
.foot-outer .copyright {
  font-size: 1rem;
  text-align: center;
}

/* footer style end */

@media all and (max-width: 1023px) {
  footer {
    padding-bottom: 2rem;
  }
  footer > .wrapper > .inner .logo-info-cta-flex-wrap {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1lh;
  }
  footer > .wrapper > .inner .logo-info-cta-flex-wrap .logo-info-wrap .other-wrap {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap {
    width: 100%;
  }
  footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap {
    width: 100%;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li {
    width: 100%;
    max-width: 37.5rem;
  }
  footer > .wrapper > .inner .logo-info-cta-flex-wrap .cta-wrap .btn-wrap li a {
    width: 100%;
    min-width: auto;
  }
  footer > .wrapper > .inner nav.main-nav .flex-wrap {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  footer > .wrapper > .inner nav.sub-nav {
    margin-top: 5rem;
  }
  footer > .wrapper > .inner nav.sub-nav ul {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 1em 2em;
  }
  footer > .wrapper > .inner nav.sub-nav ul li + li::before {
    content: none;
  }
  .fixed-nav-wrap {
    display: block;
    position: sticky;
    top: auto;
    bottom: 0;
    right: 0;
    translate: 0 0;
  }
  .fixed-nav-wrap .fixed-nav ul.magazine-contact {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .fixed-nav-wrap .fixed-nav ul.magazine-contact li {
    width: 100%;
  }
  .fixed-nav-wrap .fixed-nav ul.magazine-contact li.txt-vertical-writing a, .fixed-nav-wrap .fixed-nav ul.magazine-contact li.txt-vertical-writing span {
    -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
            writing-mode: unset;
  }
  .fixed-nav-wrap .fixed-nav ul.magazine-contact li a {
    border-radius: 0;
    padding: 1.25em 1lh;
  }
}

@media all and (min-width: 1024px) {
  footer > .wrapper > .inner nav.main-nav .flex-wrap .wrap .ttl-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1em;
  }
  footer > .wrapper > .inner nav.main-nav .flex-wrap .wrap .ttl-link a {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  footer > .wrapper > .inner nav.main-nav .flex-wrap .wrap .ttl-link::after {
    content: "";
    width: 100%;
    border-top: 0.1rem solid var(--bdr_gray_pale);
  }
}
/*# sourceMappingURL=map/footer.css.map */
