@charset "UTF-8";
/*
---------------------------------------------------------------------------------------------------------------------
メインビジュアル
---------------------------------------------------------------------------------------------------------------------
*/
.page-upper .ceo-photo {
  position: absolute;
  bottom: 0;
  right: 2%;
  width: 35%; }
  @media (min-width: 1024px) {
    .page-upper .ceo-photo {
      right: 10%; } }
.page-upper .contents ul {
  margin-top: 40px; }
  @media (min-width: 768px) {
    .page-upper .contents ul {
      display: flex; } }
  .page-upper .contents ul li {
    margin: 0 0 10px 0; }
    @media (min-width: 768px) {
      .page-upper .contents ul li {
        margin-right: 40px; } }
    .page-upper .contents ul li:last-child {
      margin: 0; }
    .page-upper .contents ul li a {
      display: flex;
      align-items: center; }
      .page-upper .contents ul li a img {
        width: 20px;
        margin-right: 5px; }
      .page-upper .contents ul li a h3 {
        font-size: 0.9em;
        font-weight: bold;
        position: relative; }
        @media (min-width: 768px) {
          .page-upper .contents ul li a h3 {
            font-size: 1.125em; } }
        .page-upper .contents ul li a h3::after {
          position: absolute;
          bottom: 0;
          left: 0;
          content: '';
          width: 100%;
          height: 1px;
          background: #000;
          transform: scale(0, 1);
          transform-origin: right top;
          transition: transform .3s; }
        .page-upper .contents ul li a h3:hover::after {
          transform-origin: left top;
          transform: scale(1, 1); }
.page-upper #ceo-message {
  padding: 80px 0 0 5%; }
  @media (min-width: 768px) {
    .page-upper #ceo-message {
      padding: 100px 0 0 17.5%; } }
  @media (min-width: 1024px) {
    .page-upper #ceo-message {
      padding: 100px 0 0 20%; } }
  .page-upper #ceo-message .slideAnimeRightLeft {
    padding: 0 5px 0 0; }
  .page-upper #ceo-message h2 {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    font-size: 2.4em;
    line-height: 1.0em;
    color: #17ADAA; }
    @media (min-width: 1024px) {
      .page-upper #ceo-message h2 {
        font-size: 4.0em; } }
  .page-upper #ceo-message h3 {
    font-size: 1.25em;
    line-height: 1.0em;
    margin-top: 5px; }
    @media (min-width: 1024px) {
      .page-upper #ceo-message h3 {
        font-size: 2.25em;
        margin-top: 20px; } }

#message-movie .message-movie-in {
  margin: 0px auto 0;
  width: 90%; }
  @media (min-width: 1024px) {
    #message-movie .message-movie-in {
      width: 80%; } }

.message-text {
  margin: 30px auto 60px;
  width: 85%; }
  @media (min-width: 768px) {
    .message-text {
      padding-left: 10%; } }
  @media (min-width: 1024px) {
    .message-text {
      margin: 100px auto 80px;
      width: 80%; } }
  .message-text h3 {
    font-size: 1.125em;
    line-height: 1.8em;
    color: #17ADAA;
    margin-bottom: 40px; }
    @media (min-width: 1024px) {
      .message-text h3 {
        font-size: 1.5em; } }
  .message-text p {
    font-size: 0.9em;
    line-height: 2.2em; }
    @media (min-width: 1024px) {
      .message-text p {
        font-size: 1.125em; } }
  .message-text .name {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: 20px; }
    .message-text .name h4 {
      font-size: 0.8em;
      font-weight: 400;
      line-height: 1.2em;
      margin-right: 10px; }
    .message-text .name h5 {
      font-size: 1.25em;
      font-weight: 400;
      line-height: 1.2em; }

/*
---------------------------------------------------------------------------------------------------------------------
写真スライド
---------------------------------------------------------------------------------------------------------------------
*/
@media (min-width: 1250px) {
  #company {
    margin: auto;
    width: 90%;
    padding-left: 10%; } }
#company .card03 {
  overflow: hidden; }

.lower {
  margin: auto;
  width: 90%;
  /*
  ---------------------------------------------------------------------------------------------------------------------
  経営メンバー
  ---------------------------------------------------------------------------------------------------------------------
  */
  /*
  ---------------------------------------------------------------------------------------------------------------------
  会社概要
  ---------------------------------------------------------------------------------------------------------------------
  */ }
  @media (min-width: 1250px) {
    .lower {
      padding-left: 10%; } }
  .lower #management {
    padding: 80px 0 0; }
    @media (min-width: 1024px) {
      .lower #management {
        padding: 120px 0; } }
    @media only screen and (min-width: 768px) {
      .lower #management .o-4column .col-lg-4 {
        padding: 0 10px; }
      .lower #management .o-4column {
        margin: 0 -10px; } }
    @media only screen and (min-width: 1024px) {
      .lower #management .o-4column .col-lg-4 {
        padding: 0 30px; }
      .lower #management .o-4column {
        margin: 0 -30px; } }
    .lower #management .management-box {
      display: flex;
      margin-bottom: 40px; }
      @media (min-width: 768px) {
        .lower #management .management-box {
          display: block; } }
      .lower #management .management-box .gazou {
        width: 35%; }
        @media (min-width: 768px) {
          .lower #management .management-box .gazou {
            width: 90%;
            max-width: 280px; } }
      .lower #management .management-box .text {
        width: 65%;
        padding-left: 5%; }
        @media (min-width: 768px) {
          .lower #management .management-box .text {
            width: 100%;
            padding-left: 0;
            margin-top: 20px; } }
        .lower #management .management-box .text h4 {
          font-size: 0.7em;
          line-height: 1.35em; }
          @media (min-width: 1024px) {
            .lower #management .management-box .text h4 {
              font-size: 0.8em; } }
        .lower #management .management-box .text h5 {
          font-size: 1.125em;
          line-height: 1.2em;
          margin-top: 10px; }
          @media (min-width: 1024px) {
            .lower #management .management-box .text h5 {
              font-size: 1.25em; } }
        .lower #management .management-box .text p {
          font-size: 0.85em;
          line-height: 1.8em;
          margin-top: 20px; }
          @media (min-width: 1024px) {
            .lower #management .management-box .text p {
              font-size: 1.0em;
              margin-top: 30px; } }
  .lower #company-profile {
    padding: 80px 0; }
    @media (min-width: 1024px) {
      .lower #company-profile {
        padding: 120px 0; } }
    .lower #company-profile table {
      border-collapse: collapse;
      width: 100%;
      border-bottom: 1px solid #CBCBCB; }
      .lower #company-profile table th, .lower #company-profile table td {
        display: block; }
        @media (min-width: 768px) {
          .lower #company-profile table th, .lower #company-profile table td {
            display: table-cell; } }
      .lower #company-profile table th {
        font-size: 0.9em;
        font-weight: bold;
        text-align: left;
        line-height: 1.8em;
        vertical-align: top;
        color: #777777;
        padding: 25px 0 0;
        border-top: 1px solid #CBCBCB; }
        @media (min-width: 768px) {
          .lower #company-profile table th {
            padding: 40px 0;
            width: 200px; } }
        @media (min-width: 1024px) {
          .lower #company-profile table th {
            font-size: 1.0em; } }
      .lower #company-profile table td {
        font-size: 0.9em;
        line-height: 1.8em;
        padding: 0 0 30px 0; }
        @media (min-width: 768px) {
          .lower #company-profile table td {
            border-top: 1px solid #CBCBCB;
            padding: 40px 0; } }
        @media (min-width: 1024px) {
          .lower #company-profile table td {
            font-size: 1.0em; } }
        .lower #company-profile table td ul {
          margin-bottom: 30px; }
          .lower #company-profile table td ul:last-child {
            margin-bottom: 0; }
          .lower #company-profile table td ul li {
            font-size: 0.9em;
            line-height: 1.8em; }
            @media (min-width: 1024px) {
              .lower #company-profile table td ul li {
                font-size: 1.0em; } }
            .lower #company-profile table td ul li a {
              transition: .5s; }
              .lower #company-profile table td ul li a:hover {
                color: #1BADAA; }
            .lower #company-profile table td ul li.tume {
              font-feature-settings: "palt";
              letter-spacing: 0.05em; }

/*
---------------------------------------------------------------------------------------------------------------------
地図
---------------------------------------------------------------------------------------------------------------------
*/
#map {
  padding: 0 0 100px; }
  @media (min-width: 1024px) {
    #map {
      padding: 0 0 140px; } }
  #map .googlemap {
    width: 100%;
    height: 400px; }
    @media (min-width: 1024px) {
      #map .googlemap {
        height: 800px; } }

#page-banner .b-company {
  display: none; }
