@charset "UTF-8";

/* =================== */
/*  variable             */
/* =================== */

:root {

  /* inner */
  --innerPadingInline: 16px;
  --innerWidth: 1228px;

  /* font */
  --font-family-base: "イワタ細ゴシック体オールド_04", sans-serif;
  --font-family-base-medium: "イワタ中ゴシック体オールド_04", sans-serif;
  --font-family-base-light: "イワタ細ゴシック体オールド_04", sans-serif;
  --font-family-noto: "Noto Sans JP", serif;

  /* カラー */
  /* 白系 */
  --color-white01: #fFF;
  --color-gray01: #dcdcdc;
  --color-gray02: #F4F5F6;
  --color-gray03: #BFBFBF;
  --color-gray04: #D6D6D6;
  --color-gray05: #c3c3c3;
  --color-gray06: #e7e7e7;
  --color-gray07: #ddd;
  --color-gray08: #949494;
  --color-gray09: #f5f5f5;
  --color-gray10: #f1f1f1;
  --color-gray11: #c8c8c8;
  --color-gray12: #e6e3dc;
  --color-gray13: #d5d5d5;
  /* 黒系 */
  --primaryText_black: #192030;
  --color-black01: #333;
  --color-black02: #0E1014;
  --color-black03: #000;
  --color-black04: #272E3D;
  --color-black05: #2e2e2e;
  --color-black06: #4c4c4c;
  --color-black07: #1f1f1f;
  --color-black08: #222;
  --color-black09: #161f32;
  --color-black10: #383838;

  /* 青系 */
  --color-blue01: #123480;
  --color-blue02: #EBF4FF;
  --color-blue03: #4967CA;
  --color-blue04: #D9E4F1;

  /* その他の色 */
  --color-green01: #639E81;
  --color-green02: #478566;
  --color-green03: #529a77;
  --color-brown01: #B79A79;
  --color-brown02: #8C6E4B;
  --color-brown03: #939586;
  --color-pink01: #AE8293;
  --color-orange01: #e29d4e;

  /* weight */
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-regular02: 460;
  --font-weight-normal: 500;
  --font-weight-normal02: 560;
  --font-weight-medium: 600;
  --font-weight-bold: 700;
  --font-weight-bold02: 790;
  --font-weight-black: 900;

  /* line-height */
  --leading-tight: 1.25;
  --leading-snug: 1.5;
  --leading-normal: 1.6;
  --leading-relaxed: 1.70;
  --leading-relaxed02: 1.75;
  --leading-loose: 2;

  /* letter-spacing */
  --tracking-tight: .02em;
  --tracking-normal: .04em;

  /* hover */
  --hover-opacity: 0.8;

  /* border-radius */
  --rounded-min: 2px;
  --rounded-sm: 4px;
  --rounded-md: 8px;
  --rounded-md2: 10px;
  --rounded-lg: 12px;
  --rounded-xl: 16px;
  --rounded-xxl: 24px;
  --rounded-full: calc(infinity * 1px);
}

/* @font-face {
  font-family: 'Iwata Gothic Old Pr6N L';
  src: url('../font-data/after-convert/IwaOGoPr6N-Lt.otf') format('opentype');
}

@font-face {
  font-family: 'Iwata Gothic Old Pr6N M';
  src: url('../font-data/after-convert/IwaOGoPr6N-Md.otf') format('opentype');
}

@font-face {
  font-family: 'Iwata Gothic Old Pr6N B';
  src: url('../font-data/after-convert/IwaOGoPr6N-Bd.otf') format('opentype');
}



@font-face {
  font-family: 'Iwa UD Goth Disp Pr6N M';
  src: url('../font-data/after-convert/IwaUDGoDpPr6N-Md.otf') format('opentype');
}


@font-face {
  font-family: 'Iwata UD Gothic StdN VF TTF';
  src: url('../font-data/after-convert/IwataUDGothicStdN-VF.ttf') format('opentype');
}

@font-face {
  font-family: 'Iwata Mincho Old Pr6N R';
  src: url('../font-data/after-convert/IwaOMinPr6N-Th.otf') format('opentype');
}

@font-face {
  font-family: 'Iwata Mincho Old Pr6N B';
  src: url('../font-data/after-convert/IwaOMinPr6N-Bd.otf') format('opentype');
}

@font-face {
  font-family: 'Iwata New Gothic Pro B';
  src: url('../font-data/after-convert/IwaNGoPro-Bd.otf') format('opentype');

}

@font-face {
  font-family: 'Iwata New Gothic Pro E';
  src: url('../font-data/after-convert/IwaNGoPro-Eb.otf') format('opentype');

} */



/* =================== */
/*  base             */
/* =================== */

a {
  -webkit-transition: opacity 0.3s;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}

@media (any-hover: hover) {
  a:hover {
    opacity: var(--hover-opacity);
  }
}

@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

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


body {
  margin: 0 auto;
  color: var(--color-black01);
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
  font-family: var(--font-family-base);
  word-break: break-all;
}

:where(button, [type='button'], [type='reset'], [type='submit']) {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

:where( :-moz-any-link,
  button,
  [type='button'],
  [type='reset'],
  [type='submit'],
  label[for],
  select,
  summary,
  [role='tab'],
  [role='button']) {
  cursor: pointer;
}

:where( :-webkit-any-link,
  button,
  [type='button'],
  [type='reset'],
  [type='submit'],
  label[for],
  select,
  summary,
  [role='tab'],
  [role='button']) {
  cursor: pointer;
}

:where( :any-link,
  button,
  [type='button'],
  [type='reset'],
  [type='submit'],
  label[for],
  select,
  summary,
  [role='tab'],
  [role='button']) {
  cursor: pointer;
}

:focus:not(:focus-visible) {
  outline: none;
}


/* =================== */
/*  utilitiy         */
/* =================== */

.u-br-sp {
  display: block;
}

@media (min-width: 992px) {
  .u-br-sp {
    display: none;
  }
}

.u-br-pc {
  display: none;
}

@media (min-width: 992px) {
  .u-br-pc {
    display: block;
  }
}

.u-sp-none {
  display: none !important;
}

@media (min-width: 768px) {
  .u-sp-none {
    display: block !important;
  }
}

.u-pc-none {
  display: block !important;
}

@media (min-width: 768px) {
  .u-pc-none {
    display: none !important;
  }
}

.u-visuallyhidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  border: 0;
}


/* =================== */
/*  layout         */
/* =================== */

.l-container {
  margin: 0 auto;
  background-color: var(--color-white01);
}

.l-inner {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-inline: var(--innerPadingInline);
}

@media (min-width: 768px) {
  .l-inner {
    --innerPadingInline: 28px;
    max-width: calc(var(--innerWidth) + (var(--innerPadingInline) * 2));
  }
}

@media (min-width: 768px) {
  .l-inner.l-inner--middle {
    --innerWidth: 750px;
  }
}

.l-header {
  height: 80px;
}


@media (min-width: 992px) {
  .l-header {
    height: 106px;
  }
}

/* =================== */
/*  component        */
/* =================== */

/* 本文 */
.c-commonText {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-commonText {
    font-size: 16px;
    line-height: var(--leading-normal);
  }
}

.c-commonText.c-commonText--colorBlue {
  color: var(--color-blue01);
}

.c-subText {
  color: var(--primaryText_black);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-weight: var(--font-weight-regular);
  /* font-family: var(--font-family-noto); */
  font-size: 14px;
}

@media (min-width: 992px) {
  .c-subText {
    font-size: 14px;
  }
}


/* タイトル系 */
.c-sectionSecondaryTitle {
  display: grid;
  padding-top: 0;
  padding-bottom: 0;
}

@media (min-width: 992px) {
  .c-sectionSecondaryTitle {
    grid-template-columns: auto 1fr;
    -webkit-column-gap: 24px;
    -moz-column-gap: 24px;
    column-gap: 24px;
    grid-auto-flow: column;
    padding-top: 23px;
    padding-bottom: 23px;
  }
}

.c-sectionSecondaryTitle__main {
  color: var(--color-black01);
  font-size: 32px;
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-relaxed02);
  text-transform: uppercase;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-sectionSecondaryTitle__main {
    line-height: 1.5;
    font-size: 46px;
  }
}


.c-sectionSecondaryTitle__main.c-sectionSecondaryTitle__main--familyType2 {
  /* font-family: 'Iwata Mincho Old Pr6N B'; */
}


@media (min-width: 992px) {
  .c-sectionSecondaryTitle__main.c-sectionSecondaryTitle__main--sizeMiddle {
    font-size: 40px;
  }

}

.c-title {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: normal;
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  position: relative;
  padding-bottom: 12px;
  font-family: var(--font-family-base);
}

.c-title::before {
  content: "";
  background-color: currentColor;
  width: 100%;
  height: 1px;
  display: block;
  position: absolute;
  bottom: -0px;
  left: 0;
  opacity: .5;
}


.c-title2 {
  color: var(--color-blue01);
  font-size: 22px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  position: relative;
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-title2 {
    font-size: 36px;
  }
}


.c-sectionTitle {
  color: var(--primaryText_black);
  font-size: 32px;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-sectionTitle {
    font-size: 46px;

  }
}

.c-sectionTitle.c-sectionTitle--colorWhite {
  color: var(--color-white01);
}


/* 表 */
.c-commonTable {
  border: 1px solid var(--color-gray05);
  border-collapse: collapse;
  border-bottom: transparent;
}

@media (min-width: 992px) {

  .c-commonTable {
    width: 100%;
  }
}


.c-commonTable th {
  color: var(--color-black01);
  background-color: var(--color-blue02);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  padding: 12px;
  width: 114px;
  font-family: var(--font-family-base);
  display: block;
  width: 100%;
  border-bottom: 1px solid var(--color-gray05);

}

@media (min-width: 992px) {
  .c-commonTable th {
    font-size: 16px;
    font-weight: var(--font-weight-normal);
    padding: 5px 22px 5px 24px;
    width: 248px;
    display: table-cell;
    border-right: 1px solid var(--color-gray05);

  }
}


.c-commonTable td {
  color: var(--color-black01);
  background-color: var(--color-white01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  font-family: var(--font-family-base);
  padding: 12px;
  display: block;
  width: 100%;
  border-bottom: 1px solid var(--color-gray05);

}

@media (min-width: 992px) {
  .c-commonTable td {
    font-size: 16px;
    font-weight: var(--font-weight-normal);
    padding: 5px 24px;
    width: initial;
    display: table-cell;
  }
}


/* ボタン */
.c-commonButton {
  color: var(--color-white01);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  background-color: var(--color-blue01);
  padding: 16px 32px;
  border-radius: 48px;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  border: 1px solid var(--color-blue01);
  font-family: var(--font-family-base);
}


.c-commonButton.c-commonButton--contact::before {
  content: "";
  background: url(../images/icon_mail.svg) no-repeat center / contain;
  width: 18px;
  height: 18px;
  display: inline-block;
  margin-right: 10px;
}

.c-commonButton.c-commonButton--cart {
  background-color: var(--color-black01);
}

.c-commonButton.c-commonButton--cart::before {
  content: "";
  background: url(../images/icon_cart.svg) no-repeat center / contain;
  width: 18px;
  height: 18px;
  display: inline-block;
  margin-right: 10px;
}


.c-commonButton.c-commonButton--bookmark::before {
  content: "";
  background: url(../images/icon_heart_white.svg) no-repeat center / contain;
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-right: 6px;
}


.c-commonButton.c-commonButton--bgWhite {
  background-color: var(--color-white01);
  color: var(--color-blue01);
  border: 1px solid var(--color-blue01);
}

.c-commonButton.c-commonButton--bgGray {
  background-color: #f4f4f4;
  color: var(--color-blue01);
  border: 1px solid var(--color-blue01);
}

.c-commonButton02 {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-column-gap: 16px;
  -moz-column-gap: 16px;
  column-gap: 16px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: min(100%, 220px);
  border-radius: 48px;
  border: 1px solid var(--color-blue01);
  padding: 3px 20px 4px 29px;
  color: var(--color-blue01);
  font-family: var(--font-family-base-medium);
}


.c-commonButton02::after {
  content: '';
  background: url(../images/arrow_bottom.svg) no-repeat center / contain;
  justify-self: end;
  width: 33px;
  aspect-ratio: 1;
}


.c-commonMiddleButton {
  color: var(--color-white01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  background-color: var(--color-blue01);
  padding: 6px 36px;
  border-radius: var(--rounded-xxl);
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  font-family: var(--font-family-base-medium);
}


@media (min-width: 992px) {
  .c-commonMiddleButton {
    font-size: 16px;
  }
}


.c-commonMiddleButton.c-commonMiddleButton--bgBlack {
  background-color: var(--color-black02);
}


.c-commonMiddleButton:where(.c-commonButton--mark, .c-commonButton--pdf)::before {
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-right: 8px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}



.c-commonMiddleButton.c-commonButton--arrow {
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 11px;
  padding-right: 11px;
  padding: 12px 11px;
}

@media (min-width: 992px) {
  .c-commonMiddleButton.c-commonButton--arrow {
    padding-left: 28px;
    padding-right: 28px;
  }
}


.c-commonMiddleButton.c-commonButton--arrow::after {
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-left: 10px;
  background: url(../images/icon_arrow_white.svg) no-repeat center / contain;
}


.c-commonMiddleButton.c-commonButton--mark::before {
  background: url(../images/icon_mark.svg) no-repeat center / contain;
}

.c-commonMiddleButton.c-commonButton--pdf::before {
  background: url(../images/icon_book.svg) no-repeat center / contain;
}


.c-button {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  color: var(--color-black04);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  /* line-height: var(--leading-normal); */
  line-height: 100%;
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
}

.c-button::before {
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-right: 8px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-align-self: flex-end;
  -ms-flex-item-align: end;
  align-self: flex-end;
}


.c-button.c-button--heart:before {
  background: url(../images/icon_heart_default.svg) no-repeat center / contain;
}

.c-button.c-button--cart:before {
  background: url(../images/icon_cart_black.svg) no-repeat center / contain;
}

.c-button.c-button--arrow:before {
  background: url(../images/arrow_bottom.svg) no-repeat center / contain;
}


.c-suButton {
  padding: 2px 11px;
  font-size: 16px;
  font-family: "Iwata UD Gothic StdN VF TTF";
  color: var(--color-black01);
  position: relative;
  font-weight: 425;
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-suButton:where(.c-suButton--list, .c-suButton--grid)::before {
  content: "";
  width: 32px;
  height: 32px;
  margin-right: 12px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.c-suButton.c-suButton--list::before {
  background: url(../images/icon_list.svg) no-repeat center / contain;
}

.c-suButton.c-suButton--grid::before {
  background: url(../images/icon_grid.svg) no-repeat center / contain;
}


.c-suButton:where(.c-suButton--kumi, .c-suButton--midasi) {
  font-family: var(--font-family-base-medium);
}


.c-commonBox {
  background-color: #f7f5f5;
  display: block;
  padding: 20px;
}



/* カード */
.c-box {
  border-radius: 6px;
  padding: 7px;
  background: linear-gradient(224deg, rgba(78, 114, 192, 0.85) 17.42%, rgba(18, 52, 128, 0.85) 86.91%);
}

@media (min-width: 992px) {
  .c-box {
    padding: 16px;
    border-radius: 24px;
  }
}

.c-box+.c-box {
  margin-top: 6px;
}

@media (min-width: 992px) {
  .c-box+.c-box {
    margin-top: 18px;
  }
}

.c-box img {
  display: block;
  height: 100%;
  width: 100%;
}

.c-card01 {
  padding: 32px 16px;
  background-color: var(--color-gray02);
  border-radius: var(--rounded-md2);
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

@media (min-width: 992px) {
  .c-card01 {
    padding: 30px;
    row-gap: 40px;
    border-radius: var(--rounded-xl);
  }
}

.c-card01__img {
  width: 100%;
  max-width: 70px;
  height:117px;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

@media (min-width: 992px) {
  .c-card01__img {
    max-width: 117px;
  }
}

.c-card01__img img {
  display: block;
}

.c-card01__title {
  color: var(--color-black05);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-card01__title {
    font-size: 20px;
  }
}


.c-card01__title.c-card01__title--familyType2 {
  /* font-family: 'Iwa UD Goth Disp Pr6N M'; */
}

.c-card01__text {
  color: var(--color-black05);
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .c-card01__text {
    font-size: 14px;
  }
}


.c-card01__arrowImg {
  background-color: var(--color-white01);
  border-radius: var(--rounded-xxl);
  display: block;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  margin-left: auto;
  margin-top: auto;
  padding: 2px 12px;
  height:fit-content;
}

.c-card01__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}



.c-card02 {
  padding: 16px;
  background-color: var(--color-white01);
  border: 1px solid var(--color-gray07);
  border-radius: var(--rounded-sm);
  display: grid;
  row-gap: 16px;
}

.c-card02__title {
  color: var(--color-black06);
  font-size: 13px;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: 'Iwata UD Gothic StdN VF TTF';

}

.c-card02__text {
  color: var(--color-black01);
  font-size: 24px;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: 'Iwata Mincho Old Pr6N R';

}


.c-card03 {
  display: block;
}

.c-card03__img img {
  display: block;
  border-radius: var(--rounded-md);
  overflow: hidden;
  aspect-ratio: 343 / 300;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

@media (min-width: 992px) {
  .c-card03__img img {
    aspect-ratio: 360 / 300;
  }
}

.c-card03__date {
  margin-top: 16px;
  color: var(--color-gray08);
  font-size: 14px;
  font-weight: var(--font-weight-light);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  font-family: var(--font-family-base-light);
}



.c-card03__title {
  margin-top: 8px;
  color: var(--color-black05);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-family: var(--font-family-base-medium);
}



.c-card04 {
  display: block;
}

.c-card04__imgWrap {
  --bgColor: var(--color-green01);

  border-radius: var(--rounded-xl);
  padding: 24px;
  background-color: var(--bgColor);
}

.c-card04__imgWrap.c-card04__imgWrap--gradientBlue {
  background: linear-gradient(224deg, rgba(78, 114, 192, 0.85) 17.42%, rgba(18, 52, 128, 0.85) 86.91%);
}

.c-card04__imgWrap.c-card04__imgWrap--bgGreen {
  --bgColor: var(--color-green01);
}

.c-card04__imgWrap.c-card04__imgWrap--bgBrown {
  --bgColor: var(--color-brown01);
}

.c-card04__imgWrap.c-card04__imgWrap--bgPink {
  --bgColor: var(--color-pink01);
}

.c-card04__imgWrap.c-card04__imgWrap--bgBrown2 {
  --bgColor: var(--color-brown03);
}


.c-card04.c-card04--row {
  display: grid;
  grid-template:
    "img textBox"
  ;
  grid-template-columns: 150px 1fr;
  -webkit-column-gap: 18px;
  -moz-column-gap: 18px;
  column-gap: 18px;

}

@media (min-width: 992px) {
  .c-card04.c-card04--row {
    -webkit-column-gap: 32px;
    -moz-column-gap: 32px;
    column-gap: 32px;
    grid-template-columns: 235px 1fr;

  }
}


@media (min-width: 992px) {
  .c-card04.c-card04--row .c-card04__imgWrap {
    grid-area: img;
  }

  .c-card04.c-card04--row .c-card04__title {
    grid-area: title;
    margin-top: 0;
    align-self: flex-end;
  }

  .c-card04.c-card04--row .c-card04__textBox {
    grid-area: textBox;
    margin-top: 0;
    display: grid;
    grid-template:
      "title"
      "text"
    ;
    row-gap: 16px;
  }

  .c-card04.c-card04--row .c-card04__bottom {
    grid-area: text;
    align-self: flex-start;
    margin-top: 0;
  }
}

.c-card04__img img {
  display: block;
  aspect-ratio: 247/132;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-card04__date {
  color: var(--color-gray08);
  font-size: 14px;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  /* font-family: var(--font-family-noto); */
}

.c-card04__title {
  margin-top: 16px;
  color: var(--color-black01);
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-family: var(--font-family-base);
}


.c-card04__bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 8px;
}


.c-card04__arrowImg {
  border-radius: var(--rounded-xxl);
  display: block;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  padding: 2px 12px;
}

.c-card04__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}


.c-card05 {
  padding: 64px 32px 24px;
  background-color: var(--color-gray02);
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: var(--rounded-xl);
}



.c-card05__img {
  width: 100%;
  max-width: 81px;
  margin-right: auto;
  margin-left: auto;
}

.c-card05__img img {
  display: block;
}

.c-card05__title {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  margin-top: 40px;
  font-family: var(--font-family-base);
  opacity: .7;
}

.c-card05__title.c-card05__title--fontBold {
  font-weight: var(--font-weight-bold);
  opacity: 1;
}

.c-card05__text {
  color: var(--color-black05);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  opacity: .7;
  margin-top: 16px;
  font-family: var(--font-family-base);
}

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

.c-card05__text.c-card05__text--fontNormal {
  font-weight: var(--font-weight-normal);
  opacity: 1;
}


.c-card06 {
  padding: 32px 16px 32px;
  background-color: var(--color-white01);
  border-radius: 10px;
  display: grid;
  row-gap: 24px;
}

@media (min-width: 992px) {
  .c-card06 {
    padding: 11px 26px 28px;
    row-gap: 71px;
    border-radius: var(--rounded-sm);
  }
}

.c-card06__head {
  position: relative;
}


.c-card06__headTitle {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-card06__headTitle {
    font-size: 28px;
    line-height: calc(110/32);
    letter-spacing: 0;
  }
}

.c-card06__headText {
  color: var(--color-black01);
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  opacity: .5;
  font-family: var(--font-family-base-medium);
  margin-top: 12px;
}

@media (min-width: 992px) {
  .c-card06__headText {
    font-size: 14px;
    margin-top: 0;
    position: absolute;
    bottom: 0;
    left: 0;
  }

}

.c-card06__bodyText {
  color: var(--color-black01);
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .c-card06__bodyText {
    font-size: 14px;
  }
}

.c-card06.c-card06--bgGray {
  background-color: var(--color-gray02);
}

.c-card08 {
  display: block;
}

.c-card08__img {
  width: 100%;
}


.c-card08__img img {
  aspect-ratio: 343 / 300;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  display: block;
  border-radius: var(--rounded-md);
  overflow: hidden;
}

@media (min-width: 992px) {
  .c-card08__img img {
    border-radius: var(--rounded-sm);
    aspect-ratio: 292 / 243;
  }
}

.c-card08__date {
  color: var(--color-gray08);
  font-size: 14px;
  font-weight: var(--font-weight-light);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  margin-top: 8px;
  font-family: var(--font-family-base-light);
}

@media (min-width: 992px) {
  .c-card08__date {
    font-weight: var(--font-weight-normal);
  }
}

.c-card08__title {
  color: var(--color-black07);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  margin-top: 8px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-family: var(--font-family-base-medium);
  text-align: center;
}


.c-card09 {
  padding: 40px 26px 40px;
  background-color: var(--color-white01);
  border-radius: var(--rounded-xl);
  display: grid;
  row-gap: 100px;
}

.c-card09__headWrap {
  position: relative;
  display: grid;
  grid-auto-flow: column;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
}



.c-card09__headTitle {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: 1.85;
  letter-spacing: 0;
  display: block;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-card09__headTitle {
    font-size: 26px;
  }
}

.c-card09__headText {
  color: var(--primaryText_black);
  font-size: 10px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  opacity: .5;
  font-family: "Iwa UD Goth Disp Pr6N";
}


.c-card09__bodyText {
  color: var(--primaryText_black);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
}



.c-card09__arrowImg {
  background-color: var(--color-white01);
  border-radius: var(--rounded-xxl);
  display: block;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  padding: 2px 12px;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  margin-left: auto;
}

.c-card09__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}


.c-card10 {
  padding: 40px 26px 40px;
  background-color: var(--color-white01);
  border-radius: var(--rounded-xl);
  display: grid;
  row-gap: 71px;
}

.c-card10__headWrap {
  position: relative;
  display: grid;
  grid-auto-flow: column;
}


.c-card10__headTitle {
  color: var(--primaryText_black);
  font-size: 24px;
  font-weight: var(--font-weight-bold);
  line-height: 1.85;
  letter-spacing: 0;
  display: block;
  font-family: var(--font-family-base);
}


.c-card10__headText {
  color: var(--primaryText_black);
  font-size: 10px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  opacity: .5;
  margin-top: 4px;
  text-transform: capitalize;
  font-family: "Iwa UD Goth Disp Pr6N";
}


.c-card10__bodyText {
  color: var(--primaryText_black);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}



.c-card10__arrowImg {
  background-color: var(--color-white01);
  border-radius: var(--rounded-xxl);
  display: block;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  padding: 2px 12px;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  margin-left: auto;
}

.c-card10__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}



.c-miniCard {
  border-radius: var(--rounded-sm);
  background-color: var(--color-white01);
  padding: 26px 24px;
  text-align: center;
  display: grid;
  place-content: center;
  height: 100%;
}

.c-miniCard__title {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

.c-miniCard__text {
  color: var(--color-black02);
  opacity: .5;
  font-size: 13px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: 0;
  font-family: var(--font-family-base-medium);
}


.c-contentsBlock {
  display: grid;
  row-gap: 24px;
}


@media (min-width: 992px) {
  .c-contentsBlock {
    -webkit-column-gap: 48px;
    -moz-column-gap: 48px;
    column-gap: 48px;
    grid-template:
      "img title"
      "img text";
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
  }

}

.c-contentsBlock__img {
  width: 100%;

}

@media (min-width: 992px) {
  .c-contentsBlock__img {
    max-width: 320px;
    grid-area: img;
    align-self: flex-start;
  }
}

.c-contentsBlock__img img {
  display: block;
  aspect-ratio: 343 / 209;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

@media (min-width: 992px) {
  .c-contentsBlock__img img {
    aspect-ratio: 320 / 195;
  }
}

.c-contentsBlock__title {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);

}

@media (min-width: 992px) {
  .c-contentsBlock__title {
    font-size: 20px;
    grid-area: title;
    align-self: flex-start;
  }
}

.c-contentsBlock__text {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);

}

@media (min-width: 992px) {
  .c-contentsBlock__text {
    font-size: 16px;
    line-height: var(--leading-normal);
    grid-area: text;
    align-self: flex-start;
  }
}

.c-contentsBlock2 {
  display: grid;
  row-gap: 24px;
}

.c-contentsBlock2__img {
  width: 100%;
}

.c-contentsBlock2__img img {
  display: block;
  aspect-ratio: 387 / 220;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}


.c-contentsBlock2__text {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-contentsBlock2__text {
    font-size: 16px;
    line-height: var(--leading-normal);

  }
}




.c-contentsBlock3 {
  display: grid;
  row-gap: 24px;
}


.c-contentsBlock3__img {
  width: 100%;
}

.c-contentsBlock3__img img {
  aspect-ratio: 580 / 280;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  overflow: hidden;
  border-radius: var(--rounded-xl);
}

.c-contentsBlock3__title {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

.c-contentsBlock3__text {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}


.c-contentsBlock4 {
  display: grid;
  row-gap: 6px;
  grid-template-rows: -webkit-max-content auto;
  grid-template-rows: max-content auto;
}

.c-contentsBlock4__text {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  text-align: center;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
}

.c-contentsBlock4__img {
  padding: 5px 12px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}


.c-contentsBlock4__img img {
  height: 180px;
  display: block;
  width: 100px;
}


/* news */
.c-newsBlock a {
  padding-top: 23px;
  padding-bottom: 23px;
  display: grid;
}

@media (min-width: 992px) {
  .c-newsBlock a {
    grid-template-columns: 1fr -webkit-max-content;
    grid-template-columns: 1fr max-content;
    -webkit-column-gap: 24px;
    -moz-column-gap: 24px;
    column-gap: 24px;
    padding-top: 24px;
    padding-bottom: 24px;
  }
}

.c-newsBlock__inner {
  display: grid;
  grid-template:
    "date"
    "category"
    "title"
  ;
}

@media (min-width: 992px) {
  .c-newsBlock__inner {
    grid-template:
      "date category arrow"
      "title title arrow"
    ;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;

  }
}

.c-newsBlock__categoryList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
  grid-area: category;
  margin-top: 8px;
}

@media (min-width: 992px) {
  .c-newsBlock__categoryList {
    margin-top: 0;
  }
}

.c-newsBlock__date {
  color: var(--primaryText_black);
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: block;
  opacity: .8;
  font-family: var(--font-family-base);
  grid-area: date;
  align-self: center;

}

@media (min-width: 992px) {
  .c-newsBlock__date {
    font-size: 16px;
    margin-right: 8px;
  }
}

.c-newsBlock__category {
  color: var(--primaryText_black);
  font-size: 10px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: inline-block;
  font-family: var(--font-family-base-medium);
  padding: 4px 16px;
  background-color: #efefef;
  border-radius: 100px;
}

@media (min-width: 992px) {
  .c-newsBlock__category {
    font-size: 14px;
  }
}


.c-newsBlock__title {
  color: var(--primaryText_black);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: 0;
  font-family: var(--font-family-base);
  grid-area: title;
  margin-top: 8px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

@media (min-width: 992px) {
  .c-newsBlock__title {
    margin-top: 16px;
    font-size: 16px;
  }
}



.c-newsBlock__arrowImg {
  background-color: var(--color-white01);
  border-radius: var(--rounded-xxl);
  display: none;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  padding: 2px 12px;
  align-self: flex-start;
  margin-left: auto;
  grid-area: arrow;
  align-self: center;
}

@media (min-width: 992px) {
  .c-newsBlock__arrowImg {
    display: block;
    margin-left: 16px;
    margin-right: 3px;
  }
}

.c-newsBlock__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}


/* フロー */
.c-flowCard {
  display: grid;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 30px 32px;
  border-radius: var(--rounded-sm);
  background-color: var(--color-gray02);
  row-gap: 24px;
}

@media (min-width: 992px) {
  .c-flowCard {
    grid-template-columns: -webkit-max-content -webkit-max-content 1fr;
    grid-template-columns: max-content max-content 1fr;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    row-gap: 0;
  }
}

.c-flowCard__img {
  max-width: 81px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 992px) {
  .c-flowCard__img {
    margin-left: 0;
  }
}

.c-flowCard__numBox {
  padding-bottom: 5px;
  border-bottom: 1px solid var(--color-black05);
  text-align: center;
  max-width: 112px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
}


@media (min-width: 992px) {
  .c-flowCard__numBox {
    padding-top: 17px;
    padding-right: 32px;
    text-align: center;
    max-width: initial;
    padding-bottom: 17px;
    border-bottom: transparent;
    border-right: 1px solid var(--color-black05);
  }
}

.c-flowCard__numHead {
  text-transform: capitalize;
  color: var(--color-black05);
  font-size: 20px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  text-align: center;
  font-family: var(--font-family-base-medium);
}


.c-flowCard__num {
  color: var(--color-black05);
  font-size: 32px;
  font-weight: var(--font-weight-normal);
  line-height: 1;
  letter-spacing: var(--tracking-normal);
  text-align: center;
  font-family: var(--font-family-base-medium);
}

.c-flowCard__textBox {
  display: grid;
  row-gap: 16px;
}



.c-flowCard__title {
  color: var(--color-black05);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  text-align: center;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-flowCard__title {
    font-size: 20px;
    text-align: left;
  }
}

.c-flowCard__text {
  color: var(--color-black05);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  opacity: .7;
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .c-flowCard__text {
    font-size: 16px;
  }
}


.c-writerBox {
  background-color: var(--color-gray02);
  border-radius: var(--rounded-md);
  padding: 32px;
  display: grid;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}


@media (min-width: 992px) {
  .c-writerBox {
    -webkit-column-gap: 24px;
    -moz-column-gap: 24px;
    column-gap: 24px;
    border-radius: var(--rounded-lg);
    grid-auto-flow: column;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
  }
}


.c-writerBox__img {
  max-width: 150px;
  width: 100%;
  justify-self: center;
}


@media (min-width: 992px) {
  .c-writerBox__img {
    justify-self: flex-start;
  }
}

.c-writerBox__img img {
  aspect-ratio: 1;
  height: 100%;
  display: block;
  overflow: hidden;
  border-radius: 50%;
}

.c-writerBox__textBox {
  display: grid;
  row-gap: 16px;
  margin-top: 24px;
}

@media (min-width: 992px) {
  .c-writerBox__textBox {
    margin-top: 0;
  }
}

.c-writerBox__title {
  color: var(--color-black08);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-tight);
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-writerBox__title {
    font-size: 20px;

  }
}

.c-writerBox__text {
  color: var(--color-black08);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed);
  letter-spacing: var(--tracking-tight);
  font-family: var(--font-family-base);
}

/* サイドバーエリアパーツ */
.c-miniTitle {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
}


.c-miniTitle2 {
  color: var(--color-black01);
  font-size: 24px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  padding-top: 8px;
  padding-bottom: 8px;
  font-family: var(--font-family-base);

}



.c-fontBox {
  position: relative;
  display: inline-block;
}

.c-fontBox__title {
  --bgColor: var(--color-white01);
  background-color: var(--bgColor);
  border: 1px solid var(--color-gray04);
  border-radius: var(--rounded-min);
  padding: 24px 16px;
  display: block;
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  position: relative;
  z-index: 0;
  width: min(100%, 126px);
  text-align: left;
}

.c-fontBox__text {
  --fontColor: var(--color-gray10);
  color: var(--fontColor);
  font-size: 60px;
  font-weight: var(--font-weight-normal);
  line-height: 1;
  letter-spacing: 0;
  font-family: var(--font-family-base);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  z-index: -1;
}

.c-fontBox.is-select .c-fontBox__title {
  --bgColor: var(--color-gray02)
}

.c-fontBox.is-select .c-fontBox__text {
  --fontColor: var(--color-white01);
}



.c-weightBox {
  --fontWeight: 300;
  background-color: var(--color-white01);
  border: 1px solid var(--color-gray04);
  border-radius: var(--rounded-min);
  padding: 10px;
  display: block;
  color: var(--color-black01);
  font-size: 24px;
  font-weight: var(--fontWeight);
  line-height: 1.4;
  letter-spacing: 0;
  width: min(100%, 56px);
  min-height: 56px;
  font-family: var(--font-family-base);
}

.c-weightBox.is-select {
  background-color: var(--color-gray02);
}

.c-weightBox[data-weight="--weightLight"] {
  --fontWeight: var(--font-weight-light);
}

.c-weightBox[data-weight="--weightRegular"] {
  --fontWeight: var(--font-weight-regular);
}

.c-weightBox[data-weight="--weightBold"] {
  --fontWeight: var(--font-weight-bold);
}



.c-category {
  --bgColor: var(--color-white01);

  padding: 5px 9px;
  border: 1px solid var(--color-gray04);
  border-radius: var(--rounded-min);
  background-color: var(--bgColor);
  display: block;
  color: var(--color-blue01);
  font-size: 13px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

.c-category.is-select {
  --bgColor: var(--color-gray02);
}



.c-category2,
.c-category3 {
  --bgColor: var(--color-white01);

  padding: 7px 12px;
  border: 1px solid var(--color-gray04);
  border-radius: var(--rounded-sm);
  background-color: var(--bgColor);
  display: block;
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);

}

.c-tag{
  --bgColor: var(--color-white01);

  padding: 7px 12px;
  background-color: var(--bgColor);
  display: block;
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
}

.c-category2.is-select {
  --bgColor: var(--color-gray02);
}



.c-category2[data-tag="font1"] {
  font-family: 'Iwata UD Gothic StdN VF TTF';

}

.c-category2[data-tag="font2"] {
  font-family: 'Iwata UD News Goth Pro';
}

.c-category2[data-tag="font3"] {
  font-family: 'Iwata Shin Kaisho Pro';
}

.c-category2[data-tag="font4"] {
  font-family: 'Iwata UD News Min Pro';
}




.c-category3 {
  background-color: var(--color-gray02);
  font-size: 12px;
  line-height: var(--leading-relaxed02);
  padding: 6px 15px;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-category3 {
    font-size: 16px;
    line-height: var(--leading-normal);
    padding-top: 7px;
    padding-bottom: 7px;
  }
}



.c-category4 {
  color: var(--primaryText_black);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: inline-block;
  font-family: var(--font-family-base-medium);
  padding: 4px 16px;
  background-color: #efefef;
  border-radius: 100px;
}


@media (min-width: 992px) {
  .c-category4 {
    font-size: 14px;
  }
}



/* アコーディオン */
.c-accodionItem {
  display: block;
  background-color: var(--color-gray02);
  border-radius: var(--rounded-sm);
  overflow: hidden;
}

.c-accodionItem__head {
  position: relative;
  text-align: left;
  padding: 20px 62px 20px 66px;
  color: var(--color-black05);
  cursor: pointer;
  width: 100%;
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-relaxed02);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-accodionItem__head {
    font-size: 20px;
    padding: 20px 98px 20px 102px;

  }
}


.c-accodionItem__headText {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 20px;
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  color: var(--color-black05);
  text-transform: uppercase;
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-accodionItem__headText {
    font-size: 24px;
    left: 32px;

  }
}

.c-accodionItem__headToggleWrap {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20px;
}

.c-accodionItem__headToggle {
  width: 26px;
  height: 26px;
  background-color: var(--color-white01);
  display: block;
  border-radius: 50%;
}


.c-accodionItem__headToggle::before {
  content: "";
  width: 11px;
  height: 2px;
  background-color: #192637;
  position: absolute;
  left: 50%;
  translate: -50%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: -webkit-transform .4s;
  transition: -webkit-transform .4s;
  transition: transform .4s;
  transition: transform .4s, -webkit-transform .4s;
}



.c-accodionItem__headToggle:after {
  content: "";
  height: 11px;
  width: 2px;
  background-color: #192637;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity .4s;
  transition: opacity .4s;
  translate: -50%;
}



.c-accodionItem__body {
  position: relative;
  overflow: hidden;
  opacity: 0;
  line-height: 0;
  margin: 0;
  -webkit-transition: padding 0.4s, opacity 0.4s, line-height 0.4s;
  transition: padding 0.4s, opacity 0.4s, line-height 0.4s;
  background-color: var(--color-white);
  position: relative;
  text-align: left;
  padding: 0 62px 0 66px;
  color: var(--color-black05);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: 0;
  font-family: var(--font-family-base);

}

@media (min-width: 992px) {
  .c-accodionItem__body {
    padding: 0 98px 0 102px;
    font-size: 20px;
  }
}

.c-accodionItem__head.is-open::after {
  opacity: 0;
}

.c-accodionItem__header.is-open .c-accodionItem__headToggle::after {
  opacity: 0;
}

.c-accodionItem__body a {
  text-decoration: underline;
  color: var(--color-blue);
}


.c-accodionItem__body.is-open {
  opacity: 1;
  padding: 0 62px 20px 66px;
  line-height: var(--leading-normal);

}


@media (min-width: 992px) {
  .c-accodionItem__body.is-open {
    padding: 0 98px 20px 102px;
  }

}







.c-accodionItem2 {
  display: block;

  overflow: hidden;
}

.c-accodionItem2__head {
  background-color: var(--color-gray02);
  position: relative;
  text-align: left;
  padding: 20px 62px 20px 20px;
  color: var(--color-black05);
  cursor: pointer;
  width: 100%;
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-relaxed02);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-family: var(--font-family-base-medium);
}


@media (min-width: 992px) {
  .c-accodionItem2__head {
    font-size: 20px;
    padding: 20px 66px 20px 20px;


  }
}


.c-accodionItem2__headText {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 20px;
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  color: var(--color-black05);
  text-transform: uppercase;
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-accodionItem2__headText {
    font-size: 24px;
    left: 32px;

  }
}

.c-accodionItem2__headToggleWrap {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20px;
}

@media (min-width: 992px) {
  .c-accodionItem2__headToggleWrap {
    right: 32px;
  }
}

.c-accodionItem2__headToggle {
  width: 26px;
  height: 26px;
  background-color: var(--color-white01);
  display: block;
  border-radius: 50%;
}


.c-accodionItem2__headToggle::before {
  content: "";
  width: 11px;
  height: 1px;
  background-color: #192637;
  position: absolute;
  left: 50%;
  translate: -50%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: -webkit-transform .4s;
  transition: -webkit-transform .4s;
  transition: transform .4s;
  transition: transform .4s, -webkit-transform .4s;
}



.c-accodionItem2__headToggle:after {
  content: "";
  height: 11px;
  width: 1px;
  background-color: #192637;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity .4s;
  transition: opacity .4s;
  translate: -50%;
}



.c-accodionItem2__body {
  position: relative;
  overflow: hidden;
  opacity: 0;
  line-height: 0;
  margin: 0;
  -webkit-transition: padding 0.4s, opacity 0.4s, line-height 0.4s;
  transition: padding 0.4s, opacity 0.4s, line-height 0.4s;
  position: relative;
  text-align: left;
  padding: 0;
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--tracking-normal);
  line-height: 0;
  font-family: var(--font-family-base-medium);

}

@media (min-width: 992px) {
  .c-accodionItem2__body {
    padding: 0;
    font-size: 16px;
  }
}

.c-accodionItem2__head.is-open::after {
  opacity: 0;
}

.c-accodionItem2__header.is-open .c-accodionItem2__headToggle::after {
  opacity: 0;
}

.c-accodionItem2__body a {
  text-decoration: underline;
  color: var(--color-blue);
}


.c-accodionItem2__body.is-open {
  opacity: 1;
  padding: 12px 0 0;
  line-height: var(--leading-normal);

}




















/* フッター上のCTAエリアパーツ */
.c-balloon {
  position: relative;
  display: block;
  margin-bottom: 10px;
  padding: 8px 15px;
  border: 2px solid var(--color-blue01);
  border-radius: var(--rounded-xxl);
  background-color: var(--color-white01);
  color: var(--color-blue01);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  text-align: center;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-balloon {
    font-size: 18px;
    padding: 8px 21px;

  }
}


.c-balloon::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 10px 11px 0 11px;
  border-color: currentColor transparent transparent;
  translate: -50% 100%;
}

.c-balloon::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 7.3px 8px 0 8px;
  border-color: var(--color-white01) transparent transparent;
  translate: -50% 100%;
}



.c-ctaButton {
  padding: 48px 24px;
  display: grid;
  position: relative;
  z-index: 0;
  overflow: hidden;
  border-radius: var(--rounded-xl);
  min-height: 160px;
}

@media (min-width: 768px) {
  .c-ctaButton {
    padding: 44px 64px;

  }
}

.c-ctaButton.c-ctaButton--middle {
  grid-auto-flow: column;
  -webkit-column-gap: 16px;
  -moz-column-gap: 16px;
  column-gap: 16px;
}

.c-ctaButton.c-ctaButton--large {
  height: 100%;
}

.c-ctaButton.c-ctaButton--bgBlue {
  background-color: var(--color-blue01);
}

.c-ctaButton.c-ctaButton--bgGreen {
  background-color: var(--color-green03);
}

.c-ctaButton.c-ctaButton--bgBrown {
  background-color: var(--color-brown02);
}

.c-ctaButton.c-ctaButton--bgOrange {
  background-color: var(--color-orange01);
}


.c-ctaButton__textBox {
  display: grid;
  row-gap: 8px;
}

@media (min-width: 992px) {
  .c-ctaButton__textBox {
    row-gap: 16px;
    margin-top: 81px;
  }
}

.c-ctaButton__textBox.c-ctaButton__textBox--middle {
  margin-top: 0;
  row-gap: 8px;
}

.c-ctaButton__title {
  color: var(--color-white01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-ctaButton__title {
    font-size: 32px;
  }
}


.c-ctaButton__text {
  color: var(--color-white01);
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .c-ctaButton__text {
    font-size: 14px;

  }
}


.c-ctaButton__arrowImg {
  background-color: transparent;
  border-radius: var(--rounded-xxl);
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  padding: 2px 12px;
  margin-top: auto;
  margin-left: auto;

  display: none;
}

@media (min-width: 992px) {
  .c-ctaButton__arrowImg {
    display: block;
  }
}

.c-ctaButton__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}


.c-bannerLink {
  background-color: var(--color-black09);
  border-radius: var(--rounded-xl);
  padding: 0 11px 32px;
  display: block;
  overflow: hidden;
}


@media (min-width: 992px) {
  .c-bannerLink {
    display: grid;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    -webkit-column-gap: 72px;
    -moz-column-gap: 72px;
    column-gap: 72px;
    padding: 0;

  }
}

.c-bannerLink__title {
  color: var(--color-white01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: normal;
  letter-spacing: var(--leading-normal);
  display: block;
  position: relative;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .c-bannerLink__title {
    font-size: 26px;
  }
}

.c-bannerLink__textBox {
  padding: 32px 9px 0;
}

@media (min-width: 992px) {
  .c-bannerLink__textBox {
    padding: 78px 64px 78px 0;
  }
}

.c-bannerLink__text {
  margin-top: 24px;
  color: var(--color-white01);
  font-size: 14px;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--leading-normal);
  /* font-family: var(--font-family-noto); */
}

@media (min-width: 992px) {
  .c-bannerLink__text {
    margin-top: 32px;
    font-size: 16px;
  }
}

.c-bannerLink__img {
  width: 100%;
  position: relative;
}

@media (min-width: 992px) {
  .c-bannerLink__img {
    max-width: 513px;
  }
}


.c-bannerLink__img img {
  aspect-ratio: 321/198;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

.c-bannerLink__img::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}


.c-bannerLink__arrowImg {
  background-color: var(--color-white01);
  border-radius: var(--rounded-xxl);
  display: block;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  padding: 2px 12px;
  margin-left: auto;
  margin-top: 24px;
}

@media (min-width: 992px) {
  .c-bannerLink__arrowImg {
    display: none;
  }
}


.c-bannerLink__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}



/* スクロールダウン */
.c-scroll {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 12px;
  color: var(--primaryText_black);
  font-weight: var(--font-weight-bold);
  line-height: 1.04;
  letter-spacing: var(--tracking-normal);
  display: inline-block;
  font-family: 'Iwa UD Goth Disp Pr6N M';
  position: relative;
  z-index: 0;
}

.c-scroll::after {
  content: "";
  width: 1px;
  height: 78px;
  background-color: #e0e0e0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: -1;
}

.c-scroll::before {
  -webkit-animation: scroll 2s infinite;
  animation: scroll 2s infinite;
  background-color: var(--primaryText_black);
  content: "";
  top: calc(100% + 8px);
  height: 78px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
  z-index: 1;

}

/* 線のアニメーション */
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }

  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }

  51% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }

  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }

  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }

  51% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }

  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
}



.c-arrow {
  position: relative;
  display: inline-block;
  width: 33px;
  height: 33px;
}

.c-arrow:before {
  content: "";
  position: absolute;
  background: url(../images/arrow_black.png) no-repeat center / contain;
  width: 33px;
  height: 33px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transform-origin: top left;
  transform-origin: top left;
  -webkit-transition: rotate .3s;
  transition: rotate .3s;
}


.c-arrow.c-arrow--black {
  background-color: #2f2f2f;
  border-radius: 50%;
  width: 42px;
  height: 42px;
}


.c-listLink {
  display: block;
  background-color: var(--color-gray02);
  border-radius: var(--rounded-xl);
  padding: 32px;
}

.c-listLink__inner {
  display: grid;
  grid-template-columns: -webkit-max-content 1fr -webkit-max-content;
  grid-template-columns: max-content 1fr max-content;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 24px;
  -moz-column-gap: 24px;
  column-gap: 24px;
}

.c-listLink__img {
  max-width: 40px;
  width: 100%;
}

.c-listLink__img img {
  display: block;
  height: auto;
}

.c-listLink__text {
  color: var(--primaryText_black);
  text-align: left;
  font-family: var(--font-family-base);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
}

.c-listLink__arrowImg {
  background-color: var(--color-white01);
  border-radius: var(--rounded-xxl);
  display: block;
  max-width: 53px;
  border: 1px solid var(--color-gray06);
  width: min(100%, 53px);
  margin-left: auto;
  padding: 2px 12px;
}


.c-listLink__arrow {
  max-width: 24px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
}



.c-sortList {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(5, 1fr);
}


.c-sortList.c-sortList--row {
  grid-auto-flow: row;

  grid-template-columns: repeat(9, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 8px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}


.c-sortList__item {
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.4;
  color: var(--color-black01);
  font-family: 'Iwata UD Gothic StdN VF TTF';
  font-weight: 425;
  display: inline-block;
  position: relative;
  text-align: center;

}

.c-sortList__item::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: var(--color-blue01);
  bottom: 0;
  left: 0;
  display: none;
}

.c-sortList__item.is-select {

  color: var(--color-blue01);

}

.c-sortList__item.is-select::before {

  display: block;

}

.c-sortList__item a {
  display: block;
  min-width: 24px;
  min-height: 24px;
}


.c-commonItem {
  display: grid;
  row-gap: 24px;
  grid-template:
    "title"
    "img"
    "text"
  ;
}


@media (min-width: 992px) {
  .c-commonItem {
    grid-template:
      "title img"
      "text img"
    ;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: 48px;
    -moz-column-gap: 48px;
    column-gap: 48px;
  }
}


.c-commonItem__img {
  max-width: 100%;
  grid-area: img;
}

@media (min-width: 992px) {
  .c-commonItem__img {
    max-width: 590px;
  }
}

.c-commonItem__img img {
  display: block;
}

/* .c-commonItem__textBox { */
/* display: grid; */
/* row-gap: 11px; */
/* align-items: flex-start; */
/* } */

.c-commonItem__title {
  color: var(--color-black01);
  font-size: 24px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  grid-area: title;
}

.c-commonItem__title.c-commonItem__title--large {
  font-size: 32px;
}

.c-commonItem__text {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  grid-area: text;
}


.c-title3 {
  color: var(--color-black01);
  font-size: 32px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}



.c-card11 {
  padding: 40px;
  background-color: var(--color-gray02);
  border-radius: var(--rounded-xl);
  row-gap: 32px;
}


.c-card11__img {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-card11__img img {
  display: block;
}

.c-card11__title {
  color: var(--primaryText_black);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  font-family: var(--font-family-base);
  margin-top: 8px;
}

.c-card11__text {
  color: var(--primaryText_black);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: var(--font-family-base);
}



.c-commonItem2 {
  background-color: var(--color-gray02);
  border-radius: var(--rounded-xl);
  position: relative;
  padding: 20px;
}

@media (min-width: 992px) {
  .c-commonItem2 {
    padding: 43px 0 43px 40px;
  }
}

.c-commonItem2__contents {
  display: grid;
  width: 100%;
  -webkit-column-gap: 32px;
  -moz-column-gap: 32px;
  column-gap: 32px;
}

@media (min-width: 992px) {
  .c-commonItem2__contents {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}

.c-commonItem2__inner {
  display: grid;
  row-gap: 24px;
  position: relative;
  max-width: 500px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
}

@media (min-width: 992px) {
  .c-commonItem2__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 32px;
    max-width: initial;
    margin-left: initial;
    margin-right: initial;
  }
}

.c-commonItem2__contents::after {
  content: "";
  background: url(../images/other01.png) no-repeat center / contain;
  width: 100%;
  max-width: 293px;
  height: 327px;
  margin-left: auto;
  margin-right: auto;


}

@media (min-width: 992px) {
  .c-commonItem2__contents::after {
    margin-top: -90px;
    margin-bottom: -60px;
  }
}


.c-commonItem2__block {
  background-color: var(--color-white01);
  border-radius: 16px 16px 0 16px;
  padding: 24px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}


.c-commonItem2__text {
  color: var(--primaryText_black);
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}



.c-commonBox2 {
  padding: 12px 16px;
  border-radius: var(--rounded-xl);
  background-color: var(--color-gray02);
}

@media (min-width: 992px) {
  .c-commonBox2 {
    padding: 24px 32px;

  }
}

.c-commonBox2__text {
  color: var(--primaryText_black);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  font-family: var(--font-family-base);
}


@media (min-width: 992px) {
  .c-commonBox2__text {
    font-size: 16px;

  }
}



/* =================== */
/*  Project             */
/* =================== */

.p-main {
  padding-top: 80px;
}

@media (min-width: 992px) {
  .p-main {
    padding-top: 106px;
  }
}


@media (min-width: 992px) {
  .p-main:has(.p-fv) {
    padding-top: 0;

  }

}


/* ページネーション */
.p-pagination .nav-links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 24px;
}

.p-pagination .page-numbers {
  --bgColor: var(--color-white01);
  --fontColor: #a9a9a9;
  --borderColor: #a9a9a9;

  color: var(--fontColor);
  border: 2px solid var(--borderColor);
  background-color: var(--bgColor);
  border-radius: var(--rounded-min);
  font-size: 16px;
  line-height: 1.4;
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--tracking-normal);
  padding-right: 9px;
  padding-left: 9px;
  padding-top: 1px;
  padding-bottom: 1px;
  min-width: 32px;
  min-height: 32px;
  font-family: var(--font-family-base-medium);

}

@media (min-width: 992px) {
  .p-pagination .page-numbers {
    font-size: 18px;

  }
}

.p-pagination .dots {
  border: transparent;
  color: var(--color-black01);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  line-height: 1;
}

.p-pagination .current {
  --bgColor: var(--color-blue01);
  --fontColor: var(--color-white01);
  --borderColor: var(--color-blue01);
}


.p-pagination :where(.prev, .next).page-numbers {
  border: transparent;
  position: relative;

}

.p-pagination :where(.prev, .next)::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  background: url(../images/icon_arrow_black.svg) no-repeat center / contain;
  width: 24px;
  height: 24px;
}

.p-pagination .prev::before {
  -webkit-transform: translate(-50%, -50%) scale(-1.1);
  transform: translate(-50%, -50%) scale(-1.1);
}

.p-pagination .next::before {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}



/* カード */
.p-cards {
  display: grid;
}

.p-cards.p-cards--col4 {
  grid-template-columns: repeat(auto-fill, minmax(min(163px, 100%), 1fr));

}

.p-cards.p-cards--col2 {
  grid-template-columns: repeat(auto-fill, minmax(min(434px, 100%), 1fr));
}

@media (min-width: 992px) {
  .p-cards.p-cards--pcCol3 {
    grid-template-columns: repeat(auto-fill, minmax(min(387px, 100%), 1fr));
  }
}

.p-cards.p-cards--pcCol4 {
  grid-template-columns: repeat(auto-fill, minmax(min(156px, 100%), 1fr));
}

@media (min-width: 768px) {
  .p-cards.p-cards--pcCol4 {
    grid-template-columns: repeat(auto-fill, minmax(min(230px, 100%), 1fr));
  }
}

@media (min-width: 992px) {
  .p-cards.p-cards--pcCol4 {
    grid-template-columns: repeat(auto-fill, minmax(min(295px, 100%), 1fr));
  }
}


@media (min-width: 992px) {
  .p-cards.p-cards--topPlan {
    gap: 64px 16px;
  }
}


.p-cards.p-cards--servicePlan {
  gap: 32px 16px;
}

@media (min-width: 992px) {
  .p-cards.p-cards--servicePlan {
    gap: 64px 16px;
  }
}

.p-cards.p-cards--servicePlan .p-cards__item {
  grid-row: span 2;
  row-gap: 16px;
}

@media (min-width: 992px) {
  .p-cards.p-cards--servicePlan .p-cards__item {
    row-gap: 22px;
  }
}



@media (min-width: 992px) {
  .p-cards.p-cards--topPlan .p-cards__item {
    grid-row: span 2;
    row-gap: 22px;
  }
}


.p-cards.p-cards--archive {
  grid-template-columns: repeat(auto-fill, minmax(min(292px, 100%), 1fr));
  gap: 32px 20px;
}

@media (min-width: 992px) {
  .p-cards.p-cards--archive {
    gap: 64px 20px;
  }
}

.p-cards.p-cards--archive article {
  display: grid;
  grid-template-columns: subgrid;

}

.p-cards.p-cards--archive .p-cards__item {
  grid-row: span 3;
  row-gap: 8px;
}



.p-cards.p-cards--service {
  gap: 64px 24px;
}

.p-cards.p-cards--service .c-card05 {
  border-radius: 0;
  row-gap: 16px;

}

.p-cards.p-cards--service .c-card05__title {
  margin-top: 24px;

}


.p-cards.p-cards--service2 {
  gap: 16px;
}


.p-cards__block {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  row-gap: 16px;
}


.p-cards.p-cards--service .c-card05 {
  min-height: 376px;
}

.p-cards.p-cards--strength {
  gap: 16px;
  grid-template-columns: repeat(auto-fill, minmax(min(156px, 100%), 1fr));
}

@media (min-width: 768px) {
  .p-cards.p-cards--strength {
    grid-template-columns: repeat(auto-fill, minmax(min(170px, 100%), 1fr));
  }
}


@media (min-width: 992px) {
  .p-cards.p-cards--strength {
    gap: 64px 24px;
    grid-template-columns: repeat(auto-fill, minmax(min(295px, 100%), 1fr));

  }
}



.p-cards__item {
  display: grid;
  grid-template-rows: subgrid;

}

.p-cards__itemInner {
  min-height: 367px;
}


.p-cards.p-cards--strength .p-cards__item {
  grid-row: span 2;
}



.p-cards__headText {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .p-cards__headText {
    font-size: 16px;

  }
}

.p-cards__itemWrap {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  row-gap: 24px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  grid-row: span 4 / auto;
}

.p-cards__subBoxWrap {
  display: grid;
  row-gap: 24px;
}

.p-cards__subBox {
  width: 100%;
}

.p-cardsBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}


@media (min-width: 992px) {
  .p-cardsBox {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.p-cardsBox__item {
  width: 100%;
  min-height: 150px;

}

@media (min-width: 992px) {
  .p-cardsBox__item {
    max-width: 320px;
    min-height: 150px;
  }
}



.p-ctaArea {
  display: grid;
  row-gap: 16px;
}

@media (min-width: 992px) {
  .p-ctaArea {
    gap: 16px;
    grid-template-columns: 1fr 1fr;
  }
}

.p-ctaArea__item {
  position: relative;
}

@media (min-width: 992px) {
  .p-ctaArea__item.p-ctaArea__item--01 {
    grid-row: 1/3;
    grid-column: 1/2;
  }

  .p-ctaArea__item.p-ctaArea__item--02 {
    grid-row: 1/2;
    grid-column: 2/2;
  }

  .p-ctaArea__item.p-ctaArea__item--03 {
    grid-row: 2/3;
    grid-column: 2/2;
  }
}


.p-ctaArea__button {
  position: relative;
  z-index: 0;
}


.p-ctaArea__button.p-ctaArea__button--layer01::before {
  background: url(../images/bg_layer01.svg) no-repeat center / contain;
  content: "";
  position: absolute;
  width: 150px;
  height: 126px;
  bottom: 0;
  right: 0;
  z-index: -1;
  mix-blend-mode: luminosity;
}


@media (min-width: 992px) {
  .p-ctaArea__button.p-ctaArea__button--layer01::before {
    width: 408px;
    height: 331px;
  }
}

.p-ctaArea__button.p-ctaArea__button--layer02::before {
  background: url(../images/bg_layer02-sp.svg) no-repeat center / cover;
  content: "";
  position: absolute;
  width: 84px;
  height: 111px;
  top: 17px;
  right: 0;
  z-index: -1;
  mix-blend-mode: normal;
}

@media (min-width: 992px) {
  .p-ctaArea__button.p-ctaArea__button--layer02::before {
    background: url(../images/bg_layer02.svg) no-repeat center / cover;
    right: 68px;
    top: 0;
    width: 284px;
    height: 145px;
  }
}

.p-ctaArea__button.p-ctaArea__button--layer03::before {
  background: url(../images/bg_layer03-sp.svg) no-repeat center / cover;
  content: "";
  position: absolute;
  width: 115px;
  height: 85px;
  bottom: 0;
  right: 48px;
  mix-blend-mode: soft-light;
  z-index: -1;
}


@media (min-width: 992px) {
  .p-ctaArea__button.p-ctaArea__button--layer03::before {
    background: url(../images/bg_layer03.svg) no-repeat center / cover;
    width: 262px;
    height: 100%;
    top: 0;
    right: 90px;
    bottom: initial;
  }
}



.p-ctaArea__balloon {
  position: absolute;
  z-index: 1;
  width: 100%;
  max-width: 278px;
  left: 50%;
  top: -20px;
  translate: -50%;
}

@media (min-width: 992px) {
  .p-ctaArea__balloon {
    left: 44px;
    max-width: 373px;
    translate: initial;
  }
}

.p-contentBlocks {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(120px, 100%), 1fr));
  gap: 12px;
}

@media (min-width: 992px) {
  .p-contentBlocks {
    grid-template-columns: repeat(auto-fit, minmax(min(68px, 100%), 1fr));

  }
}


/* ぱんくずリスト */

.p-breadcrumb ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;

}

.p-breadcrumb ul li:last-child {
  color: var(--color-blue01);
  text-decoration: underline;
}

.p-breadcrumb ul li{
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.p-breadcrumb ul li:not(:first-child)::before {
  content: "";
  color: var(--color-black01);
  margin-right: 12px;
  margin-left: 12px;
  width: 1px;
  height: 70%;
  rotate: 15deg;
  background-color: var(--color-black01);
  /* position: absolute; */
  display: block;
}


/* =================== */
/*  ハンバーガーメニュー */
/* =================== */


.c-hamburger {
  position: relative;
  width: inherit;
  height: inherit;
  margin: 0;
  border: transparent;
  background: var(--color-blue01);
  cursor: pointer;
  border-radius: 50%;
}


.c-hamburger span {
  display: block;
  position: relative;
  left: 50%;
  width: 22px;
  height: 2px;
  translate: -50%;
  background: var(--color-white01);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}


.c-hamburger span:nth-of-type(1) {
  top: -4px;
}


.c-hamburger span:nth-of-type(2) {
  top: 1px;
}


.c-hamburger span:nth-of-type(3) {
  top: 6px;
}


.c-hamburger .c-hamburger__text {
  display: block;
  top: 12px;
  background: transparent;
  color: var(--font-color-white);
  font-weight: 400;
  font-size: 10px;
  line-height: 1;
  text-transform: uppercase;
}


.c-hamburger[aria-expanded="true"] span:nth-of-type(1) {
  top: 2px;
  translate: -50%;
  rotate: 225deg;
}


.c-hamburger[aria-expanded="true"] span:nth-of-type(2) {
  opacity: 0;
}


.c-hamburger[aria-expanded="true"] span:nth-of-type(3) {
  top: -2px;
  translate: -50%;
  rotate: -225deg;
}


/* =================== */
/*  ヘッダー　　　      */
/* =================== */
.p-header {
  display: block;
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;

}

.p-header.change-color {
  background-color: var(--color-white01);
}

.p-header__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  z-index: 10;
  position: absolute;
  top: 0;
  right: -100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: transparent;
  font-weight: 700;
  opacity: 0;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}


@media (min-width: 992px) {
  .p-header__nav {
    position: static;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    height: initial;
    opacity: initial;
  }
}


.p-header__nav::after {
  background-color: var(--color-white01);
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 72px;
  z-index: 0;
  display: none;
}

.p-header__nav[aria-expanded="true"]::after {
  display: block;
}

@media (min-width: 992px) {
  .p-header__nav::after {
    display: none;
  }
}

.p-header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: inherit;
  padding: 12px 16px;
  position: relative;
}


@media (min-width: 992px) {
  .p-header__inner {
    padding: 25px 32px 25px 27px;
  }
}

.p-header__title {
  width: 100%;
  display: block;
  max-width: 130px;
  margin-right: 35px;
  z-index: 12;
}

@media (min-width: 992px) {
  .p-header__title {
    max-width: 137px;
  }
}

.p-header__title a {
  display: block;
  width: 100%;
  height: auto;
}


.p-header__title a img {
  height: 100%;
}


.p-header__hamburger {
  z-index: 100;
  position: absolute;
  top: 50%;
  right: 16px;
  width: 48px;
  height: 48px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .p-header__hamburger {
    display: none;
  }
}



.p-header__nav[aria-expanded="true"] {
  position: fixed;
  top: 0;
  right: 0;
  background: var(--color-white01);
  opacity: 1;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}


/* =================== */
/*  ナビメニュー      */
/* =================== */
.p-nav {
  padding-top: 104px;
  padding-bottom: 80px;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
}

@media (min-width: 992px) {
  .p-nav {
    width: initial;
    padding-top: 0;
    padding-bottom: 0;
    overflow-y: initial;
    height: auto;
  }

}

.p-nav__inner {
  padding-right: 16px;
  padding-left: 16px;
  max-width: 500px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 992px) {
  .p-nav__inner {
    padding-right: 0;
    padding-left: 0;
    max-width: initial;
  }
}

.p-nav__list {
  display: block;
  width: 100%;

}


@media (min-width: 992px) {
  .p-nav__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-right: 0;
    padding-left: 0;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;

  }
}

.p-nav__item {
  position: relative;
  border-bottom: 1px solid #d5d5d5;
}

@media (min-width: 992px) {
  .p-nav__item {
    border-bottom: transparent;

  }
}

.p-nav__item.p-nav__item:first-child {
  border-top: 1px solid #d5d5d5;
}

@media (min-width: 992px) {
  .p-nav__item.p-nav__item:first-child {
    border-top: transparent;
  }
}


.p-nav__item.p-nav__item--contact {
  margin-left: 0;
  margin-top: 10px;
  display: none;
}

@media (min-width: 992px) {
  .p-nav__item.p-nav__item--contact {
    margin-top: 0;
    margin-left: 32px;
    display: block;
    position: relative;
    z-index: 10;
  }

}

.p-nav__link {
  display: block;
  width: 100%;
  padding: 23px 0;
  color: var(--primaryText_black);
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  line-height: 1.85;
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  /* font-family: "Iwata Gothic Old Pr6N B", sans-serif; */
  position: relative;
  z-index: 10;
  padding-right: 24px;
}

@media (min-width: 992px) {
  .p-nav__link {
    padding: 8px 18px;
    text-align: center;
    font-size: 14px;
    cursor: pointer;
  }
}

.p-nav__cta {
  display: block;
  margin-top: 64px;
}

@media (min-width: 992px) {
  .p-nav__cta {
    display: none;
  }
}

.p-nav__item:has(.p-nav__innerBoxWrap) {
  /* position: static; */

  -webkit-transition: opacity .4s;

  transition: opacity .4s;
}


.p-nav__item:has(.p-nav__innerBoxWrap)>.p-nav__link::before {
  position: absolute;
  content: "";
  width: 11px;
  height: 1.5px;
  background-color: var(--color-blue01);
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 80px;

}

.p-nav__item:has(.p-nav__innerBoxWrap)>.p-nav__link::after {
  position: absolute;
  content: "";
  width: 1.5px;
  height: 11px;
  background-color: var(--color-blue01);
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 80px;

}




@media (min-width: 992px) {
  .p-nav__item:has(.p-nav__innerBoxWrap)>.p-nav__link::before {
    display: none;
  }

  .p-nav__item:has(.p-nav__innerBoxWrap)>.p-nav__link::after {
    position: absolute;
    content: "";
    background: url(../images/arrow_black.png) no-repeat center / contain;
    width: 16px;
    height: 16px;
    display: inline-block;
    margin-left: 6px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0;

  }
}


.p-nav__item:has(.p-nav__innerBoxWrap.is-open) .p-nav__link:after {
  opacity: 0;
}

@media (min-width: 992px) {
  .p-nav__item:has(.p-nav__innerBoxWrap.is-open) .p-nav__link:after {
    opacity: 1;
  }
}

.p-nav__innerBoxWrap {
  height: 0;
}


@media (min-width: 992px) {
  .p-nav__innerBoxWrap {
    position: fixed;
    left: 0;
    margin: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: opacity .4s;
    transition: opacity .4s;
    z-index: 0;
    width: 100%;
    z-index: 2;

  }
}

.p-nav__innerBoxWrap.is-open {
  position: relative;
  /* z-index: 1; */
  margin-top: -23px;
  height: 100%;
}

@media (min-width: 992px) {
  .p-nav__innerBoxWrap.is-open {
    margin-top: 0;
    height: auto;
    position: absolute;
  }
}


.p-nav__innerBoxWrap.is-open .p-nav__innerItem a {
  font-size: 18px;
  line-height: var(--leading-snug);
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
  height: auto;

}

.p-nav__innerBoxWrap.is-open .p-nav__innerItem a::before {
  display: block;
  opacity: 1;
}

.p-nav__innerBoxWrap.is-open .p-nav__innerItem a::after {
  display: block;
  opacity: 1;
}




.p-nav__innerNav .p-nav__innerItem:last-of-type a {
  border-bottom: transparent;
}




@media (min-width: 992px) {
  .p-nav__innerBox {
    background-color: var(--color-white01);
    border-radius: var(--rounded-xl);
    padding: 64px;
    padding-top: 0;
    padding-bottom: 0;
    display: grid;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    grid-auto-flow: column;
    grid-template-columns: -webkit-max-content auto;
    grid-template-columns: max-content auto;
    width: 100%;
    min-height: 0;
    /* width: 100vw; */
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    position: fixed;
    left: 50%;
    translate: -50%;
    max-width: 94.1%;
  }
}

.p-nav__itemTitle {
  display: none;
}

@media (min-width: 992px) {
  .p-nav__itemTitle {
    color: #042731;
    font-size: 0;
    line-height: 0;
    font-weight: var(--font-weight-normal);
    letter-spacing: var(--tracking-tight);
    font-family: var(--font-family-base);
    text-transform: uppercase;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    display: block;
  }

}



@media (min-width: 992px) {
  .p-nav__innerNav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 56px;
    -moz-column-gap: 56px;
    column-gap: 56px;

  }
}




.p-nav__innerItem a {
  position: relative;
  color: var(--color-blue01);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  display: block;
  width: 100%;
  padding-top: 0;
  font-size: 0;
  padding-bottom: 0;
  border-bottom: transparent;
  padding-right: 48px;
  padding-left: 20px;
  height: 0;
  line-height: 0;

  -webkit-transition: padding-top .4s, padding-bottom.4s, height .4s;

  transition: padding-top .4s, padding-bottom.4s, height .4s;

}

@media (min-width: 992px) {
  .p-nav__innerItem a {
    padding-left: 0;
  }
}

.p-nav__innerItem a::before {
  position: absolute;
  content: "";
  background-color: var(--color-blue01);
  border-radius: 50%;
  width: 28px;
  height: 28px;
  display: block;
  right: 4px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}


.p-nav__innerItem a::after {
  position: absolute;
  content: "";
  background: url(../images/icon_arrow_white.svg) no-repeat center / contain;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  display: block;
  right: 11px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 1;
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}


@media (min-width: 992px) {




  @media screen and (any-hover: hover) {
    .p-nav__item:hover>.p-nav__innerBoxWrap {
      padding-top: 130px;
      opacity: 1;
      /* margin-top: 50px; */
    }

    .p-nav__item:hover .p-nav__innerBox {
      padding-top: 64px;
      padding-bottom: 64px;
      min-height: 260px;
    }

    .p-nav__item:hover .p-nav__itemTitle {
      font-size: 36px;
      line-height: 1.4;
    }

    .p-nav__item:hover .p-nav__innerItem a {
      font-size: 18px;
      line-height: var(--leading-snug);
      padding-top: 20px;
      padding-bottom: 20px;
      border-bottom: 1px solid #ccc;
      height: auto;

    }

    .p-nav__item:hover .p-nav__innerItem a::before {
      display: block;
      opacity: 1;

    }

    .p-nav__item:hover .p-nav__innerItem a::after {
      display: block;
      opacity: 1;

    }

    .p-nav__item:hover .p-nav__innerNav {
      row-gap: 24px;

    }

  }

}



.p-layerBg {
  position: relative;
}

.p-layerBg::before {
  background: rgba(34, 34, 34, 0.40);
  content: "";
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
  width: 100%;
  z-index: -1;
}

@media (min-width: 992px) {

  .p-layerBg.is-open::before {
    opacity: 0.6;
    z-index: 10;
  }
}



.l-container:has(.p-layerBg.is-open) .p-header {
  background-color: var(--color-white01);
}

/* =================== */
/*  section　　　　　      */
/* =================== */


.p-commonHeader {
  padding-top: 32px;
  padding-bottom: 23px;
  border-bottom: 1px solid var(--color-gray12);
}

@media (min-width: 992px) {
  .p-commonHeader {
    padding-bottom: 31px;

  }
}

.p-commonHeader__text {
  color: var(--color-black04);
  font-family: 'Iwata UD Gothic StdN VF TTF';
  font-size: 16px;
  font-weight: 400;
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  margin-top: 16px;
  display: block;
}

@media (min-width: 992px) {
  .p-commonHeader__text {
    margin-top: 16px;
    font-size: 16px;
  }
}



.p-commonHeader__headButtonArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;

  margin-top: 16px;
  max-width: 343px;
}

@media (min-width: 992px) {
  .p-commonHeader__headButtonArea {
    display: grid;
    -webkit-column-gap: 16px;
    -moz-column-gap: 16px;
    column-gap: 16px;
    grid-auto-flow: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: auto;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 16px;
    max-width: initial;
  }

}

.p-commonHeader__bookMark {
  margin-right: 8px;
}

.p-commonHeader__cart.c-button--cart {
  border: transparent;
}

.p-commonHeader__title .c-sectionSecondaryTitle__main {
  color: var(--primaryText_black);
}


.p-commonHeader__middleButton.c-commonButton--mark {
  width: auto;
  min-width: 193px;
  font-size: 16px;
}

.p-commonHeader__middleButton.c-commonButton--pdf {
  width: auto;
  min-width: 201px;
  font-size: 16px;
}


.p-commonHeader__categoryList {
  margin-top: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
}


.p-commonHeader__date time {
  color: var(--color-gray08);
  font-size: 14px;
  font-weight: var(--font-weight-light);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  display: inline-block;
  font-family: var(--font-family-base-light);
}


@media (min-width: 992px) {
  .p-commonHeader__date time {
    font-weight: var(--font-weight-normal);
  }
}

.p-commonHeader__breadcrumb {
  margin-top: 16px;
}


/* =================== */
/*  top           */
/* =================== */

.p-fv {
  position: relative;
  min-height: 615px;
  z-index: 0;
  height: 100%;
}

@media (min-width: 992px) {
  .p-fv {
    min-height: 880px;
    padding-bottom: 54px;
    padding-left: 57px;
    padding-right: 48px;
  }
}

.p-fv::before {
  content: "";
  position: absolute;
  top: -139px;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: url(../images/fv_bg_sp.png) no-repeat center;
  background-size: cover;
  background-position-x: -30px;

}

@media (min-width: 480px) {
  .p-fv::before {
    background-size: contain;
    background-position-x: 0;
    background-position: center;

  }
}

@media (min-width: 768px) {
  .p-fv::before {
    background: url(../images/fv_bg.png) no-repeat center / cover;
    /* top: -70px; */
    top: 0;

  }
}

.p-fv::after {
  content: "";
  position: absolute;
  top: 184px;
  background: url(../images/fv_bg2.png) no-repeat center / cover;
  width: 121px;
  height: 154px;
  left: 0;
  display: none;
}

@media (min-width: 992px) {
  .p-fv::after {
    display: block;
  }
}



.p-fv__imgWrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: inherit;
  z-index: 0;
}

.p-fv__img {
  display: block;
  height: inherit;
}

.p-fv__img img {
  height: 100%;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

.p-fv__inner {
  padding-left: 17px;
  padding-right: 23px;
  padding-bottom: 81px;
  padding-top: 58px;
  position: relative;
  max-width: 390px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 768px) {
  .p-fv__inner {
    max-width: 600px;
  }
}

@media (min-width: 992px) {
  .p-fv__inner {
    padding-left: 29px;
    padding-right: 91px;
    padding-bottom: 56px;
    padding-top: 247px;
    max-width: initial;
  }
}




.p-fv__copyBox {
  position: relative;
  z-index: 0;
  display: inline-grid;
  margin-left: 17px;
}

@media (min-width: 992px) {
  .p-fv__copyBox {
    margin-left: 25px;
  }
}

.p-fv__copy {
  font-weight: var(--font-weight-regular);
  line-height: 1.4;
  /* letter-spacing: 0.08em; */
  letter-spacing: 0;
  /* font-size: 30px; */
  font-size: 35px;;
  color: var(--primaryText_black);
  display: inline-block;
  -webkit-font-feature-settings: "palt", on;
  font-feature-settings: "palt", on;
  rotate: -5deg;
  /* font-family: "Iwata New Gothic Pro E"; */
  font-family: "イワタ中太ゴシック体オールド_90";
  font-family: "WebTopSans Regular";

}


@media (min-width: 992px) {
  .p-fv__copy {
    font-size: 48px;
    font-size:72px;
  }
}

.adjuster-wrap {
  display: inline;
}



/* .p-fv__copy:nth-last-of-type(1) {
  margin-left: 92px;
  font-family: 'Iwata New Gothic Pro B';
} */

@media (min-width: 992px) {
  .p-fv__copy:nth-last-of-type(1) {
    margin-left: 146px;

  }
}


.p-fv__copySub1 {

  position: relative;
  font-size: 45px;
}

@media (min-width: 992px) {
  .p-fv__copySub1 {
    font-size: 72px;
    letter-spacing: 0;
  }
}


.p-fv__copySub2 {
  /* font-size: 67px; */
  font-size: 45px;
}

@media (min-width: 992px) {
  .p-fv__copySub2 {
    /* font-size: 106px; */
    font-size:72px;
  }
}

.fv-underline:before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--primaryText_black);
}



.p-fv__textBox {
  z-index: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 9px;
  margin-top: 89px;
}

@media (min-width: 992px) {
  .p-fv__textBox {
    position: absolute;
    right: 0;
    top: 554px;
    margin-top: 0;
    row-gap: 7px;
  }
}

@media (min-width: 1200px) {
  .p-fv__textBox {
    right: 148px;
    top: 486px;

  }
}

.p-fv__subText {
  background-color: var(--color-white01);
  /* display: inline-block; */
  display:flex;
  align-items: center;
  padding: 8px;
  color: var(--primaryText_black);
  letter-spacing: 0;
  line-height: 1;
  font-weight: var(--font-weight-bold);
  font-family: var(--font-family-base);
  border-radius: var(--rounded-sm);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-size: 15px;
}


@media (min-width: 992px) {
  .p-fv__subText {
    font-size: 20px;
  }
}


.p-fv__subText:nth-child(2) {
  margin-left: 23px;
}

@media (min-width: 992px) {
  .p-fv__subText:nth-child(2) {
    margin-left: 0;
  }
}

.p-fv__enText {
  margin-top: 143px;
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  -webkit-font-feature-settings: "palt", on;
  font-feature-settings: "palt", on;
  line-height: 1.85;
  letter-spacing: 0.12em;
  max-width: 50%;
  background: -webkit-gradient(linear, left top, right top, from(#2C4D96), color-stop(15.85%, #0E1930), color-stop(25.4%, #818897), color-stop(37.32%, #233C76));
  background: linear-gradient(90deg, #2C4D96 0%, #0E1930 15.85%, #818897 25.4%, #233C76 37.32%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: 'Iwa UD Goth Disp Pr6N M';
  display: none;
}

@media (min-width: 992px) {
  .p-fv__enText {
    display: block;
    max-width: 400px;

  }
}

@media (min-width: 1200px) {
  .p-fv__enText {
    max-width: 739px;

  }
}

.p-fv__scroll {
  display: none;
}


@media (min-width: 992px) {
  .p-fv__scroll {
    /* position: absolute; */
    position: fixed;
    right: 48px;
    top: 660px;
    display: block;
  }
}

@media (min-width: 1200px) {
  .p-fv__scroll {
    right: 45px;
    top: 507px;
  }
}



/* =================== */
/*  about           */
/* =================== */

.p-aboutContents {
  position: relative;
  z-index: 0;
  margin-top: -160px;
  /* padding-bottom: 48px; */
  /* overflow: hidden; */
}

@media (min-width: 992px) {
  .p-aboutContents {
    margin-top: 0;
    /* margin-top: -120px; */
    /* padding-bottom: 0; */

  }
}


.p-aboutContents__containerWrap {
  /* padding-top: 64px; */
  padding-top: 160px;
  overflow: hidden;
  position: relative;
}

@media (min-width: 992px) {
  .p-aboutContents__containerWrap {
    /* padding-top: 68px; */
    padding-top: 160px;
    padding-bottom: 120px;
  }
}


.p-aboutContents__containerWrap::before {
  content: "";
  position: absolute;
  background: url(../images/bg_layer05.png) no-repeat center / contain;
  width: 140px;
  height: 245px;
  left: 0;
  bottom: 18px;
  z-index: -1;
}

.p-aboutContents__mainBlock {
  display: grid;
  grid-template:
    "fonts"
    "title"
    "text"
    "button"
  ;
}

@media (min-width: 992px) {
  .p-aboutContents__mainBlock {
    grid-template:
      "fonts title"
      "fonts text"
      "fonts button"
    ;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
  }
}

@media (min-width: 1200px) {
  .p-aboutContents__mainBlock {
    -webkit-column-gap: 80px;
    -moz-column-gap: 80px;
    column-gap: 80px;
  }
}



.p-aboutContents__title {
  grid-area: title;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 16px;
  text-align: center;
  font-size: 28px;
  font-weight: normal;
  -webkit-font-feature-settings: "wkna", on;
  font-feature-settings: "wkna", on;
  line-height: var(--leading-normal);
}

@media (min-width: 992px) {
  .p-aboutContents__title {
    margin-top: 0;
    text-align: left;
    font-size: 40px;
  }
}

.p-aboutContents__textBox {
  display: grid;
  row-gap: 44px;
  grid-area: text;
  margin-top: 28px;
}

@media (min-width: 992px) {
  .p-aboutContents__textBox {
    margin-top: 56px;
    row-gap: 50px;

  }
}

.p-aboutContents__text {
  font-size: 14px;
  /* font-weight: var(--font-weight-bold); */
  font-weight: var(--font-weight-normal);
  line-height: 2.2;
  color: var(--primaryText_black);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .p-aboutContents__text {
    font-size: 18px;
  }
}

.p-aboutContents__fontsBox {
  grid-area: fonts;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 992px) {
  .p-aboutContents__fontsBox {
    margin-top: 0;
  }
}

.p-aboutContents__buttonWrap {
  max-width: 334px;
  margin-top: 28px;
  grid-area: button;
  justify-self: center;
  width: 100%;

}

@media (min-width: 992px) {
  .p-aboutContents__buttonWrap {
    max-width: 288px;
    margin-top: 56px;
    justify-self: flex-start;
  }
}


.p-aboutContents__button.c-commonMiddleButton {
  font-size: 16px;
  padding-top: 24px;
  padding-bottom: 24px;
  border-radius: 48px;
}


@media (min-width: 992px) {
  .p-aboutContents__button.c-commonMiddleButton {
    padding-top: 24px;
    padding-bottom: 24px;
    border-radius: 48px;
  }
}

.p-aboutContents__button.c-commonButton--arrow::after {
  margin-left: 24px;
}


.p-aboutContents__boxes {
  overflow: hidden;
  margin-top: 48px;
}

@media (min-width: 992px) {
  .p-aboutContents__boxes {
    margin-top: 0;
  }
}

.p-fontsBox {
  max-width: 229px;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  cursor: pointer;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  aspect-ratio: 1;
  position: relative;
  z-index: 0;

}

@media (min-width: 576px) {
  .p-fontsBox {
    max-width: 400px;
  }
}

@media (min-width: 768px) {
  .p-fontsBox {
    max-width: 380px;
  }
}

@media (min-width: 992px) {
  .p-fontsBox {
    max-width: 427px;
    height: auto;
  }
}



.p-fontsBox::before {
  content: "";
  -webkit-mask-image: url(../images/fontbox.svg);
  mask-image: url(../images/fontbox.svg);
  width: 100%;
  height: 100%;
  -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: 0;
  left: 0;
  display: block;
  z-index: -1;
  -webkit-box-shadow: 11px 9px 37px 0px rgba(15, 30, 63, 0.08) inset;
  box-shadow: 11px 9px 37px 0px rgba(15, 30, 63, 0.08) inset;
}



.p-fontsBox__inner {
  height: inherit;
  width: inherit;
  display: grid;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-image: url(../images/fontbox.svg);
  mask-image: url(../images/fontbox.svg);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media (min-width: 992px) {
  .p-fontsBox__inner {
    height: 100%;
  }
}

.p-fontsBox__text {
  font-weight: var(--font-weight-bold);
  line-height: 1.15;
  font-size: 57px;
  text-align: center;
  -webkit-transition: font-family 0.3s ease;
  transition: font-family 0.3s ease;
  display: block;
  background: var(--Linear, linear-gradient(224deg, #4E72C0 17.42%, #123480 86.91%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  white-space: nowrap;
}

@media (min-width: 576px) {
  .p-fontsBox__text {
    font-size: 80px;
  }
}

@media (min-width: 992px) {
  .p-fontsBox__text {
    font-size: 115px;
  }
}

.p-boxes {
  padding-top: 26px;
  padding-bottom: 26px;
  overflow: visible;
}

@media (min-width: 992px) {
  .p-boxes {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.p-boxes__item {
  -webkit-transition: z-index 0.3s ease, -webkit-transform 0.3s ease;
  transition: z-index 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, z-index 0.3s ease;
  transition: transform 0.3s ease, z-index 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  height: auto;
  width: auto;

}


.p-boxes__wrapper {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}


/* =================== */
/*  トップのプラン           */
/* =================== */

.p-topPlan {
  padding-top: 80px;
  padding-bottom: 48px;
  position: relative;
  .bg-shape{
    position: absolute;
    aspect-ratio: 126 / 97;
    width:126px;
    height:auto;

    right:0;
    bottom :0px;
    img{
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
  }
}

@media (min-width: 992px) {
  .p-topPlan {
    padding-top: 120px;
    padding-bottom: 64px;

    .bg-shape{
      bottom :200px;
    }
  }
}

.p-topPlan__cards {
  gap: 16px;
  position: relative;
}



@media (min-width: 992px) {
  .p-topPlan__cards .c-card01 {
    padding-top: 48px;
  }
}

.p-topPlan__cards .c-card01__arrowImg {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}

.p-topPlan__cards :where(.c-card01__text, .c-card01__title) {
  color: var(--primaryText_black);
}


/* =================== */
/*  support           */
/* =================== */

.p-topSupport {
  padding-bottom: 80px;
}


@media (min-width: 992px) {
  .p-topSupport {
    padding-bottom: 120px;
  }
}

.p-topSupport__container {
  background-color: var(--color-blue01);
  position: relative;
  border-radius: var(--rounded-xl);
  z-index: 0;
  padding: 64px 24px;
}


@media (min-width: 992px) {
  .p-topSupport__container {
    padding: 80px 60px;

  }
}


.p-topSupport__container::before {
  background: url(../images/bg_layer04-sp.png) no-repeat center / contain;
  content: "";
  position: absolute;
  width: 171px;
  height: 213px;
  top: 0;
  right: 0;
  z-index: -1;
  mix-blend-mode: luminosity;
}

@media (min-width: 992px) {
  .p-topSupport__container::before {
    width: 100%;
    height: 100%;
    bottom: 0;
    top: initial;
    background: url(../images/bg_layer04.png) no-repeat center / contain;

  }
}


.p-topSupport__cards {
  margin-top: 32px;
  gap: 16px;
}

@media (min-width: 992px) {
  .p-supportCards {
    grid-template-columns: repeat(auto-fill, minmax(min(264px, 100%), 1fr));
    margin-top: 64px;

  }
}


.p-supportCards__item {
  row-gap: 0;
  grid-auto-flow: column;
  padding: 24px;
  border-radius: var(--rounded-md2);
}

@media (min-width: 992px) {
  .p-supportCards__item {
    row-gap: 71px;
    grid-auto-flow: initial;
    padding: 40px 26px 40px;
    border-radius: var(--rounded-xl);
  }
}

.p-supportCards__item .c-card10__headTitle {
  font-size: 18px;
}

@media (min-width: 992px) {
  .p-supportCards__item .c-card10__headTitle {
    font-size: 24px;
  }
}

.p-supportCards__item .c-card10__headText {
  margin-top: 0;
}

@media (min-width: 992px) {
  .p-supportCards__item .c-card10__headText {
    margin-top: 4px;
  }
}

/* =================== */
/*  コラム           */
/* =================== */

.p-topColumm {
  background-color: var(--color-gray02);
  position: relative;
  z-index: 0;
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-topColumm {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.p-topColumm.p-topColumm--bgLayer {
  margin-top: 30px;
}

@media (min-width: 992px) {
  .p-topColumm.p-topColumm--bgLayer {
    margin-top: 95px;
  }

}

.p-topColumm.p-topColumm--bgLayer::before {
  content: "";
  width: 100%;
  height: 30px;
  -webkit-mask-image: url(../images/half_circle.svg);
  mask-image: url(../images/half_circle.svg);
  position: absolute;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  top: -30px;
  left: 0;
  display: block;
  z-index: 0;
  scale: 1 -1;
  background: var(--color-gray02);
}




@media (min-width: 992px) {
  .p-topColumm.p-topColumm--bgLayer::before {
    height: 96px;
    top: -95px;

  }
}

.p-topColumm::after {
  position: absolute;
  content: "";
  bottom: 39px;
  left: 0;
  background: url(../images/bg_layer07.png) no-repeat center / contain;
  width: 192px;
  height: 223px;
  display: none;
  z-index: -1;
}

@media (min-width: 992px) {
  .p-topColumm::after {
    display: block;
  }
}



.p-topColumm__head {
  display: contents;
}

@media (min-width: 992px) {
  .p-topColumm__head {
    display: grid;
    align-self: flex-start;
    row-gap: 32px;
    max-width: 371px;
    row-gap: 40px;
  }
}



.p-topColumm__container {
  display: grid;
  row-gap: 32px;
}

@media (min-width: 992px) {
  .p-topColumm__container {
    -webkit-column-gap: 32px;
    -moz-column-gap: 32px;
    column-gap: 32px;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    row-gap: 0;
  }
}

@media (min-width: 1200px) {
  .p-topColumm__container {
    -webkit-column-gap: 64px;
    -moz-column-gap: 64px;
    column-gap: 64px;
  }
}



.p-topColumm__buttonWrap {
  max-width: 185px;
  grid-row: 4;
  justify-self: flex-end;
  width: 100%;
}

@media (min-width: 992px) {
  .p-topColumm__buttonWrap {
    grid-row: 3;
    justify-self: flex-start;
  }
}

.p-topColumm__button.c-commonMiddleButton {
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: 48px;
  font-size: 14px;
}

@media (min-width: 992px) {
  .p-topColumm__button.c-commonMiddleButton {
    padding-top: 13px;
    padding-bottom: 13px;
  }
}

.p-columnList__item {
  padding-top: 23px;
  padding-bottom: 23px;
  border-top: 1px solid var(--color-gray13);
}

.p-columnList__item:last-child {
  border-bottom: 1px solid var(--color-gray13);
}

.p-columnList__item .c-card04__imgWrap {
  padding: 8px;
  border-radius: var(--rounded-md);
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
}

@media (min-width: 992px) {
  .p-columnList__item .c-card04__imgWrap {
    padding: 16px;
    border-radius: var(--rounded-xl);

  }
}



.p-columnList__item .c-card04__title {
  margin-top: 0;
  font-size: 14px;
}

@media (min-width: 992px) {
  .p-columnList__item .c-card04__title {
    font-size: 18px;
  }
}

.p-columnList__item .c-card04__date {
  font-size: 12px;
}

@media (min-width: 992px) {
  .p-columnList__item .c-card04__date {
    font-size: 14px;
  }
}

/* =================== */
/*  会社情報           */
/* =================== */
.p-topCompanyWrap {
  overflow: hidden;
}

.p-topCompany {
  position: relative;
  background-color: var(--color-gray02);
  z-index: 0;
  padding-bottom: 80px;
}


@media (min-width: 992px) {
  .p-topCompany {
    padding-top: 120px;
    padding-bottom: 100px;
  }
}

.p-topCompany.p-topCompany--bgLayer {
  margin-bottom: 110px;
}

@media (min-width: 992px) {
  .p-topCompany.p-topCompany--bgLayer {
    margin-bottom: 96px;

  }
}

.p-topCompany.p-topCompany--bgLayer::before {
  content: "";
  width: 100%;
  height: 30px;
  -webkit-mask-image: url(../images/half_circle.svg);
  mask-image: url(../images/half_circle.svg);
  position: absolute;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  bottom: -30px;
  left: 0;
  display: block;
  z-index: 0;
  background: var(--color-gray02);
}

@media (min-width: 992px) {
  .p-topCompany.p-topCompany--bgLayer::before {
    height: 95px;
    bottom: -95px;
  }
}


.p-topCompany::after {
  position: absolute;
  content: "";
  width: 47px;
  height: 98px;
  right: 0;
  top: -20px;
  background: url(../images/bg_layer08.png) no-repeat center / contain;
  z-index: -1;
  display: block;
}

@media (min-width: 992px) {
  .p-topCompany::after {
    display: none;
  }
}

.p-topCompany__container {
  position: relative;
  z-index: 0;
}

.p-topCompany__inner {
  --innerWidth: 1232px;
}

.p-topCompany__img {
  max-width: 703px;
  margin-right: auto;
  margin-left: auto;
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-topCompany__img {
    margin-top: 0;
    position: absolute;
    right: -162px;
    top: -120px;
    z-index: -1;
  }
}

.p-topCompany__img img {
  border-radius: 1000px;
  display: block;
}

.p-topCompany__cards {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-topCompany__cards {
    margin-top: 64px;
  }
}


.p-companyCards {
  grid-template-columns: repeat(auto-fill, minmax(min(304px, 100%), 1fr));
  gap: 16px;
}

@media (min-width: 992px) {
  .p-companyCards {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1200px) {
  .p-companyCards {
    grid-template-columns: repeat(auto-fill, minmax(min(608px, 100%), 1fr));
  }
}

.p-companyCards__item {
  row-gap: 24px;
}

@media (min-width: 992px) {
  .p-companyCards__item {
    row-gap: 100px;
  }
}


.p-topCompany__banner {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-topCompany__banner {
    margin-top: 40px;
  }
}


/* =================== */
/*  news           */
/* =================== */

.p-topNews {
  position: relative;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-topNews {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}


.p-topNews::before {
  position: absolute;
  content: "";
  bottom: 201px;
  left: -4px;
  background: url(../images/bg_layer06.png) no-repeat center / contain;
  width: 144px;
  height: 151px;
  display: none;
  z-index: -1;
}

@media (min-width: 992px) {
  .p-topNews::before {
    display: block;
  }
}


.p-topNews::after {
  position: absolute;
  content: "";
  top: -110px;
  right: 16px;
  background: url(../images/bg_layer06-sp.png) no-repeat center / contain;
  width: 94px;
  height: 71px;
  display: block;
  z-index: 0;
}

@media (min-width: 992px) {
  .p-topNews::after {
    display: none;
  }
}

.p-topNews__head {
  display: grid;
  align-self: flex-start;
  row-gap: 32px;
  position: relative;
}

@media (min-width: 992px) {
  .p-topNews__head {
    max-width: 338px;
    row-gap: 64px;
    width: 100%;
  }
}

.p-topNews__text {
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .p-topNews__text {
    font-size: 16px;
  }
}

.p-topNews__container {
  display: grid;
  row-gap: 40px;


}

@media (min-width: 992px) {
  .p-topNews__container {
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    -webkit-column-gap: 64px;
    -moz-column-gap: 64px;
    column-gap: 64px;
    row-gap: 0;
  }
}

@media (min-width: 1200px) {
  .p-topNews__container {
    -webkit-column-gap: 80px;
    -moz-column-gap: 80px;
    column-gap: 80px;
  }
}



.p-topNews__buttonWrap {
  max-width: 193px;
}

@media (min-width: 992px) {
  .p-topNews__buttonWrap {
    max-width: 185px;

  }
}

.p-topNews__button.c-commonMiddleButton {
  padding-top: 13px;
  padding-bottom: 13px;
  border-radius: var(--rounded-xxl);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
}

.p-newsList__item {
  border-top: 1px solid #d5d5d5;
}


@media (min-width: 992px) {
  .p-newsList__item {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.p-newsList__item:last-child {
  border-bottom: 1px solid #d5d5d5;
}



/* =================== */
/*  お知らせ詳細      */
/* =================== */


.p-newsDetail__contents {
  padding-top: 0;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-newsDetail__contents {
    padding-top: 24px;
    padding-bottom: 120px;
  }
}



/* =================== */
/*  サービス　　　　　      */
/* =================== */

.p-service__contents {
  padding-top: 64px;
  padding-bottom: 64px;
  display: grid;
}

@media (min-width: 992px) {
  .p-service__contents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

/* =================== */
/*  書体一覧         */
/* =================== */


.p-fontArchive__contents {
  padding-top: 40px;
  padding-bottom: 120px;
}

@media (min-width: 992px) {
  .p-fontArchive__contents {
    padding-top: 80px;
  }
}

.p-fontArchive__contentsBody {
  display: grid;
  row-gap: 40px;
}


@media (min-width: 992px) {
  .p-fontArchive__contentsBody {
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    row-gap: 0;

  }
}

.p-fontsFilter__main {
  grid-column: 1;
  grid-row: 3;

}

@media (min-width: 992px) {
  .p-fontsFilter__main {
    grid-column: 2;
    grid-row: 1;

  }
}

@media (min-width: 992px) {
  .p-fontsFilter__mainText {
    margin-top: 80px;
  }
}


.p-fontsFilter__spButtonArea {
  display: block;
  grid-column: 1;
  grid-area: 1;
}


@media (min-width: 992px) {
  .p-fontsFilter__spButtonArea {
    display: none;
  }
}

.p-fontsFilter__spButton.c-commonButton {
  background-color: var(--color-white01);
  border-color: #2f2f2f;
  color: #2f2f2f;
  padding: 9px 29px;
  max-width: 220px;
  margin-right: auto;
  margin-left: auto;
  display: block;
  width: 100%;
}

.p-fontsFilter__spButton.c-commonButton.is-open {
  background-color: #2f2f2f;
  border-color: #2f2f2f;
  color: var(--color-white01);
}


.p-fontsFilter__aside {
  grid-column: 1;
  grid-row: 2;
}

@media (min-width: 992px) {
  .p-fontsFilter__aside {
    max-width: 312px;
    grid-row: 1;
    grid-column: 1 / 2;
    margin-right: 32px;
  }
}

.p-fontsFilter__aside {
  display: none;
}

.p-fontsFilter__aside.is-open {
  display: block;
}


.p-fontArchive__pager {
  margin-top: 64px;
}

@media (min-width: 992px) {
  .p-fontArchive__pager {
    margin-top: 80px;
  }
}

.p-fontsAside__headBox {
  margin-top: 0;
}

@media (min-width: 992px) {
  .p-fontsAside__headBox {
    margin-top: 40px;

  }
}

.p-fontArchive__numberText {
  font-size: 16px;
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  color: var(--color-black06);
  font-weight: var(--font-weight-regular);
  font-family: "Iwa UD Goth Disp Pr6N";
}


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


.p-fontsAside__closeButton.c-arrow::before {
  background: url(../images/arrow_white.png) no-repeat center / contain;
  width: 24px;
  height: 24px;

}

.p-fontsAside__closeButton.c-arrow {
  display: none;
  margin-left: auto;

}

@media (min-width: 992px) {
  .p-fontsAside__closeButton.c-arrow {
    display: block;
  }
}


.p-fontsFilter .font-preview {
  border: transparent;
  border-top: 1px solid #d6d6d6;
  padding: 23px 24px;
  row-gap: 14px;
}

.p-fontsFilter .font-preview:last-of-type {
  border-bottom: 1px solid #d6d6d6;

}

.p-fontsFilter .font-name {
  color: #4c4c4c;
  display: inline-block;
  letter-spacing: 0.04em;
  line-height: 1.6;
  margin-bottom: 0;
  font-weight: 500;
  font-family: var(--font-family-base-medium);
}



.p-fontsFilter .c-font-button {
  margin-left: 40px;
}


.p-fontsAside {
  padding: 40px 24px 16px;
  background-color: #f4f4f4;
  border-radius: 4px;
}



.p-fontsAside__buttonArea {
  display: grid;
  row-gap: 24px;
  padding-right: 22px;
  padding-left: 22px;
  padding-bottom: 24px;
}

.p-fontsAside__sideButton.c-commonButton {
  padding: 8px 12px;
  max-width: 220px;
  margin-left: auto;
  margin-right: auto;
  font-weight: var(--font-weight-normal);
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .p-fontsAside__sideButton.c-commonButton {
    padding: 9px 12px;

  }
}



.p-fontsAside__searchBox {
  display: grid;
  grid-template-columns: 1fr -webkit-max-content;
  grid-template-columns: 1fr max-content;
}

.p-fontsAside__searchBox .c-fontSearch {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0;
}


.p-fontsAside__styleFilter {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 12px;
  margin-bottom: 24px;
}

.p-fontsAside__body {
  margin-top: 24px;
}

.p-fontsAside__block+.p-fontsAside__block {
  border-top: 1px solid #d6d6d6;
  padding-top: 23px;
}

@media (min-width: 992px) {
  .p-fontsAside__block+.p-fontsAside__block {
    padding-top: 39px;

  }
}

@media (min-width: 992px) {
  .p-fontsAside__block2 {
    margin-top: 48px;
  }
}

.p-fontsAside__block2+.p-fontsAside__block2 {
  border-top: 1px solid #d6d6d6;
  padding-top: 23px;
}

@media (min-width: 992px) {
  .p-fontsAside__block2+.p-fontsAside__block2 {
    padding-top: 24px;
    margin-top: 24px;

  }
}

.p-fontsAside__styleFilter .filter-item label {
  color: #333;
  padding: 23px 16px;
  border: 1px solid #d6d6d6;
  background-color: #fff;
  border-radius: 2px;
  display: block;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  width: 100%;
  position: relative;
  z-index: 0;
  text-align: left;
  font-family: var(--font-family-base-medium);
  cursor: pointer;
}

.p-fontsAside__styleFilter input[type=checkbox]:checked+label {
  background-color: #dfe8f1;
}

.p-fontsAside__styleFilter label[for="decoration"] {
  position: relative;
}

.p-fontsAside__styleFilter label[for="decoration"]::after {
  content: "";
  position: absolute;
  width: 60px;
  height: 56px;
  background: url(../images/bg_decoration.png) no-repeat center / contain;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  display: block;
}

.p-fontsAside__styleFilter label[for="decoration"] span {
  display: none;
}

.p-fontsAside__styleFilter .filter-item span {
  color: #f1f1f1;
  font-size: 60px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  font-family: var(--font-family-base);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  z-index: -1;
}

.p-fontsAside__styleFilter label[for="mincho"] span {
  /* font-family: 'Iwata Mincho Old Pr6 R'; */
  font-family: 'Iwata Mincho Old Pr6N R';

}

.p-fontsAside__styleFilter label[for="gothic"] span {
  font-family: 'Iwata UD Gothic StdN VF TTF';
}

.p-fontsAside__styleFilter label[for="maru-gothic"] span {
  font-family: 'Iwata Maru Gothic Pr6';
}

.p-fontsAside__styleFilter label[for="design"] span {
  font-family: 'Iwata News Gothic Std';
}

.p-fontsAside__styleFilter label[for="brush"] span {
  font-family: 'Iwata Gyousho Std';
}






.p-fontsAside__styleFilter input[type=checkbox]:checked+label span {
  color: #fff;
}


.p-fontsAside__styleFilter .filter-item:nth-of-type(n + 7) {
  /* display: none; */
}

.p-fontsAside__styleFilter.is-open .filter-item:nth-of-type(n + 7) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.p-fontsAside__styleFilterButtonWrap {
  text-align: center;
  margin-bottom: 24px;
}

.p-fontsAside__styleFilterButtonWrap.is-close .p-fontsAside__styleFilterButton::after {
  rotate: 180deg;
}


.p-fontsAside__weightFilter {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-top: 12px;
  margin-bottom: 24px;
}


.p-fontsAside__weightFilter .filter-item label {
  color: #333;
  padding: 11px 11px;
  border: 1px solid #d6d6d6;
  background-color: #fff;
  border-radius: 2px;
  display: block;
  font-size: 24px;
  line-height: 1.6;
  letter-spacing: 0;
  width: 100%;
  position: relative;
  z-index: 0;
  cursor: pointer;
  text-align: center;
  font-family: 'Iwata UD Gothic StdN VF TTF';

}




.p-fontsAside__weightFilter .filter-item label[for="light"] {
  font-weight: 300;
}

.p-fontsAside__weightFilter .filter-item label[for="regular"] {
  font-weight: 425;
}

.p-fontsAside__weightFilter .filter-item label[for="regular2"] {
  font-weight: 460;
}

.p-fontsAside__weightFilter .filter-item label[for="medium"] {
  font-weight: 540;
}

.p-fontsAside__weightFilter .filter-item label[for="bold"] {
  font-weight: 700;
}

.p-fontsAside__weightFilter .filter-item label[for="bold2"] {
  font-weight: 790;
}

.p-fontsAside__weightFilter .filter-item label[for="heavy"] {
  font-weight: 900;
}


.p-fontsAside__weightFilter input[type=checkbox]:checked+label {
  background-color: #dfe8f1;
}



.p-fontsAside__imageWordFilter {
  margin-top: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 24px;
}



.p-fontsAside__imageWordFilter .filter-item label {
  color: #d6d6d6;
  padding: 5px 9px;
  border: 1px solid #d6d6d6;
  border-radius: 2px;
  display: block;
  color: #123480;
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-family: var(--font-family-base-medium);
  font-size: 13px;
  font-weight: var(--font-weight-normal);

}

.p-fontsAside__imageWordFilter input[type=checkbox]:checked+label {
  background-color: #dfe8f1;
}






.p-fontsAside__subTitle {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-normal);
  font-family: var(--font-family-base-medium);
}


.p-fontsAside__sortList {
  margin-top: 4px;
}


.p-fontsAside__sortArea {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 28px;

  margin-top: 12px;
}


.p-fontsAside__sortArea.p-fontsAside__sortArea--row {
  grid-template-columns: initial;
}



/* =================== */
/*  書体詳細      */
/* =================== */

.p-fontDetails__header .p-commonHeader__text {
  font-family: var(--font-family-base-medium);
}

.p-fontDetails__contents {
  padding-top: 64px;
  padding-bottom: 80px;

}

@media (min-width: 992px) {
  .p-fontDetails__contents {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}


.p-fontDetails__contentsBody {
  display: grid;
  row-gap: 48px;

}

.p-fontDetails__contentsBody .p-fontsFilter__main {
  grid-row: initial;
  grid-column: initial;
}


.p-fontDetails__contentsBody .filterControl__range {
  margin-top: 24px;
}


@media (min-width: 992px) {
  .p-fontDetails__contentsBody .filterControl__range {
    margin-top: 0;
  }
}

.p-fontDetails__contentsBody .c-textRange {
  margin-bottom: 0;
}

.p-fontDetails__contentsBody .filterControl__head {
  display: grid;
  row-gap: 24px;
}


.p-fontDetails__block {
  display: grid;
  row-gap: 56px;
}

.p-fontDetails02__wrap {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: var(--color-gray02);
}

.p-fontDetails__contents :where(.p-fontsFilter__spButtonArea, .p-fontsFilter__aside) {
  display: none;
}


/* =================== */
/*  モーダル      */
/* =================== */

.p-modal .modal-content__block+.modal-content__block {
  margin-top: 64px;
}

.p-modal .c-commonTable {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-modal .c-commonTable {
    margin-top: 24px;
  }
}

.p-modal .c-commonTable td span {
  color: #adadad;
}

.p-modal .modal-header {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  position: absolute;
  right: 30px;
  top: 30px;

}

.p-modal .modal-header .modal-close::before {
  background: url(../images/icon_close.svg) no-repeat center / contain;
  content: "";
  width: 24px;
  height: 24px;
  display: block;
}

.p-modal__buttonWrap {
  margin-top: 40px;
  text-align: center;
}

.p-modal__buttonBoxes {
  display: grid;
  row-gap: 16px;
  grid-template-columns: repeat(auto-fill, minmax(min(360px, 100%), 1fr));

}

@media (min-width: 992px) {
  .p-modal__buttonBoxes {
    gap: 24px;
  }
}


.p-modal__buttonBoxTextWrap {
  display: grid;
  grid-template-columns: 1fr -webkit-max-content;
  grid-template-columns: 1fr max-content;
  -webkit-column-gap: 26px;
  -moz-column-gap: 26px;
  column-gap: 26px;
  background-color: var(--color-gray02);
  border-radius: var(--rounded-sm);
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 16px 24px;
}

.p-modal__buttonBoxText {
  font-size: 18px;
  line-height: var(--leading-snug);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-tight);
  font-family: var(--font-family-base);
  color: var(--color-black01);
  position: relative;
  text-align: left;
}



.p-modal__button {
  padding-top: 5px;
  padding-bottom: 5px;
  font-size: 14px;
  border-radius: 48px;
  max-width: 240px;
  font-family: var(--font-family-base);
}


.modal-overlay {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: rgba(51, 51, 51, .6);
  bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
}

.modal-container {
  background-color: #fff;
  max-height: 80vh;
  max-width: 878px;
  overflow-y: auto;
  width: 80%;
  border-radius: var(--rounded-xl);
  padding: 64px 16px 64px;
}

@media (min-width: 992px) {
  .modal-container {
    padding: 48px 64px 64px;

  }
}



.modal-container::-webkit-scrollbar {
  width: 5px;
}

.modal-container::-webkit-scrollbar-track {
  background-color: #ccc;
}

.modal-container::-webkit-scrollbar-thumb {
  background-color: #123480;
}


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

.modal-title {
  font-size: 28px;
  line-height: var(--leading-relaxed02);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  color: var(--color-black01);
  position: relative;
  border-bottom: 1px solid var(--color-blue01);
  padding-bottom: 4px;
}

.modal-container {
  h2 {
    font-size: 28px;
    line-height: var(--leading-relaxed02);
    font-weight: var(--font-weight-bold);
    letter-spacing: var(--tracking-normal);
    font-family: var(--font-family-base);
    color: var(--color-black01);
    position: relative;
    border-bottom: 1px solid var(--color-blue01);
    padding-bottom: 4px;
  }

}



.modal-close {
  background: transparent;
  border: 0;
}


.modal-content .c-commonTable {
  border-top: transparent;
  border-bottom: 1px solid var(--color-gray05);
}

@media (min-width: 992px) {
  .modal-content .c-commonTable {
    border: transparent;
  }
}

.modal-content .c-commonTable th {
  border-top: 1px solid var(--color-gray05);
  background-color: var(--color-blue04);
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .modal-content .c-commonTable th {
    border-top: 1px solid var(--color-blue04);
    border-bottom: 1px solid var(--color-blue04);
    border-right: 1px solid var(--color-blue04);
  }
}

.modal-content .c-commonTable td {
  border: transparent;
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .modal-content .c-commonTable td {
    border-top: 1px solid var(--color-gray05);
    border-right: 1px solid var(--color-gray05);

  }

  .modal-content .c-commonTable tr:last-of-type td {
    border-bottom: 1px solid var(--color-gray05);

  }
}


.modal-content th {
  width: 100%;
}

@media (min-width: 992px) {
  .modal-content th {
    width: 200px;
  }
}


/* モーダルアニメーション */
@-webkit-keyframes mmfadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@-webkit-keyframes mmfadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@-webkit-keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
    transform: translateY(15%);
  }

  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
    transform: translateY(15%);
  }

  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  to {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}

@keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  to {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden="false"] .modal-overlay {
  -webkit-animation: mmfadeIn .3s cubic-bezier(.0, .0, .2, 1);
  animation: mmfadeIn .3s cubic-bezier(.0, .0, .2, 1);
}

.micromodal-slide[aria-hidden="false"] .modal-container {
  -webkit-animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
  animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal-overlay {
  -webkit-animation: mmfadeOut .3s cubic-bezier(.0, .0, .2, 1);
  animation: mmfadeOut .3s cubic-bezier(.0, .0, .2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal-container {
  -webkit-animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
  animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
}

.micromodal-slide .modal-container,
.micromodal-slide .modal-overlay {
  will-change: transform;
}


/* =================== */
/*  販売プラン      */
/* =================== */

.p-salesContents {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-salesContents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.p-salesContents__contents {
  margin-top: 64px;
}

.p-salesContents__contents .p-cards__item {
  grid-row: span 2;
  row-gap: 22px;
}



/* =================== */
/*  おすすめフォント      */
/* =================== */

.p-recommendContents {
  padding-top: 80px;
  padding-bottom: 80px;
  overflow: hidden;
}

@media (min-width: 992px) {
  .p-recommendContents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}


.p-recommendContents__contents {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-recommendContents__contents {
    margin-top: 64px;
  }
}


.p-recommendContents__block {
  padding-bottom: 12px;
}

@media (min-width: 992px) {
  .p-recommendContents__block {
    padding-bottom: 25px;

  }
}

.p-recommendContents__swiper {
  overflow: visible;
  padding-bottom: 57px;
}

@media (min-width: 992px) {
  .p-recommendContents__swiper {
    padding-bottom: 50px;

  }
}

.p-recommendContents__buttonWrap {
  position: absolute;
  right: 60px;
  bottom: 0;
}

@media (min-width: 992px) {
  .p-recommendContents__buttonWrap {
    bottom: 8px;
  }
}

.p-recommendContents__scrollbar.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  width: 70%;
  height: 3px;
  left: 0;
}

@media (min-width: 992px) {

  .p-recommendContents__scrollbar.swiper-horizontal>.swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 86.6%;
  }
}

.p-recommendContents__scrollbar .swiper-scrollbar-drag {
  background-color: var(--color-blue01);
}

.p-recommendContents__next {
  right: -60px;

}

.p-recommendContents__prev {
  left: -21px;
}

@media (min-width: 992px) {

  .p-recommendContents__prev {
    left: -64px;
  }
}

.p-recommendContents__buttonWrap :where(.p-recommendContents__prev, .p-recommendContents__next) {
  background: var(--color-blue01);
  width: 32px;
  height: 32px;
  border-radius: 50%;

}

@media (min-width: 992px) {
  .p-recommendContents__buttonWrap :where(.p-recommendContents__prev, .p-recommendContents__next) {
    width: 52px;
    height: 52px;
  }
}

.p-recommendContents__buttonWrap :where(.p-recommendContents__prev, .p-recommendContents__next):after {
  content: "";

}

:where(.p-recommendContents__prev, .p-recommendContents__next):after {
  background: url(../images/icon_arrow.svg)no-repeat center / contain;
  width: 31px;
  height: 30px;
}

.p-recommendContents__prev::after {
  rotate: 180deg;
}

.p-recommendContents__buttonWrap .swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 1;
  background: var(--color-gray03);
}




/* =================== */
/*  導入事例      */
/* =================== */

.p-caseContents {
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: var(--color-gray02);
}

@media (min-width: 992px) {
  .p-caseContents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.p-caseContents+.p-ctaContents {
  margin-top: 120px;
}

.p-caseContents.p-caseContents--bgTopLayer {
  padding-top: 59px;
  padding-bottom: 0;
  background-color: transparent;
  position: relative;
  z-index: 0;
}

.p-caseContents.p-caseContents--bgTopLayer .p-caseContents__contentsInner {
  padding-top: 120px;
  padding-bottom: 60px;
  background-color: var(--color-gray02);
}


.p-caseContents.p-caseContents--bgTopLayer::before {
  content: "";
  width: 100%;
  height: 59px;
  -webkit-mask-image: url(../images/half_circle.svg);
  mask-image: url(../images/half_circle.svg);
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  z-index: -1;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  background-color: var(--color-gray02);
}



.p-caseContents__contents {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-caseContents__contents {
    margin-top: 64px;

  }
}

.p-caseContents__swiper {
  overflow: visible;
  padding-bottom: 56px;
}

@media (min-width: 992px) {
  .p-caseContents__swiper {
    padding-bottom: 90px;

  }
}

.p-caseContents__buttonWrap {
  position: absolute;
  right: 60px;
  bottom: 0px;
}

@media (min-width: 992px) {
  .p-caseContents__buttonWrap {
    bottom: 8px;
  }
}

.p-caseContents__scrollbar.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  width: 70%;
  height: 3px;
  left: 0;
}

@media (min-width: 992px) {

  .p-caseContents__scrollbar.swiper-horizontal>.swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 86.6%;
  }
}

.p-caseContents__scrollbar .swiper-scrollbar-drag {
  background-color: var(--color-blue01);
}

.p-caseContents__next {
  right: -60px;

}

.p-caseContents__prev {
  left: -22px;
}

@media (min-width: 992px) {

  .p-caseContents__prev {
    left: -64px;
  }
}

.p-caseContents__buttonWrap :where(.p-caseContents__prev, .p-caseContents__next) {
  background: var(--color-blue01);
  width: 32px;
  height: 32px;
  border-radius: 50%;

}

@media (min-width: 992px) {
  .p-caseContents__buttonWrap :where(.p-caseContents__prev, .p-caseContents__next) {
    width: 52px;
    height: 52px;
  }
}

.p-caseContents__buttonWrap :where(.p-caseContents__prev, .p-caseContents__next):after {
  content: "";

}

:where(.p-caseContents__prev, .p-caseContents__next):after {
  background: url(../images/icon_arrow.svg)no-repeat center / contain;
  width: 31px;
  height: 30px;
}

.p-caseContents__prev::after {
  rotate: 180deg;
}

.p-caseContents__buttonWrap .swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 1;
  background: var(--color-gray03);
}


.p-caseContents__block {
  padding-bottom: 16px;
  display: grid;
  grid-template:
    'title '
    'button'
    'main ';
}

@media (min-width: 992px) {
  .p-caseContents__block {
    padding-bottom: 25px;
    grid-template:
      'title title button'
      'main  main  main';
  }
}


.p-caseContents__title {
  grid-area: title;
  padding-top: 0;
  padding-bottom: 0;
}

.p-caseContents__contents {
  grid-area: main;
}

.p-caseContents__button {
  max-width: 193px;
  margin-top: 32px;
  align-self: center;
  width: 100%;
  grid-area: button;
}

@media (min-width: 992px) {
  .p-caseContents__button {
    margin-left: auto;
    max-width: 262px;
    margin-top: 0;

  }
}



/* =================== */
/*  関連記事　　      */
/* =================== */

.p-relatedContents {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-relatedContents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}


.p-relatedContents.p-caseContents--bgBottomLayer {
  padding-top: 0;
  position: relative;
  padding-bottom: 59px;
}

.p-relatedContents.p-caseContents--bgBottomLayer::before {
  content: "";
  width: 100%;
  height: 59px;
  -webkit-mask-image: url(../images/half_circle.svg);
  mask-image: url(../images/half_circle.svg);
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  z-index: -1;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  background-color: var(--color-gray02);
  rotate: 180deg;
}


.p-relatedContents.p-caseContents--bgBottomLayer .p-relatedContents__contentsInner {
  padding-top: 60px;
  padding-bottom: 120px;
  background-color: var(--color-gray02);

}


.p-relatedContents__contentInner {
  display: grid;
  grid-template:
    'title'
    'text'
    'main'
    'button '
  ;
}

@media (min-width: 992px) {
  .p-relatedContents__contentInner {
    grid-template:
      'title title button'
      'text  text  text'
      'main  main  main'
    ;
  }
}

.p-relatedContents__title {
  grid-area: title;
  padding-top: 0;
  padding-bottom: 0;

}

.p-relatedContents__contents {
  margin-top: 32px;
  grid-area: main;
}

@media (min-width: 992px) {
  .p-relatedContents__contents {
    margin-top: 64px;

  }
}


@media (min-width: 992px) {
  .p-relatedContents__contents .p-columnList {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(295px, 100%), 1fr));
    gap: 16px;
  }

  .p-relatedContents__contents .p-columnList__item {
    border: transparent;
    padding-top: 0;
    padding-bottom: 0;
  }

  .p-relatedContents__contents .c-card04.c-card04--row {
    grid-template:
      "img"
      "textBox"
    ;
    row-gap: 16px;
  }

  .p-relatedContents__contents .c-card04.c-card04--row .c-card04__textBox {
    margin-top: 16px;
  }

  .p-relatedContents__contents .c-card04.c-card04--row .c-card04__imgWrap {
    padding: 24px;
  }

}


.p-relatedContents__cards.p-cards {
  grid-auto-flow: row;
  grid-template-columns: initial;
}



.p-relatedContents__buttonWrap {
  margin-left: auto;
  align-self: center;
  grid-area: button;
  margin-top: 32px;

}

@media (min-width: 992px) {
  .p-relatedContents__buttonWrap {
    margin-top: 0;
  }
}


.p-relatedContents__button.c-commonMiddleButton {
  padding-top: 13px;
  padding-bottom: 13px;
  width: 100%;
  min-width: 185px;
}

@media (min-width: 992px) {
  .p-relatedContents__button.c-commonMiddleButton {
    max-width: 262px;
  }
}

.p-relatedContents__text {
  margin-top: 14px;
  grid-area: text;
  font-family: var(--font-family-noto);
}

@media (min-width: 992px) {
  .p-relatedContents__text {
    margin-top: 48px;

  }
}

/* =================== */
/*  サービス詳細      */
/* =================== */


.p-serviceDetails__header .c-sectionSecondaryTitle__main {
  /* font-family: 'Iwa UD Goth Disp Pr6N M'; */

}

@media (min-width: 992px) {
  .p-serviceDetails__header .c-sectionSecondaryTitle__main {
    font-size: 56px;
    line-height: 1.4;
  }
}


@media (min-width: 992px) {
  .p-serviceDetails__contents .l-inner {
    display: grid;
    grid-template-columns: 1fr -webkit-max-content;
    grid-template-columns: 1fr max-content;
    -webkit-column-gap: 39px;
    -moz-column-gap: 39px;
    column-gap: 39px;
  }
}

@media (min-width: 1200px) {
  .p-serviceDetails__contents .l-inner {
    -webkit-column-gap: 78px;
    -moz-column-gap: 78px;
    column-gap: 78px;
  }
}


.p-serviceDetails__contents {
  padding-top: 0;
  padding-bottom: 80px;

}

@media (min-width: 992px) {
  .p-serviceDetails__contents {
    padding-top: 80px;
    padding-bottom: 120px;
  }
}

.p-serviceDetails__contents2 {
  padding-top: 0;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-serviceDetails__contents2 {
    padding-top: 64px;
    padding-bottom: 120px;
  }
}

.p-serviceDetails__block {
  display: grid;
  row-gap: 24px;
}


.p-contentsList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(360px, 100%), 1fr));
  gap: 28px;
}


.p-commonAside {
  display: none;
}


@media (min-width: 992px) {
  .p-commonAside {
    display: block;
  }
}

@media (min-width: 992px) {
  .p-serviceDetails__item {
    max-width: 400px;
  }
}


.p-listLinks {
  display: grid;
  row-gap: 16px;
}


/* =================== */
/*  プラン概要　　      */
/* =================== */

.p-planContents {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: var(--color-gray02);
}

@media (min-width: 992px) {
  .p-planContents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.p-planContents__title {
  padding-top: 0;
  padding-bottom: 0;
}

.p-planContents__contents {
  margin-top: 24px;
}

@media (min-width: 992px) {
  .p-planContents__contents {
    margin-top: 64px;
  }
}



@media (min-width: 992px) {
  .p-planContents__table {
    border-color: #fcfcfc;
  }
}

.p-planContents__table th,
.p-planContents__table td {
  /* font-family: "Iwata UD Gothic StdN VF TTF"; */
}

@media (min-width: 992px) {

  .p-planContents__table th,
  .p-planContents__table td {
    border-color: #fcfcfc;

  }
}

.p-planContents__table th {
  font-weight: var(--font-weight-normal);
}

@media (min-width: 992px) {
  .p-planContents__table th {
    background-color: var(--color-blue04);
  }
}



.p-planContents__table td {
  font-weight: 425;
}

.p-planContents__table a {
  text-decoration: underline;
  color:var(--color-blue03);
}


@media (min-width: 992px) {
  .p-planContents__table th {
    width: 248px;
  }

}


/* =================== */
/*  フロー　　　　　      */
/* =================== */

.p-flowContents {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-flowContents {
    padding-top: 120px;
    padding-bottom: 60px;
  }
}

.p-flowContents+.p-faqContents {
  padding-top: 0;
}

@media (min-width: 992px) {
  .p-flowContents+.p-faqContents {
    padding-top: 60px;
  }
}

.p-flowContents__title {
  padding-top: 0;
  padding-bottom: 0;
}

.p-flowContents__contents {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-flowContents__contents {
    margin-top: 64px;
  }
}

.p-flowList {
  display: grid;
  row-gap: 24px;
  counter-reset: count 0;
}


.p-flowList__item .c-flowCard__num:before {
  counter-increment: count 1;
  content: "0"counter(count);
}


/* =================== */
/*  よくある質問      */
/* =================== */

.p-faqContents {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-faqContents {
    padding-top: 60px;
    padding-bottom: 120px;
  }
}


.p-faqContents__contents {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-faqContents__contents {
    margin-top: 64px;
  }
}

.p-accordionBlocks {
  display: grid;
  row-gap: 16px;
}

@media (min-width: 992px) {
  .p-accordionBlocks {
    row-gap: 24px;
  }
}

.p-faqContents__contentsInner {
  display: grid;
  grid-template:
    'title'
    'button'
    'main'
  ;
}

@media (min-width: 992px) {
  .p-faqContents__contentsInner {
    grid-template:
      'title'
      'main'
      'button'
    ;
  }
}

.p-faqContents__title {
  grid-area: title;
  padding-top: 0;
  padding-bottom: 0;
}

.p-faqContents__contents {
  grid-area: main;
}


.p-faqContents__button {
  max-width: 193px;
  margin-top: 32px;
  align-self: center;
  width: 100%;
  grid-area: button;
}


@media (min-width: 992px) {
  .p-faqContents__button {
    max-width: 262px;
    margin-left: auto;
    align-self: center;
    width: 100%;
    grid-area: button;
    margin-right: auto;
  }

}


/* =================== */
/*  強み　　　　　      */
/* =================== */


.p-strengthContents {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-strengthContents {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.p-strengthContents.p-strengthContents--border {
  border-top: 1px solid #ddd;
}



.p-strengthContents:has(~.p-supportContents) {
  padding-bottom: 32px;
}

.p-strengthContents__title {
  padding-top: 0;
  padding-bottom: 0;
}



.p-strengthContents__contents {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-strengthContents__contents {
    margin-top: 64px;
  }
}

@media (min-width: 992px) {
  .p-strengthContents__title .c-sectionSecondaryTitle__main {
    font-weight: var(--font-weight-bold);
  }
}

/* =================== */
/*  サポート　　      */
/* =================== */

.p-supportContents {
  padding-top: 32px;
  padding-bottom: 80px;
  background-color: var(--color-white01);
}

@media (min-width: 992px) {
  .p-supportContents {
    padding-top: 32px;
    padding-bottom: 120px;

  }
}

.p-supportContents__title {
  padding-top: 0;
  padding-bottom: 0;
}

.p-supportContents__contentsWrap {
  padding: 0 11px;
}

@media (min-width: 992px) {
  .p-supportContents__contentsWrap {
    padding: 86px 80px;
    background-color: var(--color-gray02);
    border-radius: var(--rounded-md);
  }
}


.p-supportContents__contents {
  border-radius: var(--rounded-md);
  margin-top: 24px;
}

@media (min-width: 992px) {
  .p-supportContents__contents {
    margin-top: 64px;
  }
}

.p-supportContents__contents .c-miniCard {
  background-color: var(--color-gray02);

}

@media (min-width: 992px) {
  .p-supportContents__contents .c-miniCard {
    background-color: var(--color-white01);
  }
}


/* =================== */
/*  活用事例一覧　　　　 */
/* =================== */

.p-selectorContents {
  padding-top: 64px;
  padding-bottom: 64px;
}

.p-selectorContents__blockWrap {
  display: grid;
  row-gap: 32px;
}

.p-selectorContents__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 12px;

}


.p-selectorContents__listWrap {
  margin-top: 12px;
  display: grid;
}

@media (min-width: 992px) {
  .p-selectorContents__listWrap {
    grid-template-columns: 1fr -webkit-max-content;
    grid-template-columns: 1fr max-content;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.p-selectorContents__listBlock {
  overflow: hidden;
}

.p-selectorContents__listBlock.is-show {
  height: auto;
  overflow: visible;
}


.p-selectorContents__button {
  justify-self: center;
  margin-top: 8px;
}

@media (min-width: 992px) {
  .p-selectorContents__button {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    justify-self: initial;
    margin-top: 5px;
  }
}


.p-selectorContents__button.is-open::before {
  rotate: 180deg;
}


.p-exampleArchiveContents {
  padding-top: 0px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-exampleArchiveContents {
    padding-top: 120px;
    padding-bottom: 134px;
  }
}


.p-exampleArchiveContents__pager {
  margin-top: 80px;
}

@media (min-width: 992px) {
  .p-exampleArchiveContents__pager {
    margin-top: 64px;

  }
}

/* =================== */
/*  活用事例詳細　　　　 */
/* =================== */


.p-exampleContents {
  padding-top: 48px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-exampleContents {
    padding-top: 80px;
  }
}

.p-postsContents__head {
  display: grid;
  row-gap: 0px;
}

.p-postsContents__categoryList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.p-exampleContents__breadcrumb {
  margin-bottom: 24px;
}

/* =================== */
/*  フッター上CTA      */
/* =================== */

.p-ctaContents {
  position: relative;
  padding-top: 30px;
  padding-bottom: 80px;
  z-index: 0;
  overflow: hidden;
}

@media (min-width: 992px) {
  .p-ctaContents {
    padding-top: 176px;

  }
}

.p-ctaContents::before {
  content: "";
  width: 100%;
  height: 30px;
  background: url(../images/half_circle.svg) no-repeat center;
  position: absolute;
  top: -1px;
  left: 0;
  display: block;
  z-index: 0;
  background-size: 100% 100%;

}

@media (min-width: 992px) {
  .p-ctaContents::before {
    height: 97px;
  }
}

.p-ctaContents::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: var(--color-black10);
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  z-index: -1;
}

.p-ctaContents__inner {
  position: relative;
  padding-right: 16px;
  padding-left: 16px;
  padding-top: 80px;

}

@media (min-width: 992px) {
  .p-ctaContents__inner {
    padding-right: 48px;
    padding-left: 48px;
    padding-top: 0;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
  }
}



/* =================== */
/*  記事詳細系     　　 */
/* =================== */

/* 見出し、本文、画像 */

.p-postsContents strong{
  font-weight: var(--font-weight-bold);
}

.p-postsContents h1 {
  color: var(--color-black01);
  font-size: 28px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: 0;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .p-postsContents h1 {
    font-size: 48px;
  }
}



.p-postsContents h2 {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
  display: block;
  padding-top: 28px;
  padding-bottom: 16px;
  position: relative;
  text-transform: uppercase;
  font-family: var(--font-family-base);
}

@media (min-width: 992px) {
  .p-postsContents h2 {
    padding-top: 16px;
    padding-bottom: 8px;
    font-size: 28px;
    line-height: var(--leading-relaxed02);
  }
}


.p-postsContents h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--color-blue01);
}




/* @media (min-width: 992px) { */
/* .p-postsContents h2::before { */
/* bottom: 32px; */
/* } */
/* } */


@media (min-width: 992px) {
  .p-postsContents > h2:first-child {
    padding-top: 0;
  }
}

.p-postsContents p {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
  margin-bottom: 24px;
}

@media (min-width: 992px) {
  .p-postsContents p {
    /* margin-top: 24px; */
    font-size: 16px;
    line-height: var(--leading-normal);
  }
}


@media (min-width: 992px) {

  .p-postsContents.p-postsContents--serviceDetails p {
    margin-top: 24px;
  }

}


.p-postsContents p:has(strong){
  margin-bottom: 0;
}

.p-postsContents p:has(strong) + *{
  margin-bottom: 24px;
}



.p-postsContents ol+p {
  margin-top: 0;
}



@media (min-width: 992px) {
  .p-postsContents .c-contentsBlock+p {
    margin-top: 32px;
  }

}

.p-postsContents h3 {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed);
  letter-spacing: var(--tracking-tight);
  display: block;
  background-color: var(--color-blue02);
  padding: 8px 24px 8px 20px;
  border-left: 4px solid var(--color-blue01);
  font-family: var(--font-family-base);
  margin-top: 28px;
}

@media (min-width: 992px) {
  .p-postsContents h3 {
    font-size: 24px;
  }
}



.p-postsContents figure {
  margin: 0;
  /* margin-top: 32px; */
  max-width: 960px;
}

.p-postsContents figure img {
  display: block;
}

.p-postsContents .wp-block-image {
  margin-bottom: 32px;
}

.p-postsContents a {
  margin-top: 32px;
  color: var(--color-blue03);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  text-decoration: underline;
  display: inline-block;
  font-family: var(--font-family-base-medium);
}

@media (min-width: 992px) {
  .p-postsContents a {
    font-size: 16px;
    line-height: var(--leading-normal);
    letter-spacing: 0;
  }
}


.p-postsContents h4 {
  color: var(--color-blue01);
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: var(--font-family-base);
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-postsContents h4 {
    font-size: 20px;
  }
}

.wp-block-heading {
  margin-bottom: 14px;
}


/* リスト */
.p-postsContents :where(ol, ul) {
  margin-bottom: 32px;
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: var(--font-family-base-medium);
}


@media (min-width: 992px) {
  .p-postsContents :where(ol, ul) {
    font-size: 16px;
    line-height: var(--leading-normal);
    margin-bottom: 24px;
  }
}

.p-postsContents ol {
  list-style-type: revert;
  padding-left: 20px;
}

.p-postsContents ul {
  list-style-type: revert;
  padding-left: 20px;
}


/* 表 */
.p-postsContents table {
  /* margin-bottom: 32px; */
  border: 1px solid var(--color-gray05);
  border-collapse: collapse;
  border-bottom: transparent;
  margin-top: 0;

}

.p-postsContents caption {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  border: 0;
}


.p-postsContents table th {
  color: var(--color-black01);
  background-color: var(--color-blue04);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  padding: 12px;
  font-family: var(--font-family-base);
  border-bottom: 1px solid var(--color-gray05);
}


@media (min-width: 992px) {
  .p-postsContents table th {
    font-size: 16px;
    font-weight: var(--font-weight-normal);
    padding: 5px 22px 5px 24px;
    width: 131px;
    border-right: 1px solid var(--color-gray05);

  }

}


.p-postsContents th,
.p-postsContents td {
  display: block;
  width: 100%;
}

/* 新聞社システムの書体一覧のテーブル */
.is-style-regular.scrollable-table {
	table {
		min-width: 750px !important;
	}

	th {
		display: table-cell !important;
		width: auto !important;
	}

	table {
		td {
			display: table-cell !important;
			width: auto !important;
		}
	}
}

@media (max-width: 992px) {
  .is-style-regular.scrollable-table {
    table {
      min-width: 930px !important;
    }
  }

}

@media (min-width: 992px) {

  .p-postsContents th,
  .p-postsContents td {
    display: table-cell;
    width: initial;
    border-top: transparent;
  }
}

@media (min-width: 992px) {
  .p-postsContents th {
    width: 114px;
  }
}



.p-postsContents td {
  color: var(--color-black01);
  background-color: var(--color-white01);
  font-size: 14px;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-normal);
  letter-spacing: 0;
  font-family: var(--font-family-base-medium);
  padding: 12px;
  border-bottom: 1px solid var(--color-gray05);

}


@media (min-width: 992px) {
  .p-postsContents td {
    font-size: 16px;
    font-weight: var(--font-weight-normal);
    padding: 5px 24px;
  }
}


/* faq */
.p-postsContents .p-accordion {
  /* margin-top: 32px; */
  margin-bottom: 32px;
}


.p-postsContents .c-accodionItem__header {
  padding-top: 0;
  padding-bottom: 0;
}

.p-postsContents .c-accodionItem__header::before {
  display: none;
}


.p-postsContents .c-accodionItem__body p {
  line-height: 0;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 14px;
}

.p-postsContents .c-accodionItem__body.is-open :where(p,a) {
  line-height: var(--leading-normal);
}


@media (min-width: 992px) {
  .p-postsContents .c-accodionItem__body p {
    font-size: 20px;
  }
}


.p-postsContents .c-accodionItem__body a {
  line-height: 0;
}

.p-postsContents .c-contentsBlock {
  margin-top: 80px;
}

.p-postsContents .c-contentsBlock__title {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  padding: 0;
  background-color: transparent;
  border: transparent;
  margin-top: 0;
}


@media (min-width: 992px) {
  .p-postsContents .c-contentsBlock__title {
    font-size: 20px;
    grid-area: title;
    align-self: flex-start;
  }

}


.p-postsContents .c-contentsBlock__text {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
  margin-top: 0;
}


@media (min-width: 992px) {
  .p-postsContents .c-contentsBlock__text {
    font-size: 16px;
    line-height: var(--leading-normal);
    grid-area: text;
    align-self: flex-start;
  }

}


.p-postsContents .c-contentsBlock2__text {
  color: var(--color-black01);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base-medium);
  background: transparent;
  margin-top: 0;
  padding: 0;
  border: transparent;
}


@media (min-width: 992px) {
  .p-postsContents .c-contentsBlock2__text {
    font-size: 16px;
    line-height: var(--leading-normal);
  }
}


.p-postsContents .p-contentsList {
  margin-top: 80px;
}


@media (min-width: 992px) {
  .p-postsContents.p-postsContents--fontContents {
    background-color: var(--color-white01);
    padding-top: 80px;
    padding-bottom: 80px;
  }

}

.p-postsContents.p-postsContents--fontContents table th {
  background-color: var(--color-blue02);
}

@media (min-width: 992px) {
  .p-postsContents.p-postsContents--fontContents table th {
    width: 114px;
  }
}


.p-postsContents.p-postsContents--fontContents figure {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 24px;
}


.p-postsContents .c-commonBox {
  margin-top: 24px;
  min-height: 220px;
}


.p-postsContents .u-largeText {
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  margin-top: 32px;
  font-family: var(--font-family-base);
}

.p-postsContents .u-colorBlue {
  color: var(--color-blue01);
}


.p-postsContents .c-writerBox {
  margin-top: 32px;
}




.p-postsContents .c-writerBox__title {
  color: var(--color-black08);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-tight);
  font-family: var(--font-family-base);
  margin-top: 0;
}



.p-postsContents .c-writerBox__text {
  color: var(--color-black08);
  font-size: 14px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-relaxed);
  letter-spacing: var(--tracking-tight);
  font-family: var(--font-family-base-medium);
  margin-top: 0;
}



.p-postsContents .p-postsContents__cards {
  margin-top: 32px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(360px, 100%), 1fr));
  gap: 28px;

}

.p-postsContents .c-contentsBlock3__title {
  color: var(--color-black01);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  background: transparent;
  margin: 0;
  border: transparent;
  padding: 0;
}


.p-postsContents .c-contentsBlock3__text {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  font-family: var(--font-family-base);
  margin: 0;
}

.p-postsContents__cards2 {
  margin-top: 20px;
}

@media (min-width: 992px) {
  .p-postsContents__cards2 {
    margin-top: 48px;
  }
}

.p-postsContents__cards2 .p-cards {
  gap: 16px;
}

@media (min-width: 992px) {
  .p-postsContents__cards2 .p-cards {
    grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
    gap: 16px 15px;
  }
}

@media (min-width: 1200px) {
  .p-postsContents__cards2 .p-cards {
    grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr));
  }
}

.p-postsContents__cards2 .p-cards__item {
  grid-row: span 5;
}

@media (min-width: 992px) {
  .p-postsContents__cards2 .p-cards__item {
    grid-row: span 2;
  }
}

.p-postsContents .p-postsContents__cards2 .c-card01 {
  margin-top: 0;
  grid-row: span 4;
  text-decoration: none;
}

.p-postsContents{
  .p-cards__item.p-cards__item--purposes{
    .c-card01{
      row-gap:0px;
      grid-row:span 1;
      padding-top: 24px;
      padding-bottom: 24px;
    }
  }
}

@media (max-width:928px) {
  .p-postsContents__cards2 .p-cards__item {
    grid-row: span 2;
  }
}

@media (min-width: 992px) {
  .p-postsContents .p-postsContents__cards2 .c-card01 {
    grid-row: span 2;
  }

  .p-postsContents .p-postsContents__cards2 .c-card01__arrowImg {
    display: none;
  }
}

.p-postsContents__cards2 .p-cards__headText {
  margin-top: 0;
}

@media (min-width: 992px) {
  .p-postsContents__cards2 .p-cards__headText {
    display: none;
  }
}


.p-postsContents .c-card01 {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  row-gap: 24px;
}


@media (min-width: 992px) {
  .p-postsContents .c-card01 {
    padding-top: 48px;
    row-gap: 40px;
    grid-row: span 2;
    min-height: 251px;
    padding-right: 26px;
    padding-left: 26px;
  }
}

.p-postsContents .c-card01__title {
  color: var(--color-black05);
  font-size: 16px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  font-family: var(--font-family-base);
  background-color: transparent;
  padding: 0;
  border: transparent;
  margin: 0;
}

@media (min-width: 992px) {
  .p-postsContents .c-card01__title {
    font-size: 18px;
  }
}

.p-postsContents .c-card01__title span {
  font-size: 14px;
}


.p-postsContents .c-card01__text {
  color: var(--color-black05);
  font-size: 12px;
  font-weight: var(--font-weight-normal);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  font-family: var(--font-family-base);
  margin-top: 0;
}


@media (min-width: 992px) {
  .p-postsContents .c-card01__img {
    max-width: 102px;

  }
}

@media (min-width: 992px) {
  .p-postsContents .c-card01__text {
    font-size: 14px;
    display: none;

  }
}

.p-postsContents .p-postsContents__cards3 {
  display: grid;
  gap: 28px;
  grid-template-columns: repeat(auto-fill, minmax(min(387px, 100%), 1fr));
  margin-top: 42px;
}

@media (min-width: 992px) {
  .p-postsContents .p-postsContents__cards3 {
    margin-top: 48px;
    grid-template-columns: repeat(auto-fill, minmax(min(360px, 100%), 1fr));

  }
}

.p-postsContents .c-card05 {
  padding: 44px 32px 24px;
  background-color: var(--color-gray02);
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  grid-template-rows: subgrid;
  grid-row: span 3;
  row-gap: 0;

}




.p-postsContents .c-card05__title {
  color: var(--color-black01);
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-normal);
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  font-family: var(--font-family-base);
  opacity: .7;
  padding: 0;
  background-color: transparent;
  border: transparent;
  margin-top: 60px;
}

@media (min-width: 992px) {
  .p-postsContents .c-card05__title {
    font-size: 20px;

  }
}


.p-postsContents__cards3 .c-card05__img {
  width: 100%;
  max-width: 130px;
  margin-right: auto;
  margin-left: auto;
}


.p-postsContents .c-card05__text {
  color: var(--color-black05);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  display: block;
  opacity: .7;
  font-family: var(--font-family-base-medium);
  /* text-align: center; */
  text-align: left;
  margin-top: 16px;
}

.p-postsContents.p-postsContents--fontContents h2:first-of-type {
  padding-top: 0;
}

.p-postsContents .p-contentBlocks {
  margin-top: 32px;
}

.p-postsContents .c-contentsBlock4__text {
  margin-top: 0;
}

.p-postsContents .c-contentsBlock4__img {
  margin-top: 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}


.p-postsContents p a{
  margin-top: 0;
}
.p-postsContents .wp-block-table a{
  margin-top: 0;
}
.p-postsContents h5  {
  margin-top: 16px;
}

.p-postsContents h4 + ul, .p-postsContents h4 + ol {
  margin-top: 0;
}

.p-postsContents h5 + ul, .p-postsContents h5 + ol {
  margin-top: 0;
}
.p-postsContents ul ul, .p-postsContents ul ol, .p-postsContents ol ul, .p-postsContents ol ol{
  margin-top: 0;
}


/* =================== */
/*  news一覧     　　　　　 */
/* =================== */


.p-newsArchive__header .c-sectionSecondaryTitle__main {
  font-size: 36px;
}

.p-newsArchive__contents {
  padding-top: 48px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-newsArchive__contents {
    padding-top: 64px;
    padding-bottom: 0;
  }
}

.p-newsArchive__title {
  font-size: 24px;
  line-height: var(--leading-relaxed02);
  letter-spacing: var(--tracking-normal);
  color: var(--color-black01);
  font-family: var(--font-family-base);
  font-weight: var(--font-weight-bold);
  padding-top: 8px;
  padding-bottom: 8px;
}



.p-newsArchive__category {
  margin-top: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 12px;
}

.p-newsArchive__list {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-newsArchive__list {
    margin-top: 64px;
  }
}

.p-newsArchive__list .p-newsList__item a {
  grid-template-columns: initial;
}

.p-newsArchive__pager {
  margin-top: 48px;
}

@media (min-width: 992px) {
  .p-newsArchive__pager {
    margin-top: 64px;
  }
}




/* =================== */
/*  サポート     　　　　　 */
/* =================== */


.p-glossary__contents {
  padding-top: 40px;
  padding-bottom: 40px;
}

@media (min-width: 992px) {
  .p-glossary__contents {
    padding-top: 80px;
    padding-bottom: 120px;
  }
}

.p-glossary__contentsBody {
  display: grid;
  row-gap: 40px;
}



@media (min-width: 992px) {
  .p-glossary__contentsBody {
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    row-gap: 0;
  }

}


.p-glossary__main {
  grid-column: 1;
  grid-row: 3;
}

@media (min-width: 992px) {
  .p-glossary__main {
    grid-column: 2;
    grid-row: 1;
  }
}



.p-glossaryArchive {
  display: grid;
  row-gap: 72px;
}

@media (min-width: 992px) {
  .p-glossaryArchive {
    row-gap: 64px;
  }
}

.p-glossaryArchive__faq {
  margin-top: 32px;
}

@media (min-width: 992px) {
  .p-glossaryArchive__faq {
    margin-top: 24px;
  }
}


.p-glossary__aside {
  grid-column: 1;
  grid-row: 2;
}

@media (min-width: 992px) {
  .p-glossary__aside {
    max-width: 312px;
    grid-row: 1;
    grid-column: 1;
    margin-right: 32px;
  }
}

.p-glossary__aside .p-fontsAside {
  padding-bottom: 40px;
}



/* =================== */
/*  会社概要           */
/* =================== */



.c-commonList p {
  margin-top: 8px;
}


.p-company__contents {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (min-width: 992px) {
  .p-company__contents {
    padding-top: 64px;
    padding-bottom: 120px;
  }
}

.p-postsContents .c-commonList li {
  list-style-type: "";
  border-bottom: 1px solid #bbb;
  padding-bottom: 15px;

}

.p-postsContents .c-commonList li+li {
  padding-top: 15px;

}

.p-postsContents .c-commonList {
  padding-left: 0;
}

.p-postsContents .c-commonList li span {
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  font-family: var(--font-family-base);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-normal);
}


.p-postsContents iframe {
  width: 100%;
  margin-top: 32px;
}

/* =================== */
/*  採用情報     　　　　　 */
/* =================== */

.p-fontFeature__contents {
  padding-top: 32px;
  overflow: hidden;
}


@media (min-width: 992px) {
  .p-fontFeature__contents {
    padding-top: 64px;
  }
}


.p-fontFeature__blockWrap {
  display: grid;
  row-gap: 40px;
  padding-bottom: 50px;

}

@media (min-width: 992px) {
  .p-fontFeature__blockWrap {
    row-gap: 80px;
    padding-bottom: 100px;
  }
}

.p-fontFeature__blockWrap:not(:first-child) {
  padding-top: 50px;
}

@media (min-width: 992px) {
  .p-fontFeature__blockWrap:not(:first-child) {
    padding-top: 100px;
  }
}

@media (min-width: 992px) {
  .p-fontFeature__block:has(.c-commonItem) {
    margin-top: 20px;

  }
}

.p-fontFeature__block {
  display: grid;
  row-gap: 24px;
}


.p-fontFeature__cards {
  grid-template-columns: repeat(auto-fit, minmax(min(393px, 100%), 1fr));
  gap: 24px;
  margin-top: 24px;
}

.p-fontFeature__cards2 {
  row-gap: 36px;

}

@media (min-width: 992px) {
  .p-fontFeature__cards2 {
    grid-template-columns: repeat(auto-fit, minmax(min(295px, 100%), 1fr));
    gap: 16px;
  }

}


.p-fontFeature__cards .p-cards__item {
  grid-row: span 3;
  grid-template-rows: subgrid;
  row-gap: 24px;


}

@media (min-width: 992px) {
  .p-fontFeature__cards .p-cards__item {
    row-gap: 32px;
  }


}



.p-fontFeature__cards2 .p-cards__item {
  grid-row: span 3;
  padding: 48px 32px;
}

.p-fontFeature__cards2 .c-card01__text {
  text-align: center;
}

@media (min-width: 992px) {
  .p-fontFeature__cards2 .c-card01__text {
    text-align: left;
  }
}


.p-fontFeature__img {
  width: 100vw;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}







/* =================== */
/*  footer     　　　　　 */
/* =================== */

.p-footer {
  background-color: var(--color-black10);
}

.p-footer__inner {
  padding: 24px 16px 64px;
  display: grid;
  row-gap: 64px;
}

@media (min-width: 992px) {
  .p-footer__inner {
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    padding: 120px 48px;
    row-gap: initial;
    max-width: 1440px;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-footer__logo {
  max-width: 137px;
  width: 100%;
  display: block;
  margin-right: auto;
  margin-left: auto;
  grid-row: 2;
}

@media (min-width: 992px) {
  .p-footer__logo {
    margin-right: 62px;
    grid-row: initial;
    align-self: flex-start;
  }
}

.p-footer__logo img {
  display: block;
}

.p-footer__nav {
  width: 100%;
  display: grid;
  row-gap: 16px;
  grid-row: 1;
}

@media (min-width: 992px) {
  .p-footer__nav {
    margin-left: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    grid-row: initial;
  }
}

.p-footer__navList {
  gap: 16px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

@media (min-width: 992px) {
  .p-footer__navList {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-right: 48px;
  }
}


@media (min-width: 992px) {
  .p-footer__navList:not(.p-footer__navList--sub) {
    max-width: 510px;
  }

}


@media (min-width: 992px) {
  .p-footer__navList.p-footer__navList--sub {
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
    margin-right: 0;
    max-width: 332px;
  }
}

@media (min-width: 1400px) {
  .p-footer__navList.p-footer__navList--sub {
    -webkit-column-gap: 60px;
    -moz-column-gap: 60px;
    column-gap: 60px;
  }
}


.p-footer__navItem a {
  color: var(--color-white01);
  font-weight: var(--font-weight-regular);
  line-height: calc(24/16);
  font-size: 16px;
  letter-spacing: 0;
  display: block;
  padding: 8px 12px;
  /* font-family: var(--font-family-noto); */
}

.p-footer__innerNav {
  display: grid;
  row-gap: 4px;
}

.p-footer__innerNavItem a {
  color: var(--color-gray11);
  font-weight: var(--font-weight-regular);
  line-height: calc(24/14);
  font-size: 14px;
  letter-spacing: 0;
  display: block;
  /* font-family: var(--font-family-noto); */
}


.p-footer__text {
  color: var(--color-white01);
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-relaxed);
  font-size: 12px;
  letter-spacing: var(--tracking-normal);
  display: block;
  text-align: center;
  padding: 16px;
  border-top: 1px solid #5a5a5a;
  /* font-family: var(--font-family-noto); */
}


@media (min-width: 992px) {
  .p-footer__text {
    font-size: 14px;
  }
}
