@charset "UTF-8";
/*-------------------------------------------------------------------------------

  HTML5 :: modify.css
  2016.01 Accelight Inc.

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------
 変数定義
-------------------------------------------------------------------------------*/
/*
----- 色名接頭辞 -----
白：white
灰：gray
黒：black
鮮やかな：vivid
くすんだ：dull
明るい：brigt
暗い：dark
*/
/*----- グレースケールの定義 -----*/
/*----- 基本色の定義 -----*/
/* メインカラー */
/* サブカラー */
/* メインカラー明るめ*/
/* フォント */
/* リンクテキスト */
/* リンクテキスト ホバー時 */
/* 必須マーク */
/*----- breakpointの定義 -----*/
/*-------------------------------------------------------------------------------
　@mixin
-------------------------------------------------------------------------------*/
/* text-indent:-9999pxの代わり */
/* before,after要素 */
/* before,after要素 インライン */
/* 三角右向きアイコン */
/* くの字下向きアイコン */
/* media query */
/*-------------------------------------------------------------------------------
web font　定義
-------------------------------------------------------------------------------*/
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?kxzv91");
  src: url("../fonts/icomoon.eot?kxzv91#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?kxzv91") format("truetype"), url("../fonts/icomoon.woff?kxzv91") format("woff"), url("../fonts/icomoon.svg?kxzv91#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* ホームアイコン */
.icon-house:before {
  content: "\e901"; }

/* 別タブで開くアイコン */
.icon-window:after {
  content: "\e903";
  margin: 0 0 0 6px; }

/*-------------------------------------------------------------------------------

ヘッダー

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------

フッター

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------

共通パーツ

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------



ホーム


-------------------------------------------------------------------------------*/
.home {
  /*--------------------------------------------------
  メインビジュアル
  --------------------------------------------------*/
  /* end .main-v */
  /*--------------------------------------------------
  メインコンテンツ
  --------------------------------------------------*/
  /* end .contents-wrap */
  /* ニュース */
  /* end .news */ }
  .home .top-area {
    background-image: linear-gradient(#003686 5%, #0a192f); }
  .home .main-v {
    width: 100%;
    margin: 0 0 0 0;
    /* コントローラー */
    /* ページャー */ }
    .home .main-v::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 600px;
      bottom: 0;
      background: url(../img/FV_deco.png) center center/cover no-repeat;
      mix-blend-mode: multiply; }
      @media (max-width: 385px) {
        .home .main-v::after {
          height: 385px;
          bottom: -10px; } }
    @media screen and (min-width: 768px) {
      .home .main-v {
        margin: 0 0 0 0; } }
    .home .main-v .main-v-inner {
      padding: 300px 1em 0 0;
      text-align: right;
      font-size: 470%;
      max-width: 1400px;
      margin: 0 auto;
      color: #fff;
      padding: 0;
      position: relative;
      height: 700px; }
      .home .main-v .main-v-inner p {
        margin: 0;
        position: absolute;
        top: calc(50% - 2.5em);
        left: 0;
        z-index: 100;
        font-family: "Lato", sans-serif;
        font-weight: bold;
        line-height: 1.3em;
        text-align: left; }
        .home .main-v .main-v-inner p span {
          color: #3CF9FF; }
      .home .main-v .main-v-inner .mainv-slider {
        position: absolute;
        right: 0;
        top: 0;
        width: 700px;
        height: 700px; }
        .home .main-v .main-v-inner .mainv-slider .bx-wrapper {
          border: none;
          box-shadow: none; }
          .home .main-v .main-v-inner .mainv-slider .bx-wrapper .bx-viewport {
            position: relative; }
            .home .main-v .main-v-inner .mainv-slider .bx-wrapper .bx-viewport::before {
              position: absolute;
              display: block;
              content: "";
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              background: rgba(0, 0, 0, 0.1);
              z-index: 100; }
          .home .main-v .main-v-inner .mainv-slider .bx-wrapper .bx-controls {
            left: -100%;
            bottom: calc(50% - 1em); }
          .home .main-v .main-v-inner .mainv-slider .bx-wrapper .bx-pager {
            display: flex; }
            .home .main-v .main-v-inner .mainv-slider .bx-wrapper .bx-pager.bx-default-pager a {
              height: 2px;
              width: 35px;
              background: #fff; }
              .home .main-v .main-v-inner .mainv-slider .bx-wrapper .bx-pager.bx-default-pager a.active {
                background: #3CF9FF; }
      @media (max-width: 767px) {
        .home .main-v .main-v-inner {
          display: none; } }
    .home .main-v .main-v-inner-sp {
      padding: 300px 1em 0 1em;
      text-align: right;
      font-size: 300%;
      margin: 0 auto;
      color: #fff;
      padding: 300px 1em 0 0;
      text-align: right;
      font-size: 182%;
      max-width: 1400px;
      margin: 0 auto;
      color: #fff;
      padding: 0;
      position: relative;
      height: 500px; }
      @media (min-width: 768px) {
        .home .main-v .main-v-inner-sp {
          display: none; } }
      .home .main-v .main-v-inner-sp p {
        margin: 0;
        position: absolute;
        bottom: -50px;
        left: 20px;
        z-index: 100;
        font-family: "Lato", sans-serif;
        font-weight: bold;
        line-height: 1.3em;
        text-align: left; }
        .home .main-v .main-v-inner-sp p span {
          color: #3CF9FF; }
      .home .main-v .main-v-inner-sp .mainv-slider {
        position: absolute;
        right: 0;
        top: 0;
        width: 80%; }
        .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper {
          border: none;
          box-shadow: none; }
          .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-viewport {
            position: relative; }
            .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-viewport::before {
              position: absolute;
              display: block;
              content: "";
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              background: rgba(0, 0, 0, 0.1);
              z-index: 100; }
            .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-viewport ul li {
              aspect-ratio: auto;
              height: 500px; }
          .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-controls {
            bottom: -50px;
            left: -20%; }
          .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-pager {
            display: flex; }
            .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-pager.bx-default-pager a {
              height: 2px;
              width: 25px;
              background: #fff; }
              .home .main-v .main-v-inner-sp .mainv-slider .bx-wrapper .bx-pager.bx-default-pager a.active {
                background: #3CF9FF; }
    .home .main-v li {
      aspect-ratio: 1; }
      .home .main-v li.mainv-img01 {
        background: url("../img/FV_01.jpg") center center/cover no-repeat; }
      .home .main-v li.mainv-img02 {
        background: url("../img/FV_02.jpg") center center/cover no-repeat; }
      .home .main-v li.mainv-img03 {
        background: url("../img/FV_03.jpg") center center/cover no-repeat; }
      .home .main-v li.mainv-img04 {
        background: url("../img/FV_04.jpg") center center/cover no-repeat; }
    .home .main-v img {
      display: block; }
      @media screen and (min-width: 768px) {
        .home .main-v img {
          margin: 0 auto;
          max-height: 550px; } }
    .home .main-v .bx-controls {
      position: absolute;
      bottom: -40px;
      z-index: 500; }
    .home .main-v .bx-pager-item {
      display: inline-block; }
    .home .main-v .bx-pager-item a {
      text-indent: -9999px;
      display: block;
      background: #808080; }
    .home .main-v .bx-pager-item .active {
      background: #a90000; }
    .home .main-v .bx-controls-direction {
      display: none; }
  .home .contents-wrap {
    padding: 0;
    max-width: inherit; }
  .home section {
    float: none;
    width: 100%;
    padding: 130px calc((100% - 1100px) / 2);
    margin: 0 auto; }
    @media screen and (min-width: 768px) {
      .home section .btn {
        clear: both; }
        .home section .btn a {
          padding: 12px 90px 12px 90px; } }
    @media (max-width: 1240px) {
      .home section {
        padding-inline: 20px; } }
    @media (max-width: 767px) {
      .home section {
        padding: 85px 20px; } }
    .home section h2 {
      font-family: "Lato", sans-serif; }
  .home .about-area {
    padding-top: 150px; }
    @media (max-width: 767px) {
      .home .about-area {
        padding-top: 200px; } }
    .home .about-area .flex-box .img-box {
      background: url("../img/ABOUT_ph.jpg") center center/cover no-repeat; }
      @media (max-width: 767px) {
        .home .about-area .flex-box .img-box {
          width: 100%;
          height: 300px; } }
  .home .pipeline-area {
    position: relative; }
    .home .pipeline-area::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      bottom: 0;
      background: url(../img/PIPELINE_deco.png) bottom -335px center/cover no-repeat; }
      @media (max-width: 767px) {
        .home .pipeline-area::before {
          background: url(../img/PIPELINE_deco_sp.png) top 55% center/100% no-repeat; } }
    .home .pipeline-area .flex-box {
      position: relative;
      z-index: 100;
      align-items: flex-start; }
      @media (max-width: 767px) {
        .home .pipeline-area .flex-box .txt-box {
          order: 2;
          margin-top: 50px; } }
      .home .pipeline-area .flex-box .img-box {
        background: url("../img/PIPELINE_ph.png") center center/cover no-repeat; }
        @media (max-width: 767px) {
          .home .pipeline-area .flex-box .img-box {
            width: 100%;
            order: 1;
            height: auto; } }
  .home .wrap__box {
    position: relative; }
  .home .menu__box {
    position: relative;
    max-width: 940px;
    margin: 0 auto;
    z-index: 2; }
    .home .menu__box a {
      color: #f9f9f9; }
    .home .menu__box h4 {
      font-size: 20px;
      font-weight: normal;
      padding: 30px 0 10px 15px; }
      .home .menu__box h4 img {
        margin-left: 20px;
        vertical-align: middle; }
      @media screen and (min-width: 768px) {
        .home .menu__box h4 {
          font-size: 30px; } }
    .home .menu__box p {
      font-size: 105%;
      padding: 0 0 0 15px; }
  .home .menu__box_url_1, .home .menu__box_url_3, .home .menu__box_url_5 {
    background-color: #0A192F;
    padding: 10px; }
  .home .menu__box_url_2 a, .home .menu__box_url_4 a {
    color: #0A192F; }
  .home .flex-box {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .home .flex-box .img-box {
      width: 47%;
      aspect-ratio: 1;
      background: url(../img/sample.jpg) center center/cover no-repeat; }
      @media (max-width: 767px) {
        .home .flex-box .img-box {
          width: 100%; } }
    .home .flex-box .txt-box {
      width: 47%; }
      @media (max-width: 767px) {
        .home .flex-box .txt-box {
          width: 100%; } }
  .home .menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 30px; }
    .home .menu .menu-box {
      width: 30%;
      display: flex;
      flex-direction: column;
      align-content: space-between;
      box-shadow: 5px 5px 10px #ccc;
      background: #fff; }
      .home .menu .menu-box:hover {
        opacity: 0.6; }
      .home .menu .menu-box .img-box {
        height: 150px;
        background: url(../img/sample.jpg) center center/cover no-repeat; }
      .home .menu .menu-box .txt-box {
        text-align: center; }
        .home .menu .menu-box .txt-box h3 {
          border-bottom: none; }
          .home .menu .menu-box .txt-box h3::before {
            display: none; }
  .home .news {
    display: flex;
    /* アイコン */ }
    @media (max-width: 767px) {
      .home .news {
        flex-wrap: wrap; } }
    .home .news .news-box01 {
      width: 30%; }
      @media (max-width: 767px) {
        .home .news .news-box01 {
          width: 100%; } }
    .home .news .news-box02 {
      width: 70%; }
      @media (max-width: 767px) {
        .home .news .news-box02 {
          width: 100%; } }
    .home .news h2 {
      margin: 0; }
      @media (max-width: 767px) {
        .home .news h2 {
          margin-bottom: 40px; } }
    .home .news ul {
      overflow: hidden;
      width: 100%;
      margin: 0 0 30px 0; }
    .home .news li {
      border-bottom: 1px solid #cccccc;
      padding: 0;
      margin: 0;
      padding-right: 27px; }
      .home .news li:before {
        display: none; }
      .home .news li a {
        display: block;
        padding: 5px 0 5px 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        color: #fff; }
        @media screen and (min-width: 768px) {
          .home .news li a {
            padding: 15px 0 15px 0; } }
        .home .news li a:hover::before {
          right: 3px; }
        .home .news li a:before {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          right: 23px;
          width: 5px;
          height: 5px;
          margin: -5px 0 0 -3px;
          border-top: 1px solid #3CF9FF;
          border-right: 1px solid #3CF9FF;
          -webkit-transform: rotate(45deg);
          -moz-transform: rotate(45deg);
          transform: rotate(45deg);
          transition: 0.3s; }
        .home .news li a .date-area {
          display: block; }
    @media screen and (min-width: 768px) {
      .home .news time, .home .news span {
        display: inline; } }
    .home .news time {
      color: #3CF9FF;
      padding: 0 20px 0 0; }
    .home .news .ico {
      display: inline-block;
      padding: 1px 8px 1px 8px;
      border-radius: 2px;
      color: #f9f9f9;
      font-size: 81%;
      font-weight: bold;
      margin: 0 10px 0 0;
      font-size: 75%;
      font-weight: normal;
      color: #e5e4e4;
      border: 1px solid #a7a7a7;
      width: 81px;
      text-align: center;
      margin-bottom: 5px; }
    .home .news .ico-new {
      background: #BF9239; }
    .home .news .honbun {
      white-space: normal; }
    .home .news .btn.sp-block {
      margin: 20px 0 20px auto; }
  .home .contact-area {
    background: #E3E8EA;
    position: relative;
    padding: 0; }
    @media (max-width: 767px) {
      .home .contact-area {
        text-align: center; } }
    .home .contact-area a {
      display: block; }
      .home .contact-area a span {
        color: #555;
        width: 120px;
        height: 120px;
        box-sizing: border-box;
        line-height: 120px;
        padding-left: 1em;
        font-weight: 500;
        border-radius: 50%;
        background: #fff;
        z-index: 20;
        position: absolute;
        left: calc(50% + 65px);
        top: calc(50% + 65px); }
        @media (max-width: 767px) {
          .home .contact-area a span {
            left: calc(50% + 35px);
            top: calc(50% + 0px);
            padding-left: 0; } }
        .home .contact-area a span.txt-after {
          display: none; }
      .home .contact-area a:hover span.txt-before {
        display: none; }
      .home .contact-area a:hover span.txt-after {
        display: block; }
        .home .contact-area a:hover span.txt-after::after {
          content: "";
          display: block;
          width: 50px;
          height: 8px;
          background: url(../img/button_arrow_dark.png) center center/contain no-repeat;
          box-sizing: border-box;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
      .home .contact-area a:hover .contact-before {
        clip-path: inset(0); }
    .home .contact-area .contact-box {
      padding: 80px calc((100% - 1100px) / 2);
      box-sizing: border-box; }
      @media (max-width: 1100px) {
        .home .contact-area .contact-box {
          padding-inline: 20px; } }
      @media (max-width: 767px) {
        .home .contact-area .contact-box {
          padding: 150px 0; } }
      .home .contact-area .contact-box h2 {
        font-size: 550%;
        font-weight: 900;
        text-align: center;
        border-bottom: none;
        margin-bottom: 0;
        padding: 15px 0; }
        @media (max-width: 767px) {
          .home .contact-area .contact-box h2 {
            font-size: 290%; } }
        .home .contact-area .contact-box h2::before {
          display: none; }
        .home .contact-area .contact-box h2::after {
          display: none; }
      .home .contact-area .contact-box p {
        width: 20em; }
    .home .contact-area .contact-before {
      position: absolute;
      z-index: 10;
      width: 100%;
      background: url(../img/contact-bg.jpg) center center/cover rgba(0, 0, 0, 0.3);
      background-blend-mode: darken;
      clip-path: inset(calc(50% - 130px) calc(50% - 130px) calc(50% - 130px) calc(50% - 130px));
      transition: 0.3s;
      top: 0; }
      @media (max-width: 767px) {
        .home .contact-area .contact-before {
          clip-path: inset(calc(50% - 110px) calc(50% - 110px) calc(50% - 110px) calc(50% - 110px)); } }
      .home .contact-area .contact-before h2 {
        color: #fff; }
      .home .contact-area .contact-before p {
        color: #fff; }
    @media (max-width: 767px) {
      .home .contact-area .sp-block {
        padding: 0 20px 20px;
        text-align: left;
        display: inline-block; } }
  .home .general img {
    width: 100%; }
    @media screen and (min-width: 768px) {
      .home .general img {
        width: 30%;
        float: left;
        margin: 0 15px 15px 0; } }
  .home.en .contact-area a span {
    padding-left: 2.2em; }
    @media (max-width: 767px) {
      .home.en .contact-area a span {
        padding-left: 0; } }

/* end .home */
/*-------------------------------------------------------------------------------

  共通パーツ

 -------------------------------------------------------------------------------*/
.ct-title-default h1.medium {
  height: auto;
  line-height: 250px;
  padding: 0;
  letter-spacing: 2px;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  background: linear-gradient(0deg, #00193f, #003686 80%);
  position: relative;
  z-index: 0; }
  .ct-title-default h1.medium::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../img/KV_deco.png) center center/cover no-repeat;
    mix-blend-mode: color-burn;
    z-index: -1;
    top: 0;
    left: 0; }
  .ct-title-default h1.medium span {
    color: white;
    font-size: 250%;
    padding: 0 30px;
    font-family: "Lato", sans-serif;
    font-weight: 900; }
.ct-title-default h2 {
  height: auto;
  padding: 18px 0 15px 0;
  font-size: 130%;
  font-weight: bold;
  letter-spacing: 0.05em;
  border-bottom: none;
  font-family: "Lato", sans-serif;
  font-size: 200%;
  font-weight: 900;
  letter-spacing: 0.1em;
  padding-bottom: 0.5em;
  margin: 0 0 2em 0;
  padding-left: 0; }
  .ct-title-default h2::before {
    width: 0.5em;
    height: 2px;
    left: 0; }
  .ct-title-default h2::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -4px;
    height: 2px;
    width: 0.5em;
    left: 0.5em;
    background-color: #3CF9FF; }
  .ct-title-default h2.bright-line::before {
    background-color: #f9f9f9; }
  .ct-title-default h2 + p {
    margin-top: 20px; }
.ct-title-default .h2-line {
  border-bottom: none;
  font-size: 200%;
  font-weight: 900;
  letter-spacing: 0.1em;
  padding-bottom: 0.5em;
  margin: 0 0 1em 0;
  display: inline-block;
  padding-left: 0; }
  .ct-title-default .h2-line::before {
    width: 0.5em;
    height: 2px;
    left: 0; }
  .ct-title-default .h2-line::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -4px;
    height: 2px;
    width: 0.5em;
    left: 0.5em;
    background-color: #3CF9FF; }
  .ct-title-default .h2-line.bright-line::before {
    background-color: #f9f9f9; }
.ct-title-default .h2-point {
  border-bottom: none;
  font-size: 150%;
  letter-spacing: 0.1em;
  padding-bottom: 0.5em;
  margin: 0 0 1em 0;
  padding-left: 2em;
  position: relative; }
  .ct-title-default .h2-point::before {
    position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    width: 1em;
    height: 1em;
    transform: translateY(-50%);
    background: url(../img/deigo-mini.png) center center/contain no-repeat; }
.ct-title-default h3 {
  font-size: 120%; }
.ct-title-default .h3-point {
  font-size: 120%;
  margin-top: 0;
  border-bottom: none;
  letter-spacing: 0.1em;
  padding-bottom: 0.5em;
  margin: 40px 0 1em 0;
  padding-left: 1.5em;
  position: relative; }
  .ct-title-default .h3-point::before {
    position: absolute;
    left: 0;
    top: calc(50% + 0.5em);
    content: "";
    width: 0.5em;
    height: 0.5em;
    transform: translateY(-0.75em);
    background-color: #3CF9FF; }
.ct-title-default h4 {
  font-size: 110%; }
.ct-title-default h5 {
  font-size: 105%;
  margin-bottom: 5px; }
.ct-title-default h6 {
  font-size: 100%;
  margin: 1em 0 5px 0; }
@media (min-width: 1101px) {
  .ct-title-default section {
    padding: 100px calc((100% - 1100px) / 2); } }
@media (max-width: 1100px) {
  .ct-title-default section {
    padding: 50px 20px; } }
.ct-title-default section .btn {
  margin-top: 50px;
  text-align: left; }
  @media (max-width: 767px) {
    .ct-title-default section .btn {
      text-align: right;
      margin-top: 20px; } }
  .ct-title-default section .btn a {
    border: none;
    padding: 12px 90px 12px 0; }
    @media (max-width: 767px) {
      .ct-title-default section .btn a {
        padding: 12px 75px 12px 0;
        margin-right: 20px;
        display: inline-block; } }
    .ct-title-default section .btn a:hover {
      background: inherit;
      color: inherit; }
      .ct-title-default section .btn a:hover::after {
        width: calc(20px + 40px);
        height: calc(20px + 40px); }
    .ct-title-default section .btn a::before {
      border: none;
      width: 60px;
      height: 10px;
      right: 0;
      -webkit-transform: rotate(0);
      transform: rotate(0);
      background: url(../img/button_arrow_dark.png) center center/contain no-repeat;
      z-index: 10; }
    .ct-title-default section .btn a::after {
      display: block;
      content: "";
      position: absolute;
      top: 53%;
      right: 0;
      transform: translate(50%, -46%);
      width: 20px;
      height: 20px;
      border-radius: 50%;
      background: #fff;
      transition: 0.3s; }
.ct-title-default section.dark-area {
  color: #f9f9f9;
  background: #0A192F; }
  .ct-title-default section.dark-area h2::before {
    background-color: #f9f9f9; }
  .ct-title-default section.dark-area .btn a {
    color: #f9f9f9; }
    .ct-title-default section.dark-area .btn a::before {
      background: url(../img/button_arrow.png) center center/contain no-repeat; }
    .ct-title-default section.dark-area .btn a::after {
      background: #024563; }
    .ct-title-default section.dark-area .btn a:hover {
      color: #f9f9f9; }
.ct-title-default section.back-area {
  color: #f9f9f9; }
  .ct-title-default section.back-area h2::before {
    background-color: #f9f9f9; }
  .ct-title-default section.back-area .btn a {
    color: #f9f9f9; }
    .ct-title-default section.back-area .btn a::before {
      background: url(../img/button_arrow.png) center center/contain no-repeat; }
    .ct-title-default section.back-area .btn a::after {
      background: #024563; }
    .ct-title-default section.back-area .btn a:hover {
      color: #f9f9f9; }
.ct-title-default section.wave-area {
  background: linear-gradient(0deg, #003686, #00193f 90%);
  position: relative;
  margin-bottom: 0; }
  @media (max-width: 767px) {
    .ct-title-default section.wave-area {
      padding-bottom: 200px; } }
  .ct-title-default section.wave-area::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../img/KV_deco.png) bottom -450px center/cover no-repeat;
    mix-blend-mode: color-burn;
    top: 0;
    left: 0; }
    @media (max-width: 767px) {
      .ct-title-default section.wave-area::before {
        background: url(../img/KV_deco.png) bottom -313px center/cover no-repeat; } }
  .ct-title-default section.wave-area .member-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .ct-title-default section.wave-area .member-list dt {
      width: 39%;
      text-align: right;
      padding: 1em 0;
      line-height: 37px; }
    .ct-title-default section.wave-area .member-list dd {
      font-size: 120%;
      width: 57%;
      padding: 1em 0; }
      .ct-title-default section.wave-area .member-list dd .name-alf {
        display: block;
        font-size: 85%;
        margin-top: -5px;
        margin-bottom: 15px;
        letter-spacing: 0.1em; }
.ct-title-default section.relationship-area .relationship-box {
  padding: 40px 40px;
  background: #fff; }
  @media (max-width: 767px) {
    .ct-title-default section.relationship-area .relationship-box {
      padding: 10px; } }
.ct-title-default section .sp-block {
  display: none; }
  @media (max-width: 767px) {
    .ct-title-default section .sp-block {
      display: block; } }
.ct-title-default section .pc-block {
  display: block; }
  @media (max-width: 767px) {
    .ct-title-default section .pc-block {
      display: none; } }

.block {
  display: block; }

.center {
  text-align: center; }

.right {
  text-align: right; }

.mini {
  font-size: 80%; }

.big {
  font-size: 120%; }

.remarks {
  padding-left: 1.5em;
  position: relative; }
  .remarks::before {
    content: "※";
    width: 1em;
    height: 1em;
    position: absolute;
    display: block;
    top: 0;
    left: 0; }

.result-summary {
  margin-top: 10px; }

.single-wrap {
  margin-bottom: 50px; }
  .single-wrap .read-more a {
    position: relative;
    padding-right: 2em; }
    .single-wrap .read-more a .link-icon::before {
      color: inherit; }

.flex-box {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media (max-width: 767px) {
    .flex-box {
      flex-wrap: wrap; } }
  .flex-box .img-box {
    width: 40%;
    height: 550px;
    background: url(../img/CEO_MESSAGE_ph.jpg) center center/cover no-repeat; }
    @media (max-width: 767px) {
      .flex-box .img-box {
        width: 100%;
        height: 300px; } }
    .flex-box .img-box.img-box2 {
      background: url(../img/coop-img.jpg) center center/cover no-repeat;
      height: 300px; }
  .flex-box .txt-box {
    width: 55%; }
    @media (max-width: 767px) {
      .flex-box .txt-box {
        width: 100%; } }
  .flex-box .mv-box {
    display: flex;
    justify-content: space-evenly;
    width: 49%; }
    @media (max-width: 767px) {
      .flex-box .mv-box {
        width: 100%; } }
    .flex-box .mv-box .mv-ico {
      width: 29%;
      max-width: 100px; }
    .flex-box .mv-box .mv-txt {
      width: 69%; }
      .flex-box .mv-box .mv-txt h3::before {
        display: none; }
    .flex-box .mv-box:first-of-type .mv-ico {
      background: url("../img/ph_ear-thin.png") center center/contain no-repeat; }
      @media (max-width: 767px) {
        .flex-box .mv-box:first-of-type .mv-ico {
          background: url(../img/ph_ear-thin.png) top 41% center/contain no-repeat; } }
    .flex-box .mv-box:last-of-type .mv-ico {
      background: url("../img/ph_medi-thin.png") center center/80% no-repeat; }
      @media (max-width: 767px) {
        .flex-box .mv-box:last-of-type .mv-ico {
          background: url(../img/ph_medi-thin.png) top 23% center/92% no-repeat; } }
  .flex-box.com-area {
    align-items: flex-start; }
  .flex-box .com-img {
    width: 29%;
    height: 350px;
    background: url(../img/COMPANY_ph.png) center center/contain no-repeat; }
    @media (max-width: 767px) {
      .flex-box .com-img {
        width: 100%;
        height: 300px;
        background: url(../img/COMPANY_ph_sp.png) center center/contain no-repeat; } }
  .flex-box .com-txt {
    width: 65%;
    margin-bottom: 50px; }
    @media (max-width: 767px) {
      .flex-box .com-txt {
        width: 100%; } }
    .flex-box .com-txt dl {
      display: flex;
      flex-wrap: wrap; }
      .flex-box .com-txt dl dt {
        width: 20%;
        font-weight: bold;
        position: relative;
        padding: 1em 0; }
        @media (max-width: 767px) {
          .flex-box .com-txt dl dt {
            width: 100%;
            padding-bottom: 0; } }
        .flex-box .com-txt dl dt::before {
          content: "";
          width: 100%;
          height: 1px;
          background: #ccc;
          position: absolute;
          bottom: 0;
          right: 0; }
          @media (max-width: 767px) {
            .flex-box .com-txt dl dt::before {
              display: none; } }
      .flex-box .com-txt dl dd {
        width: 80%;
        position: relative;
        padding: 1em 0; }
        @media (max-width: 767px) {
          .flex-box .com-txt dl dd {
            width: 100%; } }
        .flex-box .com-txt dl dd::before {
          content: "";
          width: 100%;
          height: 1px;
          background: #ccc;
          position: absolute;
          bottom: 0;
          right: 0; }

.mv-img {
  width: 100%;
  height: 250px;
  background: url(../img/MISSION_ph.jpg) center center/cover no-repeat; }

.itiran {
  display: none; }
  @media (max-width: 960px) {
    .itiran {
      display: block;
      color: #fff;
      font-size: 92%;
      background: rgba(51, 51, 51, 0.5);
      border: none;
      border-radius: 0;
      text-align: center;
      position: relative;
      padding: 5px 10px 20px 10px;
      width: calc(100% - 20px); }
      .itiran:after {
        content: "";
        display: block;
        position: absolute;
        top: 30px;
        left: 50%;
        width: 8px;
        height: 8px;
        margin: -5px 0 0 -3px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        -webkit-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        transform: rotate(135deg); } }

.hax-textalign-right {
  text-align: right; }

dl.qa-list dt {
  padding: 30px 0 0 0;
  display: flex;
  font-weight: bold; }
  dl.qa-list dt:before {
    content: "Q";
    color: #fff;
    font-weight: bold;
    background-color: #0A192F;
    padding: 5px 10px;
    border-radius: 3px;
    margin-right: 10px;
    height: 25px; }
dl.qa-list dd {
  padding: 10px 0 0 0;
  display: flex; }
  dl.qa-list dd:before {
    content: "A";
    color: #fff;
    font-weight: bold;
    background-color: #3CF9FF;
    padding: 5px 11px;
    border-radius: 3px;
    margin-right: 10px;
    height: 25px; }

 /*-------------------------------------------------------------------------------

  newsページ

  -------------------------------------------------------------------------------*/
.news h3 time,
.en-news h3 time {
  font-size: 90%;
  margin-right: 1em; }
.news h3 .ico,
.en-news h3 .ico {
  display: inline-block;
  padding: 1px 8px 1px 8px;
  border-radius: 2px;
  font-size: 81%;
  font-weight: bold;
  margin: 0 10px 0 0;
  font-size: 75%;
  font-weight: normal;
  border: 1px solid #0A192F;
  width: 8em;
  text-align: center;
  margin-bottom: 5px; }
.news h3 .post-title,
.en-news h3 .post-title {
  display: block;
  padding: 5px 30px 5px 0; }
  @media (max-width: 767px) {
    .news h3 .post-title,
    .en-news h3 .post-title {
      padding-right: 30px; } }
  .news h3 .post-title:hover::before,
  .en-news h3 .post-title:hover::before {
    right: 3px; }
  .news h3 .post-title:before,
  .en-news h3 .post-title:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 1em;
    right: 23px;
    width: 5px;
    height: 5px;
    margin: -5px 0 0 -3px;
    border-top: 1px solid #0A192F;
    border-right: 1px solid #0A192F;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: 0.3s; }

.en-news h3 .ico {
  width: 4em; }

 /*-------------------------------------------------------------------------------

  プライバシーポリシーページ

  -------------------------------------------------------------------------------*/
@media (max-width: 767px) {
  .privacy article .medium span {
    font-size: 195%; } }

 /*-------------------------------------------------------------------------------

  404ページ

  -------------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  article h1.primary {
    height: auto; } }
/*-------------------------------------------------------------------------------


お問い合わせ


-------------------------------------------------------------------------------*/
section .mw_wp_form table th.required:after {
  float: right; }
section .mw_wp_form table .mwform-checkbox-field.horizontal-item + .horizontal-item {
  margin-left: 0; }
section .mw_wp_form table .mwform-checkbox-field.horizontal-item label {
  margin: 0 0 0 1em; }
  section .mw_wp_form table .mwform-checkbox-field.horizontal-item label input {
    margin: 0 5px 0 -1.4em; }
  section .mw_wp_form table .mwform-checkbox-field.horizontal-item label span {
    white-space: normal; }
section .mw_wp_form table th, section .mw_wp_form table td {
  word-break: break-all; }
section .mw_wp_form table textarea {
  width: 91%; }
@media (max-width: 959px) {
  section .mw_wp_form .table-wrap table {
    white-space: normal;
    display: block;
    box-sizing: border-box; } }
@media (max-width: 768px) {
  section .mw_wp_form table tbody {
    display: block; }
    section .mw_wp_form table tbody tr {
      display: block; }
      section .mw_wp_form table tbody tr th,
      section .mw_wp_form table tbody tr td {
        display: block;
        width: 100%; }
        section .mw_wp_form table tbody tr th .size-m,
        section .mw_wp_form table tbody tr td .size-m {
          width: 91%; }
        section .mw_wp_form table tbody tr th textarea,
        section .mw_wp_form table tbody tr td textarea {
          width: 91%;
          height: 60px; }
        section .mw_wp_form table tbody tr th select,
        section .mw_wp_form table tbody tr td select {
          width: 91%; }
          section .mw_wp_form table tbody tr th select option,
          section .mw_wp_form table tbody tr td select option {
            width: 91%;
            white-space: normal; } }

.contact section {
  background: #fff;
  margin-bottom: 0;
  width: 100%;
  float: none; }
  .contact section .table-wrap {
    white-space: inherit; }
  .contact section table th, .contact section table td {
    width: 100%;
    display: block;
    padding: 1%; }
    @media screen and (min-width: 768px) {
      .contact section table th, .contact section table td {
        width: inherit;
        display: table-cell; } }
  @media screen and (min-width: 768px) {
    .contact section table th {
      width: 30%; } }
.contact .side-contents {
  display: none; }

/* end .inquiry */

/*# sourceMappingURL=modify.css.map */
