/* ##############################################################################

    PAGEHEAD - 01

############################################################################## */

  .page_head {
    padding-top: 72px;
  }
  .page_head .inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: end;
    -ms-flex-align: end;
    align-items: end;
    column-gap: 80px;
    padding-top: 64px;
    padding-bottom: 80px;
  }
  .page_head .inner::before {
    top: 0;
    right: 200px;
    left: auto;
    left: inherit;
    width: 100vw;
    height: 100%;
  }
  .page_head .txt_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  .page_head .txt_area .page_ttl {
    row-gap: 32px;
  }
  .page_head .txt_area .page_ttl-jp,
  .page_head .txt_area .page_ttl-en {
    display: block;
    line-height: 1em;
  }
  .page_head .txt_area .page_ttl-jp {
    font-size: 280%;
    letter-spacing: .2em;
  }
  .page_head .txt_area .page_ttl-en {
    font-size: 108%;
    letter-spacing: .3em;
    text-transform: uppercase;
  }
  .page_head .txt_area .page_txt {
    margin-top: 40px;
  }
  .page_head .img_area {
    width: 50%;
    padding-top: 25%;
  }
  .page_head #breadcrumbs {
    margin-top: 40px;
  }
  .page_head #breadcrumbs  > span {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .page_head #breadcrumbs a {
    color: #fff;
    transition: .4s all;
  }
  .page_head #breadcrumbs span.arrow {
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url(../images/common/ico-arrow-rgt.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 8px;
    margin-right: 8px;
  }
  @media (any-hover: hover) {
    .page_head #breadcrumbs a:hover {
      opacity: .6;
    }
  }
  @media (max-width: 1280px) {
    .page_head .txt_area .page_ttl-jp {
      font-size: 240%;
    }
    .page_head .txt_area .page_ttl-en {
      font-size: 100%;
    }
    .page_head .img_area {
      width: 42%;
    }
    .page_head #breadcrumbs {
      margin-top: 32px;
    }
  }
  @media (max-width: 1064px) {
    .page_head {
      padding-top: 64px;
    }
    .page_head .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-align-items: start;
      -ms-flex-align: start;
      align-items: start;
      padding-top: 48px;
      padding-bottom: 24px;
      row-gap: 8px;
    }
    .page_head .inner::before {
      top: 40px;
      right: -20px;
    }
    .page_head .img_area {
      width: 100%;
      padding-top: 45%;
    }
  }
  @media (max-width: 768px) {
    .page_head .inner {
      padding-top: 40px;
      padding-bottom: 16px;
    }
    .page_head .txt_area .page_ttl {
      row-gap: 20px;
    }
    .page_head .txt_area .page_ttl-jp {
      font-size: 200%;
    }
    .page_head .txt_area .page_txt {
      margin-top: 32px;
    }
    .page_head #breadcrumbs {
      margin-top: 24px;
    }
  }
  @media (max-width: 560px) {
    .page_head {
      padding-top: 56px;
    }
    .page_head .inner {
      padding-top: 32px;
      padding-bottom: 10px;
      row-gap: 4px;
    }
    .page_head .txt_area .page_ttl {
      row-gap: 18px;
    }
    .page_head .txt_area .page_ttl-jp {
      font-size: 157%;
    }
    .page_head .txt_area .page_txt {
      margin-top: 24px;
    }
    .page_head .txt_area .page_ttl-en {
      font-size: 88%;
    }
  }

