/** 
<style> */
  /* color */
  :root {
    /* ゴシック体 */
    --theme1-font-family-sans-serif: "Zen Kaku Gothic New", sans-serif;
    /* 明朝体 */
    --theme1-font-family-serif: "Shippori Mincho", serif;
    /* カラー */
    --theme1-darkblue-color: #131c29 !important;
    --theme1-lightblue-color: #27548A !important;
    --theme1-light-color: #c6cacd !important;
    /* コンテナ */
    --bs-gutter-x: 24px;
  }
  /* body */
  body {
    font-family: var(--theme1-font-family-sans-serif);
    letter-spacing: .05em;
    background-image : url('https://iimo2.sakura.ne.jp/site/share/design/default/files/images/design/bg-logo%402x.webp');
    background-position: center center;
    background-size: 120%;
  }
  /* 明朝体 */
  .ff-serif {
    font-family: var(--theme1-font-family-serif);
  }
  /** 各セクション */
  section {
    overflow: hidden;
  }
  /* ヘッダーのスタイル */
  #header {
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
  }
  #header h1 {
    font-family: var(--theme1-font-family-serif);
  }
  #header.bg-white {
    background-color: var(--theme1-darkblue-color) !important;
  }
  #header > .container a {
    color: #fff !important;
  }
  #header .dropdown-menu {
    background-color: var(--theme1-darkblue-color);
  }
  #header .dropdown-menu .dropdown-item:hover {
    background-color: var(--theme1-lightblue-color);
  }
  #header.hidden {
    transform: translateY(-100%);
    opacity: 0;
  }
  #header.visible {
    transform: translateY(0);
    opacity: 1;
  }
  @media screen and (max-width: 575.98px) {
    #header h1 {
      font-size: calc(1.2rem + .3vw) !important;
    }
  }
  /* ハンバーガー */
  #header .openbtn, #header .openbtn.active {
    background-color: transparent !important;
  }
  #g-nav-container {
    background-color: var(--theme1-lightblue-color) !important;
  }
  #g-nav-container a {
    color: #fff !important;
  }
  #g-nav-container a.h4.text-dark{
    font-family: var(--theme1-font-family-serif);
  }
  /* フッターのスタイル */
  footer {
    background-color: var(--theme1-darkblue-color);
    color: #FFF;
  }
  footer a.btn, .footer-logo {
    font-weight: bold;
    color: #FFF !important;
  }
  footer > .container > nav {
    border-top: #FFF 1px solid;
    padding-top: 1.6rem;
    margin-bottom: 2.4rem;
  }
  /* read-title */
  section hr {
    border: var(--theme1-light-color) 1px solid;
    margin: 1.5rem 0 !important;
  }
  /* theme-table  */
  .theme-table {
    border-collapse: separate;
    border-spacing: 0 0.8rem;
  }
  .theme-table>:not(caption)>*>* {
    padding: 1.6rem 1.6rem !important;
  }
  .theme-table>:not(caption)>tr>* {
    background-color: #eee !important;
    border: none;
  }
  .theme-table>:not(caption)>tr>th {
    white-space: nowrap !important;
    border-left: 2px solid var(--theme1-darkblue-color);
    width: 1px;
  }
  .theme-table>:not(caption)>tr>* {
    position: relative;
  }
  .theme-table>:not(caption)>tr>*:after {
    content: "";
    position: absolute;
    z-index: 0;
    background-color: var(--theme1-darkblue-color);
    height : 24px;
    width : 1px;
    left: -0.5px;
    top: calc(50% - 12px);
  }
  @media screen and (max-width: 575.98px) {
    .theme-table>:not(caption)>tr>* {
      display: block;
      width: 100% !important;
    }
    .theme-table>:not(caption)>tr>td {
      border-left: 1px solid var(--theme1-darkblue-color);
    }
    .theme-table>:not(caption)>tr>th:after {
      content: none;
    }
  }
  /* トップページ：ヒーローエリア */
  #carouselCaptions-3968 .carousel-item:before {
    content: "";
    position: absolute;
    z-index: 0;
    height : 100%;
    width : 100%;
    left: 0;
    top: 0;
    background-color: var(--theme1-darkblue-color);
    animation: fadeIn 3s ease-in forwards;
  }
  @keyframes fadeIn {
    from {
      opacity: 1;
    }
    to {
      opacity: 0.8;
    }
  }
  #carouselCaptions-3968 .carousel-caption {
    left: 10% !important;
    /* default : 15% */
    right: 10% !important;
    /* default : 15% */
    align-items: end !important;
  }
  #carouselCaptions-3968 .carousel-caption > div{
    flex: 1 1 auto !important;
  }
  #carouselCaptions-3968 .carousel-control-next,
  #carouselCaptions-3968 .carousel-control-prev {
    width: 10% !important;
    /* default : 15% */
  }
  #carouselCaptions-3968 .carousel-item {
    position: relative;
  }
  /* ロゴマーク付与 */
  .logomark-dark,
  .logomark-white {
    position: relative;
    height : 56px;
  }
  .logomark-dark:before,
  .logomark-white:before {
    content: "";
    position: absolute;
    z-index: 0;
    height : 87px;
    width : 80px;
    left: -56px;
    top: 0;
    background-size: 80px;
    background-position: top left;
    background-repeat: no-repeat;
  }
  .logomark-dark:before {
    background-image: url('https://iimo2.sakura.ne.jp/site/share/design/default/files/images/design/logomark-dark%402x.webp');
  }
  .logomark-white:before {
    background-image: url('https://iimo2.sakura.ne.jp/site/share/design/default/files/images/design/logomark-white%402x.webp');
  }
  @media screen and (max-width: 575.98px) {
    .logomark-dark:before,
    .logomark-white:before {
      left: -32px;
    }
  }
  #ID3970 /* トップページ：私たちのアプローチ */,
  #ID3971 /* トップページ：サービス */,
  #ID3993 /* トップページ：制作実績 */,
  #ID4002 /* トップページ：お知らせ */,
  #ID3978 /* 私たちについて：私たちの約束 */,
  #ID3979 /* 私たちについて：私たちの強み */,
  #ID3980 /* 私たちについて：これからの挑戦 */,
  #ID3981 /* 私たちについて：お客様へのメッセージ */ {
    position: relative;
    padding-top: 80px !important;
  }
  /** 灰色コンテナ（上部から下向き） **/
  .light-container-top-bottom:before,
  #ID3970:before,
  #ID3993:before,
  #ID3978:before,
  #ID3980:before {
    content: "";
    position: absolute;
    z-index: -1;
    height : calc(100% + 1px);
    width : 100%;
    left: 0;
    top: 0;
    clip-path: polygon(50% 80px, 100% 0%, 100% 100%, 0 100%, 0 0);
    background-color: var(--theme1-light-color);
    opacity:0.5;
  }
  /** 紺色コンテナ（上部から下向き） **/
  .darkblue-container-top-bottom:before,
  #ID3971:before,
  #ID3979:before {
    content: "";
    position: absolute;
    z-index: -1;
    height : calc(100% + 1px);
    width : 100%;
    left: 0;
    top: 0;
    clip-path: polygon(50% 80px, 100% 0%, 100% 100%, 0 100%, 0 0);
    background-color: var(--theme1-darkblue-color);
  }
  /** 灰色の三角形背景（上部から下向き） **/
  .light-triangle-top-bottom,
  #ID3971:after,
  #ID4002:after,
  #ID3979:after,
  #ID3981:after {
    content: "";
    position: absolute;
    z-index: 0;
    height : 100%;
    width : 100%;
    left: 0;
    top: 0;
    clip-path: polygon(50% 80px, 0 0, 100% 0);
    background-color: var(--theme1-light-color);
    opacity:0.5;
  }
  /** 紺色の三角形背景（上部から下向き） **/
  .darkblue-triangle-top-bottom,
  #ID3980:after,
  #ID3993:after {
    content: "";
    position: absolute;
    z-index: 0;
    height : 100%;
    width : 100%;
    left: 0;
    top: -1px;
    clip-path: polygon(50% 80px, 0 0, 100% 0);
    background-color: var(--theme1-darkblue-color);
  }
  /* お知らせ等トピックス */
  .module-id-383 a.bg-white {
    position: relative;
    overflow: hidden;
    background-color: transparent !important;
    z-index: 1;
  }
  .module-id-383 a.bg-white::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    transition: left 0.5s ease;
    z-index: -1;
  }
  .module-id-383 a.bg-white:hover::before {
    left: 0;
  }
  .module-id-383 ul > li.border-bottom {
    border-bottom: var(--theme1-light-color) 1px solid !important;
  }
  .module-id-383 ul > li > a {
  }
  .module-id-383 ul > li > a span.text-muted {
    margin-right: 1rem !important;
  }
  .module-id-383 ul > li > a .d-flex > .mx-3 {
    width: 0px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* お知らせ等リスト */
  .module-id-362 > ul > li .img {
    position: relative;
  }
  .module-id-362 > ul > li .img:before {
    content: 'Share';
    display: inline-block;
    position: absolute;
    top:45%;
    left:0;
    width: 100%;
    text-align: center;
    color: var(--theme1-light-color);
  }
  /** 制作実績のフィールドラベルを消す **/
  .module-id-374 .modal-body .field_name {
    display: none;
  }
  /* アニメーションのカスタマイズ */
  @-webkit-keyframes fadeInUp {
    from {
      opacity: 0;
      -webkit-transform: translate3d(0, 5%, 0);
      transform: translate3d(0, 5%, 0);
    }
    to {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
  }
  @keyframes fadeInUp {
    from {
      opacity: 0;
      -webkit-transform: translate3d(0, 5%, 0);
      transform: translate3d(0, 5%, 0);
    }
    to {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
  }
