@charset "UTF-8";
:root {
  --content-width: 1200px;
  --content-padding: 15px;
  --scrollbar-width: calc(100vw - 100%);
}

html, body, main {
  height: 100%;
}

body, main {
  font-family: "Noto Sans JP", sans-serif;
  font-size: calc(100vw / 26);
  line-height: 2;
  color: #000000;
  background-color: #fff;
  word-wrap: break-word;
  --color-blue: #053a7b;
  --color-yellow: #f7b52c;
  --color-red: #e61f19;
  --color-sky: #009ce1;
  --color-darkgray: #757575;
  --color-lightgray: #ececec;
  overflow-x: hidden;
}
@media (min-width: 416px) {
  body, main {
    font-size: 16px;
  }
}
@media (max-width: 312px) {
  body, main {
    font-size: 12px;
  }
}

.content, main .figure > div, main .reason > div, main .jounal > div, main .banners > div, main .buttons > div, main #feature > div, main #function > div, main .neighbours > div, main .plan > div {
  box-sizing: content-box;
  max-width: var(--content-width);
  padding: 0 var(--content-padding);
  margin: 0 auto;
}

body .is-layout-constrained > .full-width:where(:not(.alignleft):not(.alignright):not(.alignfull)),
.full-width,
main .figure,
main .reason,
main .jounal,
main .banners,
main .buttons,
main #feature,
main #function,
main .neighbours {
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
}

.heading, main h1, main h2, main h3, main h4, main h5, main h6 {
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
}

a[href^="tel:"] {
  font-family: "Lato", sans-serif;
  font-weight: bold;
}
body.is-desktop a[href^="tel:"], main.is-desktop a[href^="tel:"] {
  pointer-events: none;
}

.button {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  display: inline-block;
  border-radius: 5px;
  padding: 0 1em;
}

.icon {
  display: inline-block;
  vertical-align: middle;
}
.icon::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f152";
  margin-right: 0.25em;
}
.icon.request {
  display: inline-block;
  vertical-align: middle;
}
.icon.request::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0e0";
  margin-right: 0.25em;
}
.icon.documents {
  display: inline-block;
  vertical-align: middle;
}
.icon.documents::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f56d";
  margin-right: 0.25em;
}
.icon.call {
  display: inline-block;
  vertical-align: middle;
}
.icon.call::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f879";
  margin-right: 0.25em;
}

#svo {
  color: #fff;
  background-image: url("../images/title_bg.png");
}

#header {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1000;
}
#header > .content, main .figure#header > div, main .reason#header > div, main .jounal#header > div, main .banners#header > div, main .buttons#header > div, main .neighbours#header > div, main .plan#header > div {
  order: 2;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  flex-basis: calc(100% - 100px);
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
#header > .content .logo a, main .figure#header > div .logo a, main .reason#header > div .logo a, main .jounal#header > div .logo a, main .banners#header > div .logo a, main .buttons#header > div .logo a, main .neighbours#header > div .logo a, main .plan#header > div .logo a {
  display: block;
}
#header > .content .logo a img, main .figure#header > div .logo a img, main .reason#header > div .logo a img, main .jounal#header > div .logo a img, main .banners#header > div .logo a img, main .buttons#header > div .logo a img, main .neighbours#header > div .logo a img, main .plan#header > div .logo a img {
  max-width: 100%;
}
#header > .content .logo a .sholdercopy, main .figure#header > div .logo a .sholdercopy, main .reason#header > div .logo a .sholdercopy, main .jounal#header > div .logo a .sholdercopy, main .banners#header > div .logo a .sholdercopy, main .buttons#header > div .logo a .sholdercopy, main .neighbours#header > div .logo a .sholdercopy, main .plan#header > div .logo a .sholdercopy {
  display: block;
  line-height: 1.2;
  margin: 0.5em 0;
  word-break: keep-all;
}
#header > .content .shortcut-links, main .figure#header > div .shortcut-links, main .reason#header > div .shortcut-links, main .jounal#header > div .shortcut-links, main .banners#header > div .shortcut-links, main .buttons#header > div .shortcut-links, main .neighbours#header > div .shortcut-links, main .plan#header > div .shortcut-links {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 50px;
  background-color: #fff;
  display: flex;
  justify-content: space-around;
  align-items: center;
  line-height: 1.4;
}
#header > .content .shortcut-links a.icon, main .figure#header > div .shortcut-links a.icon, main .reason#header > div .shortcut-links a.icon, main .jounal#header > div .shortcut-links a.icon, main .banners#header > div .shortcut-links a.icon, main .buttons#header > div .shortcut-links a.icon, main .neighbours#header > div .shortcut-links a.icon, main .plan#header > div .shortcut-links a.icon {
  line-height: 1.2;
  text-align: center;
  color: #043A7B;
}
#header > .content .shortcut-links a.icon::before, main .figure#header > div .shortcut-links a.icon::before, main .reason#header > div .shortcut-links a.icon::before, main .jounal#header > div .shortcut-links a.icon::before, main .banners#header > div .shortcut-links a.icon::before, main .buttons#header > div .shortcut-links a.icon::before, main .neighbours#header > div .shortcut-links a.icon::before, main .plan#header > div .shortcut-links a.icon::before {
  color: #555;
  margin: 0;
}
#header > .content .shortcut-links a.icon > span, main .figure#header > div .shortcut-links a.icon > span, main .reason#header > div .shortcut-links a.icon > span, main .jounal#header > div .shortcut-links a.icon > span, main .banners#header > div .shortcut-links a.icon > span, main .buttons#header > div .shortcut-links a.icon > span, main .neighbours#header > div .shortcut-links a.icon > span, main .plan#header > div .shortcut-links a.icon > span {
  display: none;
}
#header > .content .shortcut-links a.icon::after, main .figure#header > div .shortcut-links a.icon::after, main .reason#header > div .shortcut-links a.icon::after, main .jounal#header > div .shortcut-links a.icon::after, main .banners#header > div .shortcut-links a.icon::after, main .buttons#header > div .shortcut-links a.icon::after, main .neighbours#header > div .shortcut-links a.icon::after, main .plan#header > div .shortcut-links a.icon::after {
  display: block;
  content: attr(title);
  font-size: 0.75rem;
}
@media (min-width: 1000px) {
  #header > .content .shortcut-links, main .figure#header > div .shortcut-links, main .reason#header > div .shortcut-links, main .jounal#header > div .shortcut-links, main .banners#header > div .shortcut-links, main .buttons#header > div .shortcut-links, main .neighbours#header > div .shortcut-links, main .plan#header > div .shortcut-links {
    position: static;
    box-shadow: none;
    width: auto;
    height: auto;
    padding: 0;
  }
  #header > .content .shortcut-links a.icon, main .figure#header > div .shortcut-links a.icon, main .reason#header > div .shortcut-links a.icon, main .jounal#header > div .shortcut-links a.icon, main .banners#header > div .shortcut-links a.icon, main .buttons#header > div .shortcut-links a.icon, main .neighbours#header > div .shortcut-links a.icon, main .plan#header > div .shortcut-links a.icon {
    margin-left: 1em;
  }
  #header > .content .shortcut-links a.icon::before, main .figure#header > div .shortcut-links a.icon::before, main .reason#header > div .shortcut-links a.icon::before, main .jounal#header > div .shortcut-links a.icon::before, main .banners#header > div .shortcut-links a.icon::before, main .buttons#header > div .shortcut-links a.icon::before, main .neighbours#header > div .shortcut-links a.icon::before, main .plan#header > div .shortcut-links a.icon::before {
    margin-right: 0.25em;
  }
  #header > .content .shortcut-links a.icon > span, main .figure#header > div .shortcut-links a.icon > span, main .reason#header > div .shortcut-links a.icon > span, main .jounal#header > div .shortcut-links a.icon > span, main .banners#header > div .shortcut-links a.icon > span, main .buttons#header > div .shortcut-links a.icon > span, main .neighbours#header > div .shortcut-links a.icon > span, main .plan#header > div .shortcut-links a.icon > span {
    display: inline-block;
  }
  #header > .content .shortcut-links a.icon::after, main .figure#header > div .shortcut-links a.icon::after, main .reason#header > div .shortcut-links a.icon::after, main .jounal#header > div .shortcut-links a.icon::after, main .banners#header > div .shortcut-links a.icon::after, main .buttons#header > div .shortcut-links a.icon::after, main .neighbours#header > div .shortcut-links a.icon::after, main .plan#header > div .shortcut-links a.icon::after {
    display: none;
  }
  #header > .content .shortcut-links a.trial, main .figure#header > div .shortcut-links a.trial, main .reason#header > div .shortcut-links a.trial, main .jounal#header > div .shortcut-links a.trial, main .banners#header > div .shortcut-links a.trial, main .buttons#header > div .shortcut-links a.trial, main .neighbours#header > div .shortcut-links a.trial, main .plan#header > div .shortcut-links a.trial {
    position: absolute;
    top: 100%;
    right: var(--content-padding);
    box-sizing: border-box;
    background-color: #F8B62C;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    width: 120px;
    height: 120px;
    border-radius: 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-image: url("../images/to_entry.png");
    background-position: center center;
    background-size: contain;
  }
  #header > .content .shortcut-links a.trial > span, main .figure#header > div .shortcut-links a.trial > span, main .reason#header > div .shortcut-links a.trial > span, main .jounal#header > div .shortcut-links a.trial > span, main .banners#header > div .shortcut-links a.trial > span, main .buttons#header > div .shortcut-links a.trial > span, main .neighbours#header > div .shortcut-links a.trial > span, main .plan#header > div .shortcut-links a.trial > span {
    display: block;
    margin: 0 1em 0.25em;
    line-height: 1.4;
    text-align: center;
    position: relative;
    padding-bottom: 0.25em;
    border-bottom: 1px solid #555;
    display: none;
  }
  #header > .content .shortcut-links a.trial > span::after, main .figure#header > div .shortcut-links a.trial > span::after, main .reason#header > div .shortcut-links a.trial > span::after, main .jounal#header > div .shortcut-links a.trial > span::after, main .banners#header > div .shortcut-links a.trial > span::after, main .buttons#header > div .shortcut-links a.trial > span::after, main .neighbours#header > div .shortcut-links a.trial > span::after, main .plan#header > div .shortcut-links a.trial > span::after {
    content: "";
    display: block;
    width: 0.5em;
    border-bottom: 1px solid #555;
    position: absolute;
    right: 0;
    bottom: 0;
    transform-origin: right bottom;
    transform: rotate(30deg);
  }
  #header > .content .shortcut-links a.trial::before, main .figure#header > div .shortcut-links a.trial::before, main .reason#header > div .shortcut-links a.trial::before, main .jounal#header > div .shortcut-links a.trial::before, main .banners#header > div .shortcut-links a.trial::before, main .buttons#header > div .shortcut-links a.trial::before, main .neighbours#header > div .shortcut-links a.trial::before, main .plan#header > div .shortcut-links a.trial::before {
    display: none;
  }
  #header > .content .shortcut-links a.trial::after, main .figure#header > div .shortcut-links a.trial::after, main .reason#header > div .shortcut-links a.trial::after, main .jounal#header > div .shortcut-links a.trial::after, main .banners#header > div .shortcut-links a.trial::after, main .buttons#header > div .shortcut-links a.trial::after, main .neighbours#header > div .shortcut-links a.trial::after, main .plan#header > div .shortcut-links a.trial::after {
    content: "こちらから";
    display: block;
    color: #555;
    font-size: 0.9rem;
    display: none;
  }
}
#header > #gnav {
  order: 3;
  flex-grow: 1;
}
@media screen and (min-width: 1000px) {
  #header > #gnav {
    flex-basis: 100%;
  }
}
#header > #gnav .menu a {
  font-weight: bold;
}
#header > #gnav [data-style=hamburger] > .hamburger-checkbox ~ .hamburger-label {
  display: block;
  font-size: 2rem;
  width: auto;
  height: auto;
}
#header > #gnav [data-style=hamburger] > .hamburger-checkbox ~ .hamburger-label::before {
  color: #555;
}
#header > #gnav [data-style=hamburger] > .hamburger-checkbox:checked ~ .hamburger-label::before {
  content: "\f335";
}
#header > #gnav [data-style=hamburger] > .hamburger-checkbox ~ .menu {
  display: block;
  position: absolute;
  right: var(--content-padding);
  background-color: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  padding: var(--content-padding);
  transition: transform 0.5s;
  transform-origin: top right;
  transform: scale(0);
}
#header > #gnav [data-style=hamburger] > .hamburger-checkbox ~ .menu a {
  display: block;
  border-bottom: 1px solid #d0d0d0;
}
#header > #gnav [data-style=hamburger] > .hamburger-checkbox:checked ~ .menu {
  transform: scale(1);
}
#header > #gnav [data-style=bar] .menu {
  width: calc(100% - 150px);
  justify-content: flex-start;
  color: #555;
  font-size: 0.9rem;
}
#header > #gnav [data-style=bar] .menu > li {
  flex-grow: 0;
  margin-right: 1.5em;
  margin-top: 0.25em;
}
#header > #gnav [data-style=bar] .menu > li > a {
  color: inherit;
}
#header > #gnav [data-style=bar] .menu > li > a::after {
  content: "";
  display: block;
  height: 0;
  width: 2em;
  margin: 0.25em auto 0;
  border-bottom: 5px solid transparent;
}
#header > #gnav [data-style=bar] .menu > li.current-ancestor > a::after, #header > #gnav [data-style=bar] .menu > li.current-page > a::after {
  border-bottom-color: #043A7B;
}
#header > .lang {
  order: 1;
  flex-basis: 100%;
  color: #fff;
  background-color: #043A7B;
  font-size: 0.9rem;
}
#header > .lang > .content, main #header > .figure.lang > div, main #header > .reason.lang > div, main #header > .jounal.lang > div, main #header > .banners.lang > div, main #header > .buttons.lang > div, main #header > #feature.lang > div, main #header > #function.lang > div, main #header > .neighbours.lang > div, main #header > .plan.lang > div {
  text-align: right;
}
#header > .lang > .content a, main #header > .figure.lang > div a, main #header > .reason.lang > div a, main #header > .jounal.lang > div a, main #header > .banners.lang > div a, main #header > .buttons.lang > div a, main #header > #feature.lang > div a, main #header > #function.lang > div a, main #header > .neighbours.lang > div a, main #header > .plan.lang > div a {
  margin: 0 0.5em;
}

#breadcrumbs {
  font-size: smaller;
  background-color: rgba(221, 243, 254, 0.5);
}
#breadcrumbs > * {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

#svo {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  padding-top: 1em;
  padding-bottom: 1em;
  background-color: #eee;
}

#snav {
  order: 4;
  flex-grow: 1;
  background-color: #043A7B;
  color: #fff;
  overflow-x: auto;
  max-width: 100%;
}
@media screen and (min-width: 1000px) {
  #snav {
    flex-basis: 100%;
  }
}
#snav [data-style=bar] .menu {
  justify-content: center;
  color: #555;
  font-size: 0.9rem;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  white-space: nowrap;
}
#snav [data-style=bar] .menu > li {
  flex-grow: 0;
  margin: 0.25em 0.75em 0;
  line-height: 1.4;
}
#snav [data-style=bar] .menu > li > a {
  color: #fff;
}
#snav [data-style=bar] .menu > li > a::after {
  content: "";
  display: block;
  height: 0;
  width: 2em;
  margin: 0.25em auto 0;
  border-bottom: 5px solid transparent;
}
#snav [data-style=bar] .menu > li.current-ancestor > a::after, #snav [data-style=bar] .menu > li.current-page > a::after {
  border-bottom-color: #fff;
}

#footer {
  position: sticky;
  top: 100vh;
}
#footer .nav {
  background-color: #009DE2;
  color: #fff;
  padding: calc(var(--content-padding) / 2) 0;
}
#footer .nav > .content, #footer main .figure.nav > div, main #footer .figure.nav > div, #footer main .reason.nav > div, main #footer .reason.nav > div, #footer main .jounal.nav > div, main #footer .jounal.nav > div, #footer main .banners.nav > div, main #footer .banners.nav > div, #footer main .buttons.nav > div, main #footer .buttons.nav > div, #footer main #feature.nav > div, main #footer #feature.nav > div, #footer main #function.nav > div, main #footer #function.nav > div, #footer main .neighbours.nav > div, main #footer .neighbours.nav > div, #footer main .plan.nav > div, main #footer .plan.nav > div {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
}
#footer .nav > .content > *, #footer main .figure.nav > div > *, main #footer .figure.nav > div > *, #footer main .reason.nav > div > *, main #footer .reason.nav > div > *, #footer main .jounal.nav > div > *, main #footer .jounal.nav > div > *, #footer main .banners.nav > div > *, main #footer .banners.nav > div > *, #footer main .buttons.nav > div > *, main #footer .buttons.nav > div > *, #footer main #feature.nav > div > *, main #footer #feature.nav > div > *, #footer main #function.nav > div > *, main #footer #function.nav > div > *, #footer main .neighbours.nav > div > *, main #footer .neighbours.nav > div > *, #footer main .plan.nav > div > *, main #footer .plan.nav > div > * {
  padding: calc(var(--content-padding) / 2) 0;
}
#footer .nav > .content .menu, #footer main .figure.nav > div .menu, main #footer .figure.nav > div .menu, #footer main .reason.nav > div .menu, main #footer .reason.nav > div .menu, #footer main .jounal.nav > div .menu, main #footer .jounal.nav > div .menu, #footer main .banners.nav > div .menu, main #footer .banners.nav > div .menu, #footer main .buttons.nav > div .menu, main #footer .buttons.nav > div .menu, #footer main #feature.nav > div .menu, main #footer #feature.nav > div .menu, #footer main #function.nav > div .menu, main #footer #function.nav > div .menu, #footer main .neighbours.nav > div .menu, main #footer .neighbours.nav > div .menu, #footer main .plan.nav > div .menu, main #footer .plan.nav > div .menu {
  all: unset;
  display: block;
  column-count: 3;
  column-width: 16em;
}
#footer .nav > .content .menu li, #footer main .figure.nav > div .menu li, main #footer .figure.nav > div .menu li, #footer main .reason.nav > div .menu li, main #footer .reason.nav > div .menu li, #footer main .jounal.nav > div .menu li, main #footer .jounal.nav > div .menu li, #footer main .banners.nav > div .menu li, main #footer .banners.nav > div .menu li, #footer main .buttons.nav > div .menu li, main #footer .buttons.nav > div .menu li, #footer main #feature.nav > div .menu li, main #footer #feature.nav > div .menu li, #footer main #function.nav > div .menu li, main #footer #function.nav > div .menu li, #footer main .neighbours.nav > div .menu li, main #footer .neighbours.nav > div .menu li, #footer main .plan.nav > div .menu li, main #footer .plan.nav > div .menu li {
  all: unset;
  display: block;
}
#footer .nav > .content .menu .sub-menu, #footer main .figure.nav > div .menu .sub-menu, main #footer .figure.nav > div .menu .sub-menu, #footer main .reason.nav > div .menu .sub-menu, main #footer .reason.nav > div .menu .sub-menu, #footer main .jounal.nav > div .menu .sub-menu, main #footer .jounal.nav > div .menu .sub-menu, #footer main .banners.nav > div .menu .sub-menu, main #footer .banners.nav > div .menu .sub-menu, #footer main .buttons.nav > div .menu .sub-menu, main #footer .buttons.nav > div .menu .sub-menu, #footer main #feature.nav > div .menu .sub-menu, main #footer #feature.nav > div .menu .sub-menu, #footer main #function.nav > div .menu .sub-menu, main #footer #function.nav > div .menu .sub-menu, #footer main .neighbours.nav > div .menu .sub-menu, main #footer .neighbours.nav > div .menu .sub-menu, #footer main .plan.nav > div .menu .sub-menu, main #footer .plan.nav > div .menu .sub-menu {
  all: unset;
  display: block;
}
#footer .nav > .content .menu .sub-menu a, #footer main .figure.nav > div .menu .sub-menu a, main #footer .figure.nav > div .menu .sub-menu a, #footer main .reason.nav > div .menu .sub-menu a, main #footer .reason.nav > div .menu .sub-menu a, #footer main .jounal.nav > div .menu .sub-menu a, main #footer .jounal.nav > div .menu .sub-menu a, #footer main .banners.nav > div .menu .sub-menu a, main #footer .banners.nav > div .menu .sub-menu a, #footer main .buttons.nav > div .menu .sub-menu a, main #footer .buttons.nav > div .menu .sub-menu a, #footer main #feature.nav > div .menu .sub-menu a, main #footer #feature.nav > div .menu .sub-menu a, #footer main #function.nav > div .menu .sub-menu a, main #footer #function.nav > div .menu .sub-menu a, #footer main .neighbours.nav > div .menu .sub-menu a, main #footer .neighbours.nav > div .menu .sub-menu a, #footer main .plan.nav > div .menu .sub-menu a, main #footer .plan.nav > div .menu .sub-menu a {
  font-size: 0.75rem;
}
#footer .nav > .content .menu > li, #footer main .figure.nav > div .menu > li, main #footer .figure.nav > div .menu > li, #footer main .reason.nav > div .menu > li, main #footer .reason.nav > div .menu > li, #footer main .jounal.nav > div .menu > li, main #footer .jounal.nav > div .menu > li, #footer main .banners.nav > div .menu > li, main #footer .banners.nav > div .menu > li, #footer main .buttons.nav > div .menu > li, main #footer .buttons.nav > div .menu > li, #footer main #feature.nav > div .menu > li, main #footer #feature.nav > div .menu > li, #footer main #function.nav > div .menu > li, main #footer #function.nav > div .menu > li, #footer main .neighbours.nav > div .menu > li, main #footer .neighbours.nav > div .menu > li, #footer main .plan.nav > div .menu > li, main #footer .plan.nav > div .menu > li {
  padding-left: 1em;
  text-indent: -1em;
  display: inline-block;
  vertical-align: middle;
  display: block;
  padding-bottom: 0.5em;
  line-height: 1.6;
  break-inside: avoid-column;
}
#footer .nav > .content .menu > li::before, #footer main .figure.nav > div .menu > li::before, main #footer .figure.nav > div .menu > li::before, #footer main .reason.nav > div .menu > li::before, main #footer .reason.nav > div .menu > li::before, #footer main .jounal.nav > div .menu > li::before, main #footer .jounal.nav > div .menu > li::before, #footer main .banners.nav > div .menu > li::before, main #footer .banners.nav > div .menu > li::before, #footer main .buttons.nav > div .menu > li::before, main #footer .buttons.nav > div .menu > li::before, #footer main #feature.nav > div .menu > li::before, main #footer #feature.nav > div .menu > li::before, #footer main #function.nav > div .menu > li::before, main #footer #function.nav > div .menu > li::before, #footer main .neighbours.nav > div .menu > li::before, main #footer .neighbours.nav > div .menu > li::before, #footer main .plan.nav > div .menu > li::before, main #footer .plan.nav > div .menu > li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  margin-right: 0.25em;
}
#footer .nav > .content .menu > li::before, #footer main .figure.nav > div .menu > li::before, main #footer .figure.nav > div .menu > li::before, #footer main .reason.nav > div .menu > li::before, main #footer .reason.nav > div .menu > li::before, #footer main .jounal.nav > div .menu > li::before, main #footer .jounal.nav > div .menu > li::before, #footer main .banners.nav > div .menu > li::before, main #footer .banners.nav > div .menu > li::before, #footer main .buttons.nav > div .menu > li::before, main #footer .buttons.nav > div .menu > li::before, #footer main #feature.nav > div .menu > li::before, main #footer #feature.nav > div .menu > li::before, #footer main #function.nav > div .menu > li::before, main #footer #function.nav > div .menu > li::before, #footer main .neighbours.nav > div .menu > li::before, main #footer .neighbours.nav > div .menu > li::before, #footer main .plan.nav > div .menu > li::before, main #footer .plan.nav > div .menu > li::before {
  color: currentColor;
  display: inline-block;
  width: 1em;
  padding-left: 0;
  text-indent: 0;
  margin-right: 0;
}
#footer .nav > .content .menu .sub-menu > li, #footer main .figure.nav > div .menu .sub-menu > li, main #footer .figure.nav > div .menu .sub-menu > li, #footer main .reason.nav > div .menu .sub-menu > li, main #footer .reason.nav > div .menu .sub-menu > li, #footer main .jounal.nav > div .menu .sub-menu > li, main #footer .jounal.nav > div .menu .sub-menu > li, #footer main .banners.nav > div .menu .sub-menu > li, main #footer .banners.nav > div .menu .sub-menu > li, #footer main .buttons.nav > div .menu .sub-menu > li, main #footer .buttons.nav > div .menu .sub-menu > li, #footer main #feature.nav > div .menu .sub-menu > li, main #footer #feature.nav > div .menu .sub-menu > li, #footer main #function.nav > div .menu .sub-menu > li, main #footer #function.nav > div .menu .sub-menu > li, #footer main .neighbours.nav > div .menu .sub-menu > li, main #footer .neighbours.nav > div .menu .sub-menu > li, #footer main .plan.nav > div .menu .sub-menu > li, main #footer .plan.nav > div .menu .sub-menu > li {
  padding-left: 1em;
}
#footer .nav > .content .shortcut-links, #footer main .figure.nav > div .shortcut-links, main #footer .figure.nav > div .shortcut-links, #footer main .reason.nav > div .shortcut-links, main #footer .reason.nav > div .shortcut-links, #footer main .jounal.nav > div .shortcut-links, main #footer .jounal.nav > div .shortcut-links, #footer main .banners.nav > div .shortcut-links, main #footer .banners.nav > div .shortcut-links, #footer main .buttons.nav > div .shortcut-links, main #footer .buttons.nav > div .shortcut-links, #footer main #feature.nav > div .shortcut-links, main #footer #feature.nav > div .shortcut-links, #footer main #function.nav > div .shortcut-links, main #footer #function.nav > div .shortcut-links, #footer main .neighbours.nav > div .shortcut-links, main #footer .neighbours.nav > div .shortcut-links, #footer main .plan.nav > div .shortcut-links, main #footer .plan.nav > div .shortcut-links {
  text-align: center;
}
#footer .nav > .content .shortcut-links a.icon.request, #footer main .figure.nav > div .shortcut-links a.icon.request, main #footer .figure.nav > div .shortcut-links a.icon.request, #footer main .reason.nav > div .shortcut-links a.icon.request, main #footer .reason.nav > div .shortcut-links a.icon.request, #footer main .jounal.nav > div .shortcut-links a.icon.request, main #footer .jounal.nav > div .shortcut-links a.icon.request, #footer main .banners.nav > div .shortcut-links a.icon.request, main #footer .banners.nav > div .shortcut-links a.icon.request, #footer main .buttons.nav > div .shortcut-links a.icon.request, main #footer .buttons.nav > div .shortcut-links a.icon.request, #footer main #feature.nav > div .shortcut-links a.icon.request, main #footer #feature.nav > div .shortcut-links a.icon.request, #footer main #function.nav > div .shortcut-links a.icon.request, main #footer #function.nav > div .shortcut-links a.icon.request, #footer main .neighbours.nav > div .shortcut-links a.icon.request, main #footer .neighbours.nav > div .shortcut-links a.icon.request, #footer main .plan.nav > div .shortcut-links a.icon.request, main #footer .plan.nav > div .shortcut-links a.icon.request, #footer .nav > .content .shortcut-links a.icon.documents, #footer main .figure.nav > div .shortcut-links a.icon.documents, main #footer .figure.nav > div .shortcut-links a.icon.documents, #footer main .reason.nav > div .shortcut-links a.icon.documents, main #footer .reason.nav > div .shortcut-links a.icon.documents, #footer main .jounal.nav > div .shortcut-links a.icon.documents, main #footer .jounal.nav > div .shortcut-links a.icon.documents, #footer main .banners.nav > div .shortcut-links a.icon.documents, main #footer .banners.nav > div .shortcut-links a.icon.documents, #footer main .buttons.nav > div .shortcut-links a.icon.documents, main #footer .buttons.nav > div .shortcut-links a.icon.documents, #footer main #feature.nav > div .shortcut-links a.icon.documents, main #footer #feature.nav > div .shortcut-links a.icon.documents, #footer main #function.nav > div .shortcut-links a.icon.documents, main #footer #function.nav > div .shortcut-links a.icon.documents, #footer main .neighbours.nav > div .shortcut-links a.icon.documents, main #footer .neighbours.nav > div .shortcut-links a.icon.documents, #footer main .plan.nav > div .shortcut-links a.icon.documents, main #footer .plan.nav > div .shortcut-links a.icon.documents, #footer .nav > .content .shortcut-links a.icon.immigration-lawyer, #footer main .figure.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .figure.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main .reason.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .reason.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main .jounal.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .jounal.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main .banners.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .banners.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main .buttons.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .buttons.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main #feature.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer #feature.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main #function.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer #function.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main .neighbours.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .neighbours.nav > div .shortcut-links a.icon.immigration-lawyer, #footer main .plan.nav > div .shortcut-links a.icon.immigration-lawyer, main #footer .plan.nav > div .shortcut-links a.icon.immigration-lawyer {
  color: #043A7B;
  display: block;
  background-color: #fff;
  width: 300px;
  padding: 0.25em;
  margin: 1em auto;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  border-radius: 5px;
}
#footer .nav > .content .shortcut-links a.icon.request::before, #footer main .figure.nav > div .shortcut-links a.icon.request::before, main #footer .figure.nav > div .shortcut-links a.icon.request::before, #footer main .reason.nav > div .shortcut-links a.icon.request::before, main #footer .reason.nav > div .shortcut-links a.icon.request::before, #footer main .jounal.nav > div .shortcut-links a.icon.request::before, main #footer .jounal.nav > div .shortcut-links a.icon.request::before, #footer main .banners.nav > div .shortcut-links a.icon.request::before, main #footer .banners.nav > div .shortcut-links a.icon.request::before, #footer main .buttons.nav > div .shortcut-links a.icon.request::before, main #footer .buttons.nav > div .shortcut-links a.icon.request::before, #footer main #feature.nav > div .shortcut-links a.icon.request::before, main #footer #feature.nav > div .shortcut-links a.icon.request::before, #footer main #function.nav > div .shortcut-links a.icon.request::before, main #footer #function.nav > div .shortcut-links a.icon.request::before, #footer main .neighbours.nav > div .shortcut-links a.icon.request::before, main #footer .neighbours.nav > div .shortcut-links a.icon.request::before, #footer main .plan.nav > div .shortcut-links a.icon.request::before, main #footer .plan.nav > div .shortcut-links a.icon.request::before, #footer .nav > .content .shortcut-links a.icon.documents::before, #footer main .figure.nav > div .shortcut-links a.icon.documents::before, main #footer .figure.nav > div .shortcut-links a.icon.documents::before, #footer main .reason.nav > div .shortcut-links a.icon.documents::before, main #footer .reason.nav > div .shortcut-links a.icon.documents::before, #footer main .jounal.nav > div .shortcut-links a.icon.documents::before, main #footer .jounal.nav > div .shortcut-links a.icon.documents::before, #footer main .banners.nav > div .shortcut-links a.icon.documents::before, main #footer .banners.nav > div .shortcut-links a.icon.documents::before, #footer main .buttons.nav > div .shortcut-links a.icon.documents::before, main #footer .buttons.nav > div .shortcut-links a.icon.documents::before, #footer main #feature.nav > div .shortcut-links a.icon.documents::before, main #footer #feature.nav > div .shortcut-links a.icon.documents::before, #footer main #function.nav > div .shortcut-links a.icon.documents::before, main #footer #function.nav > div .shortcut-links a.icon.documents::before, #footer main .neighbours.nav > div .shortcut-links a.icon.documents::before, main #footer .neighbours.nav > div .shortcut-links a.icon.documents::before, #footer main .plan.nav > div .shortcut-links a.icon.documents::before, main #footer .plan.nav > div .shortcut-links a.icon.documents::before, #footer .nav > .content .shortcut-links a.icon.immigration-lawyer::before, #footer main .figure.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .figure.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main .reason.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .reason.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main .jounal.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .jounal.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main .banners.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .banners.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main .buttons.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .buttons.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main #feature.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer #feature.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main #function.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer #function.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main .neighbours.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .neighbours.nav > div .shortcut-links a.icon.immigration-lawyer::before, #footer main .plan.nav > div .shortcut-links a.icon.immigration-lawyer::before, main #footer .plan.nav > div .shortcut-links a.icon.immigration-lawyer::before {
  color: #555;
}
#footer .nav > .content .shortcut-links a.icon.trial, #footer main .figure.nav > div .shortcut-links a.icon.trial, main #footer .figure.nav > div .shortcut-links a.icon.trial, #footer main .reason.nav > div .shortcut-links a.icon.trial, main #footer .reason.nav > div .shortcut-links a.icon.trial, #footer main .jounal.nav > div .shortcut-links a.icon.trial, main #footer .jounal.nav > div .shortcut-links a.icon.trial, #footer main .banners.nav > div .shortcut-links a.icon.trial, main #footer .banners.nav > div .shortcut-links a.icon.trial, #footer main .buttons.nav > div .shortcut-links a.icon.trial, main #footer .buttons.nav > div .shortcut-links a.icon.trial, #footer main #feature.nav > div .shortcut-links a.icon.trial, main #footer #feature.nav > div .shortcut-links a.icon.trial, #footer main #function.nav > div .shortcut-links a.icon.trial, main #footer #function.nav > div .shortcut-links a.icon.trial, #footer main .neighbours.nav > div .shortcut-links a.icon.trial, main #footer .neighbours.nav > div .shortcut-links a.icon.trial, #footer main .plan.nav > div .shortcut-links a.icon.trial, main #footer .plan.nav > div .shortcut-links a.icon.trial {
  display: none;
}
#footer .nav > .content .shortcut-links a.icon.call, #footer main .figure.nav > div .shortcut-links a.icon.call, main #footer .figure.nav > div .shortcut-links a.icon.call, #footer main .reason.nav > div .shortcut-links a.icon.call, main #footer .reason.nav > div .shortcut-links a.icon.call, #footer main .jounal.nav > div .shortcut-links a.icon.call, main #footer .jounal.nav > div .shortcut-links a.icon.call, #footer main .banners.nav > div .shortcut-links a.icon.call, main #footer .banners.nav > div .shortcut-links a.icon.call, #footer main .buttons.nav > div .shortcut-links a.icon.call, main #footer .buttons.nav > div .shortcut-links a.icon.call, #footer main #feature.nav > div .shortcut-links a.icon.call, main #footer #feature.nav > div .shortcut-links a.icon.call, #footer main #function.nav > div .shortcut-links a.icon.call, main #footer #function.nav > div .shortcut-links a.icon.call, #footer main .neighbours.nav > div .shortcut-links a.icon.call, main #footer .neighbours.nav > div .shortcut-links a.icon.call, #footer main .plan.nav > div .shortcut-links a.icon.call, main #footer .plan.nav > div .shortcut-links a.icon.call {
  font-size: 1.6rem;
}
#footer .company {
  padding: calc(var(--content-padding) / 2) 0;
}
#footer .company > .content, #footer main .figure.company > div, main #footer .figure.company > div, #footer main .reason.company > div, main #footer .reason.company > div, #footer main .jounal.company > div, main #footer .jounal.company > div, #footer main .banners.company > div, main #footer .banners.company > div, #footer main .buttons.company > div, main #footer .buttons.company > div, #footer main #feature.company > div, main #footer #feature.company > div, #footer main #function.company > div, main #footer #function.company > div, #footer main .neighbours.company > div, main #footer .neighbours.company > div, #footer main .plan.company > div, main #footer .plan.company > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}
#footer .company > .content > *, #footer main .figure.company > div > *, main #footer .figure.company > div > *, #footer main .reason.company > div > *, main #footer .reason.company > div > *, #footer main .jounal.company > div > *, main #footer .jounal.company > div > *, #footer main .banners.company > div > *, main #footer .banners.company > div > *, #footer main .buttons.company > div > *, main #footer .buttons.company > div > *, #footer main #feature.company > div > *, main #footer #feature.company > div > *, #footer main #function.company > div > *, main #footer #function.company > div > *, #footer main .neighbours.company > div > *, main #footer .neighbours.company > div > *, #footer main .plan.company > div > *, main #footer .plan.company > div > * {
  padding: calc(var(--content-padding) / 2) 0;
}
#footer .company > .content > .address, #footer main .figure.company > div > .address, main #footer .figure.company > div > .address, #footer main .reason.company > div > .address, main #footer .reason.company > div > .address, #footer main .jounal.company > div > .address, main #footer .jounal.company > div > .address, #footer main .banners.company > div > .address, main #footer .banners.company > div > .address, #footer main .buttons.company > div > .address, main #footer .buttons.company > div > .address, #footer main #feature.company > div > .address, main #footer #feature.company > div > .address, #footer main #function.company > div > .address, main #footer #function.company > div > .address, #footer main .neighbours.company > div > .address, main #footer .neighbours.company > div > .address, #footer main .plan.company > div > .address, main #footer .plan.company > div > .address {
  flex-basis: 300px;
  flex-grow: 1;
}
#footer .company > .content > .address dd, #footer main .figure.company > div > .address dd, main #footer .figure.company > div > .address dd, #footer main .reason.company > div > .address dd, main #footer .reason.company > div > .address dd, #footer main .jounal.company > div > .address dd, main #footer .jounal.company > div > .address dd, #footer main .banners.company > div > .address dd, main #footer .banners.company > div > .address dd, #footer main .buttons.company > div > .address dd, main #footer .buttons.company > div > .address dd, #footer main #feature.company > div > .address dd, main #footer #feature.company > div > .address dd, #footer main #function.company > div > .address dd, main #footer #function.company > div > .address dd, #footer main .neighbours.company > div > .address dd, main #footer .neighbours.company > div > .address dd, #footer main .plan.company > div > .address dd, main #footer .plan.company > div > .address dd {
  line-height: 1.4;
  font-size: 0.9rem;
}
#footer .company > .content > .address .group-site a, #footer main .figure.company > div > .address .group-site a, main #footer .figure.company > div > .address .group-site a, #footer main .reason.company > div > .address .group-site a, main #footer .reason.company > div > .address .group-site a, #footer main .jounal.company > div > .address .group-site a, main #footer .jounal.company > div > .address .group-site a, #footer main .banners.company > div > .address .group-site a, main #footer .banners.company > div > .address .group-site a, #footer main .buttons.company > div > .address .group-site a, main #footer .buttons.company > div > .address .group-site a, #footer main #feature.company > div > .address .group-site a, main #footer #feature.company > div > .address .group-site a, #footer main #function.company > div > .address .group-site a, main #footer #function.company > div > .address .group-site a, #footer main .neighbours.company > div > .address .group-site a, main #footer .neighbours.company > div > .address .group-site a, #footer main .plan.company > div > .address .group-site a, main #footer .plan.company > div > .address .group-site a {
  line-height: 1;
  padding: 0.5em 1em;
  border: 1px solid currentColor;
  background-color: #222439;
  color: #fff;
  font-size: 0.875em;
}
#footer .company > .content > .address img, #footer main .figure.company > div > .address img, main #footer .figure.company > div > .address img, #footer main .reason.company > div > .address img, main #footer .reason.company > div > .address img, #footer main .jounal.company > div > .address img, main #footer .jounal.company > div > .address img, #footer main .banners.company > div > .address img, main #footer .banners.company > div > .address img, #footer main .buttons.company > div > .address img, main #footer .buttons.company > div > .address img, #footer main #feature.company > div > .address img, main #footer #feature.company > div > .address img, #footer main #function.company > div > .address img, main #footer #function.company > div > .address img, #footer main .neighbours.company > div > .address img, main #footer .neighbours.company > div > .address img, #footer main .plan.company > div > .address img, main #footer .plan.company > div > .address img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 0.5rem;
}
#footer .company > .content > .logo, #footer main .figure.company > div > .logo, main #footer .figure.company > div > .logo, #footer main .reason.company > div > .logo, main #footer .reason.company > div > .logo, #footer main .jounal.company > div > .logo, main #footer .jounal.company > div > .logo, #footer main .banners.company > div > .logo, main #footer .banners.company > div > .logo, #footer main .buttons.company > div > .logo, main #footer .buttons.company > div > .logo, #footer main #feature.company > div > .logo, main #footer #feature.company > div > .logo, #footer main #function.company > div > .logo, main #footer #function.company > div > .logo, #footer main .neighbours.company > div > .logo, main #footer .neighbours.company > div > .logo, #footer main .plan.company > div > .logo, main #footer .plan.company > div > .logo {
  flex-grow: 1;
  text-align: center;
}
#footer .company > .content::after, #footer main .figure.company > div::after, main #footer .figure.company > div::after, #footer main .reason.company > div::after, main #footer .reason.company > div::after, #footer main .jounal.company > div::after, main #footer .jounal.company > div::after, #footer main .banners.company > div::after, main #footer .banners.company > div::after, #footer main .buttons.company > div::after, main #footer .buttons.company > div::after, #footer main #feature.company > div::after, main #footer #feature.company > div::after, #footer main #function.company > div::after, main #footer #function.company > div::after, #footer main .neighbours.company > div::after, main #footer .neighbours.company > div::after, #footer main .plan.company > div::after, main #footer .plan.company > div::after {
  content: "";
  flex-basis: 300px;
  flex-grow: 1;
}
#footer .copyright {
  color: #fff;
  background-color: #043A7B;
  text-align: center;
  font-size: 0.9rem;
  padding-bottom: 50px;
}
@media (min-width: 1000px) {
  #footer .copyright {
    padding-bottom: 0;
  }
}

/*
.wp-block-group {
    padding: 20px;
    border: 1px dashed #ccc;
    margin: 20px 0;
}

.dummy-block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    border: 1px dashed #ccc;
    text-align: center;

    .mits-part-list[data-style="grid"] & {
        min-height: 150px;
    }

    main & {
            margin: 20px 0;
    }

    .wp-block-group > .wp-block-group__inner-container > & {
        display: block;
        border: 0 none;
        padding: 0;
        margin: 0;
    }

    > .comment {
        width: 100%;
    }   

    > .links {
        > li {
            display: inline-block;
            margin: 0.5em;

            a {
                display: inline-block;
                border-radius: 1em;
                line-height: 2em;
                background-color: #333;
                color: #fff;
                padding: 0 1em;
            }
        }
    }
}
*/
main {
  /* For emoji replacement images */
  /* iOS does not obey max-width if width is set. */
}
main img.emoji {
  display: inline !important;
  border: none !important;
  height: 1em !important;
  width: 1em !important;
  margin: 0 0.07em !important;
  vertical-align: -0.1em !important;
  background: none !important;
  padding: 0 !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}
main .mceIEcenter {
  text-align: center;
}
main img {
  height: auto;
  max-width: 100%;
}
main .wp-caption {
  margin: 0;
  /* browser reset */
  max-width: 100%;
}
main .ios .wp-caption {
  width: auto !important;
}
main dl.wp-caption dt.wp-caption-dt img {
  display: inline-block;
  margin-bottom: -1ex;
}
main dl.wp-caption,
main dl.wp-caption * {
  -webkit-user-drag: none;
}
main .wp-caption-dd {
  font-size: 14px;
  padding-top: 0.5em;
  margin: 0;
  /* browser reset */
}
main .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
main .alignleft {
  float: left;
  margin: 0.5em 1em 0.5em 0;
}
main .alignright {
  float: right;
  margin: 0.5em 0 0.5em 1em;
}
main .gallery img[data-mce-selected]:focus {
  outline: none;
}
main .gallery a {
  cursor: default;
}
main .gallery {
  margin: auto -6px;
  padding: 6px 0;
  line-height: 1;
  overflow-x: hidden;
}
main .ie7 .gallery,
main .ie8 .gallery {
  margin: auto;
}
main .gallery .gallery-item {
  float: left;
  margin: 0;
  text-align: center;
  padding: 6px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main .ie7 .gallery .gallery-item,
main .ie8 .gallery .gallery-item {
  padding: 6px 0;
}
main .gallery .gallery-caption,
main .gallery .gallery-icon {
  margin: 0;
}
main .gallery .gallery-caption {
  font-size: 13px;
  margin: 4px 0;
}
main .gallery-columns-1 .gallery-item {
  width: 100%;
}
main .gallery-columns-2 .gallery-item {
  width: 50%;
}
main .gallery-columns-3 .gallery-item {
  width: 33.333%;
}
main .ie8 .gallery-columns-3 .gallery-item,
main .ie7 .gallery-columns-3 .gallery-item {
  width: 33%;
}
main .gallery-columns-4 .gallery-item {
  width: 25%;
}
main .gallery-columns-5 .gallery-item {
  width: 20%;
}
main .gallery-columns-6 .gallery-item {
  width: 16.665%;
}
main .gallery-columns-7 .gallery-item {
  width: 14.285%;
}
main .gallery-columns-8 .gallery-item {
  width: 12.5%;
}
main .gallery-columns-9 .gallery-item {
  width: 11.111%;
}
main .gallery img {
  max-width: 100%;
  height: auto;
  border: none;
  padding: 0;
}
main .wp-block-table.is-style-regular table {
  border-collapse: separate;
  border-spacing: 3px;
}
main .wp-block-table.is-style-regular table tr {
  border-bottom: 1px solid #999;
}
main .wp-block-table.is-style-regular table th, main .wp-block-table.is-style-regular table td {
  padding: 0.25em 0.5em;
  border: 0 none;
  border-bottom: 1px solid #999;
}
main .wp-block-table.is-style-regular table thead, main .wp-block-table.is-style-regular table th {
  color: #fff;
  background-color: #043a7b;
  text-align: center;
}
main .wp-block-group.normal {
  border: 0 none;
}
main .wp-block-button a.wp-block-button__link {
  font-size: inherit;
  padding: 0.25em 1.5em;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}
main .wp-block-button.blue a.wp-block-button__link {
  background-color: #043a7b;
}
main .wp-block-button.sky a.wp-block-button__link {
  background-color: #009de2;
}
main .wp-block-button.gray a.wp-block-button__link {
  background-color: #999;
}
main .wp-block-video {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
}
body.single main p, main.single main p {
  margin-bottom: 2em;
}
main .entry-content > *:not(.banners, .jounal, .buttons, .neighbours, .full-width), main .entry-title, main.block-editor-writing-flow .wp-block {
  width: 100%;
  max-width: var(--content-width);
  padding-left: var(--content-padding);
  padding-right: var(--content-padding);
  margin-left: auto;
  margin-right: auto;
}
main .entry-content > .alignfull:not(.banners, .jounal, .buttons, .neighbours, .full-width), main .alignfull.entry-title, main.block-editor-writing-flow .alignfull.wp-block {
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
main .dummy.mits-part-list > ul > li {
  border: 1px dashed #ccc;
  padding: 1em;
  background-color: #eee;
}
main .box {
  padding: 0.5em;
}
main p {
  text-align: justify;
}
main p.dummy {
  border: 1px dashed #ccc;
  padding: 1em;
  background-color: #eee;
}
main.block-editor-writing-flow .components-placeholder.components-placeholder {
  min-height: 1em;
}
main a:not([class]) {
  color: #043A7B;
}
body.is-desktop main a:not([class]):hover, main.is-desktop main a:not([class]):hover {
  text-decoration: underline;
}
main img {
  max-width: 100%;
  height: auto;
}
main .wp-caption {
  max-width: 100%;
}
main h1, main h2, main h3, main h4, main h5, main h6 {
  margin: 0.2em 0 0.5em;
  font-weight: bold;
  color: #555;
}
main h1 {
  font-size: calc(100vw / 14);
  text-align: center;
}
@media (min-width: 588px) {
  main h1 {
    font-size: 42px;
  }
}
@media (max-width: 168px) {
  main h1 {
    font-size: 12px;
  }
}
main h2 {
  font-size: calc(100vw / 15);
}
@media (min-width: 630px) {
  main h2 {
    font-size: 42px;
  }
}
@media (max-width: 180px) {
  main h2 {
    font-size: 12px;
  }
}
main h2::after {
  content: "";
  display: block;
  height: 10px;
  background-image: url("../images/dots.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  margin-top: 10px;
}
main h3 {
  font-size: calc(100vw / 16);
}
@media (min-width: 480px) {
  main h3 {
    font-size: 30px;
  }
}
@media (max-width: 192px) {
  main h3 {
    font-size: 12px;
  }
}
main h3::before {
  content: "";
  display: block;
  height: 10px;
  background-image: url("../images/dots.png");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  margin-top: 10px;
}
main h4 {
  font-size: calc(100vw / 22);
  display: flex;
}
@media (min-width: 528px) {
  main h4 {
    font-size: 24px;
  }
}
@media (max-width: 264px) {
  main h4 {
    font-size: 12px;
  }
}
main h4::before {
  content: "";
  display: block;
  width: 10px;
  background-color: #053A7B;
  margin-right: 0.5em;
  border-radius: 5px;
}
main h5 {
  font-size: calc(100vw / 24);
}
@media (min-width: 504px) {
  main h5 {
    font-size: 21px;
  }
}
@media (max-width: 288px) {
  main h5 {
    font-size: 12px;
  }
}
main h6 {
  font-size: calc(100vw / 25);
}
@media (min-width: 500px) {
  main h6 {
    font-size: 20px;
  }
}
@media (max-width: 300px) {
  main h6 {
    font-size: 12px;
  }
}
main hr {
  margin: 1em 0;
}
main #list, main .pickups, main ul:not([class]) {
  margin: revert;
  padding: 0;
  list-style-type: none;
  box-sizing: revert;
}
main #list li, main .pickups li, main ul:not([class]) li {
  margin: revert;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
main #list li::before, main .pickups li::before, main ul:not([class]) li::before {
  content: "●";
  display: inline-block;
  color: #053A7B;
  width: 1.5em;
  text-indent: 0;
}
main #list li li::before, main .pickups li li::before, main ul:not([class]) li li::before {
  content: "■";
}
main #list li li li::before, main .pickups li li li::before, main ul:not([class]) li li li::before {
  content: "－";
}
main ol:not([class]) {
  margin: revert;
  padding: 0;
  list-style-type: none;
  box-sizing: revert;
  counter-reset: ol;
}
main ol:not([class]) li {
  margin: revert;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
main ol:not([class]) > li {
  counter-increment: ol;
}
main ol:not([class]) > li::before {
  display: inline-block;
  width: 1.5em;
  content: counter(ol);
  text-indent: 0;
}
main blockquote {
  font-style: italic;
  background-color: #ccc;
  padding: 0.5em 0.5em 0.5em calc(40px + 1em);
  position: relative;
}
main blockquote::before {
  position: absolute;
  left: 0.5em;
  top: 0.25;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-style: normal;
  line-height: 1;
  content: "\f10d";
  display: inline-block;
  vertical-align: top;
  font-size: 2rem;
  color: #fff;
}
main q {
  background: linear-gradient(180deg, #fff 0%, #fff 50%, #ccc 50%, #ccc 100%);
}
main .wp-block-cover .logo-sincere {
  max-width: 90%;
  padding: 5px;
}
main .wp-block-group {
  padding: 30px 0;
}
main .wp-block-group.flow2 {
  align-items: stretch;
  gap: 0.5em;
}
main .wp-block-group.flow2 > :first-child {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  padding: 1em 0.5em;
  text-align: right;
  background-color: rgba(252, 185, 0, 0.2);
}
main .wp-block-group.flow2 > :last-child {
  writing-mode: vertical-rl;
  padding: 1em 0.5em;
  text-align: left;
  background-color: rgba(34, 36, 57, 0.2);
}
main .wp-block-group.flow2 > ol {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
main .wp-block-group.flow2 > ol > li {
  padding: 1em;
  padding-left: 2em;
  position: relative;
  line-height: 1.4;
}
main .wp-block-group.flow2 > ol > li::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 1em;
  background-color: inherit;
  position: absolute;
  top: calc(50% - 0.5em);
}
main .wp-block-group.flow2 > ol > .left {
  align-self: flex-end;
  background-color: rgba(34, 36, 57, 0.2);
  margin-left: 2em;
}
main .wp-block-group.flow2 > ol > .left::after {
  left: 100%;
}
main .wp-block-group.flow2 > ol > .right {
  align-self: flex-start;
  background-color: rgba(252, 185, 0, 0.2);
  margin-right: 2em;
}
main .wp-block-group.flow2 > ol > .right::after {
  right: 100%;
}
main section.wp-block-group {
  padding-left: var(--content-padding);
  padding-right: var(--content-padding);
}
main .pickups {
  line-height: 1.5;
}
main .pickups li {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
main .pickups strong {
  font-size: x-large;
  color: #e61f19;
}
main .flexcenter {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
}
main .figure {
  border: 0 none;
  background-color: #f6f8f8;
}
main .figure > div {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
main .figure > div h3 {
  width: 100%;
}
main .figure .wp-block-image {
  background-color: #fff;
}
main .pr {
  display: flex;
  align-items: center;
  justify-content: center;
}
main .pr > div {
  background-color: #ddf3fe;
  padding: calc(1.5 * var(--content-padding));
  border-radius: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}
main .pr .pr-message {
  font-weight: bold;
  font-size: calc(100vw / 22);
  line-height: 1.5;
}
@media (min-width: 528px) {
  main .pr .pr-message {
    font-size: 24px;
  }
}
@media (max-width: 264px) {
  main .pr .pr-message {
    font-size: 12px;
  }
}
main .pr .pr-message strong {
  color: #053a7b;
}
main .pr .pr-items {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-around;
}
main .pr .pr-items > li {
  flex-basis: 300px;
  line-height: 1.5;
  padding-top: var(--content-padding);
  text-align: center;
  display: flex;
}
main .pr .pr-items > li > div {
  width: 200px;
}
main .pr .pr-items > li strong {
  font-size: calc(100vw / 22);
  color: #e61f19;
}
@media (min-width: 528px) {
  main .pr .pr-items > li strong {
    font-size: 24px;
  }
}
@media (max-width: 264px) {
  main .pr .pr-items > li strong {
    font-size: 12px;
  }
}
main .pr .pr-items > li::before, main .pr .pr-items > li::after {
  content: "";
  display: block;
  aspect-ratio: 42/75;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
main .pr .pr-items > li::before {
  background-image: url("../images/deco_left.png");
}
main .pr .pr-items > li::after {
  background-image: url("../images/deco_right.png");
}
main .reason {
  border: 0 none;
  background-color: #f6f8f8;
}
main .reason ol.order {
  background-color: #fff;
  background-image: url("../images/operator.jpg");
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: auto 100%;
  padding: var(--content-padding);
  counter-reset: ol;
}
@media (max-width: 1200px) {
  main .reason ol.order {
    background-image: none;
  }
}
main .reason ol.order li {
  counter-increment: ol;
  padding-left: 4rem;
  position: relative;
  min-height: 3rem;
  line-height: 1.5;
  margin-bottom: 1rem;
  padding-top: 0.5em;
}
main .reason ol.order li::before {
  font-size: calc(100vw / 17);
  content: counter(ol, decimal-leading-zero);
  display: block;
  width: 3rem;
  height: 3rem;
  line-height: 3rem;
  text-align: center;
  color: #fff;
  background-color: #053a7b;
  margin-right: 1rem;
  position: absolute;
  left: 0;
  top: 0;
}
@media (min-width: 476px) {
  main .reason ol.order li::before {
    font-size: 28px;
  }
}
@media (max-width: 204px) {
  main .reason ol.order li::before {
    font-size: 12px;
  }
}
main .reason ol.order li strong {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #fffb4b 0%) repeat scroll 0 0;
}
main .cases {
  display: none;
}
main .jounal {
  border: 0 none;
  background-color: #f6f8f8;
}
main .banners {
  border: 0 none;
  background-color: #ddf3fe;
  background-image: url("../images/eyecatch_bg.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
main .banners .wp-block-column {
  background-color: #fff;
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  border-radius: 5px;
  position: relative;
  margin-top: 100px;
  padding-top: 50px;
}
main .banners .wp-block-column > .wp-block-image {
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  text-align: center;
}
main .banners p {
  line-height: 1.5;
}
main .banners .wp-block-buttons {
  margin-top: var(--content-padding);
}
main .banners .notice {
  color: #e61f19;
  font-size: smaller;
  margin-top: 0.5em;
}
main .jornal-list > ul {
  margin-top: var(--content-padding);
  margin-bottom: var(--content-padding);
  padding-left: 5px;
  padding-right: 5px;
}
main .jornal-list > ul > li {
  display: flex !important;
  flex-direction: column;
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  background-color: #fff;
}
main .jornal-list > ul > li:empty {
  visibility: hidden;
}
main .jornal-list > ul > li .thumbnail {
  flex-grow: 0;
}
main .jornal-list > ul > li .thumbnail img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}
main .jornal-list > ul > li .category ul {
  display: inline-block;
}
main .jornal-list > ul > li .meta {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.9rem;
  justify-content: space-between;
  align-items: flex-start;
  flex-grow: 0;
  line-height: 1.2;
  padding-top: 0.5em;
}
main .jornal-list > ul > li a:has(.title) {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
}
main .jornal-list > ul > li a:has(.title) .title {
  margin: 1em 0;
  line-height: 1.5;
}
main .jornal-list > ul > li .more {
  background-color: #053A7B;
  color: #fff;
  line-height: 1;
  padding: 0.5em;
  text-align: center;
  flex-grow: 0;
}
main .newslist {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
}
main .newslist > ul > li {
  display: flex !important;
  flex-wrap: wrap;
  border-bottom: 1px dotted #ccc;
  margin-bottom: 1em;
}
main .newslist > ul > li .date {
  flex-basis: 6em;
}
main .newslist > ul > li .title {
  flex-basis: 20em;
  flex-grow: 1;
}
main .buttons {
  border: 0 none;
  background-color: #f6f8f8;
}
main #feature {
  border: 0 none;
  background-color: #f6f8f8;
}
main #feature .feature-list > li {
  background-color: #fff;
  margin-bottom: var(--content-padding);
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}
main #feature .feature-list > li strong {
  font-size: larger;
  position: relative;
}
main #feature .feature-list > li strong::after {
  content: "";
  display: block;
  width: 2em;
  height: 0;
  border-bottom: 1px solid #E7211A;
  position: absolute;
  left: 0;
  bottom: 0;
}
main #function {
  border: 0 none;
  background-color: #CFEBFB;
}
main #function .function-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: var(--content-padding);
}
@media (min-width: 750px) {
  main #function .function-list {
    grid-template-columns: repeat(4, minmax(150px, 1fr));
  }
}
main #function .function-list > li {
  background-color: #fff;
  padding: var(--content-padding);
  border: 2px solid #053a7b;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  border-radius: 5px;
  text-align: justify;
  line-height: 1.5;
}
main #function .function-list > li img {
  display: block;
  margin: 0 auto;
}
main #function .function-list > li strong {
  display: block;
  text-align: center;
  margin: 0.5em 0;
}
main #function .function-list > li br {
  display: none;
}
main #solution .before {
  padding: var(--content-padding);
  border: 2px solid transparent;
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}
main #solution .before::after {
  content: "";
  display: block;
}
main #solution .after {
  padding: var(--content-padding);
  border: 2px solid #009DE2;
  background-color: #ddf3fe;
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}
main .mits-part-pagination {
  text-align: center;
  margin: var(--content-padding) 0;
}
main .mits-part-pagination .page-numbers:not(.dots) {
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: calc(2em - 2px);
  box-sizing: border-box;
  border-radius: 1em;
  border: 1px solid #555;
}
main .mits-part-pagination .page-numbers:not(.dots).current {
  color: #fff;
  background-color: #555;
}
main .neighbours {
  border: 0 none;
  background-color: #f6f8f8;
}
main .neighbours > div {
  padding-top: var(--content-padding);
  padding-bottom: var(--content-padding);
}
main .has-bg {
  background-image: url("../images/main_bg.png");
  background-position: center center;
  background-size: cover;
  margin-top: -30px;
}
body:not(.smartvisa-page) main .has-bg, main:not(.smartvisa-page) main .has-bg {
  color: #fff;
  background-image: url("../images/main_image.png");
}
body:not(.smartvisa-page) main .has-bg .wp-block-heading, main:not(.smartvisa-page) main .has-bg .wp-block-heading {
  color: inherit;
}
main .function-comp td, main .function-comp th {
  white-space: nowrap;
}
main .function-comp tbody td {
  width: 8em;
  text-align: center;
}
main .function-comp tbody td:first-of-type {
  width: auto;
  text-align: justify;
}
main .plan {
  background-color: #f6f8f8;
}
main .plan > div {
  padding-top: var(--content-padding);
  padding-bottom: var(--content-padding);
}
main .plan > div > .wp-block-group {
  background-color: #fff;
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  margin-bottom: 30px;
}
main .plan > div > .wp-block-group > div {
  display: flex;
  flex-wrap: wrap;
}
main .plan > div > .wp-block-group > div > h4 {
  flex-basis: 180px;
  flex-shrink: 0;
  white-space: nowrap;
}
main .plan > div > .wp-block-group > div > .wp-block-group {
  flex-basis: 600px;
  flex-grow: 1;
  padding: 0;
}
main .plan #basic h4::before {
  background-color: #009DE2;
}
main .plan #bundle h4::before {
  background-color: #999;
}
main .plan #bundle .wp-block-table.is-style-regular thead, main .plan #bundle .wp-block-table.is-style-regular th {
  color: #fff;
  background-color: #999;
  text-align: center;
}
main .flow > div {
  counter-reset: step;
}
main .flow > div > .wp-block-group {
  background-color: #fff;
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  display: flex;
  flex-wrap: wrap;
}
main .flow > div > .wp-block-group::before {
  counter-increment: step;
  content: counter(step, decimal-leading-zero);
  flex-basis: 100px;
  margin-right: var(--content-padding);
  box-sizing: border-box;
  width: 100px;
  height: 100px;
  background-color: #009DE2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  font-weight: 800;
  font-family: Lato;
  color: #fff;
}
main .flow > div > .wp-block-group > div {
  flex-basis: 300px;
  flex-grow: 1;
}
main .flow > div > .wp-block-group h3::before {
  display: none;
}
main .faq details {
  background-color: #ececec;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  border-radius: 5px;
  padding: var(--content-padding);
  margin: 5px;
}
main .faq details summary {
  display: flex;
  align-items: flex-start;
  padding: 0.25em 1em;
}
main .faq details summary::before {
  content: "Q.";
  font-family: Lato;
  margin-right: 0.5em;
  font-weight: bold;
}
main .faq details summary + * {
  display: flex;
  align-items: flex-start;
  padding: 0.25em 1em;
  background-color: #fff;
}
main .faq details summary + *::before {
  content: "A.";
  font-family: Lato;
  margin-right: 0.5em;
  font-weight: bold;
}
main .faq details summary + * > * {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
main .paper {
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}
main .contact-tel {
  text-align: center;
}
main .contact-tel > div {
  display: inline-block;
  padding: var(--content-padding);
  background-color: #ececec;
}
main .contact-form {
  max-width: 800px;
  margin: var(--content-padding) auto;
  padding: var(--content-padding);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
  background-color: rgba(221, 243, 254, 0.5);
}
main .contact-form input[type=text], main .contact-form input[type=tel], main .contact-form textarea {
  font-family: inherit;
  box-sizing: border-box;
  padding: 0.25em;
  border: 1px solid #ccc;
  width: 100%;
}
main .contact-form .submit-buttons {
  text-align: center;
  margin-top: 2em;
}
main .download-form form {
  max-width: 800px;
  margin: var(--content-padding) auto;
}
main .download-form form .ebd_input {
  display: inline-block;
  margin-right: 1em;
}
main .download-form form .ebd_input [value="|"] {
  display: none;
}
main .download-form form .contact-form {
  margin: 2em 0;
}
main .download-form .ebd_results {
  max-width: 800px;
  margin: var(--content-padding) auto;
  display: block;
  color: #fff;
  border-radius: 9999px;
  box-shadow: none;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  word-break: break-word;
  box-sizing: border-box;
  background-color: #043a7b;
}
main .download-form .ebd_results a {
  display: inline-flex;
  margin-right: 1em;
  align-items: center;
}
main .download-form .ebd_results a::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  content: "\f56d";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  margin-right: 0.25em;
}
main .main-copy {
  font-size: calc(100vw / 16);
  font-weight: normal;
}
@media (min-width: 480px) {
  main .main-copy {
    font-size: 30px;
  }
}
@media (max-width: 192px) {
  main .main-copy {
    font-size: 12px;
  }
}
main .main-copy strong {
  font-size: 1.1em;
}
main .wp-block-column.banner p {
  background-image: linear-gradient(90deg, #dddddd, white);
  text-align: left;
}
main .wp-block-column.banner p > a {
  height: 6em;
  border: 1px solid #ccc;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.125rem;
  text-decoration: none !important;
  padding-left: 1em;
  line-height: 1.4;
  gap: 1em;
}
main .wp-block-column.banner p > a > img {
  width: 30% !important;
  height: inherit !important;
  object-fit: cover;
  object-position: left center;
}
main .footer-copy {
  background-image: url("../images/smartvisa_footer.png");
  background-size: cover;
}
