@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 100;
  src: url("/fonts/NotoSansCJKjp-Thin.eot");
  /* IE9 Compat Modes */
  src: url("zNotoSansCJKjp-Thin.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-Thin.woff") format("woff"), url("/fonts/NotoSansCJKjp-Thin.ttf") format("truetype");
  /* Safari, Android, iOS */ }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 200;
  src: url("/fonts/NotoSansCJKjp-Light.eot");
  src: url("/fonts/NotoSansCJKjp-Light.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-Light.woff") format("woff"), url("/fonts/NotoSansCJKjp-Light.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 300;
  src: url("/fonts/NotoSansCJKjp-DemiLight.eot");
  src: url("/fonts/NotoSansCJKjp-DemiLight.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-DemiLight.woff") format("woff"), url("/fonts/NotoSansCJKjp-DemiLight.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("/fonts/NotoSansCJKjp-Regular.eot");
  src: url("/fonts/NotoSansCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-Regular.woff") format("woff"), url("/fonts/NotoSansCJKjp-Regular.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: url("/fonts/NotoSansCJKjp-Medium.eot");
  src: url("/fonts/NotoSansCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-Medium.woff") format("woff"), url("/fonts/NotoSansCJKjp-Medium.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url("/fonts/NotoSansCJKjp-Bold.eot");
  src: url("/fonts/NotoSansCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-Bold.woff") format("woff"), url("/fonts/NotoSansCJKjp-Bold.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 900;
  src: url("/fonts/NotoSansCJKjp-Black.eot");
  src: url("/fonts/NotoSansCJKjp-Black.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSansCJKjp-Black.woff") format("woff"), url("/fonts/NotoSansCJKjp-Black.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 200;
  src: url("fonts/NotoSerifCJKjp-ExtraLight.eot");
  src: url("/fonts/NotoSerifCJKjp-ExtraLight.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-ExtraLight.woff") format("woff"), url("/fonts/NotoSerifCJKjp-ExtraLight.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 300;
  src: url("fonts/NotoSerifCJKjp-Light.eot");
  src: url("/fonts/NotoSerifCJKjp-Light.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-Light.woff") format("woff"), url("/fonts/NotoSerifCJKjp-Light.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("fonts/NotoSerifCJKjp-Regular.eot");
  src: url("/fonts/NotoSerifCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-Regular.woff") format("woff"), url("/fonts/NotoSerifCJKjp-Regular.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 500;
  src: url("fonts/NotoSerifCJKjp-Medium.eot");
  src: url("/fonts/NotoSerifCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-Medium.woff") format("woff"), url("/fonts/NotoSerifCJKjp-Medium.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 600;
  src: url("fonts/NotoSerifCJKjp-SemiBold.eot");
  src: url("/fonts/NotoSerifCJKjp-SemiBold.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-SemiBold.woff") format("woff"), url("/fonts/NotoSerifCJKjp-SemiBold.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 700;
  src: url("fonts/NotoSerifCJKjp-Bold.eot");
  src: url("/fonts/NotoSerifCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-Bold.woff") format("woff"), url("/fonts/NotoSerifCJKjp-Bold.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 900;
  src: url("fonts/NotoSerifCJKjp-Black.eot");
  src: url("/fonts/NotoSerifCJKjp-Black.eot?#iefix") format("embedded-opentype"), url("/fonts/NotoSerifCJKjp-Black.woff") format("woff"), url("/fonts/NotoSerifCJKjp-Black.ttf") format("truetype"); }
p {
  margin: 0;
  padding: 0;
  text-align: left;
  line-break: strict; }

a {
  color: #0268d0;
  cursor: pointer;
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

.header {
    top: 0;
    width: 100%;
    background: #152444;
    text-align: center;
    position: fixed;
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.7);
    z-index: 100;
}
@media screen and (max-width: 768px) {
    .header {
        padding: 6px 10px;
        position: fixed;
        box-shadow: none;
        top: 0;
        left: 0;
    }
}
.header .inner {
    width: 1300px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: center;
}
@media screen and (max-width: 768px) {
    .header .inner {
        width: 100%;
        align-items: center;
    }
}
.header .inner_lagoona {
    width: 1200px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .inner_lagoona {
        width: 100%;
        align-items: left;
    }
}
.header .inner_jimuone {
    width: 1200px;
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .inner_jimuone {
        width: 100%;
        align-items: left;
    }
}
.header .inner_bizease {
    width: 1200px;
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .inner_bizease {
        width: 100%;
        align-items: left;
    }
}
.header .inner_crosslinkone {
    width: 1200px;
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .inner_crosslinkone {
        width: 100%;
        height: 53.5px;
    }
}
@media screen and (max-width: 768px) {
    .header.header_crosslinkone {
        padding: 11.5px 10px;
    }
}
.header .inner_bansol {
    width: 1200px;
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .inner_bansol {
        width: 100%;
        align-items: left;
    }
}
.header .header__logo_zenryaku_erp {
    width: 115px;
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .header__logo_zenryaku_erp {
        align-items: left;
    }
}
.header .header__logo_ilovekensetsu_system {
    width: 115px;
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
.header .header__logo_dxforce {
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .header__logo_dxforce {
        align-items: left;
    }
}
.header .header__logo_oneflow {
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
.header .header__logo_officestar {
    height: 65px;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: left;
}
@media screen and (max-width: 768px) {
    .header .header__logo_oneflow {
        align-items: left;
    }
}
@media screen and (max-width: 768px) {
    .header .header__logo_officestar {
        align-items: left;
    }
}
      

  .header__flex {
    flex: 1;
    padding: 0 10px; }
  .header__logoBlock {
    margin: 6px 0; }
    .header__logoBlock p {
      font-size: 12px;
      color: #fff;
      line-height: 18px;
      text-align: left;
      margin: 0;
      font-weight: 500; }
      @media screen and (max-width: 768px) {
        .header__logoBlock p {
          font-size: 10px;
          line-height: 10px; } }
    .header__logoBlock:hover {
      text-decoration: none;
      opacity: 0.8; }
  .header__logo {
    height: 36px; }
    @media screen and (max-width: 768px) {
      .header__logo {
        height: 28px; } }
  .header__logo_lagoona {
    height: 60px;
    padding-top:6px;
    padding-left:6px; }
    @media screen and (max-width: 768px) {
      .header__logo_lagoona {
        height: 28px; } }
  .header__globalMenu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex: 1;
    height: 100%;
    width:max-content; }
    @media screen and (max-width: 768px) {
      .header__globalMenu {
        display: none; } }
    .header__globalMenu > li {
      height: 100%;
      color: white;
      position: relative;
      margin-right: 1px; }
      .header__globalMenu > li:hover, .header__globalMenu > li.on {
        background: #062F87; }
      .header__globalMenu > li a {
        cursor: pointer;
        position: relative; }
        .header__globalMenu > li a .icon {
          width: 18px;
          position: absolute;
          bottom: 9px;
          right: -4px;
          transform: rotate(310deg);
          z-index: 10; }
      .header__globalMenu > li p,
      .header__globalMenu > li a {
        font-size: 13px;
        line-height: 24px;
        transition: all 0.2s; }
      .header__globalMenu > li:last-of-type a {
        background: #fa7100;
        font-weight: 700; }
        .header__globalMenu > li:last-of-type a:hover {
          color: #333; }
      .header__globalMenu > li:last-of-type.on a {
        color: #333; }
      .header__globalMenu > li .accordion__title {
        cursor: pointer;
        color: white;
        text-align: center;
        width: 100%;
        height: 100%;
        padding: 0px 17px;
        display: flex;
        align-items: center;
        justify-content: center; }
        .header__globalMenu > li .accordion__title.nolink {
          cursor: default; }
        .header__globalMenu > li .accordion__title:hover {
          text-decoration: none; }
      .header__globalMenu > li .accordion__menu {
        display: none;
        position: absolute;
        width: auto;
        background: #062F87;
        top: 66px;
        left: 0;
        width: 200px; }
        .header__globalMenu > li .accordion__menu li {
          width: 100%;
          font-size: 14px; }
          .header__globalMenu > li .accordion__menu li:hover {
            background: #152444; }
          .header__globalMenu > li .accordion__menu li a {
            text-align: left;
            display: block;
            padding: 10px 0 10px 28px;
            color: white; }
            .header__globalMenu > li .accordion__menu li a:hover {
              text-decoration: none; }
  .header .drawer__toggle {
    display: none;
    position: relative;
    height: 24px;
    width: 30px;
    margin-right: 10px; }
    @media screen and (max-width: 768px) {
      .header .drawer__toggle {
        display: block; } }
    .header .drawer__toggle span {
      width: 30px;
      display: block;
      background: white;
      height: 4px;
      -webkit-transition: all 0.3s ease-out;
      transition: all 0.3s ease-out;
      position: absolute; }
    .header .drawer__toggle .line1 {
      top: 0;
      right: 0; }
    .header .drawer__toggle .line2 {
      top: 10px;
      right: 0; }
    .header .drawer__toggle .line3 {
      top: 20px;
      right: 0; }
    .header .drawer__toggle.active .line1 {
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      top: 10px; }
    .header .drawer__toggle.active .line2 {
      opacity: 0; }
    .header .drawer__toggle.active .line3 {
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg);
      top: 10px; }
  .header .drawer__menu {
    position: fixed;
    width: 70vw;
    height: calc(100vh - 51px);
    background: #152444;
    top: 51px;
    right: -70vw;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    overflow: scroll; }
    .header .drawer__menu.active {
      right: 0; }
    .header .drawer__menu ul {
      padding: 0 30px; }
      .header .drawer__menu ul li {
        padding: 10px 0;
        text-align: left;
        color: white;
        font-size: 14px;
        line-height: 30px; }
      .header .drawer__menu ul a {
        color: white; }
      .header .drawer__menu ul .indent {
        padding-left: 1em; }

.contactNav {
  background: #152444;
  text-align: center; }
  .contactNav .inner {
    padding: 80px 0; }
    @media screen and (max-width: 768px) {
      .contactNav .inner {
        padding: 60px 20px; } }
  .contactNav__text {
    text-align: center;
    color: white;
    font-size: 20px; }
    @media screen and (max-width: 768px) {
      .contactNav__text {
        font-size: 18px;
        line-height: 34px; } }
  .contactNav p {
    color: #fff; }
  .contactNav .table {
    width: 600px;
    margin-top: 40px;
    margin-bottom: 40px; }
    @media screen and (max-width: 768px) {
      .contactNav .table {
        width: 100%; } }
    .contactNav .table .border {
      display: block;
      width: 100%;
      height: 1px;
      background: #fff;
      margin: 20px 0; }
    .contactNav .table .yellow {
      color: #ffcf00; }
    .contactNav .table .table__row {
      border: none;
      position: relative;
      padding: 20px 0; }
      .contactNav .table .table__row__head {
        width: auto;
        font-size: 18px; }
        @media screen and (max-width: 768px) {
          .contactNav .table .table__row__head {
            margin-bottom: 10px;
            font-weight: 300;
            font-size: 14px; } }
      .contactNav .table .table__row__body {
        font-size: 26px;
        font-weight: 700;
        text-align: right; }
        @media screen and (max-width: 768px) {
          .contactNav .table .table__row__body {
            font-size: 24px; } }
      .contactNav .table .table__row span {
        font-size: 18px;
        font-weight: 350;
        text-align: right; }
        @media screen and (max-width: 768px) {
          .contactNav .table .table__row span {
            font-size: 16px; } }
      .contactNav .table .table__row span2 {
        font-size: 16px; }
        @media screen and (max-width: 768px) {
          .contactNav .table .table__row span2 {
            font-size: 14px; } }
  .contactNav .check {
    font-size: 18px;
    text-align: center;
    width: 800px;
    background: #fff;
    color: #333;
    font-weight: 500;
    margin: 0 auto;
    text-decoration: underline;
    line-height: 34px;
    padding: 30px 0; }
    @media screen and (max-width: 768px) {
      .contactNav .check {
        width: 100%;
        font-size: 16px;
        line-height: 34px;
        padding: 15px;
        text-align: left;
        text-decoration: none; } }
  .contactNav .remark {
    font-size: 12px;
    text-align: right; }
    @media screen and (max-width: 768px) {
      .contactNav .remark {
        text-align: left;
        text-indent: -1em;
        padding-left: 1em;
        line-height: 21px; } }
  .contactNav .linkBtn {
    margin-top: 0px; }
  .contactNav .point {
    position: absolute;
    background: #fa7100;
    width: 140px;
    height: 60px;
    border-radius: 50%;
    top: 4px;
    right: -160px; }
    @media screen and (max-width: 768px) {
      .contactNav .point {
        width: 120px;
        height: 40px;
        right: 0; } }
    .contactNav .point_inner {
      color: #fff;
      font-weight: 700;
      position: relative;
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center; }
      @media screen and (max-width: 768px) {
        .contactNav .point_inner {
          font-size: 12px; } }
      .contactNav .point_inner:before {
        position: absolute;
        top: 25px;
        left: -33px;
        content: "";
        width: 0;
        height: 0;
        border-right: solid 20px #fa7100;
        border-left: solid 20px transparent;
        border-top: solid 6px transparent;
        border-bottom: solid 6px transparent; }
        @media screen and (max-width: 768px) {
          .contactNav .point_inner:before {
            top: 39px;
            left: 57px;
            border-right: solid 4px transparent;
            border-left: solid 4px transparent;
            border-top: solid 10px #fa7100;
            border-bottom: solid 10px transparent; } }

.footer {
  background: #152444;
  text-align: center; }
  .footer__inner {
    display: inline-block;
    margin: 0 auto;
    padding: 20px 0; }
    @media screen and (max-width: 768px) {
      .footer__inner {
        padding: 40px 20px;
        width: 100%; } }
  .footer__menu {
    display: flex; }
    @media screen and (max-width: 768px) {
      .footer__menu {
        display: block; } }
    .footer__menu li {
      color: white; }
      @media screen and (max-width: 768px) {
        .footer__menu li {
          display: flex;
          flex-wrap: wrap; } }
      .footer__menu li:not(:first-child) {
        margin-left: 100px; }
        @media screen and (max-width: 768px) {
          .footer__menu li:not(:first-child) {
            margin-left: 0; } }
    .footer__menu p {
      color: white;
      height: 24px; }
    .footer__menu a {
      color: white;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      font-size: 14px; }
      @media screen and (max-width: 768px) {
        .footer__menu a {
          width: 50%;
          height: auto;
          justify-content: center; } }
  /* 20250521 会社情報の掲載とCorporation構造化データの修正 */
  .footer__menu__second {
    flex-direction: row-reverse;
    margin: 50px 0;
  }
  .footer__menu__second .company-info {
    text-align: left;
  }
  @media screen and (max-width: 768px) {
    .footer__menu__second .company-info {
      justify-content: center;
      text-align: center;
    }
  }
  /* 20250521 会社情報の掲載とCorporation構造化データの修正 */
  .footer__copy {
    background: #111;
    padding: 10px 0;
    color: white;
    text-align: center;
    font-size: 12px; }

.newsNav {
  background: #fdfded;;
}

.newsNav .inner {
  overflow: hidden;
  padding: 80px 0 60px;
}
.newsNav .sectionTitle {
  font-size: 30px;
  border: none;
  color: #fa7100;
  margin-bottom: 20px; }
  @media screen and (max-width: 768px) {
    .newsNav .sectionTitle {
      font-size: 24px;
      line-height: 34px; } }
.newsNav .img_wrap {
  cursor: pointer;
  width: 400px;
  height: 284px;
  overflow: hidden;
  float: left;
  margin-right: 40px;
  position: relative; }
  .newsNav .img_wrap:hover {
    opacity: 0.7; }
  @media screen and (max-width: 768px) {
    .newsNav .img_wrap {
      width: 100%;
      height: auto;
      margin-right: 0;
      margin-bottom: 40px; } }
  .newsNav .img_wrap .icon_expand {
    width: 32px;
    position: absolute;
    bottom: 10px;
    right: 10px; }
    @media screen and (max-width: 768px) {
      .newsNav .img_wrap .icon_expand {
        display: none; } }
.newsNav .img_slide {
  width: 100%; }

.popup {
  display: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000; }
  .popup .mask {
    background: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center; }
  .popup .img_popup_wrap {
    height: 85%;
    position: relative; }
    .popup .img_popup_wrap .img_popup {
      height: 100%; }
    .popup .img_popup_wrap .icon_close {
      position: absolute;
      top: -27px;
      right: 0;
      width: 23px;
      cursor: pointer; }

.bread {
  background: #444;
  text-align: center;
  padding-top: 66px; }
  @media screen and (max-width: 768px) {
    .bread {
      padding-top: 64px; } }
  .bread__inner {
    width: 1100px;
    margin: 0 auto;
    padding: 6px 0;
    text-align: left; }
    @media screen and (max-width: 768px) {
      .bread__inner {
        width: 100%;
        padding-left: 10px; } }
  .bread a {
    color: white;
    font-size: 14px;
    margin-right: 10px; }
    .bread a:not(:last-of-type):after {
      content: ">";
      margin-left: 10px; }
    .bread a i {
      margin-right: 4px; }

.pageTop {
  width: 70px;
  background: #444;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: start;
  position: fixed;
  bottom: 20px;
  right: 20px;
  flex-direction: column;
  padding-top: 10px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.7); }
  .pageTop p {
    color: white;
    font-weight: 300; }
  .pageTop__text {
    font-size: 14px;
    line-height: 14px; }
  .pageTop__arrow {
    font-size: 30px; }
  .pageTop:hover {
    text-decoration: none;
    opacity: 0.9; }

p {
  font-size: 16px;
  line-height: 32px;
  font-weight: 300; }
  @media screen and (max-width: 768px) {
    p {
      font-size: 14px;
      line-height: 30px; } }

a {
  font-size: 16px;
  line-height: 32px;
  font-weight: 300; }
  @media screen and (max-width: 768px) {
    a {
      font-size: 14px;
      line-height: 30px; } }

.inner {
  width: 1100px;
  margin: 0 auto;
  padding: 80px 0 120px; }
  @media screen and (max-width: 768px) {
    .inner {
      width: 100%;
      padding: 60px 20px; } }

.sectionTitle {
  text-align: center;
  font-weight: 700;
  font-size: 40px;
  line-height: 50px;
  padding-bottom: 10px;
  color: #152444;
  border-bottom: solid 2px #152444;
  display: table;
  margin: 0 auto 80px; }
  @media screen and (max-width: 768px) {
    .sectionTitle {
      font-size: 24px;
      line-height: 34px;
      text-align: left;
      margin: 0 auto 40px; } }

.mainTitle {
  background: #152444;
  padding: 50px 0;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .mainTitle {
      padding: 20px 15px; } }
  .mainTitle h1 {
    color: white;
    margin: 0 auto;
    font-size: 40px;
    letter-spacing: 4px; }
    @media screen and (max-width: 768px) {
      .mainTitle h1 {
        font-size: 30px;
        text-align: left; } }

.linkBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 0;
  width: 500px;
  margin: 40px auto 0;
  font-size: 20px;
  color: #fff;
  border-radius: 40px;
  background: #fa7100; }
  @media screen and (max-width: 768px) {
    .linkBtn {
      width: 100%;
      padding: 15px 0;
      font-size: 16px; } }
  .linkBtn:hover {
    text-decoration: none;
    background: #f5b44c; }

.ancLink {
  font-size: 16px;
  color: #062F87;
  text-decoration: underline; }
  .ancLink i {
    margin-right: 6px; }

.table {
  width: 900px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .table {
      width: 100%; } }
  .table .table__row {
    display: flex;
    padding: 15px 10px 10px;
    border-bottom: solid 1px #E6E6E6; }
    @media screen and (max-width: 768px) {
      .table .table__row {
        flex-direction: column; } }
    .table .table__row__head {
      width: 200px;
      text-align: left;
      font-weight: 700; }
    .table .table__row__body {
      flex: 1;
      text-align: left; }

.checkLabel {
  position: relative;
  display: block;
  word-break: break-all; }
  .checkLabel input[type="checkbox"] {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0; }
    .checkLabel input[type="checkbox"] + span {
      position: relative;
      padding: 0 30px 0 30px; }
      .checkLabel input[type="checkbox"] + span:before, .checkLabel input[type="checkbox"] + span:after {
        position: absolute;
        top: 1px;
        left: 0;
        display: inline-block;
        content: '';
        box-sizing: border-box; }
      .checkLabel input[type="checkbox"] + span:before {
        z-index: 0;
        background-color: transparent;
        width: 22px;
        height: 22px;
        border: 1px #616161 solid;
        background: #fff; }
      .checkLabel input[type="checkbox"] + span:after {
        z-index: 1;
        margin: 4px 9px;
        width: 6px;
        height: 12px; }
    .checkLabel input[type="checkbox"]:checked + span:before {
      background-color: #616161; }
    .checkLabel input[type="checkbox"]:checked + span:after {
      border: 2px solid #fff;
      border-width: 0 2px 2px 0;
      transform: rotate(45deg); }
  .checkLabel span {
    display: inline-block; }

.grecaptcha-badge {
  width: 70px !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  left: 4px !important; }

.grecaptcha-badge:hover {
  width: 256px !important; }

/*# sourceMappingURL=layout.css.map */


/*# 注文フォーム */
.orderNav__explanation {
  font-size: 18px;
  width: 800px;
  margin: 20px auto 0px; }
.orderNav__errMsg {
  font-size: 16px;
  color: #e20606;
  width: 800px;
  margin: 20px auto 0px; }
.orderNav .inner .orderEx {
  text-align:center;
}
.orderNav__table {
  width: 800px;
  margin: 20px auto 40px; }
  @media screen and (max-width: 768px) {
    .orderNav__table {
      margin: 20px auto;
      width: 100%; } }
  .orderNav__table .table__row {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0; }
    @media screen and (max-width: 768px) {
      .orderNav__table .table__row {
        flex-direction: column; } }
    .orderNav__table .table__row:last-child {
      align-items: flex-start; }
    .orderNav__table .table__row__head {
      width: 300px;
      text-align: left;
      padding-right: 10px;
      display: flex;
      align-items: center;
      justify-content: space-between; }
      @media screen and (max-width: 768px) {
        .orderNav__table .table__row__head {
          width: 100%;
          display: block;
          padding-left: 0;
          padding-bottom: 10px; } }
      .orderNav__table .table__row__head .require {
        border: solid 1px #e20606;
        color: #e20606;
        font-size: 15px;
        padding: 2px 6px;
        height: 20px;
        line-height: 20px; }
        @media screen and (max-width: 768px) {
          .orderNav__table .table__row__head .require {
            margin-left: 10px; } }
    .orderNav__table .table__row__body {
      font-size: 20px;
      flex: 1;
      text-align: left; }
      @media screen and (max-width: 768px) {
        .orderNav__table .table__row__body {
          width: 100%; } }
  .orderNav__table input[type="text"] {
    border: #ccc 1px solid;
    padding: 10px;
    font-size: 16px;
    width: 100%; }
  .orderNav__table select {
    border: solid 1px #ccc;
    padding: 3px;
    font-size: 16px;
    height: 50px;
    width: 50%;
    color: #ccc; }
    .orderNav__table select option {
      color: #000; }
  .orderNav__table ::-webkit-input-placeholder {
    color: #ccc; }
  .orderNav__table ::-moz-placeholder {
    color: #ccc; }
  .orderNav__table :-ms-input-placeholder {
    color: #ccc; }
  .orderNav__table textarea {
    width: 100%;
    font-size: 16px;
    border: solid 1px #ccc;
    resize: none;
    padding: 6px 10px; }
.orderNav .consent {
  font-size: 16px;
  width: 800px;
  margin: 10px auto 40px; }
  @media screen and (max-width: 768px) {
    .orderNav .consent {
      width: 100%; } }
.orderNav .terms_soft {
  height: 210px;
  overflow: auto;
  border: 1px solid;
  border-color: #ccc; }
.orderNav .confirmBtn {
  width: 480px;
  background: #8e8e8e;
  color: white;
  height: 50px;
  font-size: 16px;
  display: block;
  margin: 0 auto;
  transition: all 0.5s; }
  @media screen and (max-width: 768px) {
    .orderNav .confirmBtn {
      width: 100%;
      height: auto;
      padding: 10px 10px;
      line-height: 28px;
      font-size: 14px; } }
  .orderNav .confirmBtn.enable {
    background: #fa7100; }

.checkBlock {
  margin: 20px 0 30px;
  background: #E6E6E6;
  padding: 20px;
  text-align: left; }

.thanks_text {
  text-align: left;
  margin-left: 30%;
  margin-bottom: 40px; }

.link_back {
  margin: 0 auto;
  width: 240px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  background: #152444;
  border-radius: 40px; }
  .link_back:hover {
    opacity: 0.7;
    text-decoration: none; }


.newIcon {
  font-size: 8px !important;
  height: 16px;
  line-height: 16px !important;
  width: auto;
  padding: 0 5px;
  color: white;
  text-decoration: unset;
  border-radius: 4px;
  background:#fa7100;
  position:absolute;
  top:3px;
  left:3px;
}

.newIconSP {
  font-size: 8px !important;
  height: 16px;
  line-height: 16px !important;
  width: auto;
  padding: 0 5px;
  color: white;
  text-decoration: unset;
  border-radius: 4px;
  background:#fa7100;
  position:absolute;
  top: 50px;
  left:20px;
}

/* 20271207 add css */
.t-retouch-h1{
  padding: 50px 10px 30px;
  font-size: 20px;
  text-align: center;
  color: #fff;
  margin: 0;
}

.footer__copy a{
  color: #fff!important;
  font-size: 12px;
}

/*--20240701 追加 コンテンツ見出しの設置--*/
.contactNav .sectionTitle{
  color: white;
  border-bottom: solid 2px white;
}

/* 20241114 globalMenu 機能 */
.accordion__menu-item {
 display: block;
 background: #062F87;
 text-align: left;
 color: white;
 padding: 10px 0 10px 28px;
}
.accordion__submenu {
 display: none;
 position: absolute;
 width: auto;
 background: #062F87;
 top: 0px;
 left: 200px;
 width: 200px;
}
.accordion__menu-item:hover,
.accordion__submenu-item:hover {
 background: #152444;
}
.accordion__menu-item:hover > .accordion__submenu {
 display: block;
}
.accordion__submenu.accordion__submenu-t41 {
  top: 41px;
 }
 .accordion__submenu.accordion__submenu-t83 {
  top: 83px;
 }
 .accordion__submenu.accordion__submenu-t124 {
  top: 124px;
 }
 .accordion__submenu.accordion__submenu-b46 {
  top: unset;
  bottom: -46px;
 }

/* 20241114 drawer__menu 機能 */
.header .drawer__menu ul li.accordion__menu-sp {
 position: relative;
 padding: 10px 40px 10px 0px ;
}
.header .drawer__menu ul li.accordion__menu-sp:after {
 position: absolute;
 top: 9px;
 right: 0px;
 content: "＋";
 color: #fff;
 font-size: 30px;
}
.header .drawer__menu ul li.accordion__menu-sp.open:after {
 content: "－";
}
.accordion__submenu-sp {
 display: none;
}
.accordion__submenu-sp-ttl {
 color: #fff;
 font-weight: bold;
 padding: 10px 20px 0px 20px;
}
.header .drawer__menu ul li.accordion__submenu-item-sp {
 padding: 0px;
}

.orange {
  color: #fa7100;
  font-weight: 500;
}

.contactNav .table .large-bold {
  font-size: 26px !important;
  font-weight: 700 !important;
  margin-left: 5px !important;
}

.contactNav .table .small-text {
  font-size: 16px !important;
}

@media screen and (max-width: 768px) {
  .contactNav .table .large-bold {
    font-size: 24px !important;
  }
  .contactNav .table .small-text {
    font-size: 14px !important;
  }
}


/* 20250715 top 機能一覧コンテンツ強化 */
.funcNav__list.retouch {
  justify-content: center;
  column-gap: 30px;
}
.funcNav__list.retouch li, 
.funcNav__list.retouch > li:nth-of-type(4), 
.funcNav__list.retouch > li:nth-of-type(5) {
  width: calc((100% - 80px) / 3);
  padding: 40px 30px;
}
.funcNav .funcNav__list.retouch .funcTitle {
  color: #152444;
  font-weight: bold;
}
.funcNav__list.retouch .funcList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.funcNav__list.retouch .funcList li {
  width: fit-content;
  background: #ebf1f8;
  border-radius: 10px;
  padding: 5px 15px;
}
.funcNav__list.retouch .funcList li:before {
  display: none;
}
.funcNav__list.retouch .funcList li a {
  text-decoration: none;
  font-weight: bold;
  color: #607593;
}
@media screen and (max-width: 768px) {
  .funcNav__list.retouch li, 
  .funcNav__list.retouch > li:nth-of-type(4), 
  .funcNav__list.retouch > li:nth-of-type(5) {
    width: 100%;
  }
}

/* 20250715 header 各機能ページ作成 */
.accordion__menu-item.retouch .link {
  padding: 0;
}
/* 20250715 personnel 各機能ページ作成 */
.function-problemNav .sectionTitle,
.function-solutionNav .sectionTitle, 
.function-selectionNav .sectionTitle,
.page-faqNav .sectionTitle {
  padding-top: 35px;
  letter-spacing: 5px;
}
.function-problemNav {
  background: #f3f3f3;
  position: relative;
}
.function-problemNav .inner {
  padding: 80px 0 40px;
}
.function-problemNav .problemNav__list {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
}
.function-problemNav .problemNav__list>li {
  padding: 20px 30px 25px;
  width: calc((100% - 40px) / 2);
}
@media screen and (max-width: 768px) {
  .function-problemNav .problemNav__list>li {
    width: 100%;
  }
}
.function-problemNav .problemTitle {
  font-size: 24px;
  font-weight: 500;
  line-height: 24px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .function-problemNav .problemTitle {
    font-size: 20px;
    line-height: 20px;
  }
}
.function-problemNav .problemList li {
  font-size: 16px;
  line-height: 40px;
  font-weight: 300;
  padding-left: 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .function-problemNav .problemList li {
    font-size: 14px;
    line-height: 30px;
    padding-left: 20px;
  }
}
.function-problemNav .problemList li:before {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 0;
  width: 20px;
  height: 20px;
  background: url(https://www.jimusol.net/img/icon_check.png) center center/20px auto no-repeat;
}
@media screen and (max-width: 768px) {
  .function-problemNav .problemList li:before {
    top: 7px;
    width: 14px;
    height: 14px;
    background: url(https://www.jimusol.net/img/icon_check.png) center center/14px auto no-repeat;
  }
}
.function-problemNav .arrow {
  position: absolute;
  bottom: -50px;
  height: 50px;
  left: calc(50% - 60px);
}
@media screen and (max-width: 768px) {
  .function-problemNav .arrow {
    bottom: -25px;
    height: 25px;
    left: calc(50% - 30.5px);
  }
}

.function-solutionNav .content {
  height: auto;
  text-align: center;
  padding: 40px 15px;
}
@media screen and (max-width: 768px) {
  .function-solutionNav .content {
    height: auto;
    margin-top: 0px;
  }
}
.function-solutionNav .radiusBox {
  border-radius: 20px;
  border: 3px solid #152444;
  text-align: center;
}
.function-solutionNav div.explImgBox {
  align-items: center;
  vertical-align: top;
  display: flex;
  width: auto;
  max-width: 1150px;
  background: white;
  padding: 20px 0px;
  margin: 40px 140px 40px 0px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .function-solutionNav div.explImgBox {
    display: inline-block;
    margin: 40px 0 40%;
    margin-left: auto;
    margin-right: 0;
    min-width: 300px;
  }
}
.function-solutionNav div.explImgBox div.expl {
  background: white;
  width: 60%;
  text-align: left;
  display: inline-block;
  padding: 10px 31px 10px 0;
  margin: unset;
}
@media screen and (max-width: 1005px) {
  .function-solutionNav div.explImgBox div.expl {
    padding-right: 40px;
  }
}
@media screen and (max-width: 768px) {
  .function-solutionNav div.explImgBox div.expl {
    width: 85%;
    padding: 10px 0;
  }
}
.function-solutionNav div.explImgBox div.expl p,
.function-solutionNav div.explImgBox div.expl a {
  text-align: left;
  margin-bottom: 10px;
  font-size: 18px;
}
.function-solutionNav div.explImgBox div.expl p {
  width: 100%;
}
.function-solutionNav div.explImgBox div.expl p.subject {
  font-size: 28px;
  font-weight: 500;
  width: unset;
}
@media screen and (max-width: 768px) {
  .function-solutionNav div.explImgBox div.expl p,
  .function-solutionNav div.explImgBox div.expl a {
    text-align: center;
  }
  .function-solutionNav div.explImgBox div.expl p.subject {
    width: 100%;
  }
}
.function-solutionNav div.explImgBox div.img {
  background: white;
  display: inline-block;
}
.function-solutionNav div.explImgBox div.img img {
  width: 60%;
  height: auto;
}
.function-solutionNav .expl p {
  padding-top: unset;
  margin-right: 5px;
}
@media screen and (max-width: 768px) {
  .function-solutionNav .expl p {
    text-align: center;
  }
}
.function-solutionNav .svgIcn {
  width: 32px;
  margin-right: 10px;
}
.function-solutionNav .screen {
  width: 27%;
  position: absolute;
  left: 87%;
}
@media screen and (max-width: 1005px) {
  .function-solutionNav .screen {
    left: 92%;
  }
}
@media screen and (max-width: 805px) {
  .function-solutionNav .screen {
    left: 95%;
  }
}
@media screen and (max-width: 768px) {
  .function-solutionNav .screen {
    left: 16%;
    top: 95%;
    width: 67%;
  }
}

.function-selectionNav .merit_selectionNav__list {
  display: flex;
  align-items: stretch;
  justify-content: space-evenly;
  flex-wrap: wrap;
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .function-selectionNav .merit_selectionNav__list {
    flex-direction: column;
  }
}
.function-selectionNav .merit_selectionNav__list .selectionTitle {
  font-size: 20px;
  font-weight: 700;
  line-height: 40px;
  margin-bottom: 15px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .function-selectionNav .merit_selectionNav__list .selectionTitle {
    font-size: 18px;
    line-height: 32px;
  }
}
.function-selectionNav .merit_selectionNav__list li {
  padding: 40px 40px;
  width: 33%;
}
@media screen and (max-width: 768px) {
  .function-selectionNav .merit_selectionNav__list li {
    padding: 20px 0;
    width: 100%;
  }
}
.function-selectionNav .merit_selectionNav__list li img {
  width: 140px;
  margin: 0 auto;
  display: block;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .function-selectionNav .merit_selectionNav__list li img {
    width: 100px;
  }
}
.function-selectionNav .merit_selectionNav__list li p {
  text-align: center;
  font-weight: 300;
}

.page-faqNav .inner {
  padding: 80px 0;
}
@media screen and (max-width: 768px) {
  .page-faqNav .inner {
    padding: 60px 20px;
  }
}
.page-faqNav .mainNav__title {
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: flex-start
}
@media screen and (max-width:768px) {
  .page-faqNav .mainNav__title {
    font-size: 24px;
    line-height: 40px
  }
}
.page-faqNav .mainNav__title:before {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #000;
  margin-right: 10px
}
@media screen and (max-width:768px) {
  .page-faqNav .mainNav__title:before {
    width: 30px
  }
}
.mainNav.page-faqNav .faqList {
  width: 100%;
  margin: 40px 0 60px
}
@media screen and (max-width:768px) {
  .mainNav.page-faqNav .faqList {
    margin: 20px 0 30px
  }
}
.mainNav.page-faqNav .faqList__row {
  padding: 15px 0;
  cursor: pointer
}
.mainNav.page-faqNav .faqList__q {
  background: #ececec;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between
}
.mainNav.page-faqNav .faqList__q i {
  margin-right: 10px
}
.mainNav.page-faqNav .faqList__a {
  display: none;
  padding: 30px 20px
}
.page-faqNav .accIcon {
  position: relative;
  width: 16px;
  height: 16px
}
@media screen and (max-width:768px) {
  .page-faqNav .accIcon {
    margin-left: 10px;
    width: 12px;
    height: 12px
  }
}
.page-faqNav .accIcon:before {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  background: #152444;
  top: 7px;
  left: 0;
  position: absolute
}
@media screen and (max-width:768px) {
  .page-faqNav .accIcon:before {
    width: 12px;
    top: 5px
  }
}
.page-faqNav .accIcon:after {
  content: "";
  display: block;
  width: 2px;
  height: 16px;
  background: #152444;
  top: 0;
  left: 7px;
  position: absolute;
  transition: all .3s
}
@media screen and (max-width:768px) {
  .page-faqNav .accIcon:after {
    height: 12px;
    left: 5px
  }
}
.page-faqNav .accIcon.active:after {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg)
}

/*--20250716 追加 内部リンクの追加--*/
.accordion__menu-item.retouch .link {
  padding: 0;
}
