﻿@import url("//fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600&display=swap");
.header-ph2 {
  position: relative;
  z-index: 100; }
  .header-ph2__primary {
    background: white; }
    .header-ph2__primary .header-ph2__inner {
      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; }
  .header-ph2__utility {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .header-ph2__utility a {
      color: #00001a;
      font-size: 1rem;
      font-weight: bold; }
    .header-ph2__utility .header-ph2__drop__hook:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 4px 3.5px 0 3.5px;
      border-color: #000000 transparent transparent transparent;
      position: absolute;
      bottom: 10px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%); }
    .header-ph2__utility > a, .header-ph2__utility .header-ph2__drop__hook {
      padding: 40px 10px 15px;
      position: relative;
      min-width: 70px;
      height: 70px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      display: table;
      text-align: center;
      border-left: solid 1px #E5E5E5;
      text-decoration: none !important;
      -webkit-transition: all .3s;
      -o-transition: all .3s;
      transition: all .3s; }
      .header-ph2__utility > a:hover, .header-ph2__utility .header-ph2__drop__hook:hover {
        opacity: .75; }
      .header-ph2__utility > a img[src*="icon-"]:first-child, .header-ph2__utility .header-ph2__drop__hook img[src*="icon-"]:first-child {
        position: absolute;
        top: 10px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
    .header-ph2__utility .header-ph2__contact {
      padding: 0;
      border: none;
      background: #FFF000;
      width: 128px;
      height: 70px;
      line-height: 70px;
      font-size: 1.2rem; }
  .header-ph2__drop {
    position: relative; }
    .header-ph2__drop__cont {
      position: absolute;
      bottom: 0;
      right: 0;
      -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
      transform: translateY(100%);
      background: #fff;
      z-index: 1;
      -webkit-box-shadow: 0 0 0.2rem 0 rgba(0, 0, 0, 0.2);
      box-shadow: 0 0 0.2rem 0 rgba(0, 0, 0, 0.2);
      min-width: 12rem;
      z-index: 2;
      -webkit-transition: all .3s;
      -o-transition: all .3s;
      transition: all .3s;
      max-height: 0;
      overflow: hidden; }
      .header-ph2__drop__cont.is-open {
        max-height: 100vh; }
      .header-ph2__drop__cont a {
        display: block;
        padding: 15px 10px;
        white-space: nowrap; }
  .header-ph2__secondly {
    background: #1E3C91; }
  .header-ph2 .header-ph2__nav {
    margin: 0 20px;
    font-size: 1.2;
    font-weight: bold;
    letter-spacing: -.5em;
    text-align: right; }
    @media only screen and (min-width: 1500px) {
      .header-ph2 .header-ph2__nav .is-adjust {
        display: none; } }
    @media only screen and (max-width: 1498px) {
      .header-ph2 .header-ph2__nav .is-adjust ~ a {
        margin-top: 0; } }
    .header-ph2 .header-ph2__nav a {
      display: inline-block;
      letter-spacing: normal;
      margin: 15px;
      color: white; }
      .header-ph2 .header-ph2__nav a img[src*="icon-window"] {
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%); }
    .header-ph2 .header-ph2__nav:after {
      content: "";
      display: block;
      clear: both; }
  .header-ph2__category {
    float: left;
    letter-spacing: normal;
    display: table !important;
    max-width: 400px;
    width: 25vw;
    min-width: 315px;
    padding: 0 20px;
    margin: 0 !important;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
    height: 54px;
    background: #ededed;
    color: #00001a !important;
    font-size: 1.7rem;
    font-weight: bold;
    font-family: "Noto Serif JP", serif;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none !important; }
    .header-ph2__category:hover span {
      opacity: .65; }
    .header-ph2__category > span {
      -webkit-transition: all .3s;
      -o-transition: all .3s;
      transition: all .3s;
      display: table-cell;
      vertical-align: middle;
      font-size: 0.96em;
      text-align: left; }
    .header-ph2__category.two-lines {
      font-size: 1.6rem;
      line-height: 1.3125; }
  .header-ph2__inner {
    max-width: 1600px;
    min-width: 1260px;
    margin: auto;
    position: relative; }
  .header-ph2__search form {
    position: relative;
    background: white !important;
    width: 30rem; }
    .header-ph2__search form input[type="text"] {
      height: 3.9rem !important;
      width: calc(100% - 34px) !important;
      vertical-align: top;
      margin: 0;
      border: none !important;
      background: white !important; }
    .header-ph2__search form input[type="image"] {
      position: absolute;
      right: 1rem;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      margin: 0;
      z-index: 1;
      width: 2.5rem; }
  .header-ph2__search * {
    margin: 0; }
  .header-ph2 .megadrop {
    display: inline-block; }
    .header-ph2 .megadrop__hook.is-active {
      color: #fff000 !important; }
    .header-ph2 .megadrop__box {
      position: absolute;
      left: 0;
      bottom: 0;
      -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
      transform: translateY(100%);
      width: 1600px;
      background: #ededed; }
    .header-ph2 .megadrop__row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
    .header-ph2 .megadrop__head {
      max-width: 400px;
      width: 25vw;
      min-width: 315px;
      background: #1c3579;
      letter-spacing: normal;
      font-weight: normal;
      text-align: left;
      padding: 35px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      position: relative; }
    .header-ph2 .megadrop__title {
      font-size: 2.4rem;
      color: white;
      margin: 0 0 25px;
      padding-bottom: 4px;
      border-bottom: solid 3px #fff000; }
    .header-ph2 .megadrop__detail a {
      margin: 0;
      font-size: 1.2rem; }
      .header-ph2 .megadrop__detail a img[src*="icon"] {
        margin-left: 10px; }
    .header-ph2 .megadrop__body {
      max-width: 1200px;
      width: 75vw;
      min-width: 945px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 25px 0; }
    .header-ph2 .megadrop__list {
      width: calc(100% / 3);
      text-align: left;
      padding-left: 40px;
      padding-right: 20px;
      /*margin: 0;*/
      margin: 0 0 30px;
      border-left: solid 1px gray;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      .header-ph2 .megadrop__list:nth-child(3n+1) {
        border: none; }
      .header-ph2 .megadrop__list li {
        position: relative;
        padding-left: 1rem;
        margin: 10px 0; }
        .header-ph2 .megadrop__list li:before {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 4.5px 0 4.5px 4px;
          border-color: transparent transparent transparent #000000;
          position: absolute;
          top: .6em;
          left: 0; }
        .header-ph2 .megadrop__list li a {
          color: black !important;
          font-size: 1.2rem;
          margin: 0 !important;
          position: relative; }

.js-sticky__wrapper {
  z-index: 100; }

.header-ph2__drop__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start; }
  .header-ph2__drop__row__col {
    padding: 35px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%; }
    .header-ph2__drop__row__col dl {
      margin: 0; }
      .header-ph2__drop__row__col dl dt {
        font-size: 1.2rem;
        font-weight: bold;
        margin-bottom: 5px; }
      .header-ph2__drop__row__col dl dd {
        border-left: solid #1c3579 1px;
        margin-left: 6px;
        padding-left: 8px; }
        .header-ph2__drop__row__col dl dd a {
          padding: 10px 5px; }
      .header-ph2__drop__row__col dl + dl {
        margin-top: 30px; }

.header-ph2__logo {
  margin-left: 20px; }
@media only screen and (min-width: 1550px) {
  .header-ph2 .header-ph2__nav div.is-adjust2 {
    display: none;
  }
}