@charset "UTF-8";
/*
Theme Name: イー・アイ・ソル
*/
@import url("./css/destyle.css");
html {
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #333333;
  line-height: 1.5;
  letter-spacing: 0;
  scroll-behavior: smooth; }

@media print, screen and (min-width: 768px) {
  html {
    font-size: 16px; } }
@media print, screen and (min-width: 1000px) {
  html {
    font-size: 18px; } }
body {
  margin: 0;
  padding: 0;
  position: relative;
  color: #333333; }

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%; }

div {
  box-sizing: border-box; }

img {
  max-width: 100%;
  height: auto; }

a {
  text-decoration: underline;
  word-wrap: break-word; }
  a:hover {
    text-decoration: none;
    opacity: 0.7; }

p {
  line-height: 1.75;
  margin: 0 0 1em 0; }

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  letter-spacing: 0;
  margin: 0 0 1em 0; }

h1 {
  font-size: 32px; }

h2 {
  font-size: 26px; }

h3 {
  font-size: 22px; }

h4 {
  font-size: 16px; }

h5 {
  font-size: 16px; }

@media print, screen and (min-width: 1000px) {
  h1 {
    font-size: 32px; }

  h2 {
    font-size: 26px; }

  h3 {
    font-size: 22px; }

  h4 {
    font-size: 16px; }

  h5 {
    font-size: 16px; } }
table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%; }
  table th, table td {
    padding: 1em 1em;
    border: 1px solid #e5e5e5; }
  table th {
    background-color: #DEDEDE; }

ul {
  list-style-type: disc;
  list-style-position: inside; }

input[type="email"], input[type="text"], textarea {
  max-width: 100%;
  border: 1px solid #D8D8D8;
  background: #fff;
  padding: 0.4em;
  line-height: 1.5;
  box-sizing: border-box;
  font-size: 16px;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 0; }

.image {
  line-height: 1;
  overflow: hidden; }
  .image a img {
    transition: 0.5s all; }
    .image a img:hover {
      opacity: 0.7; }

.pc-only {
  display: none !important; }

.sp-only {
  display: block !important; }

@media print, screen and (min-width: 1000px) {
  .pc-only {
    display: block !important; }

  .sp-only {
    display: none !important; } }
.flex {
  display: flex; }

.w100 {
  width: 100%; }

.h100 {
  height: 100%; }

.row {
  display: flex;
  width: 100%; }

.space-between {
  justify-content: space-between; }

.flex-end {
  justify-content: flex-end; }

.space-around {
  justify-content: space-around; }

.center {
  justify-content: center; }

.align-center {
  align-items: center; }

.align-end {
  align-items: end; }

.flex-wrap {
  flex-wrap: wrap; }

.flex-nowrap {
  flex-wrap: nowrap; }

.text-small {
  font-size: 0.9em; }

.text-center {
  text-align: center; }

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

.mb0 {
  margin-bottom: 0em !important; }

.mb1 {
  margin-bottom: 1em !important; }

.mb2 {
  margin-bottom: 2em !important; }

.mb3 {
  margin-bottom: 3em !important; }

.mb4 {
  margin-bottom: 4em !important; }

.mb5 {
  margin-bottom: 5em !important; }

.mb5 {
  margin-bottom: 6em !important; }

.mt0 {
  margin-top: 0em !important; }

.mt1 {
  margin-top: 1em !important; }

.mt2 {
  margin-top: 2em !important; }

.mt3 {
  margin-top: 3em !important; }

.mt4 {
  margin-top: 4em !important; }

.mt5 {
  margin-top: 5em !important; }

.mt6 {
  margin-top: 6em !important; }

.pt0 {
  padding-top: 0 !important; }

.pt1 {
  padding-top: 1em !important; }

.pt2 {
  padding-top: 2em !important; }

.pt3 {
  padding-top: 3em !important; }

.pt4 {
  padding-top: 4em !important; }

.pt5 {
  padding-top: 5em !important; }

.pt6 {
  padding-top: 6em !important; }

.pb0 {
  padding-bottom: 0 !important; }

.pb1 {
  padding-bottom: 1em !important; }

.pb2 {
  padding-bottom: 2em !important; }

.pb3 {
  padding-bottom: 3em !important; }

.pb4 {
  padding-bottom: 4em !important; }

.pb5 {
  padding-bottom: 5em !important; }

.pb6 {
  padding-bottom: 6em !important; }

.displayNone {
  display: none !important; }

.max700 {
  max-width: 700px;
  margin: 0 auto; }

.max300 {
  max-width: 300px;
  margin: 0 auto; }

.relative {
  position: relative; }

.inline-block {
  display: inline-block; }

.o-hidden {
  overflow: hidden; }

.alignfull {
  width: 100% !important; }

#wpadminbar {
  position: fixed !important; }

.entry-content {
  margin: 0; }

@media (min-width: 600px) {
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none; }

  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex; } }
@media (min-width: 1000px) {
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    background-color: inherit;
    display: block;
    position: relative;
    width: 100%;
    z-index: auto; }

  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none; } }
@media (max-width: 781px) {
  .sp-grid-1 {
    grid-template-columns: 1fr; } }
.products-lists .wp-block-post-featured-image {
  text-align: center; }
  .products-lists .wp-block-post-featured-image img {
    height: 170px;
    width: auto; }

.blank-link a {
  padding-right: 22px;
  background-image: url(./images/icon_blank1.svg);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 14px 14px; }

.home #header {
  position: absolute;
  z-index: 1; }
  .home #header .wp-block-navigation li a {
    color: #fff; }
  .home #header .wp-block-navigation li .wp-block-navigation-submenu {
    background: #000; }
  .home #header .wp-block-navigation__submenu-icon svg {
    color: #fff; }
  .home #header .wp-block-navigation__responsive-container-open svg {
    color: #fff; }

@media (max-width: 999px) {
  .home #header .wp-block-navigation li a {
    color: #000; } }
@media (max-width: 990px) {
  .wp-block-navigation-item__label {
    font-size: 20px; } }
#header {
  width: 100%; }
  #header .header-inner {
    height: 100px;
    margin: 0; }
  #header .logo {
    padding: 0 10px;
    width: 280px;
    height: auto; }
    #header .logo a {
      display: block; }
  #header .wp-block-navigation li a:hover {
    opacity: 0.7; }
  #header .wp-block-navigation li .wp-block-navigation-submenu {
    z-index: 10; }

.f-nav {
  display: none; }

@media print, screen and (min-width: 1000px) {
  .f-nav {
    display: flex; }
    .f-nav li {
      width: 30%; } }
.breadcrumbs {
  margin-left: -0.5em;
  padding: 0 0 20px 0; }
  .breadcrumbs .block-m {
    margin-top: 0;
    margin-bottom: 0; }
  .breadcrumbs a, .breadcrumbs span {
    font-size: 10px;
    margin: 0 0.3em; }
  .breadcrumbs a {
    text-decoration: underline; }
    .breadcrumbs a:hover {
      text-decoration: none; }
    .breadcrumbs a span {
      margin: 0; }
  .breadcrumbs .gt {
    padding: 0 1em; }

@media print, screen and (min-width: 1000px) {
  .breadcrumbs a, .breadcrumbs span {
    font-size: 15px; } }
.enFont400 {
  font-family: 'League Spartan', sans-serif;
  font-weight: 400 !important; }

.enFont600 {
  font-family: 'League Spartan', sans-serif;
  font-weight: 600 !important; }

.key {
  position: relative; }
  .key .key-title {
    background: linear-gradient(90deg, #18e084, #199be2);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative; }
    .key .key-title strong {
      font-family: 'League Spartan', sans-serif;
      font-weight: 400;
      font-weight: bold;
      font-size: 1.4em;
      line-height: 1.2em; }
    .key .key-title::after {
      position: absolute;
      content: "";
      width: 100vw;
      max-width: 560px;
      height: 20px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      bottom: -10px;
      background-image: url(images/key-line.svg);
      background-size: contain;
      background-repeat: no-repeat; }
  .key .key-text {
    justify-content: center;
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    height: 100%; }
  .key .key-slider {
    width: 100vw;
    height: 100vh; }
    .key .key-slider .wp-block-image {
      position: relative; }
      .key .key-slider .wp-block-image img {
        width: 100vw;
        height: 100vh;
        object-fit: cover; }

.key-icon {
  width: 100%;
  position: absolute;
  left: 0;
  top: -160px; }
  .key-icon .wp-block-image {
    width: 320px;
    height: 320px; }

.key-icon-p {
  padding-top: 90px !important; }

@media (max-width: 781px) {
  .key-icon {
    top: -90px; }
    .key-icon .wp-block-image {
      width: 180px;
      height: 180px; }

  .key-icon-p {
    padding-top: 60px !important; } }
@media (max-width: 540px) {
  .key-icon {
    top: -60px; }
    .key-icon .wp-block-image {
      width: 120px;
      height: 120px; }

  .key-icon-p {
    padding-top: 60px !important; } }
.case-slider .slick-slide {
  margin: 0 10px;
  width: 200px; }
.case-slider .slick-list {
  overflow: visible; }
.case-slider .slick-disabled {
  display: none !important; }
.case-slider .slick-prev {
  z-index: 10;
  top: 0px;
  left: 50px;
  width: 50px;
  height: 50px;
  border-radius: 30px;
  background: #fff; }
  .case-slider .slick-prev:hover {
    background: #fff;
    opacity: 0.7; }
  .case-slider .slick-prev:after {
    content: '';
    width: 15px;
    height: 15px;
    border: 1px solid #000;
    border-left: 0;
    border-bottom: 0;
    transform: rotate(225deg);
    transform-origin: top right;
    position: absolute;
    top: 50%;
    left: 4px;
    box-sizing: border-box; }
.case-slider .slick-next {
  z-index: 10;
  top: 0px;
  right: 50px;
  width: 50px;
  height: 50px;
  border-radius: 30px;
  background: #fff; }
  .case-slider .slick-next:hover {
    background: #fff;
    opacity: 0.7; }
  .case-slider .slick-next:after {
    content: '';
    width: 15px;
    height: 15px;
    border: 1px solid #000;
    border-left: 0;
    border-bottom: 0;
    transform: rotate(45deg);
    transform-origin: top right;
    position: absolute;
    top: 50%;
    right: 18px;
    box-sizing: border-box; }
.case-slider .slick-slide {
  margin: 0 10px; }
  .case-slider .slick-slide .wp-block-post-title a {
    text-decoration: underline; }

@media print, screen and (min-width: 1000px) {
  .case-slider .slick-slide {
    margin: 0 25px;
    width: 350px; } }
/*トップページお知らせ一覧*/
.reorder-latest-posts ul {
  display: flex;
  flex-direction: column; }
  .reorder-latest-posts ul li {
    margin-bottom: 20px;
    display: flex;
    flex-direction: column; }
    .reorder-latest-posts ul li time {
      order: 1;
      margin-bottom: 4px; }
    .reorder-latest-posts ul li a {
      order: 2; }

.block-radius {
  border-radius: 0 0 70px 70px; }

@media screen and (max-width: 781px) {
  .block-radius {
    border-radius: 0 0 35px 35px; } }
.page-head1 {
  box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.5); }

.column-outside-right {
  flex: 1;
  margin-right: calc(50% - 50vw) !important; }

.rows-2list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around; }
  .rows-2list li {
    width: 48%; }
  .rows-2list li:last-child:nth-child(odd) {
    width: 98%; }

@media screen and (max-width: 781px) {
  .rows-2list li {
    width: 100%; }
  .rows-2list li:last-child:nth-child(odd) {
    width: 100%; } }
.bg-triangle1 {
  position: relative; }
  .bg-triangle1::after {
    background: #545454;
    content: "";
    position: absolute;
    left: calc(50% - 30px);
    bottom: -30px;
    height: calc(60px / 2);
    width: 60px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%); }

.icon1 {
  list-style: none;
  align-items: top;
  justify-content: left !important;
  display: flex; }
  .icon1::before {
    width: 1em;
    height: 1.5em;
    content: "";
    background-image: url("images/icon_list1.svg");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 9px 9px; }

.icon2 {
  list-style: none;
  align-items: top;
  justify-content: left !important;
  display: flex; }
  .icon2::before {
    margin-right: 0.2em;
    width: 1.5em;
    height: 1.5em;
    content: "";
    background-image: url("images/icon_list2.svg");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 20px 20px; }

.icon_hint1 {
  margin: 0 auto;
  align-items: center;
  justify-content: center;
  display: flex;
  margin-top: -35px !important;
  background: #fff;
  max-width: 560px; }
  .icon_hint1::before {
    width: 70px;
    height: 70px;
    margin-right: 0.5em;
    content: "";
    background-image: url("images/icon_hint1.svg");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 70px 70px; }

@media screen and (max-width: 781px) {
  .icon_hint1 {
    margin-top: -20px !important;
    max-width: 300px; }
    .icon_hint1::before {
      width: 40px;
      height: 40px;
      margin-right: 0.5em;
      content: "";
      background-image: url("images/icon_hint1.svg");
      background-repeat: no-repeat;
      background-position: left center;
      background-size: 40px 40px; } }
.icon_hint2 {
  list-style-type: none;
  align-items: center;
  display: flex; }
  .icon_hint2::before {
    width: 40px;
    height: 36px;
    margin-right: 0.5em;
    content: "";
    background-image: url("images/icon_hint2.svg");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 40px 36px; }

.icon-arr1 {
  position: relative; }
  .icon-arr1::after {
    z-index: 1;
    position: absolute;
    top: calc(50% - 23px);
    right: -40px;
    width: 58px;
    height: 55px;
    content: "";
    background-image: url("images/icon_arr1.svg");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 58px 55px; }

@media screen and (max-width: 781px) {
  .flow-list1 {
    flex-flow: column;
    align-items: center !important; }
    .flow-list1 .icon-arr1::after {
      top: auto;
      bottom: -30px;
      left: 124px;
      transform: rotate(90deg); }
    .flow-list1 .wp-block-column {
      width: 300px;
      max-width: 300px;
      flex-flow: column; } }
.marker1 strong {
  font-weight: normal;
  background: linear-gradient(transparent 60%, rgba(1, 153, 67, 0.5) 60%); }

.heading1 {
  align-items: center;
  display: flex;
  justify-content: center; }
  .heading1::before, .heading1::after {
    background-color: #019944;
    content: "";
    height: 2px;
    width: 40px; }
  .heading1::before {
    margin-right: 30px; }
  .heading1::after {
    margin-left: 30px; }

.heading2 {
  align-items: center;
  display: flex;
  justify-content: center; }
  .heading2::before, .heading2::after {
    background-color: #000;
    content: "";
    height: 1px;
    width: 20px; }
  .heading2::before {
    margin-right: 30px; }
  .heading2::after {
    margin-left: 30px; }

.heading3 {
  align-items: center;
  display: flex; }
  .heading3::before {
    background-color: #019944;
    content: "";
    height: 2px;
    width: 40px;
    margin-right: 15px; }

.s-link1 a {
  position: relative;
  padding: 0.5em 1em;
  display: block; }
  .s-link1 a::before {
    content: "";
    position: absolute;
    top: 1em;
    right: 1em;
    width: 9px;
    height: 9px;
    border-top: 1px solid #019944;
    border-right: 1px solid #019944;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .s-link1 a:hover {
    opacity: 0.7; }

.g-link1 a {
  text-decoration: none;
  position: relative;
  padding: 1em 3em;
  display: inline-block;
  background: #000;
  color: #fff; }
  .g-link1 a::before {
    content: "";
    position: absolute;
    top: calc(1.75em - 3px);
    right: 1.5em;
    width: 9px;
    height: 9px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .g-link1 a:hover {
    opacity: 0.7; }

.g-link2 a {
  text-decoration: none;
  position: relative;
  padding: 1em 3em;
  display: inline-block;
  background: #fff;
  color: #000; }
  .g-link2 a::before {
    content: "";
    position: absolute;
    top: calc(1.75em - 3px);
    right: 1.5em;
    width: 9px;
    height: 9px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .g-link2 a:hover {
    opacity: 0.7; }

.g-link3 a {
  text-decoration: none;
  position: relative;
  border-radius: 100vmax;
  display: inline-block;
  padding: 0.5em 4em;
  background-color: #019944; }
  .g-link3 a::before {
    content: "";
    position: absolute;
    top: calc(1.25em - 3px);
    right: 1.5em;
    width: 9px;
    height: 9px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .g-link3 a:hover {
    opacity: 0.7; }

.s-heading {
  margin-bottom: -200px;
  z-index: 1; }

.s-content {
  padding-top: 200px !important; }

@media screen and (max-width: 781px) {
  .s-heading {
    margin-bottom: -100px;
    z-index: 1; }

  .s-content {
    padding-top: 100px !important; } }
.tec-title1 {
  border-radius: 100vmax;
  display: inline-block;
  background: #fff;
  padding: 0.5em 2em;
  background-color: #fff;
  box-shadow: 8px 8px 0px 0px #59c69c; }

.strong strong {
  font-size: 1.3em; }

.casework-category {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0 !important; }
  .casework-category a, .casework-category strong {
    background: #59c69c;
    display: inline-block;
    padding: 0.5em 1em;
    text-decoration: none;
    font-weight: normal; }
    .casework-category a:hover, .casework-category strong:hover {
      opacity: 0.7; }

.technology-category a {
  color: #019944;
  background: #fff;
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none; }
  .technology-category a:hover {
    opacity: 0.7; }

.wp-pagenavi {
  text-align: center;
  margin-bottom: 60px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .wp-pagenavi a, .wp-pagenavi span {
    padding: 0;
    margin: 0 7px;
    display: block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center; }
  .wp-pagenavi a {
    color: #000;
    border: 1px solid #000 !important; }
    .wp-pagenavi a:hover {
      background: #000;
      color: #fff; }
  .wp-pagenavi span.extend {
    border: none;
    margin: 0;
    width: auto; }
  .wp-pagenavi span.current {
    color: #fff;
    background: #000;
    border: 1px solid #000 !important; }
  .wp-pagenavi .previouspostslink:hover, .wp-pagenavi .nextpostslink:hover {
    opacity: 0.7; }

@media print, screen and (min-width: 1000px) {
  .wp-pagenavi {
    margin-bottom: 100px; } }
#post-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #DEDEDE;
  border-bottom: 1px solid #DEDEDE;
  padding: 2em 0;
  margin-bottom: 4em; }
  #post-link .next, #post-link .prev {
    width: 50%;
    padding: 0 2em; }
    #post-link .next .btn1, #post-link .prev .btn1 {
      background: #fff;
      color: #015680;
      border: 1px solid #015680;
      padding: 0.5em;
      text-decoration: none; }
      #post-link .next .btn1:hover, #post-link .prev .btn1:hover {
        background: #015680;
        color: #fff; }
  #post-link .prev {
    position: relative; }
    #post-link .prev::after {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 1px;
      height: 100%;
      background: #DEDEDE; }
    #post-link .prev .pn {
      text-align: left; }
  #post-link .next .pn {
    text-align: right; }

/*tableカスタム　260604*/
@media (max-width: 768px) {
  /* テーブルの親要素を横スクロール可能にする */
  .scroll-table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1.5em; }

  .scroll-table table {
    /* テーブル全体の最低横幅を少し広めに確保して、各列にゆとりを持たせる */
    min-width: 850px !important;
    /* テーブルレイアウトを固定せず、中身に合わせて広がるようにする */
    table-layout: auto !important;
    width: 100% !important; }

  .scroll-table th,
  .scroll-table td {
    /* 先ほど悪さをしていた white-space: nowrap; を解除し、通常改行に戻す */
    white-space: normal !important;
    /* 単語の途中でも枠線に合わせてしっかり自動改行させる設定 */
    word-break: break-all;
    /* 文字が枠線にピタッとくっつかないように余白を調整 */
    padding: 10px 8px !important; }

  /* 「10:00〜14:00」などの時間部分だけは、見やすくするために改行させない */
  .scroll-table strong,
  .scroll-table b {
    white-space: nowrap !important; } }
.business-info-container {
  border: 1px solid #ddd;
  margin-bottom: 2em; }
  .business-info-container h2, .business-info-container h3 {
    background-color: #f8cbad;
    margin: 0 !important;
    padding: 12px 20px;
    font-size: 1.1rem;
    border-bottom: 1px solid #ddd; }
  .business-info-container .info-row {
    border-bottom: 1px solid #ddd; }
    .business-info-container .info-row:last-child {
      border-bottom: none; }
    .business-info-container .info-row .wp-block-columns {
      margin: 0 !important;
      gap: 0 !important; }
      .business-info-container .info-row .wp-block-columns .wp-block-column:first-child {
        background-color: #f4fbf4;
        padding: 20px;
        display: flex;
        align-items: center; }
        @media (max-width: 600px) {
          .business-info-container .info-row .wp-block-columns .wp-block-column:first-child {
            padding: 10px 20px; } }
      .business-info-container .info-row .wp-block-columns .wp-block-column:last-child {
        background-color: #fff;
        padding: 20px; }
        @media (max-width: 600px) {
          .business-info-container .info-row .wp-block-columns .wp-block-column:last-child {
            padding: 15px 20px; } }

@media (max-width: 600px) {
  .info-row .wp-block-columns {
    flex-direction: column; } }
