@charset "UTF-8";
/*-----------------------
reset
-----------------------*/
*:focus {
  outline: none;
}

*, *:before, *:after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html, body, div, span, applet, object, iframe, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
}

:where(body) {
  line-height: 1.5;
}

address {
  font-style: inherit;
}

q::before, q::after, blockquote::before, blockquote::after {
  content: "";
  content: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img) {
  max-width: 100%;
  border: none;
  vertical-align: bottom;
}

:where(ul, ol) {
  list-style: none;
}

article, aside, details, figcaption, figure, footer, header, main, hgroup, menu, nav, section {
  display: block;
}

:where(summary) {
  display: list-item;
}

a {
  border: none;
  color: inherit;
  text-decoration: none;
  text-underline-offset: 0.2ex;
}

:where(a:link, a:active, a:visited, a:hover) {
  color: inherit;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem); /* 見出しの行の高さを減らす */
}

:where(p) {
  margin: 0;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
}

:where(hr) {
  border: none;
  -webkit-border-before: 1px solid;
          border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

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

:where(caption, th, td) {
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
}

/*color*/
/*mediaquery*/
/* function */
/*mixin*/
@font-face {
  font-family: "M PLUS 1p";
  font-weight: 400;
  font-display: swap;
  src: url(../font/M_PLUS_1p/MPLUS1p-Regular.ttf) format("truetype");
}
@font-face {
  font-family: "M PLUS 1p";
  font-weight: 500;
  font-display: swap;
  src: url(../font/M_PLUS_1p/MPLUS1p-Medium.ttf) format("truetype");
}
@font-face {
  font-family: "M PLUS 1p";
  font-weight: 700;
  font-display: swap;
  src: url(../font/M_PLUS_1p/MPLUS1p-Bold.ttf) format("truetype");
}
/*-----------------------
base
-----------------------*/
html {
  font-size: 62.5%;
  line-height: 1;
  margin-top: 0 !important;
  scrollbar-width: thin;
  overflow-x: hidden;
}

body {
  color: #000000;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  letter-spacing: 0;
  line-height: 1.6875;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: normal;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  position: relative;
}
@media (min-width: 751px) and (max-width: 1024px) {
  body {
    /* tab */
  }
}
@media (max-width: 750px) {
  body {
    /* sp */
    font-size: 4.0712468193vw;
  }
}

main {
  padding-bottom: 20rem;
}
@media (max-width: 750px) {
  main {
    padding-bottom: 25.4452926209vw;
  }
}

/*-----------------------
tag
-----------------------*/
section {
  margin-block: 12rem;
}
@media (max-width: 750px) {
  section {
    margin-block: 15.2671755725vw;
  }
}

.section-margin {
  margin-block: 12rem;
}
@media (max-width: 750px) {
  .section-margin {
    margin-block: 15.2671755725vw;
  }
}

.section-padding {
  padding-block: 12rem;
}
@media (max-width: 750px) {
  .section-padding {
    padding-block: 15.2671755725vw;
  }
}

:where(p) {
  line-height: 2;
}

picture {
  display: contents;
}

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

a {
  color: inherit;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
a:hover {
  opacity: 0.6;
}

blockquote {
  font-size: 100%;
}

embed,
iframe,
object {
  max-width: 100%;
}

details summary {
  list-style-type: none;
  cursor: pointer;
  position: relative;
}
details summary::-webkit-details-marker {
  display: none;
}
/*-----------------------
common
-----------------------*/
.inner {
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
}
@media (max-width: 750px) {
  .inner {
    width: 92%;
  }
}

/* margin */
/* Top */
.mT0 {
  margin-top: 0;
}

.mT10 {
  margin-top: 1rem;
}
@media (max-width: 750px) {
  .mT10 {
    margin-top: 1.272264631vw;
  }
}

.mT20 {
  margin-top: 2rem;
}
@media (max-width: 750px) {
  .mT20 {
    margin-top: 2.5445292621vw;
  }
}

.mT30 {
  margin-top: 3rem;
}
@media (max-width: 750px) {
  .mT30 {
    margin-top: 3.8167938931vw;
  }
}

.mT40 {
  margin-top: 4rem;
}
@media (max-width: 750px) {
  .mT40 {
    margin-top: 5.0890585242vw;
  }
}

.mT50 {
  margin-top: 5rem;
}
@media (max-width: 750px) {
  .mT50 {
    margin-top: 6.3613231552vw;
  }
}

.mT60 {
  margin-top: 6rem;
}
@media (max-width: 750px) {
  .mT60 {
    margin-top: 7.6335877863vw;
  }
}

.mT70 {
  margin-top: 7rem;
}
@media (max-width: 750px) {
  .mT70 {
    margin-top: 8.9058524173vw;
  }
}

.mT80 {
  margin-top: 8rem;
}
@media (max-width: 750px) {
  .mT80 {
    margin-top: 10.1781170483vw;
  }
}

.mT90 {
  margin-top: 9rem;
}
@media (max-width: 750px) {
  .mT90 {
    margin-top: 11.4503816794vw;
  }
}

.mT100 {
  margin-top: 10rem;
}
@media (max-width: 750px) {
  .mT100 {
    margin-top: 12.7226463104vw;
  }
}

.mT110 {
  margin-top: 11rem;
}
@media (max-width: 750px) {
  .mT110 {
    margin-top: 13.9949109415vw;
  }
}

.mT120 {
  margin-top: 12rem;
}
@media (max-width: 750px) {
  .mT120 {
    margin-top: 15.2671755725vw;
  }
}

.mT130 {
  margin-top: 13rem;
}
@media (max-width: 750px) {
  .mT130 {
    margin-top: 16.5394402036vw;
  }
}

.mT140 {
  margin-top: 14rem;
}
@media (max-width: 750px) {
  .mT140 {
    margin-top: 17.8117048346vw;
  }
}

.mT150 {
  margin-top: 15rem;
}
@media (max-width: 750px) {
  .mT150 {
    margin-top: 19.0839694656vw;
  }
}

.mT160 {
  margin-top: 16rem;
}
@media (max-width: 750px) {
  .mT160 {
    margin-top: 20.3562340967vw;
  }
}

.mT170 {
  margin-top: 17rem;
}
@media (max-width: 750px) {
  .mT170 {
    margin-top: 21.6284987277vw;
  }
}

.mT180 {
  margin-top: 18rem;
}
@media (max-width: 750px) {
  .mT180 {
    margin-top: 22.9007633588vw;
  }
}

.mT190 {
  margin-top: 19rem;
}
@media (max-width: 750px) {
  .mT190 {
    margin-top: 24.1730279898vw;
  }
}

.mT200 {
  margin-top: 20rem;
}
@media (max-width: 750px) {
  .mT200 {
    margin-top: 25.4452926209vw;
  }
}

/* Bottom */
.mB0 {
  margin-bottom: 0;
}

.mB10 {
  margin-bottom: 1rem;
}
@media (max-width: 750px) {
  .mB10 {
    margin-bottom: 1.272264631vw;
  }
}

.mB20 {
  margin-bottom: 2rem;
}
@media (max-width: 750px) {
  .mB20 {
    margin-bottom: 2.5445292621vw;
  }
}

.mB30 {
  margin-bottom: 3rem;
}
@media (max-width: 750px) {
  .mB30 {
    margin-bottom: 3.8167938931vw;
  }
}

.mB40 {
  margin-bottom: 4rem;
}
@media (max-width: 750px) {
  .mB40 {
    margin-bottom: 5.0890585242vw;
  }
}

.mB50 {
  margin-bottom: 5rem;
}
@media (max-width: 750px) {
  .mB50 {
    margin-bottom: 6.3613231552vw;
  }
}

.mB60 {
  margin-bottom: 6rem;
}
@media (max-width: 750px) {
  .mB60 {
    margin-bottom: 7.6335877863vw;
  }
}

.mB70 {
  margin-bottom: 7rem;
}
@media (max-width: 750px) {
  .mB70 {
    margin-bottom: 8.9058524173vw;
  }
}

.mB80 {
  margin-bottom: 8rem;
}
@media (max-width: 750px) {
  .mB80 {
    margin-bottom: 10.1781170483vw;
  }
}

.mB90 {
  margin-bottom: 9rem;
}
@media (max-width: 750px) {
  .mB90 {
    margin-bottom: 11.4503816794vw;
  }
}

.mB100 {
  margin-bottom: 10rem;
}
@media (max-width: 750px) {
  .mB100 {
    margin-bottom: 12.7226463104vw;
  }
}

.mB110 {
  margin-bottom: 11rem;
}
@media (max-width: 750px) {
  .mB110 {
    margin-bottom: 13.9949109415vw;
  }
}

.mB120 {
  margin-bottom: 12rem;
}
@media (max-width: 750px) {
  .mB120 {
    margin-bottom: 15.2671755725vw;
  }
}

.mB130 {
  margin-bottom: 13rem;
}
@media (max-width: 750px) {
  .mB130 {
    margin-bottom: 16.5394402036vw;
  }
}

.mB140 {
  margin-bottom: 14rem;
}
@media (max-width: 750px) {
  .mB140 {
    margin-bottom: 17.8117048346vw;
  }
}

.mB150 {
  margin-bottom: 15rem;
}
@media (max-width: 750px) {
  .mB150 {
    margin-bottom: 19.0839694656vw;
  }
}

.mB160 {
  margin-bottom: 16rem;
}
@media (max-width: 750px) {
  .mB160 {
    margin-bottom: 20.3562340967vw;
  }
}

.mB170 {
  margin-bottom: 17rem;
}
@media (max-width: 750px) {
  .mB170 {
    margin-bottom: 21.6284987277vw;
  }
}

.mB180 {
  margin-bottom: 18rem;
}
@media (max-width: 750px) {
  .mB180 {
    margin-bottom: 22.9007633588vw;
  }
}

.mB190 {
  margin-bottom: 19rem;
}
@media (max-width: 750px) {
  .mB190 {
    margin-bottom: 24.1730279898vw;
  }
}

.mB200 {
  margin-bottom: 20rem;
}
@media (max-width: 750px) {
  .mB200 {
    margin-bottom: 25.4452926209vw;
  }
}

/* padding */
/* Top */
.pT0 {
  padding-top: 0;
}

.pT10 {
  padding-top: 1rem;
}
@media (max-width: 750px) {
  .pT10 {
    padding-top: 1.272264631vw;
  }
}

.pT20 {
  padding-top: 2rem;
}
@media (max-width: 750px) {
  .pT20 {
    padding-top: 2.5445292621vw;
  }
}

.pT30 {
  padding-top: 3rem;
}
@media (max-width: 750px) {
  .pT30 {
    padding-top: 3.8167938931vw;
  }
}

.pT40 {
  padding-top: 4rem;
}
@media (max-width: 750px) {
  .pT40 {
    padding-top: 5.0890585242vw;
  }
}

.pT50 {
  padding-top: 5rem;
}
@media (max-width: 750px) {
  .pT50 {
    padding-top: 6.3613231552vw;
  }
}

.pT60 {
  padding-top: 6rem;
}
@media (max-width: 750px) {
  .pT60 {
    padding-top: 7.6335877863vw;
  }
}

.pT70 {
  padding-top: 7rem;
}
@media (max-width: 750px) {
  .pT70 {
    padding-top: 8.9058524173vw;
  }
}

.pT80 {
  padding-top: 8rem;
}
@media (max-width: 750px) {
  .pT80 {
    padding-top: 10.1781170483vw;
  }
}

.pT90 {
  padding-top: 9rem;
}
@media (max-width: 750px) {
  .pT90 {
    padding-top: 11.4503816794vw;
  }
}

.pT100 {
  padding-top: 10rem;
}
@media (max-width: 750px) {
  .pT100 {
    padding-top: 12.7226463104vw;
  }
}

.pT110 {
  padding-top: 11rem;
}
@media (max-width: 750px) {
  .pT110 {
    padding-top: 13.9949109415vw;
  }
}

.pT120 {
  padding-top: 12rem;
}
@media (max-width: 750px) {
  .pT120 {
    padding-top: 15.2671755725vw;
  }
}

.pT130 {
  padding-top: 13rem;
}
@media (max-width: 750px) {
  .pT130 {
    padding-top: 16.5394402036vw;
  }
}

.pT140 {
  padding-top: 14rem;
}
@media (max-width: 750px) {
  .pT140 {
    padding-top: 17.8117048346vw;
  }
}

.pT150 {
  padding-top: 15rem;
}
@media (max-width: 750px) {
  .pT150 {
    padding-top: 19.0839694656vw;
  }
}

.pT160 {
  padding-top: 16rem;
}
@media (max-width: 750px) {
  .pT160 {
    padding-top: 20.3562340967vw;
  }
}

.pT170 {
  padding-top: 17rem;
}
@media (max-width: 750px) {
  .pT170 {
    padding-top: 21.6284987277vw;
  }
}

.pT180 {
  padding-top: 18rem;
}
@media (max-width: 750px) {
  .pT180 {
    padding-top: 22.9007633588vw;
  }
}

.pT190 {
  padding-top: 19rem;
}
@media (max-width: 750px) {
  .pT190 {
    padding-top: 24.1730279898vw;
  }
}

.pT200 {
  padding-top: 20rem;
}
@media (max-width: 750px) {
  .pT200 {
    padding-top: 25.4452926209vw;
  }
}

/* Bottom */
.pB0 {
  padding-bottom: 0;
}

.pB10 {
  padding-bottom: 1rem;
}
@media (max-width: 750px) {
  .pB10 {
    padding-bottom: 1.272264631vw;
  }
}

.pB20 {
  padding-bottom: 2rem;
}
@media (max-width: 750px) {
  .pB20 {
    padding-bottom: 2.5445292621vw;
  }
}

.pB30 {
  padding-bottom: 3rem;
}
@media (max-width: 750px) {
  .pB30 {
    padding-bottom: 3.8167938931vw;
  }
}

.pB40 {
  padding-bottom: 4rem;
}
@media (max-width: 750px) {
  .pB40 {
    padding-bottom: 5.0890585242vw;
  }
}

.pB50 {
  padding-bottom: 5rem;
}
@media (max-width: 750px) {
  .pB50 {
    padding-bottom: 6.3613231552vw;
  }
}

.pB60 {
  padding-bottom: 6rem;
}
@media (max-width: 750px) {
  .pB60 {
    padding-bottom: 7.6335877863vw;
  }
}

.pB70 {
  padding-bottom: 7rem;
}
@media (max-width: 750px) {
  .pB70 {
    padding-bottom: 8.9058524173vw;
  }
}

.pB80 {
  padding-bottom: 8rem;
}
@media (max-width: 750px) {
  .pB80 {
    padding-bottom: 10.1781170483vw;
  }
}

.pB90 {
  padding-bottom: 9rem;
}
@media (max-width: 750px) {
  .pB90 {
    padding-bottom: 11.4503816794vw;
  }
}

.pB100 {
  padding-bottom: 10rem;
}
@media (max-width: 750px) {
  .pB100 {
    padding-bottom: 12.7226463104vw;
  }
}

.pB110 {
  padding-bottom: 11rem;
}
@media (max-width: 750px) {
  .pB110 {
    padding-bottom: 13.9949109415vw;
  }
}

.pB120 {
  padding-bottom: 12rem;
}
@media (max-width: 750px) {
  .pB120 {
    padding-bottom: 15.2671755725vw;
  }
}

.pB130 {
  padding-bottom: 13rem;
}
@media (max-width: 750px) {
  .pB130 {
    padding-bottom: 16.5394402036vw;
  }
}

.pB140 {
  padding-bottom: 14rem;
}
@media (max-width: 750px) {
  .pB140 {
    padding-bottom: 17.8117048346vw;
  }
}

.pB150 {
  padding-bottom: 15rem;
}
@media (max-width: 750px) {
  .pB150 {
    padding-bottom: 19.0839694656vw;
  }
}

.pB160 {
  padding-bottom: 16rem;
}
@media (max-width: 750px) {
  .pB160 {
    padding-bottom: 20.3562340967vw;
  }
}

.pB170 {
  padding-bottom: 17rem;
}
@media (max-width: 750px) {
  .pB170 {
    padding-bottom: 21.6284987277vw;
  }
}

.pB180 {
  padding-bottom: 18rem;
}
@media (max-width: 750px) {
  .pB180 {
    padding-bottom: 22.9007633588vw;
  }
}

.pB190 {
  padding-bottom: 19rem;
}
@media (max-width: 750px) {
  .pB190 {
    padding-bottom: 24.1730279898vw;
  }
}

.pB200 {
  padding-bottom: 20rem;
}
@media (max-width: 750px) {
  .pB200 {
    padding-bottom: 25.4452926209vw;
  }
}

.sp {
  display: none;
}
@media (max-width: 750px) {
  .sp {
    display: block;
  }
}

.tab {
  display: none;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .tab {
    display: block;
  }
}
@media (max-width: 750px) {
  .tab {
    display: none;
  }
}

@media (min-width: 751px) and (max-width: 1024px) {
  .pc {
    display: block;
  }
}
@media (max-width: 750px) {
  .pc {
    display: none;
  }
}

@media (min-width: 751px) and (max-width: 1024px) {
  .pc-only {
    display: none;
  }
}
@media (max-width: 750px) {
  .pc-only {
    display: none;
  }
}

.tab-sp {
  display: none;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .tab-sp {
    display: block;
  }
}
@media (max-width: 750px) {
  .tab-sp {
    display: block;
  }
}

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

/* font */
.center {
  text-align: center;
}

.right {
  text-align: right;
}

.left {
  text-align: left;
}

.bold {
  font-weight: bold;
}

.medium {
  font-weight: 500;
}

.uppercase {
  text-transform: uppercase;
}

.txt-blue {
  color: #0C7ACE;
}

.x-hidden {
  overflow-x: hidden;
}

.x-clip {
  overflow-x: clip;
}

.slide-in {
  -webkit-transition: 0.7s;
  transition: 0.7s;
  opacity: 0;
}
.slide-in.animation--on {
  opacity: 1;
}
.slide-in {
  -webkit-transform: translate(-10rem, 0);
          transform: translate(-10rem, 0);
}
.slide-in.animation--on {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.slide-in__wrap .slide-unit {
  -webkit-transform: translate(-10rem, 0);
          transform: translate(-10rem, 0);
}
.slide-in__wrap.animation--on .slide-unit {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.slide-in__wrap .slide-unit {
  -webkit-transition: 0.7s;
  transition: 0.7s;
}
.slide-in__wrap .slide-unit:nth-child(1) {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.slide-in__wrap .slide-unit:nth-child(2) {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.slide-in__wrap .slide-unit:nth-child(3) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.slide-in__wrap .slide-unit:nth-child(4) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.slide-in__wrap .slide-unit:nth-child(5) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.slide-in__wrap .slide-unit:nth-child(6) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.slide-in-clip {
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  -webkit-transition: clip-path 0.3s linear 0.7s;
  transition: clip-path 0.3s linear 0.7s;
}
.slide-in-clip.animation--on {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.slide-in-clip__wrap .slide-unit {
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  -webkit-transition: clip-path 0.3s linear 0.7s;
  transition: clip-path 0.3s linear 0.7s;
}
.slide-in-clip__wrap.animation--on .slide-unit {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.slide-in-clip__wrap .slide-unit:nth-child(1) {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.slide-in-clip__wrap .slide-unit:nth-child(2) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.slide-in-clip__wrap .slide-unit:nth-child(3) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.slide-in-clip__wrap .slide-unit:nth-child(4) {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
.slide-in-clip__wrap .slide-unit:nth-child(5) {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}
.slide-in-clip__wrap .slide-unit:nth-child(6) {
  -webkit-transition-delay: 2.5s;
          transition-delay: 2.5s;
}

.fade-up {
  display: block;
  -webkit-transition: 1s;
  transition: 1s;
  opacity: 0;
}
.fade-up.animation--on {
  opacity: 1;
}
.fade-up {
  -webkit-transform: translate(0, 50px);
          transform: translate(0, 50px);
}
.fade-up.animation--on {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fade-up__wrap .fade-unit {
  opacity: 0;
}
.fade-up__wrap.animation--on .fade-unit {
  opacity: 1;
}
.fade-up__wrap .fade-unit {
  -webkit-transform: translate(0, 50px);
          transform: translate(0, 50px);
}
.fade-up__wrap.animation--on .fade-unit {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.fade-up__wrap .fade-unit {
  display: inline-block;
  -webkit-transition: 1s;
  transition: 1s;
}
.fade-up__wrap .fade-unit:nth-child(1) {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.fade-up__wrap .fade-unit:nth-child(2) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.fade-up__wrap .fade-unit:nth-child(3) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.fade-up__wrap .fade-unit:nth-child(4) {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
.fade-up__wrap .fade-unit:nth-child(5) {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}
.fade-up__wrap .fade-unit:nth-child(6) {
  -webkit-transition-delay: 2.5s;
          transition-delay: 2.5s;
}
.fade-up__wrap .fade-unit:nth-child(7) {
  -webkit-transition-delay: 3s;
          transition-delay: 3s;
}
.fade-up__wrap .fade-unit:nth-child(8) {
  -webkit-transition-delay: 3.5s;
          transition-delay: 3.5s;
}
.fade-up__wrap .fade-unit:nth-child(9) {
  -webkit-transition-delay: 4s;
          transition-delay: 4s;
}
.fade-up__wrap .fade-unit:nth-child(10) {
  -webkit-transition-delay: 4.5s;
          transition-delay: 4.5s;
}
.fade-up__wrap .fade-unit:nth-child(11) {
  -webkit-transition-delay: 5s;
          transition-delay: 5s;
}

.loopGallery {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: clip;
  overflow-y: initial;
  position: relative;
  z-index: 5;
}
.loopGallery img {
  width: 100%;
}
.loopGallery img.slide_logo {
  width: 140px;
}
.loopGallery img.slide_logo120 {
  width: 120px;
}
.loopGallery img.slide_logo190 {
  width: 190px;
}
.loopGallery img.slide_logo160 {
  width: 160px;
}
.loopGallery img.slide_logo100 {
  width: 100px;
}
.loopGallery__unit {
  padding-right: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 3rem;
     -moz-column-gap: 3rem;
          column-gap: 3rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  pointer-events: none;
  -webkit-animation: loop-x 20s linear infinite;
          animation: loop-x 20s linear infinite;
}
@media (max-width: 750px) {
  .loopGallery__unit {
    padding-right: 5.0890585242vw;
    -webkit-column-gap: 5.0890585242vw;
       -moz-column-gap: 5.0890585242vw;
            column-gap: 5.0890585242vw;
  }
}

@-webkit-keyframes loop-x {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

@keyframes loop-x {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.svg-symbol {
  display: none;
}

.heading1 {
  margin-bottom: 1.7em;
  font-size: clamp(1.4rem, 3vw, 3rem);
  line-height: 1.4666666667;
}
@media (max-width: 750px) {
  .heading1 {
    margin-bottom: 2em;
    font-size: 5.0890585242vw;
  }
}

.heading2 {
  margin-bottom: 1.6666666667em;
  font-size: clamp(1.4rem, 2.4vw, 2.4rem);
  font-weight: 500;
  line-height: 1.4583333333;
}
@media (max-width: 750px) {
  .heading2 {
    font-size: 4.5801526718vw;
  }
}

:root {
  --btn-color: #fff;
  --btn-color-txt: #0C7ACE;
  --btn-color-hover: #0C7ACE;
  --btn-color-txt-hover: #fff;
}

.btnWrap {
  margin-top: 6rem;
}
@media (max-width: 750px) {
  .btnWrap {
    margin-top: 10.1781170483vw;
  }
}

.btn--right {
  text-align: right;
}
.btn--left {
  text-align: left;
}
.btn--center {
  text-align: center;
}

.btn {
  max-width: 100%;
  min-height: 4em;
  padding-block: 0.3333333333em;
  padding-left: 2.4666666667em;
  padding-right: 5.8666666667em;
  background: var(--btn-color);
  color: var(--btn-color-txt);
  border: 2px solid var(--btn-color-txt);
  border-radius: 20em;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 0.3rem;
     -moz-column-gap: 0.3rem;
          column-gap: 0.3rem;
  position: relative;
  z-index: 2;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 750px) {
  .btn {
    min-width: 17.4666666667em;
    min-height: 4em;
    padding-left: 1.8666666667em;
    padding-right: 5.2em;
    font-size: 3.8167938931vw;
  }
}
.btn .btn__icon {
  width: auto;
  height: 2em;
  aspect-ratio: 1/1;
  background: currentColor;
}
.btn .btn__icon--document {
  -webkit-mask-image: url(../img/common/icon-document.svg);
          mask-image: url(../img/common/icon-document.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
.btn .btn__icon--write {
  aspect-ratio: 25/30;
  -webkit-mask-image: url(../img/common/icon-write.svg);
          mask-image: url(../img/common/icon-write.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
.btn .link-arrow {
  position: absolute;
  top: 50%;
  right: 1.3333333333em;
  translate: 0 -50%;
}
.btn:hover {
  background: var(--btn-color-hover);
  color: var(--btn-color-txt-hover);
  opacity: 1;
}

:where(.btn--wrap) {
  container-type: inline-size;
}
@container (max-width: 262px) {
  :where(.btn--wrap) .btn {
    width: 100%;
    min-width: auto;
  }
}

.btn--w100 {
  width: 100%;
}

.btn--small {
  min-height: 3.0666666667em;
  padding-left: 1.2em;
  padding-right: 4em;
}
@media (max-width: 750px) {
  .btn--small {
    min-width: 13.8666666667em;
    min-height: 3.0666666667em;
    padding-left: 0.5333333333em;
    padding-right: 3.3333333333em;
  }
}
.btn--small .link-arrow {
  right: 0.6666666667em;
}

.btn--large {
  min-height: 4.1666666667em;
  padding-inline: 3.75em;
  font-size: clamp(1.4rem, 2.4vw, 2.4rem);
}
@media (max-width: 750px) {
  .btn--large {
    min-height: 3.5em;
    padding-left: 0.5em;
    padding-right: 3.5em;
    font-size: 5.0890585242vw;
  }
}
.btn--large .link-arrow {
  width: 2.5em;
  right: 1.1666666667em;
}
@media (max-width: 750px) {
  .btn--large .link-arrow {
    width: 2.1em;
    right: 1em;
  }
}
.btn--large .link-arrow::before {
  width: 0.6458333333em;
}
@media (max-width: 750px) {
  .btn--large .link-arrow::before {
    width: 0.55em;
  }
}

.btn--rev {
  border-color: var(--btn-color);
}

.btn--square {
  border-radius: 1rem;
}

.link-arrow {
  display: inline-block;
  width: 3rem;
  aspect-ratio: 30/20;
  margin-left: 0.4rem;
  background: var(--btn-color-txt);
  border-radius: 10em;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.link-arrow::before {
  content: "";
  width: 0.7rem;
  aspect-ratio: 7/6.2;
  background: var(--btn-color);
  -webkit-mask-image: url(../img/common/btn-arrow.svg);
          mask-image: url(../img/common/btn-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

@media (hover: hover) and (pointer: fine) {
  :where(a, button):hover .link-arrow {
    background: var(--btn-color-txt-hover);
  }
  :where(a, button):hover .link-arrow::before {
    background: var(--btn-color-hover);
  }
}

.list > li {
  display: list-item;
}

.accordion__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem 0;
}
.accordion__title {
  padding: 1rem;
  border: 1px solid #000;
  position: relative;
}
.accordion__title--dot {
  list-style-type: "・";
}
.accordion__title::-webkit-details-marker {
  display: none;
}
.accordion__contents {
  padding: 1rem;
  background: rgba(0, 0, 0, 0.1);
}

/*
	Breadcrumb NavXT プラグイン向け
*/
.breadcrumb__list {
  --gap: 0.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: clamp(1.2rem, 1.3vw, 1.3rem);
  line-height: 1.4615384615;
  gap: var(--gap);
}
@media (max-width: 750px) {
  .breadcrumb__list {
    font-size: 3.0534351145vw;
  }
}
.breadcrumb__list a {
  color: #000000;
}
.breadcrumb__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 var(--gap);
}
.breadcrumb__list-item::after {
  content: " > ";
}
.breadcrumb__list-item:last-child::after {
  content: none;
}

.wp_pagenavi .page-numbers {
  font-size: clamp(1.3rem, 1.5vw, 1.5rem);
  font-weight: bold;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6666666667em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 750px) {
  .wp_pagenavi .page-numbers {
    font-size: 3.0534351145vw;
  }
}
.wp_pagenavi .page-numbers a, .wp_pagenavi .page-numbers span {
  width: 3.3333333333em;
  aspect-ratio: 1/1;
  background: var(--bg-color, #EDF2F6);
  border-radius: 50%;
  color: var(--txt-color, #000000);
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 750px) {
  .wp_pagenavi .page-numbers a, .wp_pagenavi .page-numbers span {
    width: 2.5em;
  }
}
@media (hover: hover) and (pointer: fine) {
  .wp_pagenavi .page-numbers a:hover {
    --bg-color: #0C7ACE;
    --txt-color: #fff;
    opacity: 1;
  }
}
.wp_pagenavi .page-numbers .current {
  background: #0C7ACE;
  color: #fff;
}
.wp_pagenavi .page-numbers .first,
.wp_pagenavi .page-numbers .last,
.wp_pagenavi .page-numbers .previouspostslink,
.wp_pagenavi .page-numbers .nextpostslink {
  color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  forced-color-adjust: none;
  position: relative;
}
.wp_pagenavi .page-numbers .first::before,
.wp_pagenavi .page-numbers .last::before,
.wp_pagenavi .page-numbers .previouspostslink::before,
.wp_pagenavi .page-numbers .nextpostslink::before {
  content: "";
  background: var(--txt-color, #000000);
  forced-color-adjust: none;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.wp_pagenavi .page-numbers .first::before,
.wp_pagenavi .page-numbers .last::before {
  width: 1.5rem;
  aspect-ratio: 15/12;
  -webkit-mask-image: url(../img/common/arrow-right-double.svg);
          mask-image: url(../img/common/arrow-right-double.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
@media (max-width: 750px) {
  .wp_pagenavi .page-numbers .first::before,
  .wp_pagenavi .page-numbers .last::before {
    width: 0.75em;
  }
}
.wp_pagenavi .page-numbers .previouspostslink::before,
.wp_pagenavi .page-numbers .nextpostslink::before {
  width: 0.8rem;
  aspect-ratio: 8/12;
  -webkit-mask-image: url(../img/common/arrow-right.svg);
          mask-image: url(../img/common/arrow-right.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
@media (max-width: 750px) {
  .wp_pagenavi .page-numbers .previouspostslink::before,
  .wp_pagenavi .page-numbers .nextpostslink::before {
    width: 0.4166666667em;
  }
}
.wp_pagenavi .page-numbers .first::before,
.wp_pagenavi .page-numbers .previouspostslink::before {
  scale: -1 1;
}
.wp_pagenavi .page-numbers .extend {
  font-weight: 900;
}
.wp_pagenavi .page-numbers:has(.previouspostslink + .extend) .extend:nth-child(1 of .extend) {
  display: none;
}
.wp_pagenavi .page-numbers:has(.extend + .nextpostslink) .extend:nth-last-child(1 of .extend) {
  display: none;
}

.contents--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.contents--grid {
  display: grid;
}

.header {
  width: 100%;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 9999;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header {
    height: auto;
    background: #fff;
    overflow-x: clip;
    overflow-y: visible;
  }
}
@media (max-width: 750px) {
  .header {
    height: auto;
    background: #fff;
    overflow-x: clip;
    overflow-y: visible;
  }
}
.header .inner {
  width: 100%;
  min-height: 9rem;
  max-width: none;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header .inner {
    min-height: auto;
    padding: 0 4%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 750px) {
  .header .inner {
    min-height: auto;
    padding: 0 4%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.header__logo {
  -ms-flex-item-align: center;
      align-self: center;
  margin-left: min(2.6vw, 2.6rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.3rem;
  font-size: 1.2rem;
  font-weight: normal;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header__logo {
    margin-left: -1.7811704835vw;
    padding-top: 1.7811704835vw;
    padding-bottom: 2.0356234097vw;
    gap: 1.272264631vw;
  }
}
@media (max-width: 750px) {
  .header__logo {
    margin-left: -1.7811704835vw;
    padding-top: 1.7811704835vw;
    padding-bottom: 2.0356234097vw;
    gap: 1.272264631vw;
  }
}
@media (max-width: 750px) {
  .header__logo {
    font-size: 2.2900763359vw;
  }
}
.header__logo a, .header__logo img {
  display: block;
}
.header__logo-main {
  width: 13.1vw;
  max-width: 13.1rem;
  min-width: 10rem;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header__logo-main {
    width: 23.4096692112vw;
    max-width: 9.2rem;
    min-width: auto;
  }
}
@media (max-width: 750px) {
  .header__logo-main {
    width: 23.4096692112vw;
    max-width: 9.2rem;
    min-width: auto;
  }
}
.header__logo-ntt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  translate: 0 0.6rem;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header__logo-ntt {
    translate: 0 1.272264631vw;
  }
}
@media (max-width: 750px) {
  .header__logo-ntt {
    translate: 0 1.272264631vw;
  }
}
.header__logo-ntt img {
  width: min(16.9vw, 16.9rem);
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header__logo-ntt img {
    width: 30.534351145vw;
    max-width: 12rem;
  }
}
@media (max-width: 750px) {
  .header__logo-ntt img {
    width: 30.534351145vw;
    max-width: 12rem;
  }
}
.header--top {
  position: fixed;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .header--top {
    position: sticky;
  }
}
@media (max-width: 750px) {
  .header--top {
    position: sticky;
  }
}

.g-menu__btn {
  display: none;
  width: 3rem;
  aspect-ratio: 1/1;
  background: none;
  border: none;
  color: #000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
  cursor: pointer;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__btn {
    display: block;
    width: 7.6335877863vw;
    max-width: 4rem;
    min-width: 3rem;
  }
}
@media (max-width: 750px) {
  .g-menu__btn {
    display: block;
    width: 7.6335877863vw;
    max-width: 4rem;
    min-width: 3rem;
  }
}
.g-menu__btn .button-border {
  width: 100%;
  height: 2px;
  background: currentColor;
  border-radius: 10em;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -1px);
          transform: translate(-50%, -1px);
}
.g-menu__btn .button-border.top {
  top: calc(50% - 12px);
}
.g-menu__btn .button-border.bottom {
  top: calc(50% + 12px);
}
.g-menu__btn.menu-active .button-border {
  background: transparent;
  -webkit-transform: translate(-50%, -1px);
          transform: translate(-50%, -1px);
}
.g-menu__btn.menu-active .button-border.top {
  background: currentColor;
  top: 50%;
  -webkit-transform: translate(-50%, -1px) rotate(45deg);
          transform: translate(-50%, -1px) rotate(45deg);
}
.g-menu__btn.menu-active .button-border.bottom {
  background: currentColor;
  top: 50%;
  -webkit-transform: translate(-50%, -1px) rotate(-45deg);
          transform: translate(-50%, -1px) rotate(-45deg);
}

@media (min-width: 751px) and (max-width: 1024px) {
  #g-menu {
    width: 30rem;
    max-width: 100%;
    height: 100vh;
    height: 100dvh;
    padding-right: 0;
    background: #F0F3F5;
    border-right: none;
    position: fixed;
    top: 0;
    right: 0;
    z-index: -1;
    translate: 100% 0;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
    overscroll-behavior-y: contain;
    pointer-events: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media (max-width: 750px) {
  #g-menu {
    width: 30rem;
    max-width: 100%;
    height: 100vh;
    height: 100dvh;
    padding-right: 0;
    background: #F0F3F5;
    border-right: none;
    position: fixed;
    top: 0;
    right: 0;
    z-index: -1;
    translate: 100% 0;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
    overscroll-behavior-y: contain;
    pointer-events: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media (max-width: 750px) {
  #g-menu {
    width: 100%;
  }
}
@media (min-width: 751px) and (max-width: 1024px) {
  #g-menu.menu-active {
    translate: 0 0;
    pointer-events: initial;
  }
}
@media (max-width: 750px) {
  #g-menu.menu-active {
    translate: 0 0;
    pointer-events: initial;
  }
}

.g-menu__wrap {
  height: 100%;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__wrap {
    width: 92%;
    height: auto;
    margin-inline: auto;
    padding-top: calc(var(--header-height) + 3rem);
    padding-bottom: 3rem;
  }
}
@media (max-width: 750px) {
  .g-menu__wrap {
    width: 92%;
    height: auto;
    margin-inline: auto;
    padding-top: calc(var(--header-height) + 3rem);
    padding-bottom: 3rem;
  }
}
@media (max-width: 750px) {
  .g-menu__wrap {
    padding-top: 22.9007633588vw;
  }
}
.g-menu__nav {
  height: 100%;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  font-weight: normal;
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-column-gap: 1.875em;
     -moz-column-gap: 1.875em;
          column-gap: 1.875em;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav {
    height: auto;
    font-weight: bold;
    line-height: 1.4705882353;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    row-gap: 3rem;
  }
}
@media (max-width: 750px) {
  .g-menu__nav {
    height: auto;
    font-weight: bold;
    line-height: 1.4705882353;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    row-gap: 3rem;
  }
}
@media (max-width: 750px) {
  .g-menu__nav {
    font-size: 4.3256997455vw;
    row-gap: 7.6335877863vw;
  }
}
.g-menu__nav-list {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem 1.875em;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list {
    row-gap: 2.5445292621vw;
  }
}
.g-menu__nav-list a {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.g-menu__nav-list-item {
  padding: 1.6rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item {
    padding: 0;
    display: block;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item {
    padding: 0;
    display: block;
  }
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) details {
  display: contents;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) details {
    display: block;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) details {
    display: block;
  }
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) details[open] .g-menu__nav-list-toggle::after {
  rotate: 0deg;
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) summary {
  display: contents;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) summary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) summary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle {
  display: none;
  width: 1.5625em;
  aspect-ratio: 1/1;
  background: #0C7ACE;
  border-radius: 50%;
  position: relative;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle {
    display: block;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle {
    display: block;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle {
    width: 1.4705882353em;
  }
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle::before, .g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle::after {
  content: "";
  width: 48%;
  height: 0.1rem;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) .g-menu__nav-list-toggle::after {
  rotate: 90deg;
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) > a {
    display: block;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) > a {
    display: block;
  }
}
.g-menu__nav-list-item:has(.g-menu__nav-list-child) > a::after {
  content: "";
  width: 0.9rem;
  aspect-ratio: 1/1;
  background: currentColor;
  -webkit-mask-image: url(../img/common/menu-tri-down.svg);
          mask-image: url(../img/common/menu-tri-down.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) > a::after {
    content: none;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item:has(.g-menu__nav-list-child) > a::after {
    content: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .g-menu__nav-list-item:hover .g-menu__nav-list-child {
    opacity: 1;
    visibility: visible;
  }
}
.g-menu__nav-list-item--contact {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  width: 8.8888888889em;
  padding: 0;
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  font-weight: 500;
  color: #fff;
  overflow: hidden;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item--contact {
    display: none;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item--contact {
    display: none;
  }
}
.g-menu__nav-list-item--contact a {
  width: 100%;
  height: 100%;
  background: #0C7ACE;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.g-menu__nav-list-item.sp {
  display: none;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-item.sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-item.sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.g-menu__nav-list-child {
  font-size: 0.875em;
  font-weight: 500;
  line-height: 1.7142857143;
  white-space: nowrap;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 20;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-child {
    margin-top: 1rem;
    border-top: 1px solid #000;
    line-height: 1.4;
    white-space: initial;
    position: initial;
    opacity: 1;
    visibility: visible;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-child {
    margin-top: 1rem;
    border-top: 1px solid #000;
    line-height: 1.4;
    white-space: initial;
    position: initial;
    opacity: 1;
    visibility: visible;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-child {
    font-size: 3.8167938931vw;
  }
}
.g-menu__nav-list-child li {
  border-bottom: 1px solid transparent;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-child li {
    padding: 1rem 0;
    border-bottom: 1px solid #ADB5BD;
  }
  .g-menu__nav-list-child li:last-child {
    border-bottom: none;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-child li {
    padding: 1rem 0;
    border-bottom: 1px solid #ADB5BD;
  }
  .g-menu__nav-list-child li:last-child {
    border-bottom: none;
  }
}
.g-menu__nav-list-child a {
  min-width: 14.2857142857em;
  padding: 0.7142857143em 1.0714285714em;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  position: relative;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-child a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: auto;
    padding: 0;
    background: none;
    display: block;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-child a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: auto;
    padding: 0;
    background: none;
    display: block;
  }
}
.g-menu__nav-list-child a::after {
  content: "";
  width: 0.9285714286em;
  aspect-ratio: 7/6.2;
  background: #0C7ACE;
  -webkit-mask-image: url(../img/common/btn-arrow.svg);
          mask-image: url(../img/common/btn-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list-child a::after {
    content: none;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list-child a::after {
    content: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .g-menu__nav-list-child a:hover {
    background: #0C7ACE;
    color: #fff;
    opacity: 1;
  }
  .g-menu__nav-list-child a:hover::after {
    background: #fff;
  }
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list--btn {
    -ms-flex-item-align: center;
        align-self: center;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list--btn {
    -ms-flex-item-align: center;
        align-self: center;
  }
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list--btn {
    max-width: 29rem;
    row-gap: 1.2rem;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list--btn {
    width: 80.5555555556%;
    row-gap: 3.0534351145vw;
  }
}
@media (min-width: 751px) and (max-width: 1024px) {
  .g-menu__nav-list--btn .btn {
    width: 57.7777777778%;
    padding-inline: 0.5rem;
    text-align: center;
  }
}
@media (max-width: 750px) {
  .g-menu__nav-list--btn .btn {
    width: 57.7777777778%;
    padding-inline: 0.5rem;
    text-align: center;
  }
}

#page-top {
  position: relative;
}
#page-top a {
  position: absolute;
  right: min(3vw, 3rem);
  bottom: 1rem;
  z-index: 1;
}

.footer {
  padding-top: 4rem;
  background: #F0F3F5;
  position: relative;
  z-index: 1;
}
@media (max-width: 750px) {
  .footer {
    padding-top: 6.3613231552vw;
  }
}
.footer__main {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-auto-flow: dense;
}
@media (max-width: 750px) {
  .footer__main {
    grid-template-columns: 100%;
  }
}
.footer__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 750px) {
  .footer__logo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
  }
}
.footer__logo a {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 13.1vw;
  max-width: 13.1rem;
  min-width: 10rem;
}
@media (max-width: 750px) {
  .footer__logo a {
    width: 33.3333333333vw;
  }
}
.footer__logo a img {
  width: 100%;
}
.footer__logo-name {
  margin-left: 0.7rem;
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 750px) {
  .footer__logo-name {
    margin-top: 0.5rem;
    margin-left: 0;
    font-size: 4.5801526718vw;
  }
}
.footer__logo-address {
  margin-left: 1.7rem;
  font-size: clamp(1.2rem, 1.4vw, 1.4rem);
  font-weight: normal;
  line-height: 1.4285714286;
}
@media (max-width: 750px) {
  .footer__logo-address {
    display: none;
  }
}
.footer__nav {
  margin-top: 3.3rem;
  padding-right: min(5.7vw, 5.7rem);
}
@media (max-width: 750px) {
  .footer__nav {
    margin-top: 5.0890585242vw;
    padding-right: 0;
  }
}
.footer__nav-list {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: repeat(3, auto) 1fr;
  grid-auto-flow: dense;
  gap: 1.1rem 1.5294117647em;
  font-size: clamp(1.4rem, 1.7vw, 1.7rem);
  font-weight: bold;
  line-height: 1.4705882353;
}
@media (max-width: 750px) {
  .footer__nav-list {
    grid-template-columns: 100%;
    grid-template-rows: auto;
    row-gap: 2.0356234097vw;
    font-size: 4.3256997455vw;
    text-align: center;
  }
}
.footer__nav-list .nav-about {
  grid-column: 1;
  grid-row: 1/-1;
  padding-right: 1em;
}
@media (max-width: 750px) {
  .footer__nav-list .nav-about {
    grid-column: initial;
    grid-row: initial;
    padding-right: 0;
  }
}
.footer__nav-list .nav-product {
  grid-column: 2;
  grid-row: 1/-1;
}
@media (max-width: 750px) {
  .footer__nav-list .nav-product {
    grid-column: initial;
    grid-row: initial;
  }
}
.footer__nav-child {
  margin-top: 1.1rem;
  font-size: clamp(1.2rem, 1.4vw, 1.4rem);
  font-weight: normal;
  display: grid;
  grid-template-columns: 100%;
  row-gap: 1em;
}
@media (max-width: 750px) {
  .footer__nav-child {
    display: none;
  }
}
.footer__nav-child:has(.footer__nav-child-group) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 2.1428571429em;
     -moz-column-gap: 2.1428571429em;
          column-gap: 2.1428571429em;
}
@media (max-width: 750px) {
  .footer__nav-child:has(.footer__nav-child-group) {
    display: none;
  }
}
.footer__nav-child:has(.footer__nav-child-group) > li > a {
  font-weight: 500;
}
.footer__nav-child-group {
  margin-top: 1.6rem;
}
.footer__banners {
  grid-column: 2;
  grid-row: 1/span 2;
  align-self: flex-start;
  display: grid;
  grid-template-columns: 100%;
  row-gap: 1.5rem;
}
@media (max-width: 750px) {
  .footer__banners {
    grid-column: initial;
    grid-row: initial;
    max-width: 28rem;
    margin: 7.6335877863vw auto 0;
  }
}
.footer__banners a, .footer__banners img {
  display: block;
}
.footer__bottom {
  margin-top: 5.5rem;
  font-size: 1.3rem;
  font-weight: normal;
  line-height: 1.4615384615;
}
@media (max-width: 750px) {
  .footer__bottom {
    margin-top: 7.6335877863vw;
    font-size: 3.3078880407vw;
  }
}
.footer__bottom .inner {
  padding: 3rem 0 2.5rem;
  border-top: 1px solid #ADB5BD;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 750px) {
  .footer__bottom .inner {
    padding: 0 0 6.3613231552vw;
    display: block;
  }
}
.footer__bottom ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em 2em;
}
@media (max-width: 750px) {
  .footer__bottom ul {
    padding: 3.8167938931vw 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (max-width: 750px) {
  .footer__copyright {
    padding: 3.8167938931vw 0;
    border-top: 1px solid #ADB5BD;
    text-align: center;
  }
}
.footer__ntt {
  padding: 0.8rem 0;
  background: #0C7ACE;
  font-size: 1.2rem;
  color: #fff;
}
@media (max-width: 750px) {
  .footer__ntt {
    padding: 2.0356234097vw 0;
    font-size: 2.2900763359vw;
  }
}
.footer__ntt a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer__ntt img {
  width: 16.9rem;
}
@media (max-width: 750px) {
  .footer__ntt img {
    width: 30.534351145vw;
  }
}

.footer.animation--on ~ .fixedContact {
  opacity: 0;
  visibility: hidden;
}

.fixedContact {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 0.6rem;
  position: fixed;
  right: 2rem;
  bottom: 1.1rem;
  z-index: 50;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 750px) {
  .fixedContact {
    width: 100%;
    padding: 0 2.5445292621vw;
    grid-template-columns: repeat(2, auto);
    gap: 1rem;
    right: 0;
  }
}
.fixedContact.scrolled {
  opacity: 1;
  visibility: visible;
}
.fixedContact.is-closed {
  opacity: 0 !important;
  visibility: hidden !important;
}
.fixedContact__close {
  width: 3rem;
  aspect-ratio: 30/20;
  background: #0C7ACE;
  border: none;
  border-radius: 10em;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
  translate: 26.6666666667% -50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 750px) {
  .fixedContact__close {
    display: none;
  }
}
.fixedContact__close::before, .fixedContact__close::after {
  content: "";
  width: 1rem;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 1;
  rotate: 45deg;
}
.fixedContact__close::after {
  rotate: -45deg;
}
.fixedContact__request {
  --btn-color: #FF0D7E;
  --btn-color-txt-hover: #FF0D7E;
}
.fixedContact__trial {
  --btn-color: #172CA2;
  --btn-color-txt-hover: #172CA2;
}
.fixedContact .btn {
  --btn-color-txt: #fff;
  --btn-color-hover: #fff;
  padding-inline: 1.7333333333em;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 750px) {
  .fixedContact .btn {
    min-width: auto;
    padding-bottom: 0.6666666667em;
  }
}

.page__header {
  width: 100%;
  margin-bottom: 8rem;
  padding-top: 3rem;
}
@media (max-width: 750px) {
  .page__header {
    margin-bottom: 7.6335877863vw;
    padding-top: 5.0890585242vw;
  }
}
.page__header-breadcrumb {
  margin-bottom: 10rem;
}
@media (max-width: 750px) {
  .page__header-breadcrumb {
    margin-bottom: 7.6335877863vw;
  }
}
.page__header-title {
  margin-bottom: 0;
  font-size: clamp(1.4rem, 5vw, 5rem);
  font-weight: bold;
  line-height: 1.44;
}
@media (max-width: 750px) {
  .page__header-title {
    font-size: 7.6335877863vw;
  }
}

.page__grid {
  --col-gap: 3.9682539683%;
  --col-short: 41.5873015873%;
  --col-sp-gap: 10.1781170483vw;
  display: grid;
  grid-template-columns: var(--col-short) 1fr;
  -webkit-column-gap: var(--col-gap);
     -moz-column-gap: var(--col-gap);
          column-gap: var(--col-gap);
}
@media (max-width: 750px) {
  .page__grid {
    grid-template-columns: 100%;
    gap: var(--col-sp-gap) 0;
  }
}
.page__grid--rev {
  grid-template-columns: 1fr var(--col-short);
  -webkit-column-gap: var(--col-gap);
     -moz-column-gap: var(--col-gap);
          column-gap: var(--col-gap);
}
@media (max-width: 750px) {
  .page__grid--rev {
    grid-template-columns: 100%;
    gap: var(--col-sp-gap) 0;
  }
}
.page__grid--equal {
  grid-template-columns: repeat(2, 1fr);
  gap: 0 var(--col-gap);
}
@media (max-width: 750px) {
  .page__grid--equal {
    grid-template-columns: 100%;
    gap: var(--col-sp-gap) 0;
  }
}
.page__grid--col3 {
  --gap: min(3vw, 3rem);
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap);
}
@media (max-width: 750px) {
  .page__grid--col3 {
    grid-template-columns: 100%;
    gap: var(--col-sp-gap) 0;
  }
}
@media (min-width: 751px) {
  .page__grid .align-self--end {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}
@media (min-width: 751px) {
  .page__grid .align-self--center {
    -ms-flex-item-align: center;
        align-self: center;
  }
}
@media (max-width: 750px) {
  .page__grid .sp-order-1 {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
}
@media (max-width: 750px) {
  .page__grid .sp-order1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media (max-width: 750px) {
  .page__grid .sp-order2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.page__contents :where(p) {
  line-height: 2;
}
.page__contents :where(p + p) {
  margin-top: 1em;
  margin-top: 1lh;
}

.page__localNav {
  margin-top: 3.7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem 3rem;
}
@media (max-width: 750px) {
  .page__localNav {
    margin-top: 7.6335877863vw;
    gap: 1.272264631vw;
  }
}
.page__localNav .btn {
  min-width: 17.3333333333em;
  padding-left: 1em;
  padding-right: 3.6em;
}
@media (max-width: 750px) {
  .page__localNav .btn {
    min-width: auto;
    min-height: 3.1428571429em;
    padding-left: 0.8571428571em;
    padding-right: 2.2857142857em;
    font-size: 3.5623409669vw;
  }
}
.page__localNav .btn::before {
  content: "";
  width: 1.1rem;
  aspect-ratio: 1/1;
  background: currentColor;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  top: 50%;
  right: 1.8666666667em;
  translate: 0 -50%;
  -webkit-transition: inherit;
  transition: inherit;
}
@media (max-width: 750px) {
  .page__localNav .btn::before {
    width: 0.7857142857em;
    right: 0.7142857143em;
  }
}

.page__dl {
  border-top: 1px solid #868E96;
  display: grid;
  grid-template-columns: 16.6875em 1fr;
  line-height: 2;
}
@media (max-width: 750px) {
  .page__dl {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
}
.page__dl dt, .page__dl dd {
  padding-block: 1em;
  border-bottom: 1px solid #868E96;
}
@media (max-width: 750px) {
  .page__dl dt, .page__dl dd {
    grid-column: initial;
    grid-row: auto;
  }
}
.page__dl dt {
  grid-column: 1;
  padding-right: 1em;
  font-weight: 500;
}
@media (max-width: 750px) {
  .page__dl dt {
    padding-bottom: 0;
    padding-right: 0;
    border-bottom: none;
  }
}
.page__dl dd {
  grid-column: 2;
}
@media (max-width: 750px) {
  .page__dl dd {
    padding-top: 0.5em;
    grid-column: 1;
  }
}

.page__form a {
  text-decoration: underline;
}
.page__form input[type=text],
.page__form input[type=email],
.page__form input[type=tel],
.page__form textarea,
.page__form select {
  display: block;
  width: 100%;
  max-width: 100rem;
  padding: 0.75em 1.1875em;
  background: #fff;
  border: 1px solid #ADB5BD;
  border-radius: 0.6rem;
  font-size: inherit;
  font-weight: 500;
  color: #000000;
}
.page__form input[type=text]::-webkit-input-placeholder, .page__form input[type=email]::-webkit-input-placeholder, .page__form input[type=tel]::-webkit-input-placeholder, .page__form textarea::-webkit-input-placeholder, .page__form select::-webkit-input-placeholder {
  color: #ADB5BD;
}
.page__form input[type=text]::-moz-placeholder, .page__form input[type=email]::-moz-placeholder, .page__form input[type=tel]::-moz-placeholder, .page__form textarea::-moz-placeholder, .page__form select::-moz-placeholder {
  color: #ADB5BD;
}
.page__form input[type=text]:-ms-input-placeholder, .page__form input[type=email]:-ms-input-placeholder, .page__form input[type=tel]:-ms-input-placeholder, .page__form textarea:-ms-input-placeholder, .page__form select:-ms-input-placeholder {
  color: #ADB5BD;
}
.page__form input[type=text]::-ms-input-placeholder, .page__form input[type=email]::-ms-input-placeholder, .page__form input[type=tel]::-ms-input-placeholder, .page__form textarea::-ms-input-placeholder, .page__form select::-ms-input-placeholder {
  color: #ADB5BD;
}
.page__form input[type=text]::placeholder,
.page__form input[type=email]::placeholder,
.page__form input[type=tel]::placeholder,
.page__form textarea::placeholder,
.page__form select::placeholder {
  color: #ADB5BD;
}
.page__form input[type=text] + .error,
.page__form input[type=email] + .error,
.page__form input[type=tel] + .error,
.page__form textarea + .error,
.page__form select + .error {
  margin-top: 0.8571428571em;
}
.page__form textarea {
  min-height: 12.5em;
}
.page__form select {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 25rem;
  padding-right: 4.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url(../img/common/menu-tri-down.svg) no-repeat right 3rem center/0.9rem 0.9rem;
}
.page__form-fieldset {
  margin-top: 3rem;
}
@media (max-width: 750px) {
  .page__form-fieldset {
    margin-top: 10.1781170483vw;
  }
}
.page__form-fieldset + .page__form-item {
  margin-top: 3rem;
}
@media (max-width: 750px) {
  .page__form-fieldset + .page__form-item {
    margin-top: 7.6335877863vw;
  }
}
.page__form legend {
  margin-bottom: 2rem;
  font-weight: 500;
}
@media (max-width: 750px) {
  .page__form legend {
    margin-bottom: 5.0890585242vw;
  }
}
.page__form .wpcf7-radio,
.page__form .wpcf7-checkbox {
  font-weight: 500;
}
.page__form .wpcf7-radio,
.page__form .wpcf7-checkbox,
.page__form .wpcf7-acceptance {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5em 4em;
}
.page__form .wpcf7-radio .wpcf7-list-item,
.page__form .wpcf7-checkbox .wpcf7-list-item,
.page__form .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}
.page__form .wpcf7-radio label,
.page__form .wpcf7-checkbox label,
.page__form .wpcf7-acceptance label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
}
.page__form .wpcf7-radio input[type=radio],
.page__form .wpcf7-radio input[type=checkbox],
.page__form .wpcf7-checkbox input[type=radio],
.page__form .wpcf7-checkbox input[type=checkbox],
.page__form .wpcf7-acceptance input[type=radio],
.page__form .wpcf7-acceptance input[type=checkbox] {
  width: 0.875em;
  height: 0.875em;
}
.page__form .wpcf7-radio .wpcf7-list-item-label::before, .page__form .wpcf7-radio .wpcf7-list-item-label::after,
.page__form .wpcf7-checkbox .wpcf7-list-item-label::before,
.page__form .wpcf7-checkbox .wpcf7-list-item-label::after,
.page__form .wpcf7-acceptance .wpcf7-list-item-label::before,
.page__form .wpcf7-acceptance .wpcf7-list-item-label::after {
  content: none;
}
.page__form .wpcf7-form-control-wrap {
  position: relative;
}
.page__form .wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) {
  display: block;
  padding-bottom: 1.5em;
}
.page__form .wpcf7-not-valid-tip {
  font-size: clamp(1.2rem, 1.3vw, 1.3rem);
  line-height: 1;
  white-space: nowrap;
  position: absolute;
  bottom: 0;
  left: 0;
}
.page__form-item + .page__form-item {
  margin-top: 3rem;
}
@media (max-width: 750px) {
  .page__form-item + .page__form-item {
    margin-top: 7.6335877863vw;
  }
}
.page__form-item-label {
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.page__form-item-label .required,
.page__form-item-label .optional {
  display: inline-block;
  padding: 0.0833333333em 0.6666666667em 0.1666666667em;
  background: #FF1C00;
  border-radius: 0.3rem;
  font-size: clamp(1.1rem, 1.2vw, 1.2rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.4166666667;
}
@media (max-width: 750px) {
  .page__form-item-label .required,
  .page__form-item-label .optional {
    font-size: 3.0534351145vw;
  }
}
.page__form-item-label .optional {
  background: #495568;
}
.page__form-item-label .page__form-item-help {
  margin-top: 0;
}
.page__form-item-control {
  margin-top: 1.5rem;
}
@media (max-width: 750px) {
  .page__form-item-control {
    margin-top: 3.8167938931vw;
  }
}
.page__form-item-control--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1em;
}
.page__form-item-help {
  margin-top: 1rem;
  font-size: clamp(1.2rem, 1.3vw, 1.3rem);
  font-weight: 500;
  color: #B5BDC3;
}
@media (max-width: 750px) {
  .page__form-item-help {
    margin-top: 2.5445292621vw;
    font-size: 3.3078880407vw;
  }
}
.page__form-item-readText {
  display: block;
  width: 100%;
  height: 20rem;
  max-width: 100rem;
  margin-top: 1.5rem;
  padding: 0.75em 1.1875em;
  background: #fff;
  border: 1px solid #ADB5BD;
  border-radius: 0.6rem;
  font-size: inherit;
  font-weight: 500;
  overflow-x: initial;
  overflow-y: auto;
  scrollbar-width: thin;
}
@media (max-width: 750px) {
  .page__form-item-readText {
    margin-top: 3.8167938931vw;
  }
}
.page__form-submit {
  margin-top: 6rem;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
}
@media (max-width: 750px) {
  .page__form-submit {
    margin-top: 10.1781170483vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.0890585242vw;
  }
}
.page__form-submit .btn {
  min-width: 17.3333333333em;
}
.page__form-submit .wpcf7-previous {
  padding-inline: 2.4666666667em;
}
@media (max-width: 750px) {
  .page__form-submit .wpcf7-previous {
    padding-inline: 1.8666666667em;
  }
}
.page__form-spinner {
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 750px) {
  .page__form-spinner {
    margin-top: 3.8167938931vw;
  }
}
.page__form .input-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
}
.page__form .input-date input:where(#graduate_year) {
  max-width: 10.5rem;
}
.page__form .input-date input:where(#graduate_month) {
  max-width: 6rem;
}
.page__form .page__form-item-control:has(.input-toeic) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.875em 4em;
}
.page__form .input-toeic {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 0.5em;
     -moz-column-gap: 0.5em;
          column-gap: 0.5em;
}
.page__form .input-toeic input {
  max-width: 16.9rem;
}
.page__form .page__form-item--inquiry {
  padding-bottom: 3rem;
  border-bottom: 1px solid #AFB5B9;
}
@media (max-width: 750px) {
  .page__form .page__form-item--inquiry {
    padding-bottom: 7.6335877863vw;
  }
}
.page__form .page__form-item--service .wpcf7-list-item:has(input[disabled]) {
  color: #B1B7BB;
}
.page__form .page__form-item--service .wpcf7-checkbox {
  row-gap: 0.25em;
}
.page__form .page__form-item--service .wpcf7-checkbox::before {
  content: "";
  width: 100%;
  height: 0;
  -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
          order: 6;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(1) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(2) {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(3) {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(4) {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(5) {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(6) {
  -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
          order: 7;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(7) {
  -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
          order: 8;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(8) {
  -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
          order: 9;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(9) {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(10) {
  -webkit-box-ordinal-group: 12;
      -ms-flex-order: 11;
          order: 11;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(11) {
  -webkit-box-ordinal-group: 13;
      -ms-flex-order: 12;
          order: 12;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(12) {
  -webkit-box-ordinal-group: 14;
      -ms-flex-order: 13;
          order: 13;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(13) {
  -webkit-box-ordinal-group: 15;
      -ms-flex-order: 14;
          order: 14;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(14) {
  -webkit-box-ordinal-group: 16;
      -ms-flex-order: 15;
          order: 15;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(15) {
  -webkit-box-ordinal-group: 17;
      -ms-flex-order: 16;
          order: 16;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(16) {
  -webkit-box-ordinal-group: 18;
      -ms-flex-order: 17;
          order: 17;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(17) {
  -webkit-box-ordinal-group: 19;
      -ms-flex-order: 18;
          order: 18;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(18) {
  -webkit-box-ordinal-group: 20;
      -ms-flex-order: 19;
          order: 19;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(19) {
  -webkit-box-ordinal-group: 21;
      -ms-flex-order: 20;
          order: 20;
}
.page__form .page__form-item--service .wpcf7-list-item:nth-child(20) {
  -webkit-box-ordinal-group: 22;
      -ms-flex-order: 21;
          order: 21;
}
.page__form--confirm input[type=email] {
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  font-weight: normal;
}
.page__form--confirm .page__form-item-help {
  display: none;
}
.page__form--confirm .page__form-item--privacy {
  display: none;
}

.form {
  font-weight: 500;
  line-height: 1.6666666667;
}
.form input[type=text],
.form input[type=email],
.form input[type=tel],
.form textarea,
.form select {
  display: block;
  width: 100%;
  padding: 1.1333333333em 1.6em;
  background: #fff;
  border: 1px solid #868E96;
  border-radius: 0.4rem;
  font-size: inherit;
  line-height: 1.4;
  font-weight: 500;
  color: #000;
}
@media (max-width: 750px) {
  .form input[type=text],
  .form input[type=email],
  .form input[type=tel],
  .form textarea,
  .form select {
    padding: 0.625em 0.9375em;
  }
}
.form input[type=text]::-webkit-input-placeholder, .form input[type=email]::-webkit-input-placeholder, .form input[type=tel]::-webkit-input-placeholder, .form textarea::-webkit-input-placeholder, .form select::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.form input[type=text]::-moz-placeholder, .form input[type=email]::-moz-placeholder, .form input[type=tel]::-moz-placeholder, .form textarea::-moz-placeholder, .form select::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.form input[type=text]:-ms-input-placeholder, .form input[type=email]:-ms-input-placeholder, .form input[type=tel]:-ms-input-placeholder, .form textarea:-ms-input-placeholder, .form select:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.form input[type=text]::-ms-input-placeholder, .form input[type=email]::-ms-input-placeholder, .form input[type=tel]::-ms-input-placeholder, .form textarea::-ms-input-placeholder, .form select::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.form input[type=text]::placeholder,
.form input[type=email]::placeholder,
.form input[type=tel]::placeholder,
.form textarea::placeholder,
.form select::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.form input[type=text] + .error,
.form input[type=email] + .error,
.form input[type=tel] + .error,
.form textarea + .error,
.form select + .error {
  margin-top: 0.8571428571em;
}
.form textarea {
  min-height: 14.9333333333em;
}
@media (max-width: 750px) {
  .form textarea {
    min-height: 14.9333333333em;
  }
}
.form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.form select:has(option[value=""]:checked) {
  color: rgba(0, 0, 0, 0.5);
}
.form .required {
  display: inline-block;
  padding: 0.3rem;
  border: 1px solid currentColor;
  border-radius: 0.3rem;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  color: #FF6800;
  line-height: 1;
  white-space: nowrap;
}
@media (max-width: 750px) {
  .form .required {
    font-size: 3.8167938931vw;
  }
}

.archive__list {
  margin-block: 8rem;
}
@media (max-width: 750px) {
  .archive__list {
    margin-block: 7.6335877863vw;
  }
}

.archive__pagination {
  margin-top: 8rem;
}
@media (max-width: 750px) {
  .archive__pagination {
    margin-top: 10.1781170483vw;
  }
}

.news__list {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 2rem;
}
@media (max-width: 750px) {
  .news__list {
    row-gap: 5.0890585242vw;
  }
}

.news__item {
  padding: 3rem 3.9682539683%;
  background: #F8F9FA;
  border-radius: 1.5rem;
  display: grid;
  grid-template-columns: 18rem 1fr auto;
  grid-template-rows: 1fr 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem 2rem;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  line-height: 1.5;
}
@media (max-width: 750px) {
  .news__item {
    padding: 7.6335877863vw;
    grid-template-columns: 100%;
    grid-template-rows: auto;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    row-gap: 5.0890585242vw;
    font-size: 4.0712468193vw;
  }
}
.news__item-thumb {
  grid-column: 1;
  grid-row: 1/-1;
}
@media (max-width: 750px) {
  .news__item-thumb {
    grid-column: initial;
    grid-row: initial;
  }
}
.news__item-thumb a {
  display: block;
  aspect-ratio: 180/120;
}
@media (max-width: 750px) {
  .news__item-thumb a {
    aspect-ratio: 300/200;
  }
}
.news__item-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.news__item-meta {
  grid-column: 2;
  grid-row: 1;
  align-self: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media (max-width: 750px) {
  .news__item-meta {
    grid-column: initial;
    grid-row: initial;
  }
}
.news__item-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
}
.news__item-title {
  grid-column: 2;
  grid-row: 2;
  align-self: flex-start;
  max-width: 78rem;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
@media (max-width: 750px) {
  .news__item-title {
    grid-column: initial;
    grid-row: initial;
  }
}
.news__item-title a {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* 行数 */
}
@media (max-width: 750px) {
  .news__item-title a {
    -webkit-line-clamp: 3;
  }
}
.news__item-arrow {
  grid-column: 3;
  grid-row: 1/-1;
}
@media (max-width: 750px) {
  .news__item-arrow {
    display: none;
  }
}
.news__item-arrow .link-arrow {
  display: block;
}

.post-tag {
  display: inline-block;
  padding: 0.3rem 1.5rem;
  background: #0C7ACE;
  border-radius: 0.4rem;
  font-size: clamp(1.4rem, 1.4vw, 1.4rem);
  font-weight: bold;
  line-height: 1.4285714286;
  color: #fff;
  text-align: center;
}
@media (max-width: 750px) {
  .single {
    background: #F7F7F7;
  }
}
.single__inner {
  max-width: 90rem;
}
.single__header {
  margin-bottom: 6rem;
}
@media (max-width: 750px) {
  .single__header {
    margin-bottom: 10.1781170483vw;
  }
}
.single__header-title {
  margin-bottom: 1.6rem;
  font-size: clamp(1.4rem, 3vw, 3rem);
  line-height: 1.4666666667;
  color: #000000;
  font-weight: bold;
}
@media (max-width: 750px) {
  .single__header-title {
    margin-bottom: 0.88em;
    font-size: 6.3613231552vw;
    line-height: 1.44;
  }
}
.single__thumb {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 6rem;
}
@media (max-width: 750px) {
  .single__thumb {
    margin-bottom: 10.1781170483vw;
  }
}
.single__linkPages {
  margin-top: 8rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 750px) {
  .single__linkPages {
    margin-top: 10.1781170483vw;
  }
}

.single__content {
  line-height: 2;
}
.single__content p {
  min-height: 1em;
  min-height: 1lh;
}
.single__content h2 {
  margin-bottom: 1em;
  padding-bottom: 0.8333333333em;
  border-bottom: 2px solid #000;
  font-size: clamp(1.4rem, 2.4vw, 2.4rem);
  font-weight: bold;
  line-height: 1.4583333333;
}
@media (max-width: 750px) {
  .single__content h2 {
    font-size: 4.5801526718vw;
  }
}
.single__content h3 {
  margin-bottom: 1em;
  font-size: clamp(1.4rem, 2.4vw, 2.4rem);
  font-weight: bold;
  line-height: 1.4583333333;
}
@media (max-width: 750px) {
  .single__content h3 {
    font-size: 4.5801526718vw;
  }
}
.single__content hr {
  border-top: 1px solid;
}
.single__content a:not(.wp-element-button):not(.btn) {
  color: inherit;
  font-weight: 500;
  text-decoration: underline;
}
.single__content a:not(.wp-element-button):not(.btn)[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 0.75em;
  aspect-ratio: 1/1;
  margin-left: 0.5rem;
  background: currentColor;
  -webkit-mask-image: url(../img/common/icon-window.svg);
          mask-image: url(../img/common/icon-window.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  vertical-align: baseline;
}
.single__content ul, .single__content ol {
  font-weight: 500;
}
.single__content ul {
  list-style-type: "・";
  list-style-position: inside;
}
.single__content ol {
  list-style: none;
  list-style-position: inside;
  counter-reset: item;
}
.single__content ol > li {
  padding-left: 1em;
  position: relative;
}
.single__content ol > li:before {
  counter-increment: item;
  content: counter(item);
  width: 1.4545454545em;
  height: 1.4545454545em;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 0.6875em;
  font-weight: bold;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: calc(1.4545454545em / 2 * 2);
  left: 0;
  translate: 0 -50%;
}
.single__content ul ul {
  margin-left: 1em;
}
.single__content .wp-block-table {
  margin-block: 2rem;
}
.single__content .wp-block-table.is-style-theme-table thead, .single__content .wp-block-table.is-style-theme-table2 thead {
  background: #485057;
  border-bottom: 1px solid #000;
  color: #fff;
}
.single__content .wp-block-table.is-style-theme-table thead th, .single__content .wp-block-table.is-style-theme-table2 thead th {
  font-weight: 500;
}
.single__content .wp-block-table.is-style-theme-table th, .single__content .wp-block-table.is-style-theme-table td, .single__content .wp-block-table.is-style-theme-table2 th, .single__content .wp-block-table.is-style-theme-table2 td {
  border-color: #000;
}
.single__content .wp-block-table.is-style-theme-table th:first-child, .single__content .wp-block-table.is-style-theme-table td:first-child, .single__content .wp-block-table.is-style-theme-table2 th:first-child, .single__content .wp-block-table.is-style-theme-table2 td:first-child {
  border-left: none;
}
.single__content .wp-block-table.is-style-theme-table th:last-child, .single__content .wp-block-table.is-style-theme-table td:last-child, .single__content .wp-block-table.is-style-theme-table2 th:last-child, .single__content .wp-block-table.is-style-theme-table2 td:last-child {
  border-right: none;
}
.single__content .wp-block-table.is-style-theme-table2 tr:nth-child(even) {
  background: #F0F3F5;
}
.single__content .alignleft {
  float: left;
}
.single__content .alignright {
  float: right;
}
.single__content .aligncenter {
  margin-left: auto;
  margin-right: auto;
}
.single__content .wp-block-post-featured-image {
  max-width: 100%;
}
.single__content .is-style-theme-button .wp-block-button__link,
.single__content .is-style-theme-button2 .wp-block-button__link {
  max-width: 100%;
  min-height: 4em;
  padding-block: 0.3333333333em;
  padding-left: 2.4666666667em;
  padding-right: 5.8666666667em;
  background: var(--btn-color);
  color: var(--btn-color-txt);
  border: 2px solid var(--btn-color-txt);
  border-radius: 20em;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.3rem;
     -moz-column-gap: 0.3rem;
          column-gap: 0.3rem;
  position: relative;
  z-index: 2;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 750px) {
  .single__content .is-style-theme-button .wp-block-button__link,
  .single__content .is-style-theme-button2 .wp-block-button__link {
    min-width: 17.4666666667em;
    min-height: 4em;
    padding-left: 1.8666666667em;
    padding-right: 5.2em;
    font-size: 3.8167938931vw;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.single__content .is-style-theme-button .wp-block-button__link::before, .single__content .is-style-theme-button .wp-block-button__link::after,
.single__content .is-style-theme-button2 .wp-block-button__link::before,
.single__content .is-style-theme-button2 .wp-block-button__link::after {
  content: "";
  width: 3rem;
  aspect-ratio: 30/20;
  margin-left: 0.4rem;
  border-radius: 10em;
  position: absolute;
  top: 50%;
  right: 1.3333333333em;
  translate: 0 -50%;
  -webkit-transition: inherit;
  transition: inherit;
}
.single__content .is-style-theme-button .wp-block-button__link::before,
.single__content .is-style-theme-button2 .wp-block-button__link::before {
  background: var(--btn-color-txt);
  z-index: 1;
}
.single__content .is-style-theme-button .wp-block-button__link::after,
.single__content .is-style-theme-button2 .wp-block-button__link::after {
  background: var(--btn-color);
  -webkit-mask-image: url(../img/common/btn-arrow.svg);
          mask-image: url(../img/common/btn-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 0.7rem 6.2rem;
  mask-size: 0.7rem 6.2rem;
  z-index: 2;
}
.single__content .is-style-theme-button .wp-block-button__link:hover,
.single__content .is-style-theme-button2 .wp-block-button__link:hover {
  background: var(--btn-color-hover);
  color: var(--btn-color-txt-hover);
  opacity: 1;
}
.single__content .is-style-theme-button .wp-block-button__link:hover::before,
.single__content .is-style-theme-button2 .wp-block-button__link:hover::before {
  background: var(--btn-color-txt-hover);
}
.single__content .is-style-theme-button .wp-block-button__link:hover::after,
.single__content .is-style-theme-button2 .wp-block-button__link:hover::after {
  background: var(--btn-color-hover);
}
.single__content .is-style-theme-button2 .wp-block-button__link::before {
  -webkit-mask-image: url(../img/common/btn-arrow-tri.svg);
          mask-image: url(../img/common/btn-arrow-tri.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 1.1rem;
  mask-size: 1.1rem;
}
.single__content .is-style-theme-button2 .wp-block-button__link::after {
  content: none;
}
.single__content .wp-block-file:not(.wp-element-button) {
  font-size: inherit;
}
.single__content .wp-block-columns.col2-grid {
  gap: 2rem;
}
@media (max-width: 750px) {
  .single__content .wp-block-columns.col2-grid {
    gap: 3.8167938931vw;
  }
}
.single__content .wp-block-columns.col2-grid--short {
  width: 79.3650793651%;
  max-width: 100rem;
  margin-inline: auto;
}
@media (max-width: 750px) {
  .single__content .wp-block-columns.col2-grid--short {
    max-width: 77.7777777778%;
  }
}

.top__heading1 {
  margin-bottom: 1.2em;
  font-size: clamp(1.4rem, 5vw, 5rem);
  font-weight: bold;
  line-height: 1.44;
}
@media (max-width: 750px) {
  .top__heading1 {
    margin-bottom: 7.6335877863vw;
    font-size: 7.6335877863vw;
  }
}

.top__heading2 {
  margin-bottom: 1.5em;
  font-size: clamp(1.4rem, 4vw, 4rem);
  font-weight: bold;
  line-height: 1.45;
}
@media (max-width: 750px) {
  .top__heading2 {
    margin-bottom: 7.6335877863vw;
    font-size: 6.3613231552vw;
  }
}

.top__heading3 {
  margin-bottom: 1.6666666667em;
  font-size: clamp(1.4rem, 2.4vw, 2.4rem);
  font-weight: bold;
  line-height: 1.4583333333;
}
@media (max-width: 750px) {
  .top__heading3 {
    margin-bottom: 7.6335877863vw;
    font-size: 5.0890585242vw;
  }
}

#top {
  padding-bottom: 0;
}
#top::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/top/top-bg.webp) no-repeat center/cover;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
@media (max-width: 750px) {
  #top::before {
    background: url(../img/top/top-bg-sp.webp) no-repeat center/cover;
  }
}

.top :where(section) {
  margin-block: 0;
  padding: 10rem 0;
}
@media (max-width: 750px) {
  .top :where(section) {
    padding: 15.2671755725vw 0;
  }
}

.top__mainv {
  aspect-ratio: 1920/954;
  padding-top: max(16.3020833333vw, var(--header-height));
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  position: relative;
  z-index: 9999;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .top__mainv {
    z-index: 1;
  }
}
@media (max-width: 750px) {
  .top__mainv {
    z-index: 1;
  }
}
@media (max-width: 750px) {
  .top__mainv {
    aspect-ratio: 393/528;
    padding-top: 19.8473282443vw;
    font-size: 4.0712468193vw;
  }
}
.top__mainv-header {
  padding: 2rem;
  position: absolute;
}
@media (min-width: 751px) and (max-width: 1024px) {
  .top__mainv-header {
    display: none;
  }
}
@media (max-width: 750px) {
  .top__mainv-header {
    display: none;
  }
}
.top__mainv-header .inner {
  background: rgba(255, 255, 255, 0.85);
  border-radius: 1.5rem;
}
.top__mainv-header .g-menu__nav-list-item--contact {
  border-radius: 0 1.5rem 1.5rem 0;
}
.top__mainv-header .g-menu__nav-list-item--contact a {
  background: #74BCF2;
  color: #000000;
}
.top__mainv > .inner {
  max-width: 1522px;
}
@media (max-width: 750px) {
  .top__mainv > .inner {
    width: 77.3536895674%;
  }
}
.top__mainv p {
  line-height: 2;
}
.top__mainv-bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.top__mainv-bg-video {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.top__mainv-bg-video video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top__mainv-title {
  width: 43.8239159001%;
  max-width: 66.7rem;
  margin-bottom: 2rem;
  line-height: 1;
}
@media (max-width: 750px) {
  .top__mainv-title {
    width: 100%;
  }
}
.top__mainv-title img {
  width: 100%;
}

.top__customers {
  padding: 2rem 0;
  background: #fff;
}
@media (max-width: 750px) {
  .top__customers {
    padding: 1.5267175573vw 0;
  }
}

.top__service-list {
  margin-bottom: 6rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
  grid-template-rows: auto auto auto 1fr auto;
  gap: min(3vw, 3rem);
}
@media (max-width: 750px) {
  .top__service-list {
    margin-bottom: 10.1781170483vw;
    grid-template-columns: 100%;
    grid-template-rows: auto;
    row-gap: 5.0890585242vw;
  }
}
.top__service-list li, .top__service-list article {
  grid-row: span 5;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
  gap: 0;
}
@media (max-width: 750px) {
  .top__service-list li, .top__service-list article {
    grid-row: initial;
    display: block;
  }
}
.top__service-list .service__item-body {
  grid-row: span 4;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
}
@media (max-width: 750px) {
  .top__service-list .service__item-body {
    grid-row: initial;
    display: block;
  }
}
.top__service-list2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(3vw, 3rem) min(4vw, 4rem);
}
@media (max-width: 750px) {
  .top__service-list2 {
    grid-template-columns: 100%;
    grid-template-rows: auto;
    row-gap: 5.0890585242vw;
  }
}
.top__service-list2 li:has(.service__item--wide) {
  grid-column: 1/-1;
}
@media (max-width: 750px) {
  .top__service-list2 li:has(.service__item--wide) {
    grid-column: initial;
  }
}
@media (max-width: 750px) {
  .top__service h3:nth-of-type(3) {
    text-align: center;
  }
}

.top__introduction {
  background: #fff;
}
.top__introduction-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
  gap: min(3vw, 3rem);
}
@media (max-width: 750px) {
  .top__introduction-list {
    grid-template-columns: 100%;
    row-gap: 5.0890585242vw;
  }
}
@media (max-width: 750px) {
  .top__introduction-list li:nth-child(n+4) {
    display: none;
  }
}
.top__introduction-banner {
  max-width: 100rem;
  margin: 10rem auto 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
@media (max-width: 750px) {
  .top__introduction-banner {
    margin-top: 15.2671755725vw;
    grid-template-columns: 100%;
    gap: 3.8167938931vw;
  }
}
.top__introduction-banner a {
  display: block;
}

.top__about {
  background: #F0F3F5;
}
.top__about-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(6vw, 6rem);
}
@media (max-width: 750px) {
  .top__about-grid {
    grid-template-columns: 100%;
    row-gap: 10.1781170483vw;
  }
}
.top__about-txt {
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
}
@media (max-width: 750px) {
  .top__about-txt {
    font-size: 4.0712468193vw;
  }
}
.top__about-video iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 600/339;
}
@media (max-width: 750px) {
  .top__about-video iframe {
    aspect-ratio: 360/203;
  }
}

.top__news {
  padding-bottom: 18rem;
  background: #fff;
}
@media (max-width: 750px) {
  .top__news {
    padding-bottom: 25.4452926209vw;
  }
}
.top__news-grid {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
}
@media (max-width: 750px) {
  .top__news-grid {
    grid-template-columns: 100%;
  }
}
.top__news-grid + .top__news-grid {
  margin-top: 10rem;
}
@media (max-width: 750px) {
  .top__news-grid + .top__news-grid {
    margin-top: 15.2671755725vw;
  }
}
.top__news-title {
  grid-column: 1;
  grid-row: 1;
}
@media (max-width: 750px) {
  .top__news-title {
    grid-column: initial;
    grid-row: initial;
  }
}
.top__news-list {
  grid-column: 1/-1;
}
@media (max-width: 750px) {
  .top__news-list {
    grid-column: initial;
    grid-row: initial;
  }
}
@media (max-width: 750px) {
  .top__news-list li:nth-child(n+3) {
    display: none;
  }
}
.top__news-btn {
  grid-column: 2;
  grid-row: 1;
}
@media (max-width: 750px) {
  .top__news-btn {
    grid-column: initial;
    grid-row: initial;
    margin-top: 10.1781170483vw;
    text-align: center;
  }
  .top__news-btn .btn {
    min-width: 17.4666666667em;
    min-height: 4em;
    padding-left: 1.8666666667em;
    padding-right: 5.2em;
  }
}

.co__nav {
  margin-top: 20rem;
}
@media (max-width: 750px) {
  .co__nav {
    margin-top: 15.2671755725vw;
  }
}
.co__nav-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 4.7619047619%;
}
@media (max-width: 750px) {
  .co__nav-list {
    grid-template-columns: 100%;
    row-gap: 5.0890585242vw;
  }
}
.co__nav-list .btn {
  width: 100%;
}

.co__message-slogan {
  margin-bottom: 1.5em;
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.4rem, 4vw, 4rem);
  font-weight: bold;
  line-height: 1.5;
}
@media (max-width: 750px) {
  .co__message-slogan {
    margin-bottom: 8.3969465649vw;
    font-size: 7.1246819338vw;
    line-height: 1.6071428571;
  }
}
.co__message-president {
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  line-height: 1.5555555556;
}
@media (max-width: 750px) {
  .co__message-president {
    font-size: 4.5801526718vw;
  }
}
.co__message-president figcaption {
  margin-top: 1.6666666667em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.8rem;
}
@media (max-width: 750px) {
  .co__message-president figcaption {
    margin-top: 5.0890585242vw;
    gap: 2.0356234097vw;
  }
}
.co__message-president figcaption .name {
  font-size: 1.6666666667em;
  line-height: 1.3333333333;
}
.co__message-service {
  margin-top: 7rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media (max-width: 750px) {
  .co__message-service {
    --col-sp-gap: 1.272264631vw;
    width: 88.8888888889%;
    margin: 10.1781170483vw auto 0;
  }
}
.co__message-link {
  max-width: 73rem;
  margin: 6rem auto 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 4.2857142857%;
}
@media (max-width: 750px) {
  .co__message-link {
    width: 93.8888888889%;
    margin-top: 10.1781170483vw;
    grid-template-columns: 100%;
    row-gap: 5.0890585242vw;
  }
}
.co__message-link .btn {
  width: 100%;
}

.co__about-details a {
  text-decoration: underline;
}

.co__access-map {
  margin-bottom: 3rem;
}
@media (max-width: 750px) {
  .co__access-map {
    margin-bottom: 5.0890585242vw;
  }
}
.co__access-map iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1260/655;
}
.co__access-route {
  display: grid;
  grid-template-columns: 10rem 1fr;
  gap: 0.6rem;
  line-height: 2;
}
@media (max-width: 750px) {
  .co__access-route {
    grid-template-columns: 100%;
    row-gap: 2.5445292621vw;
  }
}
.co__access-route dt {
  font-weight: 500;
}

.history__timeline-years {
  border-top: 1px solid #868E96;
  display: grid;
  grid-template-columns: 15.0625em 1fr;
  line-height: 2;
}
@media (max-width: 750px) {
  .history__timeline-years {
    grid-template-columns: 100%;
  }
}
.history__timeline-years > dt, .history__timeline-years > dd {
  padding-block: 1em;
  border-bottom: 1px solid #868E96;
}
@media (max-width: 750px) {
  .history__timeline-years > dt, .history__timeline-years > dd {
    grid-column: initial;
  }
}
.history__timeline-years > dt {
  grid-column: 1;
  padding-right: 1.625em;
  font-weight: 500;
}
@media (max-width: 750px) {
  .history__timeline-years > dt {
    padding-bottom: 0;
    padding-right: 0;
    border-bottom: none;
  }
}
.history__timeline-years > dd {
  grid-column: 2;
}
@media (max-width: 750px) {
  .history__timeline-years > dd {
    padding-top: 0.5em;
  }
}
.history__timeline-years a {
  text-decoration: underline;
}

.history__timeline-months {
  display: grid;
  grid-template-columns: 3.375em 1fr;
  -webkit-column-gap: 1.625em;
     -moz-column-gap: 1.625em;
          column-gap: 1.625em;
}
@media (max-width: 750px) {
  .history__timeline-months {
    grid-template-columns: 2.1875em 1fr;
    -webkit-column-gap: 0.9375em;
       -moz-column-gap: 0.9375em;
            column-gap: 0.9375em;
  }
}
@media (max-width: 750px) {
  .history__timeline-months > dt, .history__timeline-months > dd {
    grid-column: initial;
  }
}
.history__timeline-months > dt {
  grid-column: 1;
  text-align: right;
}
.history__timeline-months > dd {
  grid-column: 2;
}
@media (max-width: 750px) {
  .recruit2 {
    background: #F7F7F7;
  }
}

#recruit2 .page__header .inner:has(h1) {
  max-width: 100rem;
}

.recruit2__type {
  max-width: 100rem;
  margin-inline: auto;
  text-align: center;
  position: relative;
}
.recruit2__type + .recruit2__type {
  margin-top: 10rem;
}
@media (max-width: 750px) {
  .recruit2__type + .recruit2__type {
    margin-top: 15.2671755725vw;
  }
}
.recruit2__type-img {
  display: block;
}
.recruit2__type .btn {
  min-width: 17.4666666667em;
  position: absolute;
  right: 2em;
  bottom: 2em;
  z-index: 5;
}
@media (max-width: 750px) {
  .recruit2__type .btn {
    margin-top: 5.0890585242vw;
    position: relative;
    right: auto;
    bottom: auto;
  }
}

.recruit__info h3 {
  margin-top: 6rem;
}
.recruit__info-details.midcareer {
  border-top: none;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.recruit__info-details.midcareer dt:first-of-type {
  font-size: clamp(1.4rem, 2.2vw, 2.2rem);
  font-weight: bold;
  border-width: 2px;
}
@media (max-width: 750px) {
  .recruit__info-details.midcareer dt:first-of-type {
    font-size: 5.0890585242vw;
  }
}
.recruit__info-details.midcareer dd:first-of-type {
  font-size: clamp(1.4rem, 2vw, 2rem);
  font-weight: bold;
  border-width: 2px;
}
@media (max-width: 750px) {
  .recruit__info-details.midcareer dd:first-of-type {
    font-size: 4.5801526718vw;
  }
}

.inq__info-agreement {
  margin-top: 1.875em;
  padding-left: 1.875em;
  line-height: 2;
}
@media (max-width: 750px) {
  .inq__info-agreement {
    padding-left: 0;
  }
}

.service__item {
  background: #fff;
  border-radius: 1.5rem;
  overflow: hidden;
}
.service__item-head {
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
  font-weight: bold;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 750px) {
  .service__item-head {
    font-size: 3.8167938931vw;
  }
}
.service__item-type, .service__item-tagline {
  padding: 1.2rem 0.5rem;
  color: #fff;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.service__item-type {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  min-width: 4.3333333333em;
  background: #0C7ACE;
}
.service__item-tagline {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background: #718096;
}
.service__item-body {
  padding: 2rem 8% 4rem;
}
@media (max-width: 750px) {
  .service__item-body {
    padding-top: 5.0890585242vw;
    padding-bottom: 10.1781170483vw;
  }
}
.service__item-logo {
  max-width: 30rem;
  height: 6.9rem;
  margin: 0 auto 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 750px) {
  .service__item-logo {
    height: auto;
    max-height: 6.5rem;
  }
}
.service__item-logo img {
  max-width: 100%;
  max-height: 35px;
  -o-object-fit: contain;
     object-fit: contain;
}
.service__item-catch {
  min-height: 2lh;
  font-size: clamp(1.4rem, 2.1vw, 2.1rem);
  font-weight: bold;
  line-height: 1.4761904762;
}
@media (max-width: 750px) {
  .service__item-catch {
    display: none;
  }
}
.service__item-catch p {
  line-height: inherit;
}
.service__item-description {
  margin-top: 1.6rem;
  font-size: clamp(1.3rem, 1.5vw, 1.5rem);
  line-height: 1.6666666667;
}
@media (max-width: 750px) {
  .service__item-description {
    display: none;
  }
}
.service__item-description p {
  line-height: inherit;
}
.service__item-more {
  margin-top: 3rem;
}
@media (max-width: 750px) {
  .service__item-more {
    margin-top: 7.6335877863vw;
  }
}
.service__item--wide .service__item-tagline, .service__item--simple .service__item-tagline {
  min-width: 38rem;
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial;
}
@media (max-width: 750px) {
  .service__item--wide .service__item-tagline, .service__item--simple .service__item-tagline {
    min-width: auto;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}
.service__item--wide .service__item-body, .service__item--simple .service__item-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  row-gap: 3rem;
}
@media (max-width: 750px) {
  .service__item--wide .service__item-body, .service__item--simple .service__item-body {
    padding-top: 7.6335877863vw;
    padding-bottom: 10.1781170483vw;
    padding-inline: 11.1959287532vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 7.6335877863vw;
  }
}
.service__item--wide .service__item-logo, .service__item--simple .service__item-logo {
  margin: 0;
}
@media (max-width: 750px) {
  .service__item--wide .service__item-logo, .service__item--simple .service__item-logo {
    width: 100%;
    max-width: 100%;
    height: 10.941475827vw;
  }
}
.service__item--wide .service__item-catch, .service__item--simple .service__item-catch {
  min-height: auto;
}
.service__item--wide .service__item-more, .service__item--simple .service__item-more {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0;
}
.service__item--wide .service__item-body {
  padding: 2.6rem 3.9682539683% 4rem;
  -webkit-column-gap: 2.380952381%;
     -moz-column-gap: 2.380952381%;
          column-gap: 2.380952381%;
}
.service__item--wide .service__item-logo {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: auto;
  max-width: 49rem;
  max-height: 8.5rem;
}
.service__item--wide .service__item-wideText {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 42rem;
}
@media (max-width: 750px) {
  .service__item--wide .service__item-wideText {
    display: none;
  }
}
.service__item--wide {
  container-type: inline-size;
}
@container (max-width: 900px) {
  .service__item--wide .service__item-body {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .service__item--wide .service__item-more {
    width: 100%;
  }
}
.service__item--simple .service__item-body {
  padding: 2.6rem 8.1967213115% 4rem;
  -webkit-column-gap: 6.5573770492%;
     -moz-column-gap: 6.5573770492%;
          column-gap: 6.5573770492%;
}
.service__item--simple .service__item-logo {
  height: 4.8rem;
  max-width: 28rem;
}
.service__item--simple {
  container-type: inline-size;
}
@container (max-width: 450px) {
  .service__item--simple .service__item-body {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.page-service__header {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
.page-service__header_img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.page-service__header_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px 40px;
  margin-top: 2.5445292621vw;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  container-type: inline-size;
}
@container (max-width: 900px) {
  .page-service__header_link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.page-service__lead {
  margin-top: 5.0890585242vw;
  background: #F0F3F5;
  padding: 20px;
  margin-bottom: 7.6335877863vw;
  padding: 60px 20px;
  text-align: center;
  font-size: clamp(1.4rem, 4vw, 4rem);
  font-weight: bold;
}
@media (max-width: 750px) {
  .page-service__lead {
    font-size: 5.0890585242vw;
    padding: 30px 10px;
  }
}
.page-service__lead strong {
  font-weight: 900;
  color: #0C6CB5;
}
.page-service__price {
  margin-top: 5.0890585242vw;
  background: #F0F3F5;
  padding: 20px;
  margin-bottom: 7.6335877863vw;
  padding: 60px 20px;
  font-size: clamp(1.4rem, 2vw, 2rem);
  font-weight: bold;
}
@media (max-width: 750px) {
  .page-service__price {
    font-size: 5.0890585242vw;
    padding: 30px 10px;
  }
}
.page-service__section {
  margin-top: 7.6335877863vw;
}
.page-service__title {
  text-align: center;
  padding-bottom: 20px;
  font-size: clamp(1.4rem, 4.2vw, 4.2rem);
  font-weight: bold;
}
@media (max-width: 750px) {
  .page-service__title {
    font-size: 5.0890585242vw;
  }
}
.page-service__title:after {
  background: url(../img/common/service-ttl-icon.svg) no-repeat center/100%;
  width: 460px;
  height: 22px;
  max-width: 100%;
  content: "";
  display: block;
  margin: 20px auto 0;
}
@media (max-width: 750px) {
  .page-service__title:after {
    width: 230px;
    height: 11px;
    margin-top: 10px;
  }
}
.page-service__blocklist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 40px 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  container-type: inline-size;
}
@container (max-width: 900px) {
  .page-service__blocklist {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.page-service__blockitem {
  border-radius: 1.5rem;
  background-color: #E2F2FF;
  width: calc(33.3333333333% - 20px);
  padding: 50px 40px 40px;
}
@media (max-width: 750px) {
  .page-service__blockitem {
    width: 100%;
    padding: 30px 20px 20px;
  }
}
.page-service__blockitem.only {
  width: 100%;
}
.page-service__blockitem.second {
  width: calc(50% - 20px);
}
.page-service__blocktitle {
  text-align: center;
  color: #fff;
  background-color: #0C6CB5;
  font-size: clamp(1.4rem, 2.8vw, 2.8rem);
  padding: 10px;
  margin-bottom: 20px;
  border-radius: 15px 0 15px 0;
}
@media (max-width: 750px) {
  .page-service__blocktitle {
    font-size: 4.0712468193vw;
  }
}
.page-service__youtube {
  max-width: 800px;
  aspect-ratio: 16/9;
  margin-top: 5.0890585242vw;
  margin-left: auto;
  margin-right: auto;
}
.page-service__youtube iframe {
  width: 100%;
  height: 100%;
}
.page-service__point {
  background-color: #F8F9FA;
  padding: 30px 40px;
  margin-top: 2.5445292621vw;
}
.page-service__point_num {
  border-radius: 50% 50% 50% 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background-color: #0C7ACE;
  color: #fff;
  font-size: clamp(1.4rem, 2vw, 2rem);
  width: 100px;
  height: 100px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media (max-width: 750px) {
  .page-service__point_num {
    font-size: 3.8167938931vw;
    width: 60px;
    height: 60px;
  }
}
.page-service__point_title {
  margin-top: 20px;
  font-size: clamp(1.4rem, 3.8vw, 3.8rem);
}
@media (max-width: 750px) {
  .page-service__point_title {
    font-size: 4.834605598vw;
  }
}
.page-service__point_lead {
  margin-top: 20px;
  font-size: clamp(1.4rem, 2.5vw, 2.5rem);
  font-weight: bold;
}
@media (max-width: 750px) {
  .page-service__point_lead {
    font-size: 4.0712468193vw;
  }
}
.page-service__point_text {
  margin-bottom: 2.5445292621vw;
}
.page-service__case {
  border: solid 1px #0C7ACE;
  background-color: #F8F9FA;
  border-radius: 0 15px 15px 15px;
  padding: 60px 40px;
  margin-top: 7.6335877863vw;
  position: relative;
}
@media (max-width: 750px) {
  .page-service__case {
    padding: 30px 20px;
    margin-top: 15.2671755725vw;
  }
}
.page-service__case_num {
  border-radius: 15px 15px 0 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background-color: #0C7ACE;
  color: #fff;
  width: 170px;
  height: 65px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  gap: 5px;
  position: absolute;
  left: 0;
  top: -65px;
}
@media (max-width: 750px) {
  .page-service__case_num {
    font-size: 3.8167938931vw;
    width: 100px;
    height: 40px;
    top: -40px;
  }
}
.page-service__case_num .text {
  font-size: clamp(1.4rem, 2vw, 2rem);
}
@media (max-width: 750px) {
  .page-service__case_num .text {
    font-size: 3.8167938931vw;
  }
}
.page-service__case_num .num {
  font-size: clamp(1.4rem, 4vw, 4rem);
}
@media (max-width: 750px) {
  .page-service__case_num .num {
    font-size: 5.0890585242vw;
  }
}
.page-service__case_title {
  font-size: clamp(1.4rem, 3.8vw, 3.8rem);
}
@media (max-width: 750px) {
  .page-service__case_title {
    font-size: 5.0890585242vw;
  }
}
.page-service__case_lead {
  margin-top: 20px;
  font-size: clamp(1.4rem, 2.5vw, 2.5rem);
  font-weight: bold;
}
@media (max-width: 750px) {
  .page-service__case_lead {
    font-size: 4.5801526718vw;
  }
}
.page-service__case_text {
  margin-bottom: 2.5445292621vw;
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
}
@media (max-width: 750px) {
  .page-service__case_text {
    font-size: 3.0534351145vw;
  }
}
.page-service__case_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 750px) {
  .page-service__case_group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 20px;
  }
}
.page-service__case_image {
  width: 25%;
}
@media (max-width: 750px) {
  .page-service__case_image {
    width: 100%;
  }
}
.page-service__case_detail {
  width: 73%;
}
@media (max-width: 750px) {
  .page-service__case_detail {
    width: 100%;
  }
}
.page-service__case_link {
  text-align: right;
  margin-top: 2.5445292621vw;
}
@media (max-width: 750px) {
  .page-service__case_link {
    text-align: center;
  }
}
.page-service__case_link--bottom {
  margin-top: 5.0890585242vw;
  text-align: center;
}
.page-service__faq {
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
@media (max-width: 750px) {
  .page-service__faq {
    font-size: 4.0712468193vw;
  }
}
.page-service__faq_question {
  margin-bottom: 10px;
  background-color: #E1F2FF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 15px;
}
.page-service__faq_question .label {
  background-color: #0C7ACE;
  color: #fff;
}
.page-service__faq_answer {
  border: solid 2px #939393;
  border-radius: 15px;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page-service__faq_answer .label {
  border-right: solid 2px #939393;
}
.page-service__faq .label {
  font-weight: bold;
  border-radius: 15px 0 0 15px;
  font-size: clamp(1.4rem, 3vw, 3rem);
  padding: 10px 20px;
}
@media (max-width: 750px) {
  .page-service__faq .label {
    font-size: 5.0890585242vw;
  }
}
.page-service__faq .text {
  padding: 20px 30px;
}
@media (max-width: 750px) {
  .page-service__faq .text {
    padding: 10px 20px;
  }
}

.archive-service__tablist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: solid 3px #0C7ACE;
  margin-bottom: 40px;
}
@media (max-width: 750px) {
  .archive-service__tablist {
    margin-bottom: 20px;
  }
}
.archive-service__tablist .tab__indicator {
  display: none;
}
.archive-service__tabitem {
  width: 50%;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #0C7ACE;
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  font-weight: 500;
  border-radius: 20px 20px 0 0;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.archive-service__tabitem:hover {
  opacity: 0.65;
}
@media (max-width: 750px) {
  .archive-service__tabitem {
    font-size: 3.5623409669vw;
  }
}
.archive-service__tabitem.active {
  background-color: #0C7ACE;
  color: #fff;
}
.archive-service__tabpanel {
  display: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.archive-service__tabpanel.active {
  display: block;
}
.archive-service__tabpanel .service__item-head, .archive-service__tabpanel .service__item-body {
  background-color: #F8F9FA;
}
.archive-service__accordion {
  margin-bottom: 20px;
  border: solid 1px #718096;
  border-radius: 15px;
  padding: 20px 30px 20px 20px;
}
@media (max-width: 750px) {
  .archive-service__accordion {
    padding: 10px;
  }
}
.archive-service__accordion_body {
  display: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  height: 0;
}
.archive-service__accordion_title {
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding-right: 40px;
}
@media (max-width: 750px) {
  .archive-service__accordion_title {
    padding-right: 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.archive-service__accordion_title:hover {
  opacity: 0.65;
}
.archive-service__accordion_title .num {
  color: #0C7ACE;
  font-size: clamp(1.4rem, 3vw, 3rem);
  font-weight: bold;
  margin-right: 10px;
}
@media (max-width: 750px) {
  .archive-service__accordion_title .num {
    font-size: 5.0890585242vw;
  }
}
.archive-service__accordion_title .main {
  font-size: clamp(1.4rem, 2.1vw, 2.1rem);
  font-weight: bold;
  margin-right: 25px;
  width: 17em;
}
@media (max-width: 750px) {
  .archive-service__accordion_title .main {
    font-size: 4.0712468193vw;
    margin-right: 0;
  }
}
.archive-service__accordion_title .sub {
  font-size: clamp(1.4rem, 1.4vw, 1.4rem);
}
.archive-service__accordion_title .sub span {
  font-weight: bold;
}
@media (max-width: 750px) {
  .archive-service__accordion_title .sub {
    font-size: 3.0534351145vw;
  }
}
.archive-service__accordion_title::before {
  content: "";
  width: 40px;
  height: 40px;
  border: 2px solid #0C7ACE;
  border-radius: 50%;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background: -webkit-gradient(linear, left top, left bottom, from(#0C7ACE), to(#0C7ACE)) no-repeat center/14px 4px;
  background: linear-gradient(#0C7ACE, #0C7ACE) no-repeat center/14px 4px;
}
@media (max-width: 750px) {
  .archive-service__accordion_title::before {
    width: 20px;
    height: 20px;
    background: -webkit-gradient(linear, left top, left bottom, from(#0C7ACE), to(#0C7ACE)) no-repeat center/7px 2px;
    background: linear-gradient(#0C7ACE, #0C7ACE) no-repeat center/7px 2px;
  }
}
.archive-service__accordion_title::after {
  content: "";
  width: 40px;
  height: 40px;
  position: absolute;
  right: 0; /* 位置調整 */
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background: -webkit-gradient(linear, left top, left bottom, from(#0C7ACE), to(#0C7ACE)) no-repeat center/4px 14px;
  background: linear-gradient(#0C7ACE, #0C7ACE) no-repeat center/4px 14px;
}
@media (max-width: 750px) {
  .archive-service__accordion_title::after {
    width: 20px;
    height: 20px;
    background: -webkit-gradient(linear, left top, left bottom, from(#0C7ACE), to(#0C7ACE)) no-repeat center/2px 7px;
    background: linear-gradient(#0C7ACE, #0C7ACE) no-repeat center/2px 7px;
  }
}
.archive-service__accordion.open .archive-service__accordion_body {
  display: block;
  height: auto;
}
.archive-service__accordion.open .archive-service__accordion_title::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.archive-service__label {
  width: 280px;
  height: 50px;
  background-color: #F0F3F5;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.4rem, 2.1vw, 2.1rem);
  font-weight: bold;
  margin-left: 30px;
  margin-bottom: 20px;
  margin-top: 35px;
}
@media (max-width: 750px) {
  .archive-service__label {
    font-size: 3.5623409669vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    width: 80%;
  }
}
.archive-service__solution_group {
  padding-left: 30px;
  padding-right: 30px;
  margin-bottom: 35px;
}
@media (max-width: 750px) {
  .archive-service__solution_group {
    padding-left: 0;
    padding-right: 0;
  }
}
.archive-service__solution_item {
  border-bottom: solid 1px #ABB4C1;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.archive-service__solution_item:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.archive-service__solution_label {
  font-size: clamp(1.4rem, 2vw, 2rem);
  margin-bottom: 15px;
}
@media (max-width: 750px) {
  .archive-service__solution_label {
    font-size: 3.8167938931vw;
  }
}
.archive-service__solution_logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}
.archive-service__solution_logo:last-of-type {
  margin-bottom: 0;
}
@media (max-width: 750px) {
  .archive-service__solution_logo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.archive-service__solution_logo img {
  height: 38px;
  width: auto;
}
@media (max-width: 750px) {
  .archive-service__solution_logo img {
    height: 30px;
  }
}
.archive-service__solution_lead {
  width: 65%;
  font-size: clamp(1.4rem, 2vw, 2rem);
}
@media (max-width: 750px) {
  .archive-service__solution_lead {
    font-size: 3.8167938931vw;
    width: 100%;
  }
}
.archive-service__solution_case_label {
  width: 280px;
  height: 50px;
  background-color: #718096;
  border-radius: 10px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.4rem, 2.1vw, 2.1rem);
  font-weight: bold;
  margin-left: 30px;
  margin-bottom: 20px;
  margin-top: 35px;
}
@media (max-width: 750px) {
  .archive-service__solution_case_label {
    font-size: 3.5623409669vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    width: 80%;
  }
}
.archive-service__solution_case_group {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px 14px;
}
@media (max-width: 750px) {
  .archive-service__solution_case_group {
    grid-template-columns: 1fr;
  }
}
.archive-service__solution_case_item {
  grid-row: span 5;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
  gap: 0;
}
.archive-service__solution_case_image {
  background-color: #B1B1B1;
  border-radius: 15px 15px 0 0;
  height: 200px;
  width: 100%;
}
@media (max-width: 750px) {
  .archive-service__solution_case_image {
    height: 150px;
  }
}
.archive-service__solution_case_image img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.archive-service__solution_case_body {
  background-color: #F8F9FA;
  padding: 20px 35px 40px;
  display: grid;
  grid-row: span 4;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
}
@media (max-width: 750px) {
  .archive-service__solution_case_body {
    padding: 10px 20px 20px;
  }
}
.archive-service__solution_case_name {
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
  font-weight: bold;
  margin-bottom: 20px;
}
@media (max-width: 750px) {
  .archive-service__solution_case_name {
    font-size: 3.8167938931vw;
  }
}
.archive-service__solution_case_taglist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.archive-service__solution_case_tagitem {
  width: 106px;
  height: 26px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: clamp(1.4rem, 1.2vw, 1.2rem);
  font-weight: bold;
  background-color: #718096;
  border-radius: 4px;
}
@media (max-width: 750px) {
  .archive-service__solution_case_tagitem {
    font-size: 3.0534351145vw;
    width: 100%;
  }
}
.archive-service__solution_case_tagitem.on {
  background-color: #0C7ACE;
}
.archive-service__solution_case_lead {
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
}
@media (max-width: 750px) {
  .archive-service__solution_case_lead {
    font-size: 3.8167938931vw;
  }
}
.archive-service__lead {
  margin-top: 20px;
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
}
@media (max-width: 750px) {
  .archive-service__lead {
    font-size: 3.8167938931vw;
  }
}

.introduction__item {
  background: #F8F9FA;
  border-radius: 1.5rem;
  overflow: hidden;
  height: 100%;
}
.introduction__item-thumb {
  aspect-ratio: 4/3;
  overflow: hidden;
}
.introduction__item-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.introduction__item-body {
  padding: 2rem 10% 4rem;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
@media (max-width: 750px) {
  .introduction__item-body {
    padding-top: 5.0890585242vw;
    padding-bottom: 10.1781170483vw;
    padding-inline: 8.9058524173vw;
    font-size: 4.0712468193vw;
  }
}
.introduction__item-title {
  font-size: inherit;
  font-weight: bold;
  line-height: 1.9375;
}
.introduction__item-description {
  margin-top: 2rem;
}
.introduction__item-description p {
  line-height: 1.6875;
}
.introduction__item-service {
  margin-top: 3rem;
}
.introduction__item-service .post-tag {
  min-width: 9.2857142857em;
}
@media (max-width: 750px) {
  .introduction__item-service .post-tag {
    min-width: 8.5714285714em;
  }
}
.introduction__item a {
  display: block;
}
.introduction__item a:hover {
  opacity: 1;
}
.introduction__item a:hover .introduction__item-thumb img {
  scale: 1.1;
}

.archive-case__searchbox {
  border: solid 1px #ADB5BD;
  border-radius: 15px;
  padding: 60px;
  margin-bottom: 60px;
}
@media (max-width: 750px) {
  .archive-case__searchbox {
    padding: 30px;
    margin-bottom: 30px;
  }
}
.archive-case__searchbox_wrap {
  padding-bottom: 30px;
  border-bottom: solid 1px #AFB5B9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  margin-bottom: 30px;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
.archive-case__searchbox_wrap:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
@media (max-width: 750px) {
  .archive-case__searchbox_wrap {
    font-size: 3.0534351145vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
    margin-bottom: 10px;
    padding-bottom: 10px;
  }
}
.archive-case__searchbox_label {
  font-weight: 500;
  width: 5em;
}
.archive-case__searchbox_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5em 3em;
  margin-bottom: 40px;
  width: calc(100% - 5em);
}
@media (max-width: 750px) {
  .archive-case__searchbox_list {
    margin-bottom: 20px;
    width: 100%;
  }
}
.archive-case__searchbox_btn {
  margin-left: auto;
  margin-right: auto;
  display: block;
  width: 260px;
}
.archive-case__label {
  width: 280px;
  height: 50px;
  background-color: #718096;
  border-radius: 10px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.4rem, 2.1vw, 2.1rem);
  font-weight: bold;
  margin-left: 30px;
  margin-bottom: 20px;
  margin-top: 35px;
}
@media (max-width: 750px) {
  .archive-case__label {
    font-size: 3.5623409669vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    width: 80%;
  }
}
.archive-case__group {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px 14px;
}
@media (max-width: 750px) {
  .archive-case__group {
    grid-template-columns: 1fr;
  }
}
.archive-case__item {
  grid-row: span 5;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
  gap: 0;
}
.archive-case__image {
  background-color: #B1B1B1;
  border-radius: 15px 15px 0 0;
  height: 210px;
  width: 100%;
}
.archive-case__image img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  -o-object-position: top center;
     object-position: top center;
  border-radius: 15px 15px 0 0;
}
.archive-case__body {
  background-color: #F8F9FA;
  padding: 20px 35px 40px;
  display: grid;
  grid-row: span 4;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
  border-radius: 0 0 15px 15px;
}
@media (max-width: 750px) {
  .archive-case__body {
    padding: 10px 20px 20px;
  }
}
.archive-case__name {
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
  font-weight: bold;
  margin-bottom: 20px;
}
@media (max-width: 750px) {
  .archive-case__name {
    font-size: 3.8167938931vw;
  }
}
.archive-case__taglist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.archive-case__tagitem {
  width: calc(50% - 8px);
  height: 26px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: clamp(1.4rem, 1.2vw, 1.2rem);
  font-weight: bold;
  background-color: #718096;
  border-radius: 4px;
}
@media (max-width: 750px) {
  .archive-case__tagitem {
    font-size: 3.0534351145vw;
    width: 100%;
  }
}
.archive-case__tagitem.on {
  background-color: #0C7ACE;
}
.archive-case__lead {
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
}
@media (max-width: 750px) {
  .archive-case__lead {
    font-size: 3.8167938931vw;
  }
}

.page-case__header {
  padding-bottom: 80px;
}
@media (max-width: 750px) {
  .page-case__header {
    padding-bottom: 40px;
  }
}
.page-case__header_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-bottom: 20px;
  border-bottom: solid 1px #000;
  margin-bottom: 40px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media (max-width: 750px) {
  .page-case__header_top {
    margin-bottom: 20px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.page-case__header_left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 20px;
}
@media (max-width: 750px) {
  .page-case__header_left {
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.page-case__header_title {
  font-weight: bold;
  font-size: clamp(1.4rem, 3vw, 3rem);
}
@media (max-width: 750px) {
  .page-case__header_title {
    font-size: 5.0890585242vw;
  }
}
.page-case__header_note {
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
}
@media (max-width: 750px) {
  .page-case__header_note {
    font-size: 4.5801526718vw;
  }
}
.page-case__header_right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media (max-width: 750px) {
  .page-case__header_right {
    gap: 5px;
  }
}
.page-case__header_right .logo01, .page-case__header_right .logo02, .page-case__header_right .logo03 {
  width: 160px;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 750px) {
  .page-case__header_right .logo01, .page-case__header_right .logo02, .page-case__header_right .logo03 {
    width: 100px;
    height: 32px;
  }
}
.page-case__header_right .logo01 img, .page-case__header_right .logo02 img, .page-case__header_right .logo03 img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}
.page-case__header_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 750px) {
  .page-case__header_group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.page-case__header_group figure {
  width: 35.7%;
}
@media (max-width: 750px) {
  .page-case__header_group figure {
    width: 100%;
    margin-bottom: 20px;
  }
}
.page-case__header_group figure.full {
  width: 100%;
}
.page-case__header_group figure.full img {
  width: 100%;
}
.page-case__header_group figcaption {
  margin-top: 20px;
  font-size: clamp(1.4rem, 1.5vw, 1.5rem);
}
@media (max-width: 750px) {
  .page-case__header_group figcaption {
    font-size: 3.8167938931vw;
    margin-bottom: 10px;
  }
}
.page-case__header_detail {
  width: 61.1%;
  background-color: #F0F3F5;
  border-radius: 15px;
  padding: 40px;
}
@media (max-width: 750px) {
  .page-case__header_detail {
    width: 100%;
    padding: 20px;
  }
}
.page-case__header_list {
  margin-bottom: 40px;
}
@media (max-width: 750px) {
  .page-case__header_list {
    margin-bottom: 20px;
  }
}
.page-case__header_list:last-of-type {
  margin-bottom: 0;
}
.page-case__header_label {
  margin-bottom: 20px;
  color: #fff;
  font-size: clamp(1.4rem, 2vw, 2rem);
  font-weight: bold;
  background-color: #0C7ACE;
  border-radius: 5px;
  padding: 5px 20px;
}
@media (max-width: 750px) {
  .page-case__header_label {
    font-size: 5.0890585242vw;
    padding: 5px 10px;
    margin-bottom: 10px;
  }
}
.page-case__tags {
  display: grid;
  grid-template-columns: 10em minmax(0, 1fr);
  row-gap: 25px;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 80px;
}
@media (max-width: 750px) {
  .page-case__tags {
    grid-template-columns: 8em minmax(0, 1fr);
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
    row-gap: 15px;
    margin-bottom: 40px;
  }
}
.page-case__tags_label {
  margin: 0;
  width: 10em;
  font-weight: bold;
  background-color: #718096;
  border-radius: 4px;
  padding: 2px 5px 4px;
  color: #fff;
  font-size: clamp(1.4rem, 1.4vw, 1.4rem);
  text-align: center;
}
@media (max-width: 750px) {
  .page-case__tags_label {
    font-size: 3.0534351145vw;
  }
}
.page-case__tags_detail {
  margin: 0;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
@media (max-width: 750px) {
  .page-case__tags_detail {
    gap: 10px;
  }
}
.page-case__tags_detail .solution img {
  height: 25px;
  width: auto;
}
.page-case__contents {
  margin-top: 60px;
}
@media (max-width: 750px) {
  .page-case__contents {
    margin-top: 30px;
  }
}
.page-case__contents_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 40px;
}
.page-case__contents_flex:first-of-type {
  margin-top: 0;
}
@media (max-width: 750px) {
  .page-case__contents_flex {
    margin-top: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
  }
}
.page-case__contents_flex.small .page-case__contents_flex--img {
  width: 18.25%;
}
@media (max-width: 750px) {
  .page-case__contents_flex.small .page-case__contents_flex--img {
    width: 100%;
  }
  .page-case__contents_flex.small .page-case__contents_flex--img img {
    margin: 0 auto;
  }
}
.page-case__contents_flex.small .page-case__contents_flex--text {
  width: 78.6%;
}
@media (max-width: 750px) {
  .page-case__contents_flex.small .page-case__contents_flex--text {
    width: 100%;
  }
}
.page-case__contents_flex.large .page-case__contents_flex--img {
  width: 35.7%;
}
@media (max-width: 750px) {
  .page-case__contents_flex.large .page-case__contents_flex--img {
    width: 100%;
    text-align: center;
  }
}
.page-case__contents_flex.large .page-case__contents_flex--text {
  width: 61.1%;
}
@media (max-width: 750px) {
  .page-case__contents_flex.large .page-case__contents_flex--text {
    width: 100%;
  }
}
.page-case__contents_title {
  font-size: clamp(1.4rem, 2vw, 2rem);
  font-weight: bold;
  margin-bottom: 30px;
  color: #0C7ACE;
}
@media (max-width: 750px) {
  .page-case__contents_title {
    font-size: 5.0890585242vw;
    margin-bottom: 15px;
  }
}
.page-case__contents_lead {
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  font-weight: bold;
  margin-bottom: 15px;
}
@media (max-width: 750px) {
  .page-case__contents_lead {
    font-size: 4.5801526718vw;
    margin-bottom: 10px;
  }
}
.page-case__contents_list li {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 2;
}
.page-case__contents_list li::before {
  content: "・";
}
.page-case__contents_numlist {
  counter-reset: my-counter;
}
.page-case__contents_numlist li {
  font-size: 16px;
  line-height: 1.5;
  padding-left: 30px;
  position: relative;
  line-height: 2;
}
.page-case__contents_numlist li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  border: 1px solid;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 22px;
  width: 22px;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0.4em;
  left: 0;
}
.page-case__contents_btn {
  margin-top: 100px;
}
@media (max-width: 750px) {
  .page-case__contents_btn {
    margin-top: 50px;
  }
}
.page-case__contents_btn .btn {
  width: 400px;
}/*# sourceMappingURL=style.css.map */