.nav-pc li:nth-child(2) a {
  color: #4267b2; }
  .nav-pc li:nth-child(2) a::before {
    background-color: #4267b2;
    width: 100%; }

.section-sub-hero {
  background: url("/assets/img/company/main-0409.jpg") no-repeat center;
  background-size: cover; }
.section-message {
  position: relative;
  background-color: #f6f6f8;
  opacity: 0.8;
  background-size: 150px 150px;
  padding: 60px 0 120px;
  overflow: hidden; }
  @media screen and (max-width: 1024px) {
    .section-message {
      padding-bottom: 100px; } }
  @media screen and (max-width: 480px) {
    .section-message {
      padding-top: 30px;
      padding-bottom: 60px; } }
  .section-message::before {
    content: "TOP MESSAGE";
    position: absolute;
    bottom: -22px;
    left: 0;
    font-size: 140px;
    font-weight: bold;
    color: #e6e6e6;
    line-height: 1; }
    @media screen and (max-width: 1024px) {
      .section-message::before {
        bottom: -16px;
        font-size: 100px; } }
    @media screen and (max-width: 768px) {
      .section-message::before {
        font-size: 80px; } }
    @media screen and (max-width: 480px) {
      .section-message::before {
        bottom: -10px;
        font-size: 60px; } }
  .section-message h2 {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.4; }
    @media screen and (max-width: 480px) {
      .section-message h2 {
        font-size: 1.875rem; } }
  .section-message .box {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px; }
    @media screen and (max-width: 480px) {
      .section-message .box {
        margin-top: 20px; } }
    .section-message .box-txt {
      width: 100%;
      line-height: 2;
      padding: 0 40px; }
      @media screen and (max-width: 768px) {
        .section-message .box-txt {
          width: 100%;
          padding: 0 20px; } }
      .section-message .box-txt .post-name {
        margin-top: 20px;
        text-align: right;
        line-height: 1; }
      .section-message .box-txt .post {
        font-size: 1rem; }
        @media screen and (max-width: 480px) {
          .section-message .box-txt .post {
            font-size: 0.875rem; } }
      .section-message .box-txt .name {
        font-size: 1.875rem; }
        @media screen and (max-width: 480px) {
          .section-message .box-txt .name {
            font-size: 1.25rem; } }
.section-outline {
  background-color: #e6e6e6;
  padding: 60px 0 0; }
  @media screen and (max-width: 480px) {
    .section-outline {
      padding-top: 30px; } }
  .section-outline h2 {
    border-bottom: 1px solid #222;
    padding: 0 10px;
    font-size: 2.25rem;
    font-weight: bold;
    color: #627f99;
    line-height: 1.4; }
    @media screen and (max-width: 480px) {
      .section-outline h2 {
        font-size: 1.5rem; } }
  .section-outline__box {
    margin-top: 40px;
    padding: 0 20px; }
    @media screen and (max-width: 480px) {
      .section-outline__box {
        margin-top: 20px;
        padding: 0; } }
    .section-outline__box table {
      border-spacing: 5px;
      width: 100%; }
    .section-outline__box th,
    .section-outline__box td {
      padding: 20px; }
      @media screen and (max-width: 480px) {
        .section-outline__box th,
        .section-outline__box td {
          padding: 10px; } }
    .section-outline__box th {
      background-color: #627f99;
      color: #fff;
      text-align: left; }
      @media screen and (max-width: 480px) {
        .section-outline__box th {
          width: 90px; } }
    .section-outline__box td {
      background-color: #fff; }
.section-location {
  position: relative;
  background-color: #e6e6e6;
  padding: 60px 0 120px;
  overflow: hidden; }
  @media screen and (max-width: 1024px) {
    .section-location {
      padding-bottom: 100px; } }
  @media screen and (max-width: 480px) {
    .section-location {
      padding-top: 30px;
      padding-bottom: 60px; } }
  .section-location::before {
    content: "ACCESS";
    position: absolute;
    bottom: -22px;
    right: 0;
    font-size: 140px;
    font-weight: bold;
    color: #fff;
    line-height: 1; }
    @media screen and (max-width: 1024px) {
      .section-location::before {
        bottom: -16px;
        font-size: 100px; } }
    @media screen and (max-width: 480px) {
      .section-location::before {
        bottom: -10px;
        font-size: 60px; } }
  .section-location h2 {
    border-bottom: 1px solid #222;
    padding: 0 10px;
    font-size: 2.25rem;
    font-weight: bold;
    color: #627f99;
    line-height: 1.4; }
    @media screen and (max-width: 480px) {
      .section-location h2 {
        font-size: 1.5rem; } }
  .section-location__box {
    margin-top: 40px;
    padding: 0 20px; }
    @media screen and (max-width: 480px) {
      .section-location__box {
        margin-top: 20px;
        padding: 0; } }
    .section-location__box .box {
      display: flex;
      flex-wrap: wrap;
      margin-top: 20px; }
      .section-location__box .box:first-child {
        margin-top: 0; }
      .section-location__box .box-txt {
        display: flex;
        width: 60%;
        padding-right: 40px; }
        @media screen and (max-width: 768px) {
          .section-location__box .box-txt {
            width: 100%;
            padding-right: 0; } }
        .section-location__box .box-txt h3 {
          flex: 0 0 160px;
          font-weight: normal; }
      .section-location__box .box-map {
        width: 40%; }
        @media screen and (max-width: 768px) {
          .section-location__box .box-map {
            width: 100%;
            margin-top: 20px; } }
        .section-location__box .box-map iframe {
          aspect-ratio: 16 / 9;
          width: 100%;
          height: auto; }
.section-history {
  padding: 60px 0; }
  @media screen and (max-width: 480px) {
    .section-history {
      padding-top: 30px; } }
  .section-history h2 {
    border-bottom: 1px solid #222;
    padding: 0 10px;
    font-size: 2.25rem;
    font-weight: bold;
    color: #627f99;
    line-height: 1.4; }
    @media screen and (max-width: 480px) {
      .section-history h2 {
        font-size: 1.5rem; } }
  .section-history__box {
    margin-top: 40px;
    padding: 0 20px; }
    @media screen and (max-width: 480px) {
      .section-history__box {
        margin-top: 20px;
        padding: 0; } }
    .section-history__box .box-row {
      display: flex; }
      .section-history__box .box-row .ym {
        flex: 0 0 100px;
        padding: 5px 10px; }
        @media screen and (max-width: 480px) {
          .section-history__box .box-row .ym {
            flex-basis: 80px; } }
      .section-history__box .box-row .txt {
        position: relative;
        border-left: 2px solid #8b7e6f;
        padding: 5px 10px 5px 30px; }
        @media screen and (max-width: 480px) {
          .section-history__box .box-row .txt {
            padding-left: 20px; } }
        .section-history__box .box-row .txt::before {
          content: "";
          position: absolute;
          top: 9px;
          left: -9px;
          background-color: #8b7e6f;
          border-radius: 50%;
          width: 16px;
          height: 16px; }
