@charset "utf-8";

/* ======================================================
 * layout_pc.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Header
 * - Gnav
 * - Main
 * - Assist
 * - Footer
 * - Other
 * - Clearfix
 * Media Queries
 * Print
====================================================== */

@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Header
  ------------------------------------------------------ */
  .Header {
    position: fixed;
    width: 100%;
    height: 100px;
    z-index: 100;
  }
  .Header > .HeaderBody {
    -webkit-display: flex;
    display: flex;
    max-width: 1920px;
    width: 100%;
    height: 100px;
    margin: 0 auto;
    background: #ffffff;
  }
  .Header > .HeaderBody > .header-identity {
    padding: 21px 10px 0 39px;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    color: #333333;
    text-decoration: none;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_img + .logo_text {
    margin-left: 28px;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_text {
    white-space: nowrap;
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_text > span {
    display: block;
    font-size: 1.6rem;
  }
  
  /* ------------------------------------------------------
   * Gnav
  ------------------------------------------------------ */
  .Header > .HeaderBody > .Gnav {
    margin-left: auto;
  }
  .Header > .HeaderBody > .Gnav > .menu-btn {
    display: none;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody {
    -webkit-display: flex;
    display: flex;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody * {
    color: #333333;
    text-decoration: none;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li {
    line-height: 26px;
    border-left: solid 1px #ccc;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li:first-child {
    border-left: none;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a {
    display: block;
    padding: 0 24px;
    line-height: 1.3;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a:hover {
    color: #0d5eaf;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a::after {
    content: "";
    bottom: 0;
    display: block;
    width: 0;
    border-bottom: solid 1px #6a90c5;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a:hover::after {
    width: 100%;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList + .gnavList {
    padding-right: 19px;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList + .gnavList > li {
    line-height: 16px;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList + .gnavList > li > a {
    padding: 0 16px;
    font-size: 1.3rem;
    font-weight: normal;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList + .gnavList > li:first-child > a {
    padding-left: 28px;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .contactBtn {
    margin: 0;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .contactBtn > a {
    display: block;
    width: 100px;
    height: 100px;
    background: #033775 url(/common/img/head_ic01.png) no-repeat 50% 50%;
    background-size: 26px auto;
    text-indent: -9999px;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .contactBtn > a:hover {
    background-color: #0d5eaf;
  }
  
  /* ------------------------------------------------------
   * Main
  ------------------------------------------------------ */
  .Main {
    padding-top: 100px;
  }
  
  /* ----- pageGuide ----- */
  .pageGuide {
    padding: 13px 0 12px;
    background: #e1e7ee;
  }
  
  /* breadcrumbs */
  .breadcrumbs {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
  }
  .breadcrumbs > li {
    color: #666;
    font-size: 1.4rem;
  }
  .breadcrumbs > li:last-child {
    font-weight: bold;
  }
  .breadcrumbs > li::before {
    content: "＞";
    display: inline-block;
    margin: 0 13px 0 11px;
    color: #666;
    font-size: 1.4rem;
    font-weight: normal;
    vertical-align: middle;
  }
  .breadcrumbs > li:first-child::before {
    display: none;
  }
  .breadcrumbs > li > a {
    color: #666;
    text-decoration: none;
  }
  .breadcrumbs > li > a:hover {
    text-decoration: underline;
  }
  
  /* ----- container ----- */
  .container {
    overflow: hidden;
    padding-bottom: 100px;
  }

  /* contents */
  .contents {
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
  }
  .contents > *:first-child {
    margin-top: 0;
  }
  
  /* ------------------------------------------------------
   * Footer
  ------------------------------------------------------ */
  .Footer {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    background: #333;
  }
  .Footer > .FooterBody {
    -webkit-display: flex;
    display: flex;
    padding: 55px 59px 45px;
  }
  .Footer > .FooterBody > .footer-info {
    -webkit-display: flex;
    display: flex;
  }
  .Footer > .FooterBody > .footer-info > .name {
    margin: 0;
    line-height: 1.3;
    color: #fff;
    font-size: 3.2rem;
  }
  .Footer > .FooterBody > .footer-info > .name > span {
    display: block;
    font-size: 2.0rem;
  }
  .Footer > .FooterBody > .footer-info > .address {
    margin: 4px 0 0 36px;
    color: #adadad;
    font-size: 1.3rem;
  }
  .Footer > .FooterBody > .footer-info > .address > p {
    margin: 0;
    line-height: 1.5;
  }
  .Footer > .FooterBody > .footer-info > .address > p + p {
    margin: 12px 0 0;
  }
  .Footer > .FooterBody > .FooterUtility {
    margin-left: auto;
  }
  .Footer > .FooterBody > .FooterUtility a {
    color: #fff;
    text-decoration: none;
  }
  .Footer > .FooterBody > .FooterUtility a::after {
    content: "";
    bottom: 0;
    display: block;
    width: 0;
    border-bottom: solid 1px #fff;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
  }
  .Footer > .FooterBody > .FooterUtility a:hover::after {
    width: 100%;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility01 {
    -webkit-display: flex;
    display: flex;
    justify-content: flex-end;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility01 > li {
    margin-left: 36px;
    font-size: 1.5rem;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility01 > li:first-child {
    margin-left: 0;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility02 {
    -webkit-display: flex;
    display: flex;
    justify-content: flex-end;
    margin-top: 14px;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility02 > li {
    margin-left: 29px;
    font-size: 1.3rem;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility02 > li:first-child {
    margin-left: 0;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-copyright {
    margin-top: 8px;
    color: #adadad;
    font-size: 1.3rem;
    text-align: right;
  }
  .Footer > .Pagetop {
    display: none;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * Media Queries
====================================================== */
@media screen and (min-width: 1300px) and (max-width: 1450px) {
  .Header > .HeaderBody > .header-identity {
    padding-left: 15px;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_text {
    margin-left: 15px;
    font-size: 2.0rem;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a {
    white-space: nowrap;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .contactBtn > a {
    display: block;
    width: 80px;
  }
}
@media screen and (min-width: 970px) and (max-width: 1299px) {
  .Header > .HeaderBody > .header-identity {
    padding-left: 10px;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_img {
    width: 90px;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_text {
    margin-left: 10px;
    font-size: 1.8rem;
  }
  .Header > .HeaderBody > .header-identity > .identity_logo > a > .logo_text > span {
    font-size: 1.4rem;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a {
    white-space: nowrap;
    padding: 0 10px;
    font-size: 1.4rem;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList + .gnavList > li > a {
    padding: 0 10px;
    font-size: 1.2rem;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList + .gnavList > li:first-child > a {
    padding-left: 10px;
  }
  .Header > .HeaderBody > .Gnav > .GnavBody > .contactBtn > a {
    width: 60px;
  }
  .Footer > .FooterBody {
    padding: 55px 20px 45px;
  }
  .Footer > .FooterBody > .footer-info > .name {
    font-size: 2.0rem;
  }
  .Footer > .FooterBody > .footer-info > .name > span {
    font-size: 1.5rem;
  }
  .Footer > .FooterBody > .footer-info > .address {
    margin: 4px 0 0 15px;
    font-size: 1.1rem;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility01 > li {
    margin-left: 18px;
    font-size: 1.4rem;
  }
  .Footer > .FooterBody > .FooterUtility > .footer-utility02 > li {
    margin-left: 15px;
    font-size: 1.2rem;
  }
  @media screen and (min-width: 768px) and (max-width: 969px) {
  .Header > .HeaderBody > .Gnav > .GnavBody > .gnavList > li > a {
    white-space: normal;
  }
  }
}

/* ======================================================
 * Print
====================================================== */
@media print {
  * {
    opacity: 1!important;
  }
  .Header {
    width: 1600px;
    position: inherit;
  }
  .Main {
    width: 1600px;
    padding-top: 0;
  }
  .Footer {
    width: 1600px;
  }
}