@charset "UTF-8";
/* _reset.scss
--------------------------------------------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

q:before, q:after {
  content: '';
}

object, embed {
  vertical-align: top;
}

hr, legend {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

ul, ol {
  list-style-type: none;
}

/*　default link color
---------------------------------------------------------------------------------------*/
a {
  text-decoration: none;
  color: #000;
}

a:hover {
  text-decoration: none;
}

/*　noto serif font
---------------------------------------------------------------------------------------*/
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-ExtraLight.otf") format("opentype");
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Light.otf") format("opentype");
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.otf") format("opentype");
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Medium.otf") format("opentype");
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-SemiBold.otf") format("opentype");
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.otf") format("opentype");
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Black.otf") format("opentype");
}

/*　img のリンク　マウスオーバー
--------------------------------------------------------------------------------------- */
body {
  font-size: 16px;
  line-height: calc(32/16);
  letter-spacing: 0.03em;
  color: #00244B;
  font-family: 'Noto Sans JP', sans-serif;
  position: relative;
  width: 100%;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  body {
    font-size: 13px;
  }
}

img {
  width: 100%;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.wrapper {
  overflow-x: hidden;
}

.pc_none {
  display: none;
}

@media screen and (max-width: 767px) {
  .pc_none {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .sp_none {
    display: none;
  }
}

.tb_on {
  display: none;
}

@media screen and (max-width: 1024px) {
  .tb_on {
    display: block;
  }
}

.tb_only {
  display: none;
}

@media screen and (max-width: 1024px) {
  .tb_only {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .tb_only {
    display: none;
  }
}

.noteOn {
  display: none;
}

@media screen and (max-width: 1600px) {
  .noteOn {
    display: block;
  }
}

.tb_none {
  display: block;
}

@media screen and (max-width: 1024px) {
  .tb_none {
    display: none;
  }
}

.en {
  font-family: 'Outfit', sans-serif;
}

.mainWidth {
  width: 100%;
  max-width: 1720px;
  margin: 0 auto;
  padding: 0 60px;
}

@media screen and (max-width: 1024px) {
  .mainWidth {
    padding: 0 60px;
  }
}

@media screen and (max-width: 767px) {
  .mainWidth {
    padding: 0 20px;
  }
}

.mainInner {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
}

@media screen and (max-width: 1024px) {
  .mainInner {
    padding: 0 60px;
  }
}

@media screen and (max-width: 767px) {
  .mainInner {
    padding: 0 20px;
  }
}

.secTtl {
  position: relative;
}

.secTtl .enTtl {
  display: block;
  font-weight: 500;
  position: relative;
  padding-left: 30px;
}

.secTtl .enTtl::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: calc(50% - 30px);
  left: 0;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #006fab;
  background: -webkit-gradient(linear, left top, right top, color-stop(-100%, #006fab), to(rgba(0, 111, 171, 0)));
  background: -webkit-linear-gradient(left, #006fab -100%, rgba(0, 111, 171, 0) 100%);
  background: linear-gradient(90deg, #006fab -100%, rgba(0, 111, 171, 0) 100%);
}

.secTtl .jaTtl {
  margin-top: 60px;
  display: block;
  font-weight: 900;
  font-size: 48px;
  position: relative;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 1024px) {
  .secTtl .jaTtl {
    font-size: 32px;
  }
}

@media screen and (max-width: 767px) {
  .secTtl .jaTtl {
    margin-top: 40px;
    font-size: 28px;
  }
}

.c-btnCover {
  margin-top: 60px;
  margin-bottom: 60px;
}

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

.c-btn {
  display: inline-block;
  position: relative;
  font-weight: 900;
  padding-right: 80px;
  color: #00244B;
}

@media screen and (max-width: 767px) {
  .c-btn {
    padding-right: 50px;
  }
}

.c-btn::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  height: 16px;
  background-image: url(../img/connect-common/productItem-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 8px;
  right: 25px;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .c-btn::before {
    width: 12px;
    height: 10px;
    bottom: 10px;
    right: 15px;
  }
}

.c-btn::after {
  content: "";
  position: absolute;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #D7EDFA;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  bottom: -20px;
  right: 0px;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .c-btn::after {
    width: 40px;
    height: 40px;
    bottom: -5px;
  }
}

.c-btn:hover::after {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.c-btn--back {
  padding-right: 0px;
  padding-left: 80px;
}

@media screen and (max-width: 767px) {
  .c-btn--back {
    padding-right: 0px;
    padding-left: 50px;
  }
}

.c-btn--back::before {
  right: auto;
  left: 25px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

@media screen and (max-width: 767px) {
  .c-btn--back::before {
    right: auto;
    left: 15px;
  }
}

.c-btn--back::after {
  right: auto;
  left: 0;
}

.c-bgleft {
  position: relative;
}

.c-bgleft::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: rgba(255, 255, 255, 0);
  mix-blend-mode: normal;
  width: 100%;
  height: 100%;
  -webkit-transition: .4s;
  transition: .4s;
}

.c-bgleft:hover::before {
  background-color: rgba(255, 255, 255, 0.2);
}

.c-bgleft-pink::before {
  background-color: rgba(255, 255, 255, 0);
}

.c-bgleft-pink:hover::before {
  background-color: white;
}

.centerLinkCover {
  text-align: center;
}

.header {
  position: fixed;
  width: 100%;
  z-index: 99;
  top: 0;
  left: 0;
  background-color: #fff;
}

.headerInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 160px;
  padding: 0 50px;
}

@media screen and (max-width: 1890px) {
  .headerInner {
    padding: 0 40px;
  }
}

@media screen and (max-width: 1024px) {
  .headerInner {
    height: 120px;
    padding: 0 25px;
  }
}

.headLogo {
  font-size: 24px;
  font-weight: 800;
  position: relative;
  z-index: 99;
  color: #00244B;
}

@media screen and (max-width: 767px) {
  .headLogo {
    font-size: 16px;
  }
}

.headLogo.sphead_on {
  color: #fff;
}

.headMenuCover {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 1024px) {
  .headMenuCover {
    margin-top: 0px;
    display: block;
    position: absolute;
    top: 0px;
    left: 0;
    width: 100vw;
    background: #006fab;
    background: -webkit-gradient(linear, left top, left bottom, from(#006fab), to(#0e3561));
    background: -webkit-linear-gradient(top, #006fab 0%, #0e3561 100%);
    background: linear-gradient(180deg, #006fab 0%, #0e3561 100%);
    overflow: scroll;
    height: 100vh;
    z-index: 2;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    z-index: 3;
  }
}

.headMenuCoverInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 1024px) {
  .headMenuCoverInner {
    min-height: 1000px;
    display: block;
  }
}

.headMenu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.headMenu .headMenuBg {
  display: none;
}

.headMenu .headMenuBg img {
  width: 100%;
}

@media screen and (max-width: 1460px) {
  .headMenu {
    margin-top: 100px;
  }
}

@media screen and (max-width: 1024px) {
  .headMenu {
    display: block;
    margin-top: 120px;
    position: relative;
    padding: 0 25px;
  }
}

.menu-btn-cover {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.headMenuBtnArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 99;
  margin-left: 20px;
}

@media screen and (max-width: 1460px) {
  .headMenuBtnArea {
    position: absolute;
    top: 0;
    right: 0;
    margin-top: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .headMenuBtnArea {
    position: fixed;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    width: calc(100% - 0px);
    margin: 40px auto 0;
    padding-bottom: 0px;
  }
}

.headMenuItem {
  text-align: center;
  cursor: pointer;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  position: relative;
  z-index: 2;
  margin: 0 10px;
  color: #00244B;
}

.headMenuItem > a, .headMenuItem span {
  padding: 0 20px;
  display: block;
  font-weight: 900;
  position: relative;
  z-index: 2;
  color: #00244B;
}

@media screen and (max-width: 1600px) {
  .headMenuItem > a, .headMenuItem span {
    padding: 0 10px;
    font-size: 15px;
  }
}

@media screen and (max-width: 1024px) {
  .headMenuItem > a, .headMenuItem span {
    color: #fff;
    font-size: 16px;
  }
}

.headMenuItem > a:hover, .headMenuItem span:hover {
  color: #1796b5;
}

@media screen and (max-width: 1024px) {
  .headMenuItem > a:hover, .headMenuItem span:hover {
    color: #00244B;
  }
}

.headMenuItem .current {
  color: #1796b5;
}

@media screen and (max-width: 1024px) {
  .headMenuItem .current {
    color: #00244B;
  }
}

@media screen and (max-width: 1024px) {
  .headMenuItem {
    padding: 0;
    text-align: left;
    font-size: 16px;
    width: 100%;
    margin: 0 auto;
  }
  .headMenuItem::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 27px;
    height: 27px;
    right: 0px;
    top: calc(50% - 13.5px);
    border-radius: 50%;
    background-color: #e5f0f6;
  }
  .headMenuItem::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 25.5px;
    height: 3.5px;
    background-image: url(../img/common/menuArrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    right: 10px;
    top: calc(50% - 1.75px);
  }
  .headMenuItem a, .headMenuItem span {
    display: block;
    line-height: 65px;
    padding: 0;
  }
}

@media screen and (max-width: 1024px) and (max-width: 1024px) {
  .headMenuItem::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 12px;
    height: 10px;
    background-image: url(../img/connect-common/productItem-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: calc(50% - 5px);
    right: 15px;
    z-index: 3;
  }
  .headMenuItem::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    right: 0;
    top: calc(50% - 20px);
    background-color: #D7EDFA;
    background-image: none;
  }
}

.headMenuItem--btn {
  line-height: 70px;
  width: 228px;
  background-color: #ED940E;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  border-radius: 35px;
  margin: 0 10px;
}

.headMenuItem--btn img {
  width: 25.5px;
  display: inline-block;
  margin-right: 10px;
}

.headMenuItem--btn:hover {
  -webkit-filter: brightness(0.95);
          filter: brightness(0.95);
}

@media screen and (max-width: 1024px) {
  .headMenuItem--btn {
    line-height: 70px;
    margin-left: 0px;
    width: calc((100% - 0px) / 2);
    border-radius: 0px;
    margin-inline: 0;
  }
  .headMenuItem--btn::before, .headMenuItem--btn::after {
    display: none;
  }
}

.headMenuItem--btn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}

.headMenuItem--btn a:hover {
  color: #fff;
}

.headMenuItem--download {
  margin-left: 12px;
  background-color: #D7EDFA;
}

.headMenuItem--download img {
  width: 27.5px;
}

@media screen and (max-width: 1024px) {
  .headMenuItem--download {
    margin-left: 0px;
  }
}

.headMenuItem--download a {
  color: #00244B;
}

.headMenuItem--download a:hover {
  color: #00244B;
}

.headMenuItem-in {
  position: relative;
  margin-right: 30px;
}

.headMenuItem-in a, .headMenuItem-in span {
  padding: 0;
}

.headMenuItem-in::after {
  position: absolute;
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  border-left: 2px solid #00244B;
  border-bottom: 2px solid #00244B;
  -webkit-transform: rotate(-45deg) translateY(-3px);
          transform: rotate(-45deg) translateY(-3px);
  right: -20px;
  top: calc(50% - 5px);
}

@media screen and (max-width: 1024px) {
  .headMenuItem-in {
    margin-right: auto;
  }
  .headMenuItem-in::after {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .headMenuItem-in::before {
    display: none;
  }
}

.headMenuItem-in:hover .headMenuItemInner {
  display: block;
  opacity: 1;
  pointer-events: all;
}

.headMenuItem-in:hover .headMenuItemInner a {
  display: block;
  pointer-events: all;
}

.headMenuItemInner {
  position: absolute;
  width: 320px;
  top: 25px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 0;
  display: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  pointer-events: none;
}

.headMenuItemInner .headInnerLinkCover {
  background-color: #fff;
  margin-top: 20px;
  position: relative;
  border-radius: 30px;
  padding: 20px 30px;
  -webkit-box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.11);
          box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.11);
}

@media screen and (max-width: 1024px) {
  .headMenuItemInner .headInnerLinkCover {
    -webkit-box-shadow: unset;
            box-shadow: unset;
  }
}

.headMenuItemInner .headInnerLinkCover a {
  padding: 10px 0px;
  color: #333;
  pointer-events: all;
}

@media screen and (max-width: 1024px) {
  .headMenuItemInner .headInnerLinkCover a {
    padding: 15px 0px;
    color: #fff;
  }
}

.headMenuItemInner a {
  display: block;
  font-weight: bold;
  padding: 12px 0px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  pointer-events: none;
  transition: 0.3s;
  text-align: left;
  font-size: 14px;
}

@media screen and (max-width: 1024px) {
  .headMenuItemInner a {
    font-size: 13px;
  }
}

.headMenuItemInner a:hover {
  background-color: #fff;
  color: #006ba9;
  pointer-events: all;
}

@media screen and (max-width: 1024px) {
  .headMenuItemInner a:hover {
    background-color: unset;
  }
}

@media screen and (max-width: 1024px) {
  .headMenuItemInner {
    position: relative;
    width: 100%;
    top: auto;
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    border: 0px;
  }
  .headMenuItemInner .headInnerLinkCover {
    background-color: transparent;
    margin-top: 0px;
    position: relative;
    border-radius: 0px;
    padding: 0 0 0 20px;
    margin-bottom: 0px;
  }
  .headMenuItemInner a {
    display: block;
    font-weight: bold;
    padding: 10px 0px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    pointer-events: none;
    transition: 0.3s;
    text-align: left;
    font-size: 13px;
    line-height: 1.5;
    color: #fff;
    position: relative;
  }
  .headMenuItemInner a::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 12px;
    height: 10px;
    background-image: url(../img/connect-common/productItem-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: calc(50% - 5px);
    right: 15px;
    z-index: 3;
  }
  .headMenuItemInner a::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    right: 0;
    top: calc(50% - 20px);
    background-color: #D7EDFA;
  }
}

.sp_header_menu {
  display: none;
}

@media screen and (max-width: 1024px) {
  .sp_header_menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    z-index: 9;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    color: #D7EDFA;
    background: #006fab;
    background: -webkit-gradient(linear, left top, left bottom, from(#006fab), to(#0e3561));
    background: -webkit-linear-gradient(top, #006fab 0%, #0e3561 100%);
    background: linear-gradient(180deg, #006fab 0%, #0e3561 100%);
    font-size: 13px;
    font-weight: 500;
  }
}

.sp_header_menu .inTxt {
  position: relative;
  padding-top: 10px;
}

.sp_header_menu .inTxt::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #D7EDFA;
  top: 0;
  left: calc(50% - 3.5px);
}

.sp_header_menu .inTxt--open {
  display: block;
}

.sp_header_menu .inTxt--close {
  display: none;
}

.sp_header_menu.sphead_on .inTxt--open {
  display: none;
}

.sp_header_menu.sphead_on .inTxt--close {
  display: block;
}

.sphead_on {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.footer {
  position: relative;
  width: 100%;
  background-color: #fff;
}

.footerInfo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 75px;
  padding-bottom: 90px;
  position: relative;
}

@media screen and (max-width: 1024px) {
  .footerInfo {
    display: block;
    padding-top: 45px;
    padding-bottom: 45px;
  }
}

@media screen and (max-width: 1024px) {
  .footerlogoArea {
    display: block;
  }
}

.logoAreaTxt {
  font-size: 14px;
  font-weight: 900;
  margin-right: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .logoAreaTxt {
    font-size: 11px;
    margin-right: 0px;
    text-align: center;
  }
}

.footLogo {
  width: 291px;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
}

.footLogo:hover {
  opacity: 0.8;
}

@media screen and (max-width: 1024px) {
  .footLogo {
    display: block;
    width: 50vw;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .footLogo {
    width: 257px;
  }
}

.footLogo img {
  width: 257px;
}

@media screen and (max-width: 767px) {
  .footLogo img {
    width: 200px;
  }
}

.footLinkArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 1024px) {
  .footLinkArea {
    text-align: center;
    margin-top: 30px;
  }
}

@media screen and (max-width: 767px) {
  .footLinkArea {
    display: block;
  }
}

.footLinkItem {
  font-size: 14px;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  text-decoration: underline;
}

.footLinkItem:hover {
  color: #1796b5;
}

@media screen and (max-width: 767px) {
  .footLinkItem {
    font-size: 11px;
  }
}

.footerAddress {
  margin-left: 45px;
}

@media screen and (max-width: 1024px) {
  .footerAddress {
    margin-left: 0px;
    margin-top: 20px;
    text-align: center;
  }
}

.footCopy {
  font-size: 11px;
  margin-left: 25px;
}

@media screen and (max-width: 767px) {
  .footCopy {
    margin-left: 0;
    margin-top: 10px;
    text-align: center;
    padding-bottom: 100px;
  }
}

.fixBtnArea {
  display: none;
}

@media screen and (max-width: 1024px) {
  .fixBtnArea {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    z-index: 99;
    bottom: 3px;
    left: 3px;
    width: calc(100% - 6px);
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .fixBtnArea .fixBtn-tel {
    width: calc((100% - 3px)/2);
    background-color: #fff;
    height: 59px;
    border: 1px solid #f6e2db;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .fixBtnArea .fixBtn-tel img {
    width: 14px;
    display: inline-block;
    margin-right: 10px;
  }
  .fixBtnArea .fixBtn-tel .fixBtn-telInner {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  .fixBtnArea .fixBtn-tel .fixBtnTtl {
    font-size: 16px;
    letter-spacing: 0.1em;
    display: block;
    font-weight: 700;
    line-height: calc(40/32);
  }
  .fixBtnArea .fixBtn-tel .fixBtnTxt {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
    font-size: 10px;
    display: inline-block;
  }
  .fixBtnArea .fixBtn-web {
    background-color: #f6e2db;
    width: calc((100% - 3px)/2);
    height: 59px;
    color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .fixBtnArea .fixBtn-web img {
    width: 17px;
    display: inline-block;
    margin-right: 10px;
  }
  .fixBtnArea .fixBtn-web .fixBtn-webInner {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  .fixBtnArea .fixBtn-web .fixBtnTtl {
    font-size: 13px;
    letter-spacing: 0.2em;
    display: block;
    font-weight: 700;
    line-height: calc(26/24);
  }
  .fixBtnArea .fixBtn-web .fixBtnTxt {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
    font-size: 10px;
    display: inline-block;
  }
}

/* 

.c-pankuz {
  font-size: 14px;
  position: absolute;
  top: 20px;
  left: 0;
}

@media screen and (max-width: 1024px) {
  .c-pankuz {
    font-size: 12px;
  }
}

.c-pankuz ul li {
  display: inline-block;
  line-height: 1.2;
  margin-right: 10px;
  color: #1796b5;
}

.c-pankuz ul li + li::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  -webkit-transform: translateX(-9px) translateY(0px) rotate(45deg);
          transform: translateX(-9px) translateY(0px) rotate(45deg);
}

.c-pankuz ul li a {
  color: #333;
  display: inline-block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.c-pankuz ul li a:hover {
  color: #1796b5;
}

.c-catch {
  font-size: 40px;
  line-height: 2;
  margin-bottom: 40px;
}

@media screen and (max-width: 1024px) {
  .c-catch {
    font-size: 30px;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .c-catch {
    font-size: 21.5px;
    line-height: calc(74 / 43);
    margin-bottom: 20px;
    white-space: wrap;
  }
} */





.sec-linkListArea {
  margin-top: 100px;
  margin-bottom: 150px;
}

@media screen and (max-width: 767px) {
  .sec-linkListArea {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}

.linkListTtl {
  font-size: 26px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .linkListTtl {
    font-size: 20px;
    margin-bottom: 20px;
  }
}

.linkList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.linkItem {
  width: calc((100% - 60px) / 4);
  width: calc((100% - 60px) / 3);
}

@media screen and (max-width: 767px) {
  .linkItem {
    width: calc((100% - 20px) / 2);
  }
  .linkItem:nth-child(n + 3) {
    margin-top: 20px;
  }
}

.linkItemTtl {
  font-size: 20px;
  position: relative;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .linkItemTtl {
    font-size: 16px;
    margin-top: 5px;
  }
}

.linkItemTtl::after {
  content: "";
  display: inline-block;
  background-image: url(../img/common/arrow.png);
  width: 15px;
  height: 12px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin-left: 10px;
}

.linkItemImg img {
  vertical-align: top;
}

.pageLinkCover {
  margin-top: -120px;
  padding-top: 120px;
}

@media screen and (max-width: 1199px) {
  .pageLinkCover {
    margin-top: -60px;
    padding-top: 60px;
  }
}

[data-aos="fade-up"] {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

[data-aos="fade-up"].aos-animate {
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
  opacity: 1;
}

.linkAreaItem[data-aos="fade-up"] {
  -webkit-transform: translateY(15px);
  transform: translateY(15px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.linkAreaItem[data-aos="fade-up"].aos-animate {
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
  opacity: 1;
}

.c-btn-view[data-aos="fade-left"] {
  -webkit-transform: translateX(8px);
  transform: translateX(8px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.c-btn-view[data-aos="fade-left"].aos-animate {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1;
}

.linkAreaDecoBg[data-aos="fade-left"] {
  -webkit-transform: translateX(200px);
  transform: translateX(200px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
  overflow-x: hidden;
}

.linkAreaDecoBg[data-aos="fade-left"].aos-animate {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1;
}

.bannerAreaTtlBox[data-aos="fade-left"] {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.bannerAreaTtlBox[data-aos="fade-left"].aos-animate {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1;
}

.bannerAreaBg[data-aos="fade-right"] {
  -webkit-transform: translateX(-100px);
  transform: translateX(-100px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
  overflow-x: hidden;
}

.bannerAreaBg[data-aos="fade-right"].aos-animate {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1;
}

.footerContactBg[data-aos="fade-right"] {
  -webkit-transform: translateX(-100px);
  transform: translateX(-100px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
  overflow-x: hidden;
}

.footerContactBg[data-aos="fade-right"].aos-animate {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1;
}

[data-aos="fade-left"] {
  -webkit-transform: translateX(20px);
          transform: translateX(20px);
  opacity: 0;
}

[data-aos="fade-right"] {
  -webkit-transform: translateX(-20px);
          transform: translateX(-20px);
  opacity: 0;
}

.scrollCover {
  position: absolute;
  bottom: 0;
  left: 7.3%;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .scrollCover {
    display: none;
  }
}

.scrollTxt {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #a54726;
  font-size: 12px;
  letter-spacing: 0;
  line-height: calc(34/12);
}

.scrollBarCover {
  height: 70px;
  width: 1px;
  overflow: hidden;
  margin: 10px auto 0;
}

.scrollBar {
  height: 70px;
  width: 1px;
  background-color: #a54726;
  -webkit-animation: scrollAction 3s infinite;
  animation: scrollAction 3s infinite;
}

@-webkit-keyframes scrollAction {
  0% {
    -webkit-transform: translateY(-70px);
    transform: translateY(-70px);
  }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  70% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(70px);
    transform: translateY(70px);
  }
}

@keyframes scrollAction {
  0% {
    -webkit-transform: translateY(-70px);
    transform: translateY(-70px);
  }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  70% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(70px);
    transform: translateY(70px);
  }
}

.pageTopCover {
  position: absolute;
  top: 0;
  left: 30px;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .pageTopCover {
    display: none;
  }
}

.pageTopTxt {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #a54726;
  font-size: 12px;
  letter-spacing: 0;
  line-height: calc(34/12);
}

.pageTopBarCover {
  height: 70px;
  width: 1px;
  overflow: hidden;
  margin: 0px auto 10px;
}

.pageTopBar {
  height: 70px;
  width: 1px;
  background-color: #a54726;
  -webkit-animation: pageTopAction 3s infinite;
  animation: pageTopAction 3s infinite;
}

@-webkit-keyframes pageTopAction {
  0% {
    -webkit-transform: translateY(70px);
    transform: translateY(70px);
  }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  70% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-70px);
    transform: translateY(-70px);
  }
}

@keyframes pageTopAction {
  0% {
    -webkit-transform: translateY(70px);
    transform: translateY(70px);
  }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  70% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-70px);
    transform: translateY(-70px);
  }
}

.c-contentBox {
  background-color: #faf7f5;
  padding: 80px 100px;
  margin-top: 70px;
  margin-bottom: 200px;
}

@media screen and (max-width: 767px) {
  .c-contentBox {
    padding: 20px 10px;
    margin-top: 40px;
    margin-bottom: 60px;
  }
}

.c-contentBoxTtl {
  font-size: 24px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .c-contentBoxTtl {
    font-size: 18px;
    margin-bottom: 20px;
  }
}

.c-contentItem + .c-contentItem {
  margin-top: 20px;
}

.sec-contatct {
  padding: 150px 0 165px;
}

@media screen and (max-width: 767px) {
  .sec-contatct {
    padding: 43px 0 55px;
  }
}

.contactInner {
  padding: 0 35px;
}

.contactTtl {
  text-align: center;
  font-size: 60px;
  color: #1796b5;
  line-height: 2;
}

@media screen and (max-width: 1024px) {
  .contactTtl {
    font-size: 7vw;
  }
}

@media screen and (max-width: 767px) {
  .contactTtl {
    font-size: 40px;
    line-height: 1.5;
  }
}

.contactxt {
  text-align: center;
}

.contacBtnCover .c-btn--contact {
  margin: 0 auto;
  width: 100%;
  max-width: 500px;
  height: 100px;
  margin-top: 35px;
}

@media screen and (max-width: 1024px) {
  .contacBtnCover .c-btn--contact {
    max-width: 400px;
    height: 120px;
  }
}

@media screen and (max-width: 767px) {
  .contacBtnCover .c-btn--contact {
    height: 75px;
    margin-top: 20px;
  }
}

.contacBtnCover .c-btn--contact .txt {
  font-size: 14px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .contacBtnCover .c-btn--contact .txt {
    font-size: 12.5px;
  }
}

.contacBtnCover .c-btn--contact .num {
  font-size: 36px;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .contacBtnCover .c-btn--contact .num {
    font-size: 29px;
  }
}

.contacBtnCover .c-btn--contact .num img {
  display: inline-block;
  margin-right: 10px;
  width: 28px;
}

@media screen and (max-width: 767px) {
  .contacBtnCover .c-btn--contact .num img {
    width: 24px;
  }
}

.contacBtnCover .c-btn--contact .num img.icon_tel-blue {
  display: none;
}

.contacBtnCover .c-btn--contact:hover img.icon_tel-wh {
  display: none;
}

.contacBtnCover .c-btn--contact:hover img.icon_tel-blue {
  display: inline-block;
}

.pageLinkArea {
  background-color: #fff;
  padding-top: 5.20833vw;
  padding-bottom: 5.20833vw;
}

@media screen and (max-width: 1024px) {
  .pageLinkArea {
    padding-top: 20vw;
    padding-bottom: 15.33333vw;
  }
}

.pageLinkAreaInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 1024px) {
  .pageLinkAreaInner {
    display: block;
    padding: 0 37.5px;
  }
}

.pageLinkItem {
  width: calc((100% - 55px) / 2);
  position: relative;
  display: block;
  border-radius: 10px;
  overflow: hidden;
  z-index: 2;
}

.pageLinkItem:hover .pageLinkItemBg img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

@media screen and (max-width: 1024px) {
  .pageLinkItem {
    width: 100%;
    border-radius: 5px;
  }
  .pageLinkItem + .pageLinkItem {
    margin-top: 20px;
  }
}

.pageLinkItem .pageLinkItemBg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.pageLinkItem .pageLinkItemBg img {
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: top;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.pageLinkItem .pageLinkItemTtl {
  background-color: rgba(23, 150, 181, 0.8);
  width: 50%;
  color: #fff;
  padding: 50px 50px;
}

@media screen and (max-width: 1024px) {
  .pageLinkItem .pageLinkItemTtl {
    padding: 18px 15px;
  }
}

.pageLinkItem .pageLinkItemTtl .jaTtl {
  font-size: 28px;
  font-weight: bold;
}

@media screen and (max-width: 1024px) {
  .pageLinkItem .pageLinkItemTtl .jaTtl {
    font-size: 18px;
  }
}

.pageLinkItem .pageLinkItemTtl .enTtl {
  font-size: 14px;
  text-transform: uppercase;
}

@media screen and (max-width: 1024px) {
  .pageLinkItem .pageLinkItemTtl .enTtl {
    font-size: 10px;
  }
}

.pageLinkItem--recruit .pageLinkItemTtl {
  background-color: rgba(44, 163, 154, 0.8);
}

.contactLinkArea {
  position: relative;
  z-index: 3;
  margin-top: 160px;
}

@media screen and (max-width: 767px) {
  .contactLinkArea {
    margin-top: 100px;
  }
}

.contactLinkAreaInner {
  padding: 0 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .contactLinkAreaInner {
    display: block;
  }
}

.contactLinkItem {
  width: calc((100% - 40px) / 2);
  height: 265px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px;
  background-color: #006FAB;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.contactLinkItem--file {
  background-color: #0FB29D;
}

@media screen and (max-width: 767px) {
  .contactLinkItem--file {
    margin-top: 10px;
  }
}

@media screen and (max-width: 1024px) {
  .contactLinkItem {
    width: calc((100% - 20px) / 2);
    height: 200px;
  }
}

@media screen and (max-width: 767px) {
  .contactLinkItem {
    width: 100%;
    height: 175px;
  }
}

.contactLinkItem:hover {
  -webkit-filter: brightness(1.07);
          filter: brightness(1.07);
}

.contactLinkItem:hover .contactLinkItemTtl::before {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}

.contactLinkItemTtl {
  text-align: center;
  position: relative;
  padding-bottom: 80px;
  font-size: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  font-size: 900;
}

@media screen and (max-width: 1024px) {
  .contactLinkItemTtl {
    font-size: 18px;
  }
}

@media screen and (max-width: 767px) {
  .contactLinkItemTtl {
    font-size: 16px;
    padding-bottom: 50px;
  }
}

.contactLinkItemTtl img {
  width: 35px;
  display: inline-block;
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  .contactLinkItemTtl img {
    width: 25px;
    margin-right: 5px;
  }
}

.contactLinkItemTtl::before {
  position: absolute;
  display: inline-block;
  content: "";
  background-image: url(../img/connect-common/productItem-arrow.svg);
  width: 19px;
  height: 16px;
  right: calc(50% - 9.5px);
  bottom: 26px;
  z-index: 2;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

@media screen and (max-width: 767px) {
  .contactLinkItemTtl::before {
    width: 12px;
    height: 10px;
    right: calc(50% - 6px);
    bottom: 16px;
  }
}

.contactLinkItemTtl::after {
  position: absolute;
  display: inline-block;
  content: "";
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  width: 70px;
  height: 70px;
  right: calc(50% - 35px);
  bottom: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

@media screen and (max-width: 767px) {
  .contactLinkItemTtl::after {
    width: 40px;
    height: 40px;
    right: calc(50% - 20px);
  }
}

.c-secTtl {
  text-align: center;
  position: relative;
}

.c-secTtl .jaTtl {
  display: block;
  font-size: 38px;
  line-height: 1.5;
  font-weight: 900;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 1024px) {
  .c-secTtl .jaTtl {
    font-size: 28px;
  }
}

@media screen and (max-width: 767px) {
  .c-secTtl .jaTtl {
    font-size: 22px;
  }
}

.c-secTtl .enTtl {
  display: block;
  font-size: 15px;
  line-height: 1.7;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-family: 'Outfit', sans-serif;
  margin-top: 10px;
  text-transform: uppercase;
}

.c-secTtl .ttlDeco {
  width: 46px;
  margin: 0 auto 10px;
}

.c-secTtl .ttlDeco img {
  width: 46px;
}

.c-list span {
  margin-top: 10px;
  font-size: 13px;
}

@media screen and (max-width: 767px) {
  .c-list span {
    margin-top: 5px;
    font-size: 10px;
  }
}

.c-listItem {
  background-color: rgba(0, 107, 169, 0.1);
  border-radius: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 25px;
  list-style: none;
}

@media screen and (max-width: 767px) {
  .c-listItem {
    padding: 10px 20px;
    border-radius: 10px;
  }
}

.c-listItem + .c-listItem {
  margin-top: 12px;
}

.c-listItemTtl {
  padding-left: 90px;
  position: relative;
  font-size: 24px;
  font-weight: bold;
  color: #006ba9;
  white-space: nowrap;
  line-height: calc(34 / 24);
}

@media screen and (max-width: 767px) {
  .c-listItemTtl {
    padding-left: 60px;
    font-size: 16px;
  }
}

.c-listItemTtl::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: calc(50% - 31.5px);
  width: 63px;
  height: 63px;
  background-image: url(../img/common/check-wh.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (max-width: 767px) {
  .c-listItemTtl::before {
    width: 40px;
    height: 40px;
    top: calc(50% - 20px);
  }
}

.c-listItemTxt {
  color: #006ba9;
  margin-left: 30px;
}

@media screen and (max-width: 767px) {
  .c-listItemTxt {
    margin-left: 10px;
  }
}

.backList_btnCover {
  text-align: center;
  margin: 50px auto 30px;
}

@media screen and (max-width: 767px) {
  .backList_btnCover {
    margin: 20px auto 20px;
  }
}

.backList_btn {
  color: #1796b5;
  position: relative;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .backList_btn {
    width: 120px;
    line-height: 50px;
    min-width: 0;
  }
}

.backList_btn:hover {
  color: #1796b5;
  position: relative;
  z-index: 3;
}

.single-pageLink-container{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 80px auto 30px;
}

@media screen and (max-width: 767px) {
  .single-pageLink-container{
    margin: 70px auto 20px;
  }
}


.single-btnCover {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .single-btnCover {
  }
}

.pageLink {
  line-height: 60px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  color: #00244B;
  font-size: 18px;
  font-weight: bold;
}



@media screen and (max-width: 767px) {
  .pageLink {
    line-height: 40px;
    font-size: 14px;
  }
}
.pageLink:hover {
opacity: 0.7;
}

.pageLink-next {
  text-align: right;
  flex-shrink: 0;
}

@media screen and (max-width: 767px) {
  .pageLink-next {
  }
}

.pageLink-prev {
  text-align: left;
  flex-shrink: 0;
}

@media screen and (max-width: 767px) {
  .pageLink-prev {
  }
}

.pageLink-prev a {
  display: inline-block;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  color: #00244B;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 1024px) {
  .pageLink-prev a {
    font-size: 14px;
  }
}
.pageLink-prev a::before {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  content: "";
  display: inline-block;
  position: relative;
  background-image: url(../img/connect-common/icon-arrow.svg);
  width: 12px;
  height: 11px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  top: calc(50% - 7px);
  -webkit-transform: scale(-1, 1) translateY(-2px);
  transform: scale(-1, 1) translateY(-2px);
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  .pageLink-prev a::before {
    -webkit-transform: scale(-1, 1) translateY(0);
    transform: scale(-1, 1) translateY(0);
  }
}

.pageLink-prev a:hover {
  opacity: 0.7;
}

.pageLink-prev a:hover::before {

}

.pageLink-next a {
  display: inline-block;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  color: #00244B;
  font-size: 18px;
  font-weight: bold;
}

@media screen and (max-width: 1024px) {
  .pageLink-next a {
    font-size: 14px;
  }
}

.pageLink-next a::after {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  content: "";
  display: inline-block;
  position: relative;
  background-image: url(../img/connect-common/icon-arrow.svg);
  width: 12px;
  height: 11px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  /* top: calc(50% - 7px); */
  margin-left: 10px;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

@media screen and (max-width: 767px) {
  .pageLink-next a::after {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.pageLink-next a:hover {
  opacity: 0.7;
}

.pageLink-next a:hover::after {
  /* -webkit-transform: translateX(3px);
          transform: translateX(3px); */
}

/* ページャー */
.wp-pagenavi {
  text-align: center;
  margin-top: 112px;
  margin-bottom: 40px;
  color: #fff;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: 'Outfit', sans-serif;
}

@media screen and (max-width: 767px) {
  .wp-pagenavi {
    margin-top: 50px;
  }

}

.wp-pagenavi .page {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #00244B;
  text-decoration: none;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background-color: transparent;
  margin: 0 6px;
  background-color: rgba(215, 237, 250, 0.30);
}

.wp-pagenavi .page:hover {
  color: #fff;
  background-color: #006FAB;
}

.wp-pagenavi .current {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background-color: #006FAB;
  margin: 0 6px;
}

.wp-pagenavi .extend {
color: #00244B;
}

.wp-pagenavi .extend:last-of-type {
  display: none;
}

.pages {
  display: none;
}

.previouspostslink, .nextpostslink {
  margin: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 0;
  border: 0px !important;
  position: absolute;
}

.previouspostslink {
  left: 0;
}

.nextpostslink {
  right: 0;
}

a.last, a.first {
  display: none;
}

.bg_blue{
  background: rgba(215, 237, 250, 0.3);
}

.marker-yellow{
  background: linear-gradient(
    transparent 75%,
    #FFF67F 75%
  );
}

.marker-orange{
  background: linear-gradient(
    transparent 75%,
    #FAC56A 75%
  );
}




.productList {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(580px, 1fr));
  gap: 64px 40px; 
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .productList {
    margin-top: 40px;
    grid-template-columns: 1fr;
    gap: 30px 0;
  }
}

.productItem {
  position: relative;
  /* border-radius: 20px; */
  overflow: hidden;
  display: grid;
    grid-template-rows: auto 1fr;
    align-items: stretch;
}
@media screen and (max-width: 1199px) {
  .productItem {
 
  }
}

@media screen and (max-width: 1024px) {
  .productItem {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
  .productItem + .productItem {
    /* margin-top: 40px; */
  }
}
@media screen and (max-width: 1024px) and (max-width: 767px) {
  .productItem + .productItem {
  }
}
.productItem:nth-child(n+3) {
}
@media screen and (max-width: 1199px) {
  .productItem:nth-child(n+3) {
   
  }
}
@media screen and (max-width: 767px) {
  .productItem:nth-child(n+3) {

  }
}

@media screen and (max-width: 767px) {
  .productItem::after {
    width: 40px;
    height: 40px;
    bottom: 25px;
    right: 25px;
  }
}

.productItem:hover{

}

.productItem:hover .productItemImg {
  /* filter: brightness(0.7); */
  border:4px solid #006FAB;
  border-bottom: none;  
}
.productItem:hover .productItemImg img {
  transform: scale(1.03);  
}
.productItem:hover .productItemInfo::before {
  background-image: url(../img/connect-common/productItem-arrow-wh.svg);
  background-repeat: no-repeat;
  transition-duration: 0.3s;
}
.productItem:hover .productItemInfo::after  {
  background: rgb(0, 111, 171);
  background: linear-gradient(270deg, rgb(0, 111, 171) 0%, rgb(14, 53, 97) 100%);
  transform: translate(0, -50%) rotate(180deg);
  transition-duration: 0.3s;
}

.productItem .tag_coming-soon {
  position: absolute;
  font-size: 12px;
  display: inline-block;
  top: 0;
  left:32px;
  background-color: #0FB29D;
  color: #fff;
  z-index: 3;
  padding: 8px 12px;
  border-radius:0 0 10px 10px;
}



.productItem--commingsoon {
  pointer-events: none;
}
.productItem--commingsoon::before {
  display: none;
}
.productItem--commingsoon::after {
  display: none;
}
.productItem--commingsoon .productItemTtl {
  position: relative;
}
.productItem--commingsoon span {
  position: absolute;
  font-size: 12px;
  display: inline-block;
  top: -20px;
  left: 0;
}

.productItemImg, .productItemInfo {
  /* flex: 1; */
  display: flex;
  justify-content: center;
}

.productItemImg {
  /* position: absolute; */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition-duration: 0.3s;
  border:4px solid #fff;
  border-bottom: none;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}
.productItemImg img {
  vertical-align: top;
  -o-object-fit: cover;
     object-fit: cover;
  transition-duration: 0.3s;

}



.productItemInfo {
  position: relative;
  z-index: 2;
  color: #fff;
  background-color: #006FAB;
  border:4px solid #006FAB;
  border-radius: 0 0 20px 20px;
  padding: 25px 130px 25px 32px;
  flex-direction: column;
}

@media screen and (max-width: 767px){
  .productItemInfo {
   padding: 20px 100px 20px 20px;
  }
}

.productItemInfo::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  height: 16px;
  background-image: url(../img/connect-common/productItem-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  right: 65px;
  transform: translate(0, -50%);
  z-index: 3;
}
@media screen and (max-width: 1199px) {
  .productItemInfo::before {
    bottom: 45px;
    right: 45px;
  }
}
@media screen and (max-width: 767px) {
  .productItem::before {
    width: 12px;
    height: 10px;
    bottom: 40px;
    right: 40px;
  }
}

.productItemInfo::after {
  content: "";
  position: absolute;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.7);
  transition-duration: 0.3s;
   top: 50%;
  right: 40px;
  transform: translate(0, -50%);
  z-index: 2;
}
@media screen and (max-width: 1199px) {
  .productItemInfo::after {
    bottom: 20px;
    right: 20px;
  }
}

.productItemTtl {
  font-size: 24px;
  font-weight: bold;
  /* margin-top: 20px; */
  margin-bottom: 10px;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .productItemTtl {
    font-size: 16px;
    margin-bottom: 5px;
  }
}

.productItemTxt {
  font-size: 14px;
  max-width: 410px;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .productItemTxt {
    font-size: 13px;
    /* padding-right: 60px; */
  }
}





/* 追従タブ（資料ダウンロード） */
.fixed-tab {
  position: fixed;
  right: 0;
  top: 30%;
  /* transform: translateY(-50%); */
  z-index: 1000;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

@media screen and (max-width: 1024px) {
  .fixed-tab {
    right: 10px;
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .fixed-tab {
    right: 5px;
    top: 40%;
  }
}

  .fixed-tab-link {
    display: flex;
    border-radius: 20px 0 0 20px;
    border-top: 4px solid #E8ECF0;
    border-bottom: 4px solid #E8ECF0;
    border-left: 4px solid #E8ECF0;
  background: linear-gradient(135deg, #018CD7 0%, #004695 100%);
  color: #fff;
  text-decoration: none;
  padding: 30px 30px 30px 24px;
    transition: all 0.4s ease;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
  letter-spacing: 0.17em;
  transform: translatex(5px);
}

@media screen and (max-width: 1024px) {
  .fixed-tab-link {
    padding: 15px 12px;
    font-size: 14px;
  }
}

@media screen and (max-width: 767px) {
  .fixed-tab-link {
    padding: 12px 10px;
    font-size: 13px;
    border-radius: 8px 0 0 8px;
  }
} 


  .fixed-tab-link:hover {
    /* background: linear-gradient(45deg, #018CD7 0%, #004695 100%); */
    opacity: 0.9;
    transform: translatex(0);
    text-decoration: none;
  }

.fixed-tab-icon {
  display: block;
  width: 24px;
  height: 24px;
  margin: 0 auto 8px;
  background-size: contain;
}

@media screen and (max-width: 1024px) {
  .fixed-tab-icon {
    width: 20px;
    height: 20px;
    margin-bottom: 8px;
  }
}

@media screen and (max-width: 767px) {

  .fixed-tab-icon {
    width: 18px;
    height: 18px;
    margin-bottom: 6px;
  }
}