@charset "UTF-8";
footer {
  padding-top: 3rem;
  background: linear-gradient(to right top, #8b0811, #cd373d); }

.footer-logo {
  display: block;
  width: 200px;
  margin: auto; }

.footer-link-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
  padding: 2rem 1.5%;
  width: 1024px;
  color: #FFF; }
  .footer-link-wrap > div {
    flex: 1 1 0;
    margin: 0 0.5%; }
  .footer-link-wrap p {
    margin-bottom: 0.5rem; }
  .footer-link-wrap a {
    font-size: 0.85rem;
    line-height: 1.5rem;
    transition: color 0.5s; }
  .footer-link-wrap ul {
    position: relative;
    margin: 0;
    padding-left: 1.5rem; }
    .footer-link-wrap ul::before {
      display: block;
      position: absolute;
      content: "";
      width: 1px;
      height: calc(100% - 1rem);
      left: 0.25rem;
      top: 50%;
      background: #FFF;
      transform: translateY(-50%); }
    .footer-link-wrap ul li {
      position: relative;
      margin: 0.25rem 0; }
      .footer-link-wrap ul li::before {
        display: none; }

.footer-copywrite {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #cf152d;
  color: #FFF;
  padding: 1rem 3rem;
  font-size: 0.85rem;
  line-height: 1.5rem;
  background: #cf152d; }
  .footer-copywrite span {
    font-weight: 300; }

@media only screen and (max-width: 1440px) {
  .footer-link-wrap {
    width: 1024px; } }
@media only screen and (max-width: 1024px) {
  footer {
    padding-top: 2rem; }

  .footer-logo {
    width: 150px; }

  .footer-link-wrap {
    display: block;
    border-top: 1px solid #FFF;
    margin: 1.5rem auto 0 auto;
    padding: 0;
    width: 100%; }
    .footer-link-wrap > div {
      margin: 0;
      border-bottom: 1px solid #c9c9c9;
      border-top: 1px solid #c9c9c9;
      margin-top: -1px; }
      .footer-link-wrap > div:first-child {
        border-top: 0; }
      .footer-link-wrap > div.active p::after {
        content: "—"; }
      .footer-link-wrap > div.single p::after {
        display: none; }
    .footer-link-wrap p {
      position: relative;
      padding: 1rem 1.5rem;
      margin-bottom: -1px;
      border-bottom: 1px solid #c9c9c9; }
      .footer-link-wrap p::after {
        display: block;
        position: absolute;
        content: "＋";
        top: 50%;
        right: 1.5rem;
        font-size: 1.25rem;
        line-height: 2rem;
        transform: translateY(-50%); }
    .footer-link-wrap p > a {
      display: block;
      font-size: 1rem;
      line-height: 1.75rem; }
      .body-en .footer-link-wrap p > a, .footer-link-wrap p > a.body-en {
        font-size: 1.1rem;
        line-height: 1.85rem; } }
    @media only screen and (max-width: 1024px) and (max-width: 640px) {
      .body-en .footer-link-wrap p > a, .footer-link-wrap p > a.body-en {
        font-size: 1rem;
        line-height: 1.75rem; } }
@media only screen and (max-width: 1024px) {
    .footer-link-wrap ul {
      display: none;
      margin-left: 0;
      padding: 0.5rem 1.5rem; }
      .footer-link-wrap ul::before {
        display: none; }
      .footer-link-wrap ul li::before {
        display: none; }

  .footer-copywrite {
    display: block;
    padding: 1.5rem 1.5rem 1rem 1.5rem;
    text-align: left;
    letter-spacing: 1px;
    font-size: 0.85rem;
    line-height: 1.5rem; } }
@media only screen and (max-width: 480px) {
  .footer-logo {
    width: 100px; }

  .footer-copywrite {
    font-size: 0.75rem; }
    .footer-copywrite span {
      font-size: 0.75rem; } }

/*# sourceMappingURL=footer.css.map */
