@charset "utf-8";
/* ==========================================================================//
// 共通設定（変数の管理）
// ========================================================================== */
:root {
  /* フォントファミリー変数
   * - フォントファミリーの管理に利用する
  ---------------------------------------------------------- */
  /* 基本は游ゴシック */
  --font-family-default: 'A+EqpB-游ゴシック体 Pr6N M', 游ゴシック Medium, Yu Gothic Medium, 游ゴシック体, Yu Gothic, YuGothic,
  Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro W3, Meiryo, メイリオ, sans-serif;
  /* 特定の英字のみ Marcellus */
  --font-family-en: "Marcellus", serif;

  /* フォント変数
 * - フォントのサイズ・太さの管理に利用する
---------------------------------------------------------- */
  /* font-size（16pxを基本として rem で計算する） */
  --font-size-10: 0.625rem; /* 10px */
  --font-size-11: 0.6875rem; /* 11px */
  --font-size-12: 0.75rem; /* 12px */
  --font-size-12-8: 0.8rem; /* 12.8px */
  --font-size-13: 0.8125rem; /* 13px */
  --font-size-14: 0.875rem; /* 14px */
  --font-size-15: 0.9375rem; /* 15px */
  --font-size-16: 1rem; /* 16px（基準値） */
  --font-size-17: 1.062rem; /* 17px */
  --font-size-18: 1.125rem; /* 18px */
  --font-size-20: 1.25rem; /* 20px */
  --font-size-22: 1.375rem; /* 22px */
  --font-size-23: 1.44rem; /* 23px */
  --font-size-24: 1.5rem; /* 24px */
  --font-size-28: 1.75rem; /* 28px */
  --font-size-32: 2rem; /* 32px */
  --font-size-36: 2.25rem; /* 36px */
  --font-size-60: 3.75rem; /* 60px */
  --font-size-40: 2.5rem; /* 40px */
  --font-size-44: 2.75rem; /* 44px */
  --font-size-48: 3rem; /* 48px */
  --font-size-72: 4.5rem; /* 72px */
  --font-size-84: 5.25rem; /* 84px */
  --font-size-96: 6rem; /* 96px */
  --font-size-108: 6.75rem; /* 108px */
  --font-size-164: 10.25rem; /* 164px */

  /* font-weight */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;

  /* 色変数
   * - 色の管理に利用する
  ---------------------------------------------------------- */
  /* 16進数 */
  --color-default: #4d4d4d;
  --color-white: #ffffff;
  --color-gray: #455459;
  --color-gray-light: #f2f4f5;
  --color-gray-cool-light: #a5a5a5;
  --color-gray-medium-light: #a9babf;
  --color-gray-default-half: #9fa0a0;
  --color-dark-teal: #175163;
  --color-blue: #005bac;
  --color-blue-gray: #628e99;
  --color-dark-teal-blue: #144b63;
  --color-pale-blue: #82a2ac;
  --color-pale-blue-gray: #9bb7c2;
  --color-pale-aqua: #d4dddf;
  --color-soft-aqua: #d8e8eb;
  --color-ice-blue: #f0f5f5;
  --color-light-blue-gray: #e1e8eb;
  --color-cerulean-blue: #5d90b2;
  --color-cadet-blue: #719cae;
  --color-green-teal: #5c9e9a;
  --color-purple: #7485b5;
  --color-rouge: #b84951;

  /* rgb（※rgbは表現上仕方ない部分のみ利用する） */
  --color-default-rgb: 77, 77, 77;
  --color-white-rgb: 255, 255, 255;
  --color-gray-rgb: 69, 84, 89;
  --color-dark-teal-rgb: 23, 81, 99;
  --color-blue-rgb: 0, 91, 172;
  --color-cadet-blue-rgb: 113, 156, 174;

  /* Opacity
---------------------------------------------------------- */
  /* opacity（デフォルト透過値：0.75） */
  --opacity-default: 0.75;
}

/* ==========================================================================//
// Reset CSS
// ========================================================================== */
/* Reset
 from A (more) Modern CSS Reset
 https://piccalil.li/blog/a-more-modern-css-reset/
---------------------------------------------------------- */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}
/* Remove default margin in favour of better control in authored CSS */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin-bottom: 0;
}
/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}
/* Set core body defaults */
body {
  min-height: 100vh;
  line-height: 1.5;
}
/* Set shorter line heights on headings and interactive elements */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}
/* Balance text wrapping on headings */
h1,
h2,
h3,
h4 {
  text-wrap: balance;
}
/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
  color: currentColor;
}
/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
  height: auto;
}
/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font-family: 游ゴシック Medium, Yu Gothic Medium, 游ゴシック体, Yu Gothic, YuGothic,
  Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro W3, Meiryo, メイリオ, sans-serif;
  font-family: var(--font-family-default);
}
/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}
/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 20ex;
}

/* Remove the default triangle icon */
summary {
  display: block;
}
/* Remove the default triangle icon displayed in Safari */
summary::-webkit-details-marker {
  display: none;
}

/* ==========================================================================//
// layout
// ========================================================================== */
/* Common
---------------------------------------------------------- */
html {
  width: 100%;
  min-width: 320px;
  scroll-behavior: smooth;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-family: 游ゴシック Medium, Yu Gothic Medium, 游ゴシック体, Yu Gothic, YuGothic,
  Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro W3, Meiryo, メイリオ, sans-serif;
  font-family: var(--font-family-default);
}
body {
  position: relative;
}

/* 波形アニメーション用
---------------------------------------------------------- */
#waveBg {
  position: fixed;
  z-index: -1;
  top: 0;
  right: 100px;
  transform: rotate(-90deg);
  transform-origin: top right;
}
@media (min-width: 769px) {
  #waveBg {
    right: 200px
  }
}

/* header
---------------------------------------------------------- */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9990;
}
@media (min-width: 769px) {
  .l-header {
    top: 29px
  }
}

/* main
---------------------------------------------------------- */
.l-main {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 60px 0 0;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
}
@media (min-width: 1024px) {
  .l-main {
    padding: 100px 0 0;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

/* footer
---------------------------------------------------------- */
.l-footer {
  overflow: hidden;
  position: relative;
}

/* contents（共通サイドナビありレイアウトの場合）
---------------------------------------------------------- */
.l-hasNaviLayout {
  display: flex;
  max-width: 1440px;
  margin: 0 auto;
  flex-direction: column;
  padding: 0 0 80px;
}
@media (min-width: 1024px) {
  .l-hasNaviLayout {
    flex-direction: row
  }
}
.l-hasNaviLayout__main {
  flex: 1;
  padding: 0 16px 0;
}
@media(max-width: 1023px) {
  .l-hasNaviLayout__main {
    order: 1
  }
}
@media (min-width: 1024px) {
  .l-hasNaviLayout__main {
    padding: 0 60px 0 0
  }
}
@media (min-width: 1240px) {
  .l-hasNaviLayout__main {
    padding-right: 120px
  }
}
.l-hasNaviLayout__sub {
  width: 100%;
  margin: 80px auto 0;
}
@media(max-width: 1023px) {
  .l-hasNaviLayout__sub {
    order: 2
  }
}
@media (min-width: 1024px) {
  .l-hasNaviLayout__sub {
    width: 300px;
    min-width: 300px;
    margin-top: 0;
    margin-right: 60px
  }
}

@media (min-width: 1024px) {

  .p-hasNaviLayout--companyProfile .l-hasNaviLayout__main {
    padding-top: 80px
  }
}

/* ==========================================================================//
// Components（header）
// ========================================================================== */
/* サイトヘッダー
---------------------------------------------------------- */
.c-header {
  width: 100%;
  height: 60px;
  /*background-color: transparent;*/
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 1024px) {
  .c-header {
    height: 100px;
    background-color: #fff
  }
}
.c-header__inner {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  padding: 16px 16px 8px 16px;
}
@media (min-width: 1024px) {
  .c-header__inner {
    max-width: 1440px;
    margin: 0 auto;
    padding-top: 28px;
    padding-bottom: 34px
  }
}
@media (min-width: 1024px) and (max-width: 1239.98px) {
  .c-header__inner {
    padding-right: 3.33vw;
    padding-left: 4.375vw
  }
}
@media (min-width: 1240px) {
  .c-header__inner {
    padding-right: 48px;
    padding-left: 63px
  }
}
.c-header__logo {
  width: 225px;
  padding: 11px 0 0;
}
@media (min-width: 1024px) {
  .c-header__logo {
    width: 100%;
    min-width: 225px;
    max-width: 493px;
    padding: 0;
    margin-top: 14px;
    flex: 1
  }
}
.c-header__logo-link {
  display: block;
  transition: opacity 0.3s ease;
}
.c-header__logo-link:hover {
  opacity: 0.75;
}
.c-header__assembly {
  display: flex;
}

/* Navigation */
.c-header-navi {
  display: none;
}
@media (min-width: 1024px) {
  .c-header-navi {
    display: block
  }
}
.c-header-navi__main {
  display: flex;
  align-items: center;
}
.c-header-navi__sub {
  margin-bottom: 4px;
}
.c-header-global-navi {
  position: relative;
  display: flex;
  list-style-type: none;
  padding-right: 20px;
  margin-right: 32px;

}
.c-header-global-navi::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 16px;
  margin-top: -8px;
  background-color: #4d4d4d;
  background-color: var(--color-default);
}
.c-header-global-navi__item {
  margin-right: 4px;
  margin-left: 4px;
}
.c-header-global-navi__item:first-child {
  margin-left: 0;
}
.c-header-global-navi__item:last-child {
  margin-right: 0;
}
.c-header-global-navi__link {
  display: block;
  padding: 9px 12px;
  border-radius: 4px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-header-global-navi__link:hover {
  background-color: #005bac;
  background-color: var(--color-blue);
  color: #ffffff;
  color: var(--color-white);
  transition: all 0.3s ease;
}
.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link {
  position: relative;
  padding: 9px 20px 9px 12px;
}
.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link::before,
.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 6px;
  width: 7px;
  height: 1px;
  background-color: #4d4d4d;
  background-color: var(--color-default);
}
.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link:hover::before {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link:hover:after {
  display: none;
}
.c-header-sub-navi {
  display: flex;
  justify-content: flex-end;
  list-style-type: none;
}
.c-header-sub-navi__item {
  position: relative;
  margin-right: 20px;
  padding-right: 20px;
}
.c-header-sub-navi__item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 12px;
  margin-top: -6px;
  background-color: #4d4d4d;
}
.c-header-sub-navi__item:last-child {
  margin-right: 0;
  padding-right: 0;
}
.c-header-sub-navi__item:last-child::after {
  display: none;
}
.c-header-sub-navi__link {
  position: relative;
  display: flex;
  align-items: center;
  padding: 2px 0;
  border-radius: 4px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.c-header-sub-navi__link::before {
  content: "";
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -8px;
  left: -8px;
  width: calc(100% + 16px);
  height: calc(100% + 16px);
  background-color: transparent;
  border-radius: 4px;
  transition: background-color 0.3s ease;
}
.c-header-sub-navi__link:hover {
  color: #ffffff;
  color: var(--color-white);
}
.c-header-sub-navi__link:hover::before {
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-header-sub-navi__link:hover > span {
  text-shadow: 0 0 1px #ffffff;
  text-shadow: 0 0 1px var(--color-white);
}
.c-header-sub-navi__link > span {
  position: relative;
  z-index: 2;
}
.c-header-sub-navi__link--plus > span {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-right: 14px;
}
.c-header-sub-navi__link--plus > span::before,
.c-header-sub-navi__link--plus > span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 7px;
  height: 1px;
  background-color: #4d4d4d;
  background-color: var(--color-default);
}
.c-header-sub-navi__link--plus > span::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-header-sub-navi__link--plus:hover > span:before {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-header-sub-navi__link--plus:hover > span::after {
  display: none;
}
/* Language */
.c-header-language {
  display: flex;
  list-style-type: none;
}
.c-header-language__item {
  position: relative;
}
.c-header-language__item:nth-child(1) {
  padding-right: 12px;
  margin-right: 12px;
}
.c-header-language__item:nth-child(1)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -4px;
  width: 1px;
  height: 16px;
  margin-top: -6px;
  background-color: #a5a5a5;
  transform: rotate(25deg);
}
.c-header-language__item.is-active .c-header-language__link {
  color: #ffffff;
  color: var(--color-white);
  background-color: #4d4d4d;
  background-color: var(--color-default);
}
.c-header-language__link {
  display: inline-block;
  vertical-align: middle;
  padding: 4px 5px 4px 9px;
  border-radius: 4px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 12px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  line-height: 1;
  letter-spacing: 0.25em;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
.c-header-language__link:hover {
  color: #ffffff;
  color: var(--color-white);
  background-color: #4d4d4d;
  background-color: var(--color-default);
}

html[lang="ja"] .c-header-language.wovn-languages > .c-header-language__item > a[data-value="ja"] {
  color: #ffffff;
  color: var(--color-white);
  background-color: #4d4d4d;
  background-color: var(--color-default);
}
html[lang="en"] .c-header-language.wovn-languages > .c-header-language__item > a[data-value="en"] {
  color: #ffffff;
  color: var(--color-white);
  background-color: #4d4d4d;
  background-color: var(--color-default);
}

/* Search */
.c-header-search {
  margin: 0 12px 0 0;
}
@media (min-width: 1024px) {
  .c-header-search {
    margin: 0
  }
}
.c-header-search__button {
  overflow: hidden;
  position: relative;
  cursor: pointer;
  width: 36px;
  height: 36px;
  border: none;
  background-color: transparent;
}
@media (min-width: 1024px) {
  .c-header-search__button {
    width: 52px;
    height: 52px;
    background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
    background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
    margin-left: 28px;
    border-radius: 4px;
    transition: opacity 0.3s ease
  }
  .c-header-search__button:hover {
    opacity: 0.75;
  }
}
.c-header-search__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 36px;
  background: url("/common/image/btn/btn_header_search_01_sp.png") 0 0 no-repeat;
  background-size: contain;
}
@media (min-width: 1024px) {
  .c-header-search__button::before {
    width: 16px;
    height: 16px;
    right: 0;
    bottom: 0;
    margin: auto;
    background: url("/common/image/ico/ico_search_white_01.svg") 0 0 no-repeat
  }
}
.c-header-search__button.is-active::before {
  background: url("/common/image/btn/btn_header_close_sp.png") 0 0 no-repeat;
  background-size: contain;
}
.c-header-searchBox {
  display: none;
  opacity: 0;
  position: fixed;
  z-index: 100;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100vh - 60px);
  background-color: #ffffff;
}
@media (min-width: 769px) {
  .c-header-searchBox {
    top: 89px;
    height: calc(100vh - 89px)
  }
}
@media (min-width: 1024px) {
  .c-header-searchBox {
    max-width: 1340px;
    height: 132px;
    top: 120px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-radius: 8px;
    box-shadow: 16px 16px 32px 0 rgba(113, 156, 174, 0.32)
  }
}
.c-header-searchBox__inner {
  padding: 16px 16px;
}
@media (min-width: 1024px) {
  .c-header-searchBox__inner {
    padding: 36px 36px
  }
}
.c-header-searchBox.is-active {
  display: block;
  opacity: 1;
  animation: menuFadeIn 0.3s ease-in 0s forwards;
}
.c-header-searchBoxField {
  overflow: hidden;
  position: relative;
  display: block;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  height: 44px;
  border-radius: 8px;
}
@media (min-width: 1024px) {
  .c-header-searchBoxField {
    height: 60px
  }
}
.c-header-searchBoxField__input {
  position: absolute;
  width: 124%;
  height: 124%;
  padding: 10px 64px 10px 14px;
  font-size: 16px;
  line-height: 1.5;
  border: none;
  border-radius: 8px;
  transform: scale(0.8125);
  transform-origin: left top;
  background-color: transparent;
}
@media (min-width: 1024px) {
  .c-header-searchBoxField__input {
    width: 100%;
    height: 60px;
    transform: none;
    padding: 10px 84px 10px 24px;
    font-size: 16px
  }
}
.c-header-searchBoxField__button {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 44px;
  height: 44px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0 8px 8px 0;
}
@media (min-width: 1024px) {
  .c-header-searchBoxField__button {
    width: 60px;
    height: 60px
  }
}
.c-header-searchBoxField__button::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 16px;
  height: 16px;
  background: url(/common/image/ico/ico_search_white.svg) 0 0 no-repeat;
  background-size: contain;
}
@media (min-width: 1024px) {
  .c-header-searchBoxField__button::before {
    width: 24px;
    height: 24px
  }
}

/* Menu */
@media (min-width: 1024px) {
  .c-header-menu {
    display: none
  }
}
.c-header-menu__button {
  overflow: hidden;
  position: relative;
  cursor: pointer;
  width: 36px;
  height: 36px;
  border: none;
  background-color: transparent;
}
.c-header-menu__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 36px;
  background: url("/common/image/btn/btn_header_menu_01_sp.png") 0 0 no-repeat;
  background-size: contain;
}
.c-header-menu__button.is-active::before {
  background: url("/common/image/btn/btn_header_close_sp.png") 0 0 no-repeat;
  background-size: contain;
}
.c-header-menuBox {
  display: none;
  opacity: 0;
  position: fixed;
  z-index: 100;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100vh - 60px);
  background-color: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
}
@media (min-width: 1024px) {
  .c-header-menuBox {
    display: none !important
  }
}
.c-header-menuBox__inner {
  min-height: 100vh;
  min-height: 100dvh;
}
.c-header-menuBox.is-active {
  display: block;
  opacity: 1;
  animation: menuFadeIn 0.3s ease-in 0s forwards;
}
.c-header-menuNavi {
  list-style-type: none;
}
.c-header-menuNavi__item {
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}
.c-header-menuNavi__link,
.c-header-menuNavi__accordion {
  position: relative;
  display: block;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-header-menuNavi__link {
  padding: 15px 16px;
  color: #005bac;
  color: var(--color-blue);
}
.c-header-menuNavi__accordion {
  padding: 15px 40px 15px 16px;
  color: #455459;
  color: var(--color-gray);
}
.c-header-menuNavi__accordion::before,
.c-header-menuNavi__accordion::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 19px;
  width: 10px;
  height: 2px;
  margin-top: -1px;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-header-menuNavi__accordion::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-header-menuNavi__accordion.is-active::after {
  opacity: 0;
}
.c-header-menuChild {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}
.c-header-menuChild__inner {
  padding: 16px 16px;
}
.c-header-menuNavi__accordion.is-active + .c-header-menuChild {
  max-height: inherit;
}

.c-header-menuChild.c-header-menuChild--service .c-header-menuChild__inner {
  padding: 0 0 16px 16px;
}
.c-header-menuLinks {
  padding-bottom: 16px;
  list-style-type: none;
}
.c-header-menuLinks__item {
  margin-bottom: 16px;
}
.c-header-menuLinks__item:last-child {
  margin-bottom: 0;
}
.c-header-menuLinks__link {
  position: relative;
  display: block;
  padding-right: 24px;
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-header-menuLinks__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  margin-top: -1px;
  background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}

.c-header-menuService {
  list-style-type: none;
  margin-bottom: 16px;
}

.c-header-menuService__item {
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}

.c-header-menuService__accordion {
  position: relative;
  padding: 15px 40px 15px 16px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

.c-header-menuService__accordion::before,
.c-header-menuService__accordion::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 19px;
  width: 10px;
  height: 2px;
  margin-top: -1px;
  background-color: #005bac;
  background-color: var(--color-blue);
}

.c-header-menuService__accordion::after {
  transform: rotate(90deg);
  transform-origin: center center;
}

.c-header-menuService__accordion > span {
  position: relative;
}

.c-header-menuService__accordion > span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -16px;
  width: 2px;
  height: 20px;
  transform: translateY(-50%);
  background-color: #005bac;
  background-color: var(--color-blue);
}

.c-header-menuService__accordion.is-active::after {
  opacity: 0;
}
.c-header-menuServiceChild {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}
.c-header-menuService__accordion.is-active + .c-header-menuServiceChild {
  max-height: inherit;
}
.c-header-menuServiceDetail__top {
  padding-left: 16px;
  border-top: 1px solid #d8e8eb;
  border-top: 1px solid var(--color-soft-aqua);
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}
.c-header-menuServiceDetail__bottom {
  padding-left: 16px;
}
.c-header-menuServiceMulpay {
  position: relative;
  display: block;
  padding: 16px 40px 16px 0;
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-header-menuServiceMulpay::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  margin-top: -1px;
  background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}
.c-header-menuServiceMulpay__subTitle {
  display: inline-block;
  vertical-align: middle;
  padding: 3px 10px;
  margin-bottom: 3px;
  background-color: #005bac;
  background-color: var(--color-blue);
  color: #ffffff;
  color: var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 10px;
  line-height: 1.5;
  border-radius: 15px;
}
.c-header-menuServiceMulpay__title {
  display: block;
  color: #005bac;
  color: var(--color-blue);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.c-header-menuServicePayment {
  list-style-type: none;
}
.c-header-menuServicePayment__item {
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}
.c-header-menuServicePayment__item:last-child {
  border-bottom: none;
}
.c-header-menuServicePayment__accordion {
  position: relative;
  padding: 16px 40px 16px 0;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.c-header-menuServicePayment__accordion::before,
.c-header-menuServicePayment__accordion::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 19px;
  width: 10px;
  height: 2px;
  margin-top: -1px;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-header-menuServicePayment__accordion::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-header-menuServicePayment__accordion.is-active::after {
  opacity: 0;
}
.c-header-menuServicePayment__accordion .note {
  display: block;
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 10px;
}
.c-header-menuServicePaymentChild {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}
.c-header-menuServicePaymentChild__inner {
  padding: 0 16px 24px 0;
}
.c-header-menuServicePayment__accordion.is-active + .c-header-menuServicePaymentChild {
  max-height: inherit;
}

.c-header-menuServiceSupport {
  list-style-type: none;
  padding-left: 16px;
}

.c-header-menuServiceSupport__item {
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}

.c-header-menuServiceSupport__item:last-child {
  border-bottom: none;
}

.c-header-menuServiceSupport__accordion {
  position: relative;
  padding: 16px 40px 16px 0;
  color: #455459;
  color: var(--color-gray);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

.c-header-menuServiceSupport__accordion::before,
.c-header-menuServiceSupport__accordion::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 19px;
  width: 10px;
  height: 2px;
  margin-top: -1px;
  background-color: #005bac;
  background-color: var(--color-blue);
}

.c-header-menuServiceSupport__accordion::after {
  transform: rotate(90deg);
  transform-origin: center center;
}

.c-header-menuServiceSupport__accordion.is-active::after {
  opacity: 0;
}
.c-header-menuServiceSupportChild {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}
.c-header-menuServiceSupportChild__inner {
  padding: 0 16px 24px 0;
}
.c-header-menuServiceSupport__accordion.is-active + .c-header-menuServiceSupportChild {
  max-height: inherit;
}
.c-header-menuSubLinks {
  list-style-type: none;
}
.c-header-menuSubLinks__item {
  margin-bottom: 10px;
}
.c-header-menuSubLinks__item:last-child {
  margin-bottom: 0;
}
.c-header-menuSubLinks__noLink {
  position: relative;
  padding-left: 16px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  -webkit-text-decoration: none;
  text-decoration: none;
  line-height: 1.5;
}
.c-header-menuSubLinks__noLink::before {
  content: "";
  position: absolute;
  top: 0.375em;
  left: 6px;
  width: 3px;
  height: 3px;
  background-color: #455459;
  background-color: var(--color-gray);
  border-radius: 50%;
}
.c-header-menuSubLinks__link {
  position: relative;
  padding-left: 16px;
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  -webkit-text-decoration: none;
  text-decoration: none;
  line-height: 1.5;
}
.c-header-menuSubLinks__link::before {
  content: "";
  position: absolute;
  top: 0.375em;
  left: 6px;
  width: 3px;
  height: 3px;
  background-color: #455459;
  background-color: var(--color-gray);
  border-radius: 50%;
}
.c-header-menuSubLinks__link[target='_blank']::after {
  position: relative;
  top: 0.35em;
  margin-left: 3px;
  content: url('/common/image/ico/ico_external.svg');
  width: 14px;
  height: 14px;
  opacity: 0.5;
}
.c-header-menuSubLinks--horizontal {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 16px;
  column-gap: 16px;
  margin-top: -10px;
}
.c-header-menuSubLinks--horizontal .c-header-menuSubLinks__item {
  margin: 10px 0 0;
}
.c-header-menuSubLinks--horizontal .c-header-menuSubLinks__item.c-header-menuSubLinks__item--1col {
  width: 100%;
}
.c-header-menuSubLinks--horizontal + .c-header-menuSubLinks--horizontal {
  margin-top: 14px;
}

.c-header-menuServiceGoToList {
  margin-top: 12px;
  padding-right: 3px;
  text-align: right;
}

.c-header-menuServiceGoToList > a {
  display: inline-block;
  vertical-align: middle;
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.c-header-menuServiceMore {
  display: block;
  padding: 16px 16px;
  margin-right: 16px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-align: center;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-header-menuLanguage {
  display: flex;
  justify-content: flex-end;
  list-style-type: none;
  margin-top: 30px;
  padding: 0 16px 50px 16px;
}
.c-header-menuLanguage__item {
  position: relative;
}
.c-header-menuLanguage__item:nth-child(1) {
  padding-right: 12px;
  margin-right: 12px;
}
.c-header-menuLanguage__item:nth-child(1)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -4px;
  width: 1px;
  height: 16px;
  margin-top: -6px;
  background-color: #a5a5a5;
  transform: rotate(25deg);
}
.c-header-menuLanguage__item.is-active .c-header-menuLanguage__link {
  color: #ffffff;
  color: var(--color-white);
  background-color: #4d4d4d;
  background-color: var(--color-default);
}
.c-header-menuLanguage__link {
  display: inline-block;
  vertical-align: middle;
  padding: 4px 5px 4px 9px;
  border-radius: 4px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 12px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  line-height: 1;
  letter-spacing: 0.25em;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
.c-header-menuLanguage__link:hover {
  color: #ffffff;
  color: var(--color-white);
  background-color: #4d4d4d;
  background-color: var(--color-default);
}

/* PC Mega Menu */
.c-header-megaMenu {
  display: none;
  opacity: 0;
  position: fixed;
  z-index: 100;
  top: 80px;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 1344px;
  height: auto;
  margin: 0 auto;
  border-radius: 8px;
}
@media (max-width: 1023px) {
  .c-header-megaMenu {
    display: none !important
  }
}

.c-megaMenu {
  display: none;
  position: relative;
  padding-top: 4px;
}

.c-megaMenu::before {
  content: "";
  position: absolute;
  top: -4px;
  width: 24px;
  height: 12px;
  background: url("/common/image/ico/ico_arrow_megamenu.png") 0 0 no-repeat;
  background-size: contain;
}

.c-megaMenu__inner {
  display: flex;
  overflow: hidden;
  min-height: 100%;
  border-radius: 8px;
  box-shadow: 16px 16px 32px 0 rgba(113, 156, 174, 0.32);
}

.c-megaMenu__heading {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 270px;
  padding: 42px 36px 36px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

.c-megaMenu__title {
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

.c-megaMenu__title > a {
  position: relative;
  display: block;
  padding-right: 40px;
  color: #4d4d4d;
  color: var(--color-default);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.c-megaMenu__title > a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

.c-megaMenu__title > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 36px;
  height: 36px;
  transform: translateY(-50%);
  background: url("/common/image/ico/ico_circle_linkArrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}

.c-megaMenu__subTitle {
  color: #9bb7c2;
  color: var(--color-pale-blue-gray);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
}

.c-megaMenu__body {
  flex: 1;
  padding: 24px 36px 36px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (max-width: 1360px) {
  .c-megaMenu--corp::before {
    left: var(--megaMenuCorpArrow);
  }
}
.c-megaMenu--corp::before{
  right: 496px;
}
@media (max-width: 1360px) {
  .c-megaMenu--ir::before {
    left: var(--megaMenuIrArrow);
  }
}
.c-megaMenu--ir::before{
  right: 315px;
}
.c-megaMenuLinksList {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.c-megaMenuLinksList__item {
}
.c-megaMenuLinksList__link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 228px;
  height: 60px;
  padding: 10px 40px 10px 12px;
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.9375rem;
  font-size: var(--font-size-15);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
  line-height: 1.2;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-megaMenuLinksList__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-megaMenuLinksList__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  margin-top: -1px;
  background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}

.c-megaMenuService {
  display: none;
  position: relative;
  top: -10px;
  padding-top: 6px;
}

.c-megaMenuService::before {
  content: "";
  position: absolute;
  top: 0;
  width: 24px;
  height: 12px;
  background: url("/common/image/ico/ico_arrow_megamenu.png") 0 0 no-repeat;
  background-size: contain;
}

.c-megaMenuService__inner {
  margin-top: 4px;
  position: relative;
  overflow: hidden;
  background-color: #ffffff;
  background-color: var(--color-white);
  box-shadow: 16px 16px 32px 0 rgba(113, 156, 174, 0.32);
  border-radius: 8px;
}

.c-megaMenuService__note {
  position: absolute;
  top: 16px;
  right: 22px;
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1;
}

.c-megaMenuService__note img {
  display: inline-block;
  vertical-align: middle;
}

.c-megaMenuService__contents {
  padding: 32px 24px 0;
  border-radius: 8px 8px 0 0;
}

.c-megaMenuService_viewMore {
  display: block;
  padding: 20px 20px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  color: #005bac;
  color: var(--color-blue);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-align: center;
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (max-width: 1360px) {
  .c-megaMenuService::before {
    left: var(--megaMenuServiceArrow);
  }
}
.c-megaMenuService::before{
  right: 640px;
}

.c-megaMenuServicePayment__title {
  position: relative;
  padding: 0 0 12px 24px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}

.c-megaMenuServicePayment__title::before {
  content: "";
  position: absolute;
  left: 24px;
  bottom: -1px;
  width: 24px;
  height: 2px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.c-megaMenuServicePaymentColumn {
  display: flex;
}
.c-megaMenuServicePaymentColumn__left {
  width: 75%;
  padding: 24px 24px 8px;
  border-right: 1px solid #d8e8eb;
  border-right: 1px solid var(--color-soft-aqua);
}
.c-megaMenuServicePaymentColumn__right {
  width: 25%;
  padding: 24px 24px 24px;
}
.c-megaMenuServicePaymentColumn__title {
  margin-bottom: 20px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.c-megaMenuServicePaymentColumn__title a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding-right: 24px;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-megaMenuServicePaymentColumn__title a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-megaMenuServicePaymentColumn__title a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}
.c-megaMenuServiceMulpay__subTitle {
  color: #455459;
  color: var(--color-gray);
  font-size: 0.9375rem;
  font-size: var(--font-size-15);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.c-megaMenuServiceMulpay__title {
  margin-bottom: 24px;
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.c-megaMenuServiceMulpay__title a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding-right: 24px;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-megaMenuServiceMulpay__title a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-megaMenuServiceMulpay__title a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}

.c-megaMenuServicePaymentSubColumn {
  display: flex;
}

.c-megaMenuServicePaymentSubColumn__left {
  width: 75%;
}

.c-megaMenuServicePaymentSubColumn__right {
  width: 25%;
}

.c-megaMenuServicePaymentSubColumn__title {
  margin-bottom: 16px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.9375rem;
  font-size: var(--font-size-15);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

.c-megaMenuServicePaymentSubColumn__title .note {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
}

.c-megaMenuServicePaymentSubColumn__subTitle {
  margin: 16px 0 8px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
}

.c-megaMenuServiceSupport__title {
  position: relative;
  padding: 0 0 12px 24px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}

.c-megaMenuServiceSupport__title::before {
  content: "";
  position: absolute;
  left: 24px;
  bottom: -1px;
  width: 24px;
  height: 2px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}

.c-megaMenuServiceSupportColumn {
  display: flex;
}

.c-megaMenuServiceSupportColumn__item {
  width: 50%;
  padding: 24px 24px 24px;
}

.c-megaMenuServiceSupportColumn__item:first-child {
  border-right: 1px solid #d8e8eb;
  border-right: 1px solid var(--color-soft-aqua);
}

.c-megaMenuServiceSupportColumn__title {
  margin-bottom: 20px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

.c-megaMenuServiceSupportColumn__title a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding-right: 24px;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.c-megaMenuServiceSupportColumn__title a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

.c-megaMenuServiceSupportColumn__title a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
  background-size: contain;
}

.c-megaMenuServiceLinks {
  list-style-type: none;
  margin-top: -8px;
}

.c-megaMenuServiceLinks__item {
  margin-top: 8px;
}

.c-megaMenuServiceLinks__link {
  position: relative;
  padding-left: 16px;
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  -webkit-text-decoration: none;
  text-decoration: none;
  line-height: 1.5;
}

.c-megaMenuServiceLinks__link:hover {
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.c-megaMenuServiceLinks__link::before {
  content: "";
  position: absolute;
  top: 0.375em;
  left: 6px;
  width: 4px;
  height: 4px;
  background-color: #455459;
  background-color: var(--color-gray);
  border-radius: 50%;
}

.c-megaMenuServiceLinks__link[target='_blank']::after {
  position: relative;
  top: 0.35em;
  margin-left: 3px;
  content: url('/common/image/ico/ico_external.svg');
  width: 14px;
  height: 14px;
  opacity: 0.5;
}
.c-megaMenuServiceLinks--w50per {
  display: flex;
  flex-wrap: wrap;
}
.c-megaMenuServiceLinks--w50per .c-megaMenuServiceLinks__item {
  width: 50%;
}
.c-megaMenuServiceLinks--horizontal {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.c-megaMenuServiceLinks--horizontal .c-megaMenuServiceLinks__item {
  margin: 0;
}

.bg-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  height: 100%;
  background-color: rgba(77, 77, 77, 0.3);
}
.c-shadow-header {
  display: none;
}
@media (min-width: 1024px) {
  .c-shadow-header {
    position: fixed;
    top: 29px;
    width: 100%;
    z-index: 99
  }
}
.c-shadow-header__inner {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
}
.c-shadow-header-search-button {
  display: none;
  position: absolute;
  top: 28px;
  right: 48px;
  width: 52px;
  height: 52px;
  border: none;
  border-radius: 4px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  cursor: pointer;
}
.c-shadow-header-search-button:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-shadow-header-search-button::before,
.c-shadow-header-search-button::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 14px;
  height: 2px;
  background-color: #005bac;
  background-color: var(--color-blue);
  transform-origin: center center;
}
.c-shadow-header-search-button::before {
  transform: rotate(45deg);
}
.c-shadow-header-search-button::after {
  transform: rotate(135deg);
}

.c-shadow-header-links {
  list-style-type: none;
}

.c-shadow-header-links__item {
}
.c-shadow-header-links__button {
  display: none;
  align-items: center;
  position: absolute;
  background-color: #005bac;
  background-color: var(--color-blue);
  color: #ffffff;
  color: var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  border: none;
  outline: none;
  border-radius: 4px;
  cursor: pointer;
}
.c-shadow-header-links__button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  width: 7px;
  height: 1px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-shadow-header-links__button--corp {
  top: 20px;
  right: 521px;
  width: 78px;
  height: 32px;
  padding: 5px 20px 5px 8px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
}
.c-shadow-header-links__button--ir {
  top: 20px;
  right: 344px;
  width: 66px;
  height: 32px;
  padding: 5px 20px 5px 8px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
}
.c-shadow-header-links__button--service {
  top: 48px;
  right: 657px;
  width: 90px;
  min-width: 88px;
  height: 32px;
  padding: 5px 20px 5px 12px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
}

.is-overlay .bg-overlay {
  display: block;
}
@media (min-width: 1024px) {
  .is-overlay .c-header,
  .is-overlay .gmoGroupHeader {
    z-index: 98 !important
  }
}
.is-overlay .c-shadow-header {
  display: none !important;
}
@media (min-width: 1024px) {
  .is-overlay .c-shadow-header {
    display: block !important
  }
}
.is-overlay.is-searchOpen .c-shadow-header-search-button {
  display: block;
}
.is-overlay.is-megaMenuOpen .c-header-megaMenu {
  display: block;
  opacity: 1;
  animation: menuFadeIn 0.3s ease-in 0s forwards;
}
.is-overlay.is-megaMenuOpen.is-ir .c-megaMenu--ir {
  display: block;
}
.is-overlay.is-megaMenuOpen.is-ir .c-shadow-header-links__button--ir {
  display: flex;
}
.is-overlay.is-megaMenuOpen.is-corp .c-megaMenu--corp {
  display: block;
}
.is-overlay.is-megaMenuOpen.is-corp .c-shadow-header-links__button--corp {
  display: flex;
}
.is-overlay.is-megaMenuOpen.is-service .c-header-megaMenu {
  top: 115px;
}
.is-overlay.is-megaMenuOpen.is-service .c-megaMenuService {
  display: block;
}
.is-overlay.is-megaMenuOpen.is-service .c-shadow-header-links__button--service {
  display: flex;
}

@keyframes menuFadeIn {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

/* ==========================================================================//
// Components（footer）
// ========================================================================== */
/* サイトフッター
---------------------------------------------------------- */
.c-footer__top {
  position: relative;
  background: linear-gradient(225deg, #005bac 0%, #82A2AC 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, #82A2AC 100%);
  padding: 36px 0 40px;
}
.c-footer__topText {
  margin-bottom: 20px;
  color: #ffffff;
  color: var(--color-white);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  text-align: center;
}
@media (min-width: 1024px) {
  .c-footer__topText {
    margin-bottom: 48px;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-footer__middle {
  background-color: #ffffff;
  padding: 24px 16px;
}
@media (min-width: 1024px) {
  .c-footer__middle {
    padding: 48px 16px
  }
}
.c-footer__bottom {
  display: none;
}
@media (min-width: 1024px) {
  .c-footer__bottom {
    display: block;
    border-top: 1px solid #f2f4f5
  }
}
/* ページ先頭に戻るボタン */
.c-footerPageTop {
  position: absolute;
  z-index: 10;
  width: 48px;
  height: 104px;
  right: 16px;
  bottom: 129px;
  background: url("/common/image/btn/btn_footer_to_top.png") 0 0 no-repeat;
  background-size: contain;
  border: none;
  cursor: pointer;
}
@media (min-width: 1024px) {
  .c-footerPageTop {
    background: transparent;
    width: 56px;
    height: 128px;
    right: 32px;
    bottom: 74px
  }
}
.c-footerPageTop:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-footerPageTop > img {
  display: none;
}
@media (min-width: 1024px) {
  .c-footerPageTop > img {
    display: block
  }
}
/* GMOグループバナー */
.c-footerGroupBannerArea.splide {
  padding-bottom: 72px;
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide {
    padding-bottom: 120px
  }
}
.c-footerGroupBannerArea.splide .splide__arrow {
  color: #ffffff;
  color: var(--color-white);
}
.c-footerGroupBannerArea.splide .splide__arrow::before {
  color: #ffffff;
  color: var(--color-white);
}
.c-footerGroupBannerArea.splide .splide__arrows {
  position: absolute;
  bottom: 41px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
}
.c-footerGroupBannerArea.splide .splide__arrow {
  position: relative;
  background: transparent;
  width: 24px;
  height: 12px;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: all 0.3s ease;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__arrow {
    width: auto;
    height: auto
  }
}
.c-footerGroupBannerArea.splide .splide__arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 12px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  background-color: currentColor;
  color: #ffffff !important;
  color: var(--color-white) !important;
}
.c-footerGroupBannerArea.splide .splide__arrow--prev {
  padding-left: 20px;
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__arrow--prev {
    padding-left: 36px
  }
}
.c-footerGroupBannerArea.splide .splide__arrow--prev::before {
  left: 0;
  -webkit-mask-image: url('/common/image/ico/ico_slider_arrow_prev.svg');
  mask-image: url('/common/image/ico/ico_slider_arrow_prev.svg');
}
.c-footerGroupBannerArea.splide .splide__arrow--next {
  padding-right: 20px;
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__arrow--next {
    padding-right: 36px
  }
}
.c-footerGroupBannerArea.splide .splide__arrow--next::before {
  right: 0;
  -webkit-mask-image: url('/common/image/ico/ico_slider_arrow_next.svg');
  mask-image: url('/common/image/ico/ico_slider_arrow_next.svg');
}
@media (hover: hover) {
  .c-footerGroupBannerArea.splide .splide__arrow:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-footerGroupBannerArea.splide .splide__arrow > span {
  display: none;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__arrow > span {
    display: block
  }
}
.c-footerGroupBannerArea.splide .splide__pagination {
  display: flex !important;
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__pagination {
    margin: 0 48px
  }
}
.c-footerGroupBannerArea.splide .splide__pagination > li {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
}
.c-footerGroupBannerArea.splide .splide__pagination__page {
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 12px;
  height: 2px;
  margin: 0 4px;
  background-color: #6196bd;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-footerGroupBannerArea.splide .splide__pagination__page {
    width: 24px
  }
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__pagination__page {
    width: 65px
  }
}
.c-footerGroupBannerArea.splide .splide__pagination__page.is-active {
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (hover: hover) {
  .c-footerGroupBannerArea.splide .splide__pagination__page:hover {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
}
.c-footerGroupBannerArea.splide .splide__slide img {
  width: auto;
  height: 40px;
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__slide img {
    width: auto;
    height: 40px
  }
}
@media (min-width: 1024px) {
  .c-footerGroupBannerArea.splide .splide__toggle {
    margin-left: 48px
  }
}
.c-footerGroupBannerArea.splide .splide__toggle .splide__toggle__pause::before {
  background: url(/common/image/ico/ico_slider_pause_white.svg) no-repeat top left / contain;
}
.c-footerGroupBanner__item > a,
.c-footerGroupBanner__item > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 8px 8px;
  border-radius: 6px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 1024px) {
  .c-footerGroupBanner__item > a,
  .c-footerGroupBanner__item > span {
    padding: 12px 12px;
    border-radius: 8px
  }
}
.c-footerGroupBanner__item > a {
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .c-footerGroupBanner__item > a:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-footerGroupBanner__item img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.c-footerGroupBanner.splide__list {
  height: auto;
}
/* フッターメインエリア */
.c-footerMain {
  position: relative;
}
.c-footerMain::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image : linear-gradient(to right, #a9babf 4px, transparent 4px);
  background-size: 10px 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}
@media (min-width: 1024px) {
  .c-footerMain::before {
    display: none
  }
}
.c-footerMain__top {
  padding: 40px 16px;
}
.c-footerMain__bottom {
  position: relative;
  padding: 40px 16px 0;
}
@media (min-width: 1024px) {
  .c-footerMain__bottom {
    padding: 40px 16px
  }
}
.c-footerMain__bottom::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image : linear-gradient(to right, #a9babf 4px, transparent 4px);
  background-size: 10px 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}
/* フッターナビゲーションエリア */
@media (min-width: 768px) {
  .c-footerNavi {
    max-width: 1200px;
    margin: 0 auto
  }
}
@media (min-width: 1024px) {
  .c-footerNaviBlock {
    margin-bottom: 24px
  }
  .c-footerNaviBlock:last-child {
    margin-bottom: 0;
  }
}
.c-footerNaviBlock__item{
  position: relative;
  border-top: 1px solid #a9babf;
}
.c-footerNaviBlock__item::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 16px;
  height: 1px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 1024px) {
  .c-footerNaviBlock__item::before {
    width: 48px
  }
}
.c-footerNaviBlock__title > span,
.c-footerNaviBlock__title > a {
  display: block;
  padding: 20px 0;
  color: #ffffff;
  color: var(--color-white);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  -webkit-text-decoration: none;
  text-decoration: none;
  line-height: 1;
  cursor: pointer;
}
@media (min-width: 1024px) {
  .c-footerNaviBlock__title > span,
  .c-footerNaviBlock__title > a {
    padding: 24px 0;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-footerNaviBlock__title > a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-footerNaviBlock__item--accordion {
  margin-bottom: 20px;
}
@media (min-width: 1024px) {
  .c-footerNaviBlock__item--accordion {
    margin-bottom: 0
  }
}
.c-footerNaviBlock__item--accordion .c-footerNaviBlock__title > span {
  position: relative;
}
.c-footerNaviBlock__item--accordion .c-footerNaviBlock__title > span::before,
.c-footerNaviBlock__item--accordion .c-footerNaviBlock__title > span::after {
  content: "";
  position: absolute;
  width: 9px;
  height: 2px;
  top: 50%;
  right: 20px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-footerNaviBlock__item--accordion .c-footerNaviBlock__title > span::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-footerNaviBlock__item--accordion .c-footerNaviBlock__title.is-active > span::after {
  opacity: 0;
}
@media (min-width: 1024px) {
  .c-footerNaviBlock--3col {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 48px;
    gap: 48px
  }
}
@media (min-width: 1024px) {
}
@media (min-width: 1024px) {
  .c-footerNaviBlock--2to1col {
    display: grid;
    grid-template-columns: 2.13fr 1fr;
    grid-gap: 48px;
    gap: 48px
  }
}
.c-footerNaviBlock__body {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}

.c-footerNaviBlock__item--accordion .c-footerNaviBlock__title.is-active + .c-footerNaviBlock__body {
  max-height: inherit;
}

@media (min-width: 1024px) {

  .c-footerColumn {
    display: flex
  }
  .c-footerColumn .c-footerUnit--w25per {
    width: 25%;
  }
  .c-footerColumn .c-footerUnit--w50per {
    width: 50%;
  }
  .c-footerColumn .c-footerUnit--w75per {
    width: 75%;
  }
}
@media (min-width: 1024px) {
  .c-footerColumn + .c-footerColumn {
    margin-top: 48px
  }
}

.c-footerUnit__title {
  margin-bottom: 20px;
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 1024px) {

  .c-footerUnit__title {
    margin-bottom: 24px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-footerUnit + .c-footerUnit {
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .c-footerUnit + .c-footerUnit {
    margin-top: 0
  }
}

@media (min-width: 1024px) {

  .c-footerUnit--w75per .c-footerUnitColumn:not(.c-footerUnitColumn--noGrid) {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr
  }
}
@media (min-width: 1024px) {
  .c-footerUnit--w50per .c-footerUnitColumn:not(.c-footerUnitColumn--noGrid) {
    display: grid;
    grid-template-columns: 1fr 1fr
  }
}

.c-footerUnitNavi__title {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 15px;
  color: #9fbed6;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

.c-footerUnitNavi__title::after {
  content: "";
  display: block;
  margin-left: 10px;
  flex: 1;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #a9babf 4px, transparent 4px);
  background-size: 10px 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

@media (min-width: 1024px) {

  .c-footerUnitNavi__title::after {
    display: none
  }
}

.c-footerUnitNavi .c-footerUnitNaviList {
  margin-bottom: 20px;
}

@media (min-width: 1024px) {

  .c-footerUnitNavi .c-footerUnitNaviList {
    margin-bottom: 24px
  }
}

.c-footerUnitNavi .c-footerUnitNaviList:last-child {
  margin-bottom: 0;
}
.c-footerUnitNavi + .c-footerUnitNavi {
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .c-footerUnitNavi + .c-footerUnitNavi {
    margin-top: 0
  }
}

@media (min-width: 1024px) {

  .c-footerUnitNaviListColumn {
    display: grid;
    grid-template-columns: 1fr 1fr
  }
}

.c-footerUnitNaviList {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  margin-top: -12px;
}

@media (min-width: 1024px) {

  .c-footerUnitNaviList {
    display: block;
    margin-top: -8px
  }
}

.c-footerUnitNaviList__item {
  position: relative;
  width: 50%;
  padding-left: 8px;
  margin-top: 12px;
}

@media (min-width: 1024px) {

  .c-footerUnitNaviList__item {
    width: 100%;
    padding-left: 12px;
    margin-top: 8px
  }
}

.c-footerUnitNaviList__item::before {
  content: "";
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 3px;
  height: 2px;
  background-color: #455459;
  background-color: var(--color-gray);
}

@media (min-width: 1024px) {

  .c-footerUnitNaviList__item::before {
    width: 4px
  }
}

.c-footerUnitNaviList__item a {
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.c-footerUnitNaviList__item a:hover {
  -webkit-text-decoration: underline;
  text-decoration: underline;
}


/* フッターリンク、コピーライト */
@media (min-width: 1024px) {
  .c-footerSubAssembly {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto
  }
}
.c-footerLinks {
  display: flex;
  flex-wrap: wrap;
  padding: 0 69px 0 0;
  gap: 13px;
  list-style-type: none;
}
@media (min-width: 1024px) {
  .c-footerLinks {
    gap: 24px
  }
}
.c-footerLinks__item {
  line-height: 1;
}
@media (min-width: 1024px) {
  .c-footerLinks__item {
    padding-right: 24px;
    border-right: 1px solid #f2f4f5;
    border-right: 1px solid var(--color-gray-light)
  }
  .c-footerLinks__item:last-child {
    border: none;
  }
}
.c-footerLinks__link {
  display: inline-block;
  vertical-align: middle;
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
.c-footerLinks__link:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
.c-footerCopyrights {
  margin-top: 40px;
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  letter-spacing: 0.05em;
}
@media (min-width: 1024px) {
  .c-footerCopyrights {
    margin-top: 0;
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
/* フッターバナー */
.c-footerBannerArea {
  padding-bottom: 24px;
}
@media (min-width: 768px) {
  .c-footerBannerArea {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    padding-bottom: 48px
  }
  .c-footerBannerArea::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-image : linear-gradient(to right, #dadadb 4px, transparent 4px);
    background-size: 10px 2px;
    background-repeat: repeat-x;
    background-position: left bottom;
  }
}
.c-footerBanner {
  width: 100%;
  display:grid;
  grid-template-columns: auto auto auto;
  grid-gap: 8px;
  gap: 8px;
  list-style-type: none;
}
@media (min-width: 768px) {
  .c-footerBanner {
    display: flex;
    justify-content: flex-start;
    gap: 48px
  }
}
.c-footerBanner__item img {
  width: auto;
  height: 11.7vw;
  max-width: 100%;
}
@media (min-width: 768px) {
  .c-footerBanner__item img {
    width: auto;
    height: 88px;
    max-width: none
  }
}
.c-footerBanner__link {
  display: inline-block;
  vertical-align: middle;
}
.c-footerBanner__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

@media (min-width: 768px) {
	.c-footerLogoArea {
	  max-width: 1200px;
	  margin: 0 auto;
	  padding-top: 20px;
	  padding-bottom: 48px
	}
  }

.c-footerLogo {
  list-style-type: none;
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .c-footerLogo {
    display: flex;
    justify-content: center;
    gap: 20px;
    padding-right: 60px;
  }
}
.c-footerLogo__item {
  display: flex;
  margin-bottom: 24px;
}
@media (min-width: 1024px) {
  .c-footerLogo__item {
    margin-bottom: 0
  }
}
.c-footerLogo__item:last-child {
  margin-bottom: 0;
}
.c-footerLogo__link {
  display: inline-block;
  vertical-align: middle;
}
.c-footerLogo__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-footerLogo__image img {
  width: auto;
  max-width: inherit;
  height: 44px;
}
@media (min-width: 768px) {
  .c-footerLogo__image img {
    height: 76px
  }
}
.c-footerLogo__content {
  flex: 1;
  margin-left: 16px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
}
@media (min-width: 768px) {
  .c-footerLogo__content {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-footerLogo__name {
  margin-bottom: 5px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .c-footerLogo__name {
    margin-bottom: 10px
  }
}
.c-footerLogo + .c-footerLogo {
  margin-top: 30px;
}

/* GMOグループフッター
---------------------------------------------------------- */
@media (min-width: 768px) {
  #gmofooter .c-footerGmoGroup {
    max-width: 1230px;
    margin: 0 auto;
    padding-top: 33px
  }
}
#gmofooter .c-footerGmoGroup .gmoGroupFooter {
  border: none;
}
#gmofooter .gmoGroupFooter {
  background: #fefefe;
  border: #eaeaea solid;
  border-width: 1px 0 0 0;
  clear: both;
  font-size: 9.5px;
  letter-spacing: 0;
  line-height: 1;
  margin: 0 auto;
  padding-bottom: 38px;
  text-align: left;
  width: 100%
}
@media (max-width: 768px) {
  #gmofooter .gmoGroupFooter {
    display:none
  }
}
#gmofooter .gmoGroupFooter * {
  box-sizing: border-box;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN W3", "Arial", sans-serif;
  font-weight: normal
}
#gmofooter .gmoGroupFooter a:link,
#gmofooter .gmoGroupFooter a:visited {
  color: #428bca;
  -webkit-text-decoration: none;
  text-decoration: none
}
#gmofooter .gmoGroupFooter a:hover {
  transition: 0.2s;
  color: #f60;
}
#gmofooter .gmoGroupFooter img {
  border: 0;
}
#gmofooter .gmoGroupFooter ul,#gmofooter .gmoGroupFooter li,#gmofooter .gmoGroupFooter dl,#gmofooter .gmoGroupFooter dt,#gmofooter .gmoGroupFooter dd {
  margin: 0;
  padding: 0
}
#gmofooter .gmoGroupFooter ul,#gmofooter .gmoGroupFooter li {
  list-style: none;
}
#gmofooter .gmoGroupFooter_inner {
  padding: 15px 10px;
}
#gmofooter .gmoGroupFooter_header {
  margin-bottom: 20px;
  overflow: hidden;
}
#gmofooter .gmoGroupFooter_logo {
  float: left;
}
#gmofooter .gmoGroupFooter_logo > a > img {
  height: 11px;
  width: 175px;
}
#gmofooter .gmoGroupFooter_text {
  float: right;
}
#gmofooter .gmoGroupFooter_text > img {
  height: 12px;
  width: auto;
}
#gmofooter .gmoGroupFooter_heading {
  clear: both;
  color: #4d4d4d;
  font-size: 11.5px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 5px;
}
#gmofooter .gmoGroupFooter_relatedservicelist {
  margin-bottom: 15px;
  overflow: hidden;
}
#gmofooter .gmoGroupFooter_relatedservicelist ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-left: -15px;
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li {
  font-size: 10.5px;
  margin-left: 15px;
  width: calc((100% / 3) - 15px);
  width: calc(calc(100% / 3) - 15px);
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li:last-child {
  margin-right: 0;
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li a {
  font-size: 10.5px
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li dl {
  clear: both
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li dl dt {
  float: left;
  line-height: 1.3;
  margin-right: 0.5em;
  white-space: nowrap
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li dl dt::after {
  color: #666;
  content: "-";
  margin-left: 0.5em
}
#gmofooter .gmoGroupFooter_relatedservicelist ul li dl dd {
  color: #666;
  float: left;
  line-height: 1.5;
  white-space: nowrap
}
#gmofooter .gmoGroupFooter_groupservicelist ul {
  margin-left: -14px;
  position: relative;
}
#gmofooter .gmoGroupFooter_groupservicelist ul li {
  float: left;
  margin-left: 14px;
  padding-bottom: 3px;
  text-align: left;
  z-index: 1
}
#gmofooter .gmoGroupFooter_submenu {
  border-radius: 4px;
  transition: .2s;
  background: #fff;
  border: solid 1px #eaeaea;
  bottom: 0;
  display: none;
  flex-wrap: wrap;
  margin-left: -2px;
  overflow: hidden;
  padding: 3px 10px;
  position: absolute;
  z-index: 9999;
  box-shadow: rgba(0,0,0,0.1) 0 0 1px 0;
}
#gmofooter .gmoGroupFooter_submenu > div {
  width: 100%;
}
#gmofooter .gmoGroupFooter_submenu dl {
  margin: 5px 10px 5px 5px;
}
#gmofooter .gmoGroupFooter_submenu dl dt {
  color: #4d4d4d;
  font-size: 11.5px;
  line-height: 1.5;
  white-space: nowrap;
}
#gmofooter .gmoGroupFooter_submenu dl dd {
  font-size: 10.5px;
  line-height: 1.4;
  white-space: nowrap;
}
#gmofooter .gmoGroupFooter_submenu dl dd a {
  display: block;
}
#gmofooter .gmoGroupFooter_groupservicelist li:hover .gmoGroupFooter_submenu {
  display: flex;
}
#gmofooter .gmoGroupFooter_groupserviceheading {
  color: #666;
  font-size: 9.5px;
  line-height: 1.4;
}
#gmofooter .gmoGroupFooter_groupserviceheading::after {
  border-color: transparent transparent #ccc;
  border-style: solid;
  border-width: 3px;
  content: "";
  display: inline-block;
  height: 0;
  left: 3px;
  position: relative;
  top: -3px;
  width: 0;
}
#gmofooter .gmoGroupFooter_groupserviceheading:hover {
  transition: .2s;
  cursor: pointer;
  -webkit-text-decoration: none;
  text-decoration: none;
}
#gmofooter .gmoGroupFooter_groupserviceheading:hover::after {
  border-color: transparent transparent #f60;
  border-style: solid;
  border-width: 3px;
  content: "";
  display: inline-block;
  height: 0;
  left: 3px;
  position: relative;
  top: -3px;
  width: 0;
}

/* セキュリティフッター */
.securityfooter_box {
	width: 100%;
	margin: 0 auto;
	margin-top: 40px;
}

.securityfooter_box_logo {
	max-width: 1040px;
	margin: 0 auto;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: 0 10px;
	display: flex;
	justify-content: start;
	gap: 20px;
}

.securityfooter_box_logo div {
	line-height: initial;
}

.securityfooter_box_logo div img {
	vertical-align: middle;
}

.securityfooter_box_seals {
	margin: 40px 0;
}

.securityfooter_box_seals ul {
	list-style-type: none;
	display: flex;
	gap: 20px;
	justify-content: center;
}

@media (min-width: 834px) {
		.securityfooter_box_seals ul img {
		width: 130px;
	}
}


@media (max-width: 833px) {
	.securityfooter_box {
		width: 100%;
	}

	.securityfooter_box_logo{
		flex-direction: column;
		gap: 0;
		align-items: center;
	}

	.securityfooter_box_logo div {
		margin: 10px 0;
		display: block;
	}

	.securityfooter_box_seals ul {
		margin: 0 10px;
		max-width: 100%;
	}

	.securityfooter_box_seals ul img {
		max-width: 130px;
		width: 100%;
	}

}


/* ==========================================================================//
// Components（Navi）
// ========================================================================== */
/* パンくず
---------------------------------------------------------- */
.c-breadcrumb {
  overflow: hidden;
  padding-left: 16px;
}
@media (min-width: 1024px) {
  .c-breadcrumb {
    padding-right: 16px
  }
}
.c-breadcrumb__list {
  overflow-x: auto;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%;
  padding-right: 16px;
  list-style-type: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 1024px) {
  .c-breadcrumb__list {
    padding-right: 0;
    max-width: 1300px;
    margin: 0 auto
  }
}
.c-breadcrumb__item{
  position: relative;
  margin-right: 22px;
}
@media (min-width: 1024px) {
  .c-breadcrumb__item{
    margin-right: 38px
  }
}
.c-breadcrumb__item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -14px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  margin-top: -3px;
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
  opacity: 0.5;
}
@media (min-width: 1024px) {
  .c-breadcrumb__item::after {
    right: -23px
  }
}
.c-breadcrumb__item:last-child {
  overflow-x: hidden;
  margin-right: 0;
}
.c-breadcrumb__item:last-child::after {
  display: none;
}
.c-breadcrumb__item:last-child > span {
  display: block;
  color: #a5a5a5;
  color: var(--color-gray-cool-light);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow-x: hidden;
}
.c-breadcrumb__link {
  display: inline-block;
  vertical-align: middle;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
}
@media (min-width: 1024px) {
  .c-breadcrumb__link {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-breadcrumb__link:not(span) {
  color: #4d4d4d;
  color: var(--color-default);
  -webkit-text-decoration: underline;
  text-decoration: underline;
  transition: all 0.3s ease;
}
.c-breadcrumb__link:not(span):hover {
  opacity: 0.75;
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* 共通サイドナビ
---------------------------------------------------------- */
.c-subNavi {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-subNavi__index {
  overflow: hidden;
  position: relative;
  padding: 77px 24px 29px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.c-subNavi__index::before {
  display: none;
  content: "";
  position: absolute;
  top: 24px;
  left: 0;
  width: 300px;
  height: 36px;
  background: url("/common/image/bg/bg_sideNavi_wave.svg") 0 0 no-repeat;
  background-size: contain;
}
@media (min-width: 1024px) {
  .c-subNavi__index::before {
    display: block
  }
}
.c-subNavi__indexLink {
  color: #ffffff;
  color: var(--color-white);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.2em;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-subNavi__indexLink:hover {
  opacity: 0.75;
  opacity: var(--opacity-default);
  transition: opacity 0.3s ease;
}
.c-subNavi__indexLink > span {
  position: relative;
  padding-left: 52px;
}
.c-subNavi__indexLink > span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 36px;
  height: 36px;
  margin-top: -18px;
  background: url(/common/image/ico/ico_viewMoreCard_arrow.svg) no-repeat center / 16px 8px;
  border: 1px solid #ffffff;
  border: 1px solid var(--color-white);
  border-radius: 50%;
  transform: rotate(180deg);
}
.c-subNaviList {
  padding: 12px 16px 16px;
  list-style-type: none;
  border-left: 1px solid #d8e8eb;
  border-left: 1px solid var(--color-soft-aqua);
  border-right: 1px solid #d8e8eb;
  border-right: 1px solid var(--color-soft-aqua);
}
@media (min-width: 1024px) {
  .c-subNaviList {
    border-left: none
  }
}
.c-subNaviList__item {
  position: relative;
}
.c-subNaviList__item::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-image : linear-gradient(to right, #a9babf 4px, transparent 4px);
  background-image : linear-gradient(to right, var(--color-gray-medium-light) 4px, transparent 4px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  background-position: right bottom;
}
.c-subNaviList__item:last-child::after {
  display: none;
}
.c-subNaviList__item.is-current::after {
  height: 2px;
  background-image: none;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-subNaviList__item.is-current .c-subNaviList__link {
  padding: 20px 12px 20px 40px;
  color: #005bac;
  color: var(--color-blue);
}
.c-subNaviList__item.is-current .c-subNaviList__link::after {
  right: auto;
  left: 12px;
}
.c-subNaviList__link {
  position: relative;
  display: block;
  padding: 20px 40px 20px 12px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-subNaviList__link:hover {
  opacity: 0.75;
  opacity: var(--opacity-default);
  transition: opacity 0.3s ease;
}
.c-subNaviList__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
  width: 18px;
  height: 10px;
  margin-top: -5px;
  background: url(/common/image/ico/ico_viewMoreCard_arrow_blue.svg) 0 0 no-repeat;
  background-size: contain;
}
.c-subNaviList__accordion {
  position: relative;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  cursor: pointer;
}
.c-subNaviList__accordion:hover {
  opacity: 0.75;
  opacity: var(--opacity-default);
  transition: opacity 0.3s ease;
}
.c-subNaviList__accordion > span {
  position: relative;
  display: block;
  padding: 20px 40px 20px 12px;
}
.c-subNaviList__accordion > span::before,
.c-subNaviList__accordion > span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 12px;
  height: 2px;
  margin-top: -1px;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-subNaviList__accordion > span::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-subNaviList__accordion.is-active > span::after {
  display: none;
}
.c-subNaviList__body {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}
.c-subNaviChildList {
  list-style-type: none;
  padding: 0 14px 20px 24px;
}
.c-subNaviChildList__item {
  margin-bottom: 20px;
}
.c-subNaviChildList__item:last-child {
  margin-bottom: 0;
}
.c-subNaviChildList__item a {
  display: block;
  color: #798387;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.05em;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-subNaviChildList__item a:hover {
  opacity: 0.75;
  opacity: var(--opacity-default);
  transition: opacity 0.3s ease;
}
.c-subNaviChildList__item.is-current a {
  color: #005bac;
  color: var(--color-blue);
}

.c-subNaviList__accordion.is-active + .c-subNaviList__body {
  max-height: inherit;
}

.c-subNavi.c-subNavi--sustainability .c-subNaviList__accordion.is-active {
  color: #005bac;
  color: var(--color-blue);
}

/* ==========================================================================//
// 記事ページ向け コンポーネント
// ========================================================================== */
.c-article__heading {
  max-width: 1200px;
  margin: 0 auto 40px;
  padding: 30px 16px 0;
}
@media (min-width: 768px) {
  .c-article__heading {
    padding: 60px 16px 0;
    margin-bottom: 80px
  }
}
.c-article__content {
  max-width: calc(840px + 32px);
  margin: 0 auto 60px;
  padding: 0 16px;
}
@media (min-width: 768px) {
  .c-article__content {
    margin-bottom: 120px
  }
}
.c-article__apply {
  max-width: 320px;
  margin: 0 auto 60px;
}
@media (min-width: 768px) {
  .c-article__apply {
    margin-bottom: 120px
  }
}
.c-article__bottom {
  padding: 60px 16px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
@media (min-width: 768px) {
  .c-article__bottom {
    padding: 120px 16px
  }
}
.c-article__bottomInner {
  max-width: 840px;
  margin: 0 auto;
}
/* 本文装飾 */
/*.c-article__content {*/
/*  .read {*/
/*    margin-bottom: 60px;*/
/*    @media (--sm) {*/
/*      margin-bottom: 120px;*/
/*    }*/
/*    p {*/
/*      font-weight: var(--font-weight-bold);*/
/*      line-height: 2;*/
/*      font-size: var(--font-size-13);*/
/*      @media (--sm) {*/
/*        font-size: var(--font-size-14);*/
/*      }*/
/*    }*/
/*    p + img {*/
/*      margin-top: 40px;*/
/*    }*/
/*  }*/
/*  h2,h3,h4,h5 {*/
/*    font-weight: var(--font-weight-bold);*/
/*    line-height: 1.5;*/
/*    text-wrap: wrap;*/
/*  }*/
/*  h2 {*/
/*    margin-bottom: 1.8em;*/
/*    font-size: var(--font-size-24);*/
/*    @media (--sm) {*/
/*      font-size: var(--font-size-32);*/
/*    }*/
/*  }*/
/*  h3 {*/
/*    margin-bottom: 2em;*/
/*    padding-bottom: 8px;*/
/*    font-size: var(--font-size-18);*/
/*    border-bottom: 1px solid var(--color-gray-medium-light);*/
/*    @media (--sm) {*/
/*      font-size: var(--font-size-24);*/
/*    }*/
/*  }*/
/*  h4 {*/
/*    margin-bottom: 1.5em;*/
/*    font-size: var(--font-size-14);*/
/*    @media (--sm) {*/
/*      font-size: var(--font-size-16);*/
/*    }*/
/*  }*/
/*  p {*/
/*    font-size: var(--font-size-13);*/
/*    line-height: 1.5;*/
/*    @media (--sm) {*/
/*      font-size: var(--font-size-14);*/
/*    }*/
/*  }*/
/*  img {*/
/*    max-width: 100%;*/
/*  }*/
/*  blockquote {*/
/*    position: relative;*/
/*    padding: 22px 16px;*/
/*    border-top: 1px solid var(--color-pale-aqua);*/
/*    border-bottom: 1px solid var(--color-pale-aqua);*/
/*    &::after {*/
/*      position: absolute;*/
/*      right: 0;*/
/*      bottom: -20px;*/
/*      content: "";*/
/*      width: 48px;*/
/*      height: 32px;*/
/*      background: #ffffff url("/common/image/ico/ico_blockquote.svg") top right no-repeat;*/
/*      background-size: 40px 32px;*/
/*    }*/
/*  }*/
/*  ul,ol {*/
/*    list-style-type: none;*/
/*    font-size: var(--font-size-13);*/
/*    line-height: 1.5;*/
/*    @media (--sm) {*/
/*      font-size: var(--font-size-14);*/
/*    }*/
/*    li {*/
/*      margin-bottom: 1.7em;*/
/*      &:last-child {*/
/*        margin-bottom: 0;*/
/*      }*/
/*    }*/
/*  }*/
/*  ul {*/
/*    > li {*/
/*      position: relative;*/
/*      padding-left: 33px !important;*/
/*      text-indent: 0 !important;*/
/*      margin-left: 0 !important;*/
/*      &::before {*/
/*        content: "";*/
/*        position: absolute;*/
/*        top: 0.45em;*/
/*        left: 8px;*/
/*        width: 8px;*/
/*        height: 8px;*/
/*        border-radius: 50%;*/
/*        background-color: var(--color-blue);*/
/*      }*/
/*    }*/
/*  }*/
/*  ol {*/
/*    list-style-type: decimal-leading-zero;*/
/*    > li {*/
/*      position: relative;*/
/*      margin-left: 25px;*/
/*      padding-left: 8px;*/
/*      &::marker {*/
/*        position: absolute;*/
/*        top: 0;*/
/*        left: 0;*/
/*        color: var(--color-blue);*/
/*        font-weight: var(--font-weight-bold);*/
/*      }*/
/*    }*/
/*  }*/

/*  table {*/
/*    width: 100%;*/
/*    border-collapse: collapse;*/
/*    border: 1px solid var(--color-pale-aqua);*/
/*    tbody {*/
/*      th,*/
/*      td {*/
/*        padding: 12px 16px;*/
/*        font-size: var(--font-size-13);*/
/*        line-height: 1.5;*/
/*        text-align: left;*/
/*        @media (--sm) {*/
/*          font-size: var(--font-size-14);*/
/*        }*/
/*      }*/
/*      th {*/
/*        min-width: 100px;*/
/*        background-color: var(--color-pale-aqua);*/
/*        border-bottom: 1px solid var(--color-white);*/
/*        font-weight: var(--font-weight-bold);*/
/*        @media (--sm) {*/
/*          min-width: 180px;*/
/*        }*/
/*      }*/
/*      td {*/
/*        background-color: var(--color-white);*/
/*        border: 1px solid var(--color-pale-aqua);*/
/*      }*/
/*      tr:nth-child(even) {*/
/*        td {*/
/*          background-color: var(--color-gray-light);*/
/*        }*/
/*      }*/
/*      tr:last-child {*/
/*        th {*/
/*          border-bottom: 1px solid var(--color-pale-aqua);*/
/*        }*/
/*      }*/
/*    }*/
/*  }*/

/*  !* 組み合わせ *!*/
/*  * + p {*/
/*    margin-top: 1.5em;*/
/*  }*/
/*  * + ol,*/
/*  * + ul {*/
/*    margin-top: 20px;*/
/*  }*/
/*  * + h3,*/
/*  * + h4,*/
/*  * + img,*/
/*  * + table,*/
/*  blockquote + * {*/
/*    margin-top: 60px;*/
/*    @media (--sm) {*/
/*      margin-top: 120px;*/
/*    }*/
/*  }*/
/*}*/
.c-articleHead__sub {
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .c-articleHead__sub {
    display: flex;
    align-items: center
  }
}
.c-articleHead__date {
  display: block;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  margin-bottom: 5px;
}
@media (min-width: 768px) {
  .c-articleHead__date {
    margin: 0 25px 0 0;
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.c-articleHead__tags {
  display: flex;
  gap: 12px;
  list-style-type: none;
}
@media (min-width: 768px) {
  .c-articleHead__tags {
    gap: 16px
  }
}
.c-articleHead__tags > li {
  display: inline-block;
  vertical-align: middle;
  padding: 8px 16px;
  background-color: #005bac;
  background-color: var(--color-blue);
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  border-radius: 4px;
  line-height: 1;
}
@media (min-width: 768px) {
  .c-articleHead__tags > li {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-articleHead__main {
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .c-articleHead__main {
    margin-bottom: 40px
  }
}
.c-articleHead__title {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-wrap: wrap;
}
@media (min-width: 768px) {
  .c-articleHead__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.c-articleHead__share {
  display: flex;
  align-items: center;
}
.c-articleHead__shareTitle {
  margin-right: 25px;
  color: #a9babf;
  color: var(--color-gray-medium-light);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .c-articleHead__shareTitle {
    margin-right: 33px;
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.c-articleHead__shareList {
  display: flex;
  align-items: center;
  gap: 25px;
  list-style-type: none;
}
@media (min-width: 768px) {
  .c-articleHead__shareList {
    gap: 33px
  }
}
.c-articleHead__shareList > li a {
  transition: opacity 0.3s ease;
}
@media (hover: hover) {
  .c-articleHead__shareList > li a:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-articleHead__shareList .x {
  width: 22px;
  height: 22px;
}
.c-articleHead__shareList .fb {
  width: 24px;
  height: 24px;
}
.c-articleUrlCopy {
  position: relative;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
  padding: 10px 12px 10px 36px;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  line-height: 1;
  border: none;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (min-width: 768px) {
  .c-articleUrlCopy {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-articleUrlCopy::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 12px;
  width: 16px;
  height: 8px;
  margin-top: -4px;
  background: url("/common/image/ico/ico_url_copy.svg") 0 0 no-repeat;
  background-size: contain;
}
@media (hover: hover) {
  .c-articleUrlCopy:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-articleEvent {
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  .c-articleEvent {
    margin-bottom: 120px
  }
}
.c-articleEvent__title {
  margin-bottom: 20px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-articleEvent__title {
    margin-bottom: 40px;
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-articleEvent__table table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}
.c-articleEvent__table table tbody th,
.c-articleEvent__table table tbody td {
  padding: 12px 16px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: left;
}
@media (min-width: 768px) {
  .c-articleEvent__table table tbody th,
  .c-articleEvent__table table tbody td {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-articleEvent__table table tbody th {
  min-width: 100px;
  background-color: #d4dddf;
  background-color: var(--color-pale-aqua);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .c-articleEvent__table table tbody th {
    min-width: 180px
  }
}
.c-articleEvent__table table tbody td {
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}
.c-articleEvent__table table tbody tr:nth-child(even) td {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-articleEvent__table table tbody tr:last-child th {
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
.c-articleProfile__title {
  margin-bottom: 20px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-articleProfile__title {
    margin-bottom: 40px;
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-articleProfileCard {
  padding: 24px 24px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 768px) {
  .c-articleProfileCard {
    display: flex;
    align-items: flex-start
  }
}
.c-articleProfileCard__thumb {
  width: 160px;
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .c-articleProfileCard__thumb {
    margin: 0 24px 0 0
  }
}
.c-articleProfileCard__detail {
  flex: 1;
  line-height: 1.5;
}
.c-articleProfileCard__role {
  margin-bottom: 5px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
}
@media (min-width: 768px) {
  .c-articleProfileCard__role {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-articleProfileCard__name {
  margin-bottom: 15px;
}
.c-articleProfileCard__name .ja {
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .c-articleProfileCard__name .ja {
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.c-articleProfileCard__name .en {
  display: inline-block;
  vertical-align: middle;
  color: #a9babf;
  color: var(--color-gray-medium-light);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
}
@media (min-width: 768px) {
  .c-articleProfileCard__name .en {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-articleProfileCard__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
}
@media (min-width: 768px) {
  .c-articleProfileCard__description {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

/* セミナーアーカイブ用 */
.c-article__content .section_only + .section_box {
  margin-top: 60px;
}
@media (min-width: 768px) {
  .c-article__content .section_only + .section_box {
    margin-top: 120px
  }
}
.c-article__content #teachers_intro ul li::before {
  display: none;
}
/* セミナーレポート用 */
.c-article__content section + section,
.c-article__content p + section {
  margin-top: 60px;
}
@media (min-width: 768px) {
  .c-article__content section + section,
  .c-article__content p + section {
    margin-top: 120px
  }
}
.c-article__content .sove_txt + .sove_txt {
  margin-top: 60px;
}
@media (min-width: 768px) {
  .c-article__content .sove_txt + .sove_txt {
    margin-top: 120px
  }
}
/* よくある質問用 */
.c-faqAccorion__content h2,.c-faqAccorion__content h3,.c-faqAccorion__content h4,.c-faqAccorion__content h5 {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-wrap: wrap;
}
.c-faqAccorion__content h2 {
  margin-bottom: 1.8em;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
}
@media (min-width: 768px) {
  .c-faqAccorion__content h2 {
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-faqAccorion__content h3 {
  margin-bottom: 2em;
  padding-bottom: 8px;
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-faqAccorion__content h3 {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-faqAccorion__content h4 {
  margin-bottom: 1.5em;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
}
@media (min-width: 768px) {
  .c-faqAccorion__content h4 {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-faqAccorion__content p {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-faqAccorion__content p {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-faqAccorion__content a {
  color: #005bac;
  color: var(--color-blue);
}
.c-faqAccorion__content em {
  font-style: normal;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-faqAccorion__content img {
  max-width: 100%;
}
.c-faqAccorion__content blockquote {
  position: relative;
  padding: 22px 16px;
  border-top: 1px solid #d4dddf;
  border-top: 1px solid var(--color-pale-aqua);
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
.c-faqAccorion__content blockquote::after {
  position: absolute;
  right: 0;
  bottom: -20px;
  content: "";
  width: 48px;
  height: 32px;
  background: #ffffff url("/common/image/ico/ico_blockquote.svg") top right no-repeat;
  background-size: 40px 32px;
}
.c-faqAccorion__content ul,.c-faqAccorion__content ol {
  list-style-type: none;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-faqAccorion__content ul,.c-faqAccorion__content ol {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-faqAccorion__content ul li, .c-faqAccorion__content ol li {
  margin-bottom: 1.7em;
}
.c-faqAccorion__content ul li:last-child, .c-faqAccorion__content ol li:last-child {
  margin-bottom: 0;
}
.c-faqAccorion__content ul > li {
  position: relative;
  padding-left: 33px !important;
  text-indent: 0 !important;
  margin-left: 0 !important;
}
.c-faqAccorion__content ul > li::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-faqAccorion__content ol {
  list-style-type: decimal-leading-zero;
}
.c-faqAccorion__content ol > li {
  position: relative;
  margin-left: 25px;
  padding-left: 8px;
}
.c-faqAccorion__content ol > li::marker {
  position: absolute;
  top: 0;
  left: 0;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-faqAccorion__content table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}
.c-faqAccorion__content table tbody th,
.c-faqAccorion__content table tbody td {
  padding: 12px 16px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: left;
}
@media (min-width: 768px) {
  .c-faqAccorion__content table tbody th,
  .c-faqAccorion__content table tbody td {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-faqAccorion__content table tbody th {
  min-width: 100px;
  background-color: #d4dddf;
  background-color: var(--color-pale-aqua);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .c-faqAccorion__content table tbody th {
    min-width: 180px
  }
}
.c-faqAccorion__content table tbody td {
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}
.c-faqAccorion__content table tbody tr:nth-child(even) td {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-faqAccorion__content table tbody tr:last-child th {
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
.c-faqAccorion__content .c-button {
  -webkit-text-decoration: none !important;
  text-decoration: none !important;
}
.c-faqAccorion__content .c-button--gradation {
  color: #ffffff !important;
  color: var(--color-white) !important;
}
/* 組み合わせ */
.c-faqAccorion__content * + p {
  margin-top: 1.5em;
}
.c-faqAccorion__content * + ol,
.c-faqAccorion__content * + ul,
.c-faqAccorion__content * + .c-button {
  margin-top: 20px;
}
.c-faqAccorion__content * + h3,
.c-faqAccorion__content * + h4,
.c-faqAccorion__content * + img,
.c-faqAccorion__content * + table,
.c-faqAccorion__content blockquote + * {
  margin-top: 60px;
}
@media (min-width: 768px) {
  .c-faqAccorion__content * + h3,
  .c-faqAccorion__content * + h4,
  .c-faqAccorion__content * + img,
  .c-faqAccorion__content * + table,
  .c-faqAccorion__content blockquote + * {
    margin-top: 120px
  }
}

/* 目次 */
.c-tableOfContents {
  overflow: hidden;
  margin-bottom: 80px;
  border: 1px solid #d8e8eb;
  border: 1px solid var(--color-soft-aqua);
  border-radius: 8px;
}
.c-tableOfContents__heading {
  position: relative;
  padding: 18px 50px 18px 24px;
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.c-tableOfContents__heading::before,
.c-tableOfContents__heading::after {
  content: "";
  position: absolute;
  width: 12px;
  height: 2px;
  top: 50%;
  right: 30px;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-tableOfContents__heading::after {
  transform: rotate(90deg);
  transform-origin: center center;
}
.c-tableOfContents__body {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-tableOfContents__contents {
  padding: 20px 24px;
}
.c-tableOfContentsList {
  list-style-type: decimal-leading-zero;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-tableOfContentsList {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-tableOfContentsList__item {
  position: relative;
  margin-left: 25px;
  margin-bottom: 1em;
  padding-left: 8px;
}
.c-tableOfContentsList__item:last-child {
  margin-bottom: 0;
}
.c-tableOfContentsList__item::marker {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-tableOfContentsList__item a {
  color: #005bac;
  color: var(--color-blue);
}
.c-tableOfContentsList__item a:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* ソリューション紹介 */
.c-solutionIntro {
  padding-bottom: 0 !important;
}
.c-solutionIntro .splide__arrows {
  width: 100% !important;
  top: 50%;
  z-index: 2;
  left: 0;
  transform: translate3d(0, -50%, 0);
  justify-content: space-between;
}
.c-solutionIntro .splide__arrow {
  width: 60px;
  height: 60px;
  border: 1px solid #005bac;
  border: 1px solid var(--color-blue);
  border-radius: 50%;
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-solutionIntro .splide__arrow::before {
  position: absolute;
  top: 50%;
  left: auto;
  right: auto;
  width: 22px;
  height: 11px;
  margin-top: -5px;
  margin-left: -8px;
  transform: none;
  background: url(/common/image/ico/ico_viewMoreCard_arrow_blue.svg) 0 0 no-repeat;
  background-size: contain;
  -webkit-mask-image: none;
  mask-image: none;
}
.c-solutionIntro .splide__arrow--prev {
  padding: 0;
  left: -16px;
  transform: rotate(180deg);
}
@media (min-width: 1024px) {
  .c-solutionIntro .splide__arrow--prev {
    left: -25px
  }
}
.c-solutionIntro .splide__arrow--prev svg {
  display: none;
}
.c-solutionIntro .splide__arrow--next {
  padding: 0;
  right: -16px;
}
@media (min-width: 1024px) {
  .c-solutionIntro .splide__arrow--next {
    right: -25px
  }
}
.c-solutionIntro .splide__arrow--next svg {
  display: none;
}
.c-solutionList {
  list-style-type: none;
}
.c-solutionList__item {
  max-width: 368px;
}

/* ==========================================================================//
// Parts Components（ヒーローエリア）
// ========================================================================== */
/* ヒーローエリア（見出し H1）
---------------------------------------------------------- */
.c-heroLevel2 {
  padding: 48px 16px 60px;
}
@media (min-width: 768px) {
  .c-heroLevel2 {
    padding: 80px 56px 120px;
    max-width: calc(1200px + 112px);
    margin: 0 auto
  }
}
.c-heroLevel2__subTitle {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding-left: 18px;
  background: url('/common/image/ico/ico_hero_arrow.svg') no-repeat left center / 12px 12px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  letter-spacing: 0.2em;
  color: #005bac;
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .c-heroLevel2__subTitle {
    padding-left: 32px;
    margin-left: 4px;
    background-size: 16px 16px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-heroLevel2__title {
  display: inline-block;
  vertical-align: middle;
  margin-top: 8px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 2.5rem;
  font-size: var(--font-size-40);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (min-width: 768px) {
  .c-heroLevel2__title {
    margin-top: 20px;
    font-size: 6rem;
    font-size: var(--font-size-96)
  }
}
.c-heroLevel2__description {
  margin-top: 40px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 2;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-heroLevel2__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

/* ヒーローエリア（見出し H1 + テキスト・ボタンなど）
---------------------------------------------------------- */
.c-heroLevel3 {
  overflow: hidden;
  position: relative;
  padding: 48px 16px 60px;
}
@media (min-width: 768px) {
  .c-heroLevel3 {
    max-width: 1320px;
    margin: 0 auto;
    padding: 96px 60px 90px
  }
}
.c-heroLevel3__head {
  position: relative;
  grid-area: head;
}
.c-heroLevel3__title {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  padding-left: 18px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  letter-spacing: 0.1em;
  text-wrap: wrap;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (min-width: 768px) {
  .c-heroLevel3__title {
    padding-left: 32px;
    font-size: 2.5rem;
    font-size: var(--font-size-40)
  }
}
.c-heroLevel3__title::before {
  content: '';
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 12px;
  height: 12px;
  background: url('/common/image/ico/ico_hero_arrow.svg') 0 0 no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .c-heroLevel3__title::before {
    width: 16px;
    height: 14px
  }
}
.c-heroLevel3__title--blue {
  background: transparent;
  -webkit-text-fill-color: #005bac;
  -webkit-text-fill-color: var(--color-blue);
  color: #005bac;
  color: var(--color-blue);
}
/* .c-heroLevel3__title--blue::before {
  background: #005bac;
  background: var(--color-blue);
} */
.c-heroLevel3__subCopy {
  margin-bottom: 15px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.2;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-heroLevel3__subCopy {
    margin-bottom: 17px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-heroLevel3__description {
  grid-area: description;
  margin-top: 45px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 2;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-heroLevel3__description {
    width: min(520px, 100%);
    margin-top: 0;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-heroLevel3__description em {
  font-style: normal;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #005bac;
  color: var(--color-blue);
}
.c-heroLevel3__description strong {
  padding: 0.5rem;
  background-color: #005bac;
  background-color: var(--color-blue);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #ffffff;
  color: var(--color-white);
}
.c-heroLevel3__note {
  display: block;
  margin-top: 12px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 2;
  color: rgba(77, 77, 77, 0.5);
  color: rgba(var(--color-default-rgb), 0.5);
}
@media (min-width: 768px) {
  .c-heroLevel3__note {
    grid-area: note;
    font-size: 0.8125rem;
    font-size: var(--font-size-13)
  }
}
.c-heroLevel3__buttonList {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-heroLevel3__buttonList {
    grid-area: buttonList;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 48px
  }
}
.c-heroLevel3__linkNav {
  margin-top: 100px;
  margin-right: calc(50% - 50vw);
}
@media (min-width: 768px) {
  .c-heroLevel3__linkNav {
    margin-right: 0
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3__linkNav {
    display: grid;
    justify-self: end;
    grid-area: linkNav;
    width: min(640px, calc((640 / 1440) * 100vw));
    margin-top: 0
  }
}
/* has指定 */
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__description) {
    display: block
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__description) {
    display: flex;
    justify-content: space-between;
    gap: 80px
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__description) .c-heroLevel3__title {
    flex: 1
  }
}
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__description) .c-heroLevel3__description {
    margin-top: 90px
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__description) .c-heroLevel3__description {
    margin-top: 0
  }
}
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__buttonList) {
    display: block
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__buttonList) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0px 80px;
    gap: 0px 80px;
    grid-template-areas:
          'head description'
          'head note'
          'buttonList note'
  }
}
@media(min-width: 1200px) {
  .c-heroLevel3:has(.c-heroLevel3__buttonList) {
    grid-template-columns: 600px 1fr
  }
}
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__buttonList) .c-heroLevel3__description {
    margin-top: 90px
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__buttonList) .c-heroLevel3__description {
    margin-top: 0
  }
}
.c-heroLevel3:has(.c-heroLevel3__buttonList) .c-heroLevel3__buttonItem {
  width: min(288px, 100%);
}
.c-heroLevel3:has(.c-heroLevel3__linkNav) {
  padding: 80px 16px 60px 16px;
}
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__linkNav) {
    display: block;
    padding: 72px 16px 70px 16px
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__linkNav) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto auto;
    align-items: start;
    grid-gap: 0px 80px;
    gap: 0px 80px;
    grid-template-areas:
          'head linkNav'
          'description linkNav'
          'note linkNav'
          'buttonList linkNav';
    padding: 72px 0 70px 120px
  }
}
.c-heroLevel3:has(.c-heroLevel3__linkNav) .c-heroLevel3__description {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__linkNav) .c-heroLevel3__description {
    margin-top: 80px
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3:has(.c-heroLevel3__linkNav) .c-heroLevel3__description {
    margin-top: 40px
  }
}
.c-heroLevel3:has(.c-heroLevel3__linkNav) .c-heroLevel3__buttonItem {
  width: 100%;
  max-width: 320px;
}
@media (min-width: 768px) {
  .c-heroLevel3:has(.c-heroLevel3__linkNav) .c-heroLevel3__buttonItem {
    max-width: 400px
  }
}
.c-heroLinkNav {
  padding: 20px 16px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  border-radius: 6px 0 0 6px;
}
@media (min-width: 768px) {
  .c-heroLinkNav {
    padding: 36px 36px 84px 36px;
    background-image: url("/common/image/bg/bg_linkNav_frame.svg");
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 8px 0 0 8px
  }
}
.c-heroLinkNav__title {
  display: flex;
  align-items: flex-end;
  gap: 24px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .c-heroLinkNav__title {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-heroLinkNav__title > span:nth-child(1) {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
}
@media (min-width: 768px) {
  .c-heroLinkNav__title > span:nth-child(1) {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.c-heroLinkNav__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 12px;
  gap: 12px;
  margin-top: 24px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-heroLinkNav__list {
    margin-top: 32px
  }
}
.c-heroLinkNav__item {
  display: grid;
}
.c-heroLinkNav__link {
  position: relative;
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  width: 100%;
  padding: 16px 10px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  border-radius: 8px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  color: #ffffff;
  color: var(--color-white);
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (min-width: 768px) {
  .c-heroLinkNav__link {
    padding: 23px 18px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-heroLinkNav__link::before {
  content: '';
}
.c-heroLinkNav__link::after {
  content: url('/common/image/ico/ico_linkNav_arrow.svg');
  justify-self: end;
  align-self: center;
  width: 12px;
  height: 12px;
}
@media (min-width: 768px) {
  .c-heroLinkNav__link::after {
    width: 14px;
    height: 14px
  }
}
.c-heroLinkNav__link:where(:link):hover, .c-heroLinkNav__link:where(:visited):hover, .c-heroLinkNav__link:where(area[href]):hover {
  opacity: 0.5;
  transition: all 0.3s ease;
}
.c-heroLinkNav__link:where(:-moz-any-link):hover {
  opacity: 0.5;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.c-heroLinkNav__link:where(:any-link):hover {
  opacity: 0.5;
  transition: all 0.3s ease;
}
/* 外付け枠 */
.c-heroLevel3Wrap {
  max-width: 1240px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .c-heroLevel3Wrap .c-heroLevel3 {
    padding-left: 20px;
    padding-right: 20px
  }
}
.c-heroLevel3Wrap.c-heroLevel3Wrap--mulpay {
  max-width: 1440px;
}
@media (min-width: 1024px) {
  .c-heroLevel3Wrap.c-heroLevel3Wrap--mulpay {
    display: flex;
    justify-content: flex-end
  }
}
@media (min-width: 1024px) {
  .c-heroLevel3Wrap.c-heroLevel3Wrap--mulpay .c-heroLevel3 {
    padding-right: 0;
    margin: 0;
    max-width: 1370px;
    grid-template-columns: auto auto;
    grid-gap: 0px 60px
  }
}
.c-heroLevel3Wrap.c-heroLevel3Wrap--mulpay .c-heroLevel3__title {
  text-wrap: wrap;
}

@media (min-width: 1024px) {

  .c-heroLevel3.c-heroLevel3--service:has(.c-heroLevel3__buttonList) {
    grid-template-areas:
      'head description'
      'buttonList description'
  }
}
@media (min-width: 768px) {
  .c-heroLevel3.c-heroLevel3--service .c-heroLevel3__buttonList {
    align-items: flex-start;
    margin-top: 90px
  }
}

/* ==========================================================================//
// Parts Components（記事・固定ページテンプレート向け）
// ========================================================================== */
/* 見出し
---------------------------------------------------------- */
/* 黒文字 PC時 フォントサイズ36px */
.c-heading-type1 {
  margin-bottom: 40px;
  color: #455459;
  color: var(--color-gray);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1.5;
  text-wrap: wrap;
}
@media (min-width: 768px) {
  .c-heading-type1 {
    margin-bottom: 60px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
/* 黒文字・下線あり PC時 フォントサイズ28px */
.c-heading-type2 {
  margin-bottom: 30px;
  padding-bottom: 5px;
  color: #455459;
  color: var(--color-gray);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1rem;
  font-size: var(--font-size-16);
  line-height: 1.5;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  text-wrap: wrap;
}
@media (min-width: 768px) {
  .c-heading-type2 {
    margin-bottom: 40px;
    padding-bottom: 10px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.c-heading-type2.c-heading-type2--arrowLink a {
  display: block;
  position: relative;
  padding-right: 40px;
  color: #455459;
  color: var(--color-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (min-width: 768px) {
  .c-heading-type2.c-heading-type2--arrowLink a {
    padding-right: 50px
  }
}
.c-heading-type2.c-heading-type2--arrowLink a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-heading-type2.c-heading-type2--arrowLink a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 30px;
  height: 30px;
  background: transparent url(/common/image/ico/ico_viewMoreCard_arrow_blue.svg) no-repeat center / 15px 8px;
  border: 1px solid #005bac;
  border: 1px solid var(--color-blue);
  border-radius: 50%;
}
@media (min-width: 768px) {
  .c-heading-type2.c-heading-type2--arrowLink a::after {
    width: 40px;
    height: 40px;
    background-size: 18px 10px
  }
}

/* 黒文字 PC時 フォントサイズ18px */
.c-heading-type3 {
  margin-bottom: 15px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.5;
  text-wrap: wrap;
}
@media (min-width: 768px) {
  .c-heading-type3 {
    margin-bottom: 20px;
    font-size: 1.125rem;
    font-size: var(--font-size-18)
  }
}

/* 黒文字 PC時 フォントサイズ16px */
.c-heading-type4 {
  margin-bottom: 15px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-wrap: wrap;
}
@media (min-width: 768px) {
  .c-heading-type4 {
    margin-bottom: 20px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}

/* テキスト
---------------------------------------------------------- */
.c-text {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.75;
}
@media (min-width: 768px) {
  .c-text {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-text em {
  font-style: normal;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-text a {
  color: #005bac;
  color: var(--color-blue);
}
.c-text a:hover{
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-text.c-text--note {
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-text.c-text--note {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}

/* リスト
---------------------------------------------------------- */
/* ol list */
.c-list-number {
  list-style-type: decimal-leading-zero;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-list-number {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-list-number > li {
  position: relative;
  margin-left: 25px;
  margin-bottom: 1.5em;
  padding-left: 8px;
}
.c-list-number > li:last-child {
  margin-bottom: 0;
}
.c-list-number > li::marker {
  position: absolute;
  top: 0;
  left: 0;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
/* ul list */
.c-list-disc {
  list-style-type: none;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-list-disc {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-list-disc > li {
  position: relative;
  padding-left: 33px;
  margin-bottom: 1.5em;
}
.c-list-disc > li:last-child {
  margin-bottom: 0;
}
.c-list-disc > li::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-list-disc.c-list-disc--row > li {
  margin-bottom: 1em;
}
.c-list-disc.c-list-disc--row > li:last-child {
  margin-bottom: 0;
}

/* 表
---------------------------------------------------------- */
.c-table-type1 {
  width: 100%;
  border-collapse: collapse;
  color: #4d4d4d;
  color: var(--color-default);
}
.c-table-type1 th,
.c-table-type1 td {
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  padding: 16px 16px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: left;
  word-break: break-all;
}
@media (min-width: 768px) {
  .c-table-type1 th,
  .c-table-type1 td {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-table-type1 th {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  border-top: 1px solid #d8e8eb;
  border-top: 1px solid var(--color-soft-aqua);
  border-right: 1px solid #ffffff;
  border-right: 1px solid var(--color-white);
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
  border-left: 1px solid #d8e8eb;
  border-left: 1px solid var(--color-soft-aqua);
}
.c-table-type1 td {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-table-type1 tbody > tr > td {
  border-top: none;
}
.c-table-type1 tbody > tr > td:nth-child(even) {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}

.c-table-type2 {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #d8e8eb;
  border: 1px solid var(--color-soft-aqua);
  color: #4d4d4d;
  color: var(--color-default);
}

.c-table-type2 thead th {
  padding: 16px 16px;
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: left;
  border-left: 1px solid #ffffff;
  border-left: 1px solid var(--color-white);
  word-break: break-all;
}

@media (min-width: 768px) {

  .c-table-type2 thead th {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

.c-table-type2 thead th:first-child {
  border-left: 1px solid #a9babf;
  border-left: 1px solid var(--color-gray-medium-light);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
}

.c-table-type2 tbody th,
.c-table-type2 tbody td {
  padding: 16px 16px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: left;
  word-break: break-all;
}

@media (min-width: 768px) {

  .c-table-type2 tbody th,
  .c-table-type2 tbody td {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

.c-table-type2 tbody th.textRight, .c-table-type2 tbody td.textRight {
  text-align: right;
}

.c-table-type2 tbody th {
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  border-left: 1px solid #ffffff;
  border-left: 1px solid var(--color-white);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.c-table-type2 tbody th.boderLeftNone {
  border-left: none;
}

.c-table-type2 tbody td {
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 1px solid #d8e8eb;
  border: 1px solid var(--color-soft-aqua);
}

.c-table-type2 tbody tr:nth-child(even) td {
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

.c-table-type2 tbody tr:last-child th {
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}

.c-table-area {
  width: 100%;
}
@media(max-width: 767px) {
  .c-table-area.c-table-area--scroll {
    position: relative;
  }
  .c-table-area.c-table-area--scroll::before,
  .c-table-area.c-table-area--scroll::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    width: 30px;
    height: 100%;
    background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.35)) 0 -34px / 30px 100%;
    background-repeat: repeat-y;
    background-attachment: scroll;
  }
  @media (min-width: 800px) {
    .c-table-area.c-table-area--scroll::before,
    .c-table-area.c-table-area--scroll::after {
      display: none
    }
  }
  .c-table-area.c-table-area--scroll::before {
    left: 0;
  }
  .c-table-area.c-table-area--scroll::after {
    right: 0;
    transform: rotate(180deg);
  }
  .c-table-area.c-table-area--scroll .c-table-area__inner {
    overflow-x: auto;
    padding-bottom: 20px;
  }
  .c-table-area.c-table-area--scroll .c-table-type1,
  .c-table-area.c-table-area--scroll .c-table-type2 {
    min-width: 800px;
    table-layout: inherit;
  }
}
.c-table-area--scroll .simplebar-scrollbar {
  height: 100%;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.c-table-area--scroll .simplebar-scrollbar:before {
  display: none;
}
.c-table-area--scroll .simplebar-track {
  background: rgba(0, 0, 0, 0.4);
  height: 8px;
}

/* １枚画像
---------------------------------------------------------- */
.c-image img {
  width: 100%;
  max-width: 100%;
}

/* 引用 blockquote
---------------------------------------------------------- */
.c-blockquote-type1 {
  position: relative;
  padding: 22px 16px;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}
@media (min-width: 768px) {
  .c-blockquote-type1 {
    padding: 24px 24px
  }
}
.c-blockquote-type1::after {
  position: absolute;
  right: -2px;
  bottom: -10px;
  content: "";
  width: 24px;
  height: 18px;
  background: #ffffff url("/common/image/ico/ico_blockquote.svg") bottom right no-repeat;
  background-size: 20px 16px;
}
@media (min-width: 768px) {
  .c-blockquote-type1::after {
    width: 40px;
    height: 32px;
    background-size: 40px 32px
  }
}

.c-blockquote-type2 {
  position: relative;
  padding: 22px 16px;
  border-top: 1px solid #d4dddf;
  border-top: 1px solid var(--color-pale-aqua);
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}

@media (min-width: 768px) {

  .c-blockquote-type2 {
    padding: 24px 24px
  }
}

.c-blockquote-type2::after {
  position: absolute;
  right: -2px;
  bottom: -10px;
  content: "";
  width: 24px;
  height: 18px;
  background: #ffffff url("/common/image/ico/ico_blockquote.svg") bottom right no-repeat;
  background-size: 20px 16px;
}

@media (min-width: 768px) {

  .c-blockquote-type2::after {
    width: 40px;
    height: 32px;
    background-size: 40px 32px
  }
}


/* セクション
---------------------------------------------------------- */
.c-section + .c-section {
  margin-top: 80px;
}

/* カラム
---------------------------------------------------------- */
.c-column {
  overflow: hidden;
}
@media (min-width: 768px) {
  .c-column {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row
  }
}
.c-column__item {
  margin-bottom: 40px;
}
.c-column__item:last-child {
  margin-bottom: 0;
}
.c-columnCard__image {
  margin-bottom: 20px;
}
.c-columnCard__image img {
  width: 100%;
  max-width: 100%;
}
.c-columnCard__title {
  margin-bottom: 15px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-columnCard__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-columnCard__title a {
  color: #005bac;
  color: var(--color-blue);
}
.c-columnCard__title a:hover{
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-columnCard__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-columnCard__description {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

@media (min-width: 768px) {
  .c-column.c-column--threeEqual {
    margin-left: -24px;
    margin-right: -24px;
  }
  .c-column.c-column--threeEqual .c-column__item {
    width: 33.33%;
    padding: 0 24px;
  }
  .c-column.c-column--threeEqual .c-column__item:nth-child(3n-1) {
    width: 33.34%;
  }

  .c-column.c-column--twoEqual {
    margin-left: -40px;
    margin-right: -40px;
  }
  .c-column.c-column--twoEqual .c-column__item {
    width: 50%;
    padding: 0 40px;
  }
  .c-column.c-column--leftImage > .c-column__item:nth-child(1) {
    width: 200px;
    margin: 0 16px 0 0;
  }
  .c-column.c-column--leftImage > .c-column__item:nth-child(2) {
    flex: 1;
  }
}

/* 余白感調整
---------------------------------------------------------- */
.c-articleContents * + .c-heading-type2 {
  margin-top: 80px;
}
.c-articleContents * + .c-text {
  margin-top: 2em;
}
.c-articleContents .c-text + .c-text {
  margin-top: 2em;
}
.c-articleContents .c-heading-type3 + .c-text {
  margin-top: 1.5em;
}
.c-articleContents * + .c-list-number,
.c-articleContents * + .c-list-disc {
  margin-top: 2em;
}
.c-articleContents * + .c-table-type1,
.c-articleContents * + .c-table-type2 {
  margin-top: 2em;
}
.c-articleContents * + .c-blockquote-type1,
.c-articleContents * + .c-blockquote-type2 {
  margin-top: 2em;
}
.c-articleContents * + .c-column {
  margin-top: 2em;
}
.c-articleContents * + .c-image,
.c-articleContents * + p > img {
  margin-top: 2em;
}


/* 汎用クラス */
.u-mt40 {
  margin-top: 40px !important;
}
.u-mt50 {
  margin-top: 50px !important;
}
.u-mt60 {
  margin-top: 60px !important;
}
.u-mt80 {
  margin-top: 80px !important;
}

/* スクロール可能パーツ */
.js-scrollable .scroll-hint-icon {
  padding: 0;
  width: 144px;
  height: 144px;
  top: calc(50% - 48px);
  background: transparent;
}
.js-scrollable .scroll-hint-icon::before {
  width: 144px;
  height: 144px;
  background: url("/common/image/ico/ico_scrollHint.png") 0 0 no-repeat;
  background-size: contain;
}
.js-scrollable .scroll-hint-icon::after {
  display: none;
}
.js-scrollable .scroll-hint-icon .scroll-hint-text {
  display: none;
}

.c-table-sp .c-table-type1,
.c-table-sp .c-table-type2 {
  min-width: 600px;
}

.c-table-sp .scroll-hint-icon {
  padding: 0;
  width: 144px;
  height: 144px;
  top: calc(50% - 48px);
  background: transparent;
}

.c-table-sp .scroll-hint-icon::before {
  width: 144px;
  height: 144px;
  background: url("/common/image/ico/ico_scrollHint.png") 0 0 no-repeat;
  background-size: contain;
}

.c-table-sp .scroll-hint-icon::after {
  display: none;
}

.c-table-sp .scroll-hint-icon .scroll-hint-text {
  display: none;
}

/* ニュース詳細限定
---------------------------------------------------------- */
.c-articleContents--news h2,.c-articleContents--news h3,.c-articleContents--news h4,.c-articleContents--news h5 {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-wrap: wrap;
}
.c-articleContents--news h2 {
  margin-bottom: 1.8em;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
}
@media (min-width: 768px) {
  .c-articleContents--news h2 {
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-articleContents--news h3 {
  margin-bottom: 2em;
  padding-bottom: 8px;
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-articleContents--news h3 {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-articleContents--news h4 {
  margin-bottom: 1.5em;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
}
@media (min-width: 768px) {
  .c-articleContents--news h4 {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-articleContents--news h5 {
  margin-bottom: 1.5em;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
}
@media (min-width: 768px) {
  .c-articleContents--news h5 {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-articleContents--news h6 {
  margin-bottom: 1.5em;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
}
@media (min-width: 768px) {
  .c-articleContents--news h6 {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-articleContents--news p {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.75;
}
@media (min-width: 768px) {
  .c-articleContents--news p {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-articleContents--news p em {
  font-style: normal;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-articleContents--news p a {
  color: #005bac;
  color: var(--color-blue);
}
.c-articleContents--news p a:hover{
  -webkit-text-decoration: none;
  text-decoration: none;
}
/* ol list */
.c-articleContents--news ol {
  list-style-type: decimal-leading-zero;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-articleContents--news ol {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-articleContents--news ol > li {
  position: relative;
  margin-left: 25px;
  margin-bottom: 1.5em;
  padding-left: 8px;
}
.c-articleContents--news ol > li:last-child {
  margin-bottom: 0;
}
.c-articleContents--news ol > li::marker {
  position: absolute;
  top: 0;
  left: 0;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-articleContents--news ol > li a {
  color: #005bac;
  color: var(--color-blue);
}
.c-articleContents--news ol > li a:hover{
  -webkit-text-decoration: none;
  text-decoration: none;
}
/* ul list */
.c-articleContents--news ul {
  list-style-type: none;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-articleContents--news ul {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-articleContents--news ul > li {
  position: relative;
  padding-left: 33px;
  margin-bottom: 1.5em;
}
.c-articleContents--news ul > li:last-child {
  margin-bottom: 0;
}
.c-articleContents--news ul > li::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-articleContents--news ul > li a {
  color: #005bac;
  color: var(--color-blue);
}
.c-articleContents--news ul > li a:hover{
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-articleContents--news table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #d8e8eb;
  border: 1px solid var(--color-soft-aqua);
  color: #4d4d4d;
  color: var(--color-default);
}
.c-articleContents--news table thead th {
  padding: 16px 16px;
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: left;
  border-left: 1px solid #ffffff;
  border-left: 1px solid var(--color-white);
  word-break: break-all;
}
@media (min-width: 768px) {
  .c-articleContents--news table thead th {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-articleContents--news table thead th:first-child {
  border-left: 1px solid #a9babf;
  border-left: 1px solid var(--color-gray-medium-light);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
}
.c-articleContents--news table tbody th,
.c-articleContents--news table tbody td {
  padding: 16px 16px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: left;
  word-break: break-all;
}
@media (min-width: 768px) {
  .c-articleContents--news table tbody th,
  .c-articleContents--news table tbody td {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-articleContents--news table tbody th.textRight, .c-articleContents--news table tbody td.textRight {
  text-align: right;
}
.c-articleContents--news table tbody th {
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  border-left: 1px solid #ffffff;
  border-left: 1px solid var(--color-white);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-articleContents--news table tbody th.boderLeftNone {
  border-left: none;
}
.c-articleContents--news table tbody td {
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 1px solid #d8e8eb;
  border: 1px solid var(--color-soft-aqua);
}
.c-articleContents--news table tbody tr:nth-child(even) td {
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
.c-articleContents--news table tbody tr:last-child th {
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}
/* 余白間 */
.c-articleContents--news * + h3 {
  margin-top: 80px;
}
.c-articleContents--news * + p {
  margin-top: 2em;
}
.c-articleContents--news p + p {
  margin-top: 2em;
}
.c-articleContents--news h4 + p {
  margin-top: 1.5em;
}
.c-articleContents--news * + ol,
.c-articleContents--news * + ul {
  margin-top: 2em;
}
.c-articleContents--news * + table {
  margin-top: 2em;
}
.c-articleContents--news * + blockquote {
  margin-top: 2em;
}
.c-articleContents--news * + p > img {
  margin-top: 2em;
}
/* 旧CSS
---------------------------------------------------------- */
.c-articleContents--news .txt_01.right {
  text-align: right;
}
.c-articleContents--news .txt_01 > img {
  display: inline-block;
  vertical-align: bottom;
}
.c-articleContents--news .bs-docs-section-half + .bs-docs-section-half,
.c-articleContents--news .bs-docs-section-half + .bs-docs-section {
  margin-top: 80px;
}
.c-articleContents--news .bs-docs-section > div + div {
  margin-top: 80px;
}
.c-articleContents--news dl.list_table_04 {
  overflow: hidden;
}
.c-articleContents--news dl.list_table_04 > dt {
  position: relative;
  float: left;
  margin-right: 0.5em;
}
.c-articleContents--news dl.list_table_04 > dt::after {
  display: inline-block;
  content: "：";
}
.c-articleContents--news dl.list_table_04 > dd {
  overflow: hidden;
}


/* ==========================================================================//
// Parts Components（保留中＊＊＊＊＊＊＊＊＊＊＊＊＊＊）
// ========================================================================== */
/* 黒文字・下線あり（基本 H3）TODO: 廃棄予定
---------------------------------------------------------- */
.c-sectionTitleLevel3 {
  padding-bottom: 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-sectionTitleLevel3 {
    padding-bottom: 8px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}


/* ==========================================================================//
// Parts Components（ボタン）
// ========================================================================== */
/* 基本ボタン
---------------------------------------------------------- */
.c-button {
  --_bg-color: var(--bg-color, var(--color-white));
  --_color: var(--color, var(--color-gray));
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 20px 12px 20px 28px;
  background-color: #ffffff;
  background-color: var(--_bg-color);
  border: none;
  border-radius: 84px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #455459;
  color: var(--_color);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .c-button:where(:link, :enabled) .c-button__icon, .c-button:where(:visited, :enabled) .c-button__icon, .c-button:where(area[href], :enabled) .c-button__icon {
    transition: all 0.3s ease;
  }
  .c-button:where(:-moz-any-link, :enabled) .c-button__icon {
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .c-button:where(:any-link, :enabled) .c-button__icon {
    transition: all 0.3s ease;
  }
  .c-button:where(:link, :enabled) .c-button__icon::before, .c-button:where(:visited, :enabled) .c-button__icon::before, .c-button:where(area[href], :enabled) .c-button__icon::before {
    transition: all 0.2s ease;
  }
  .c-button:where(:-moz-any-link, :enabled) .c-button__icon::before {
    -moz-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .c-button:where(:any-link, :enabled) .c-button__icon::before {
    transition: all 0.2s ease;
  }
  .c-button:where(:link, :enabled):hover, .c-button:where(:visited, :enabled):hover, .c-button:where(area[href], :enabled):hover {
    box-shadow: 8px 8px 16px 0 rgba(69, 84, 89, 0.32);
    box-shadow: 8px 8px 16px 0 rgba(var(--color-gray-rgb), 0.32);
  }
  .c-button:where(:-moz-any-link, :enabled):hover {
    box-shadow: 8px 8px 16px 0 rgba(69, 84, 89, 0.32);
    box-shadow: 8px 8px 16px 0 rgba(var(--color-gray-rgb), 0.32);
  }
  .c-button:where(:any-link, :enabled):hover {
    box-shadow: 8px 8px 16px 0 rgba(69, 84, 89, 0.32);
    box-shadow: 8px 8px 16px 0 rgba(var(--color-gray-rgb), 0.32);
  }
  .c-button:where(:link, :enabled):hover .c-button__icon, .c-button:where(:visited, :enabled):hover .c-button__icon, .c-button:where(area[href], :enabled):hover .c-button__icon {
    background-color: transparent;
    box-shadow: none;
  }
  .c-button:where(:-moz-any-link, :enabled):hover .c-button__icon {
    background-color: transparent;
    box-shadow: none;
  }
  .c-button:where(:any-link, :enabled):hover .c-button__icon {
    background-color: transparent;
    box-shadow: none;
  }
  .c-button:where(:link, :enabled):hover .c-button__icon::before, .c-button:where(:visited, :enabled):hover .c-button__icon::before, .c-button:where(area[href], :enabled):hover .c-button__icon::before {
    width: 46px;
    height: 12px;
    -webkit-mask-image: url('/common/image/ico/ico_button_arrow_on.svg');
    mask-image: url('/common/image/ico/ico_button_arrow_on.svg');
  }
  .c-button:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    width: 46px;
    height: 12px;
    mask-image: url('/common/image/ico/ico_button_arrow_on.svg');
  }
  .c-button:where(:any-link, :enabled):hover .c-button__icon::before {
    width: 46px;
    height: 12px;
    -webkit-mask-image: url('/common/image/ico/ico_button_arrow_on.svg');
    mask-image: url('/common/image/ico/ico_button_arrow_on.svg');
  }
}
.c-button:has(.c-button__heading) {
  min-width: 260px;
}
@media (min-width: 768px) {
  .c-button:has(.c-button__heading) {
    font-size: 1.125rem;
    font-size: var(--font-size-18)
  }
}
.c-button:not(:disabled) {
  cursor: pointer;
}
.c-button__content {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  align-items: center;
  gap: 4px;
  flex: 1;
}
@media (min-width: 768px) {
  .c-button__content {
    gap: 6px
  }
}
.c-button__heading {
  text-align: center;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-button__heading {
    font-size: 0.8125rem;
    font-size: var(--font-size-13)
  }
}
.c-button__text {
  flex: 1;
  text-align: left;
}
.c-button__icon {
  position: relative;
  width: 32px;
  height: 32px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
  border-radius: 26px;
  box-shadow: 3px 3px 6px 0px rgba(23, 81, 99, 0.12);
  box-shadow: 3px 3px 6px 0px rgba(var(--color-dark-teal-rgb), 0.12);
}
@media (min-width: 768px) {
  .c-button__icon {
    width: 40px;
    height: 40px;
    border-radius: 40px;
    box-shadow: 4px 4px 8px 0px rgba(23, 81, 99, 0.48);
    box-shadow: 4px 4px 8px 0px rgba(var(--color-dark-teal-rgb), 0.48)
  }
}
.c-button__icon::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 12px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-image: url('/common/image/ico/ico_button_arrow.svg');
  mask-image: url('/common/image/ico/ico_button_arrow.svg');
}
@media (min-width: 768px) {
  .c-button__icon::before {
    width: 20px;
    height: 12px
  }
}
/* 色パターン  */
.c-button--white {
  --bg-color: var(--color-white);
  --color: var(--color-gray);
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}
.c-button--white:has(.c-button__icon) .c-button__icon::before {
  background-color: #455459;
  background-color: var(--color-gray);
}
@media (hover: hover) {
  .c-button--white:where(:link, :enabled):hover, .c-button--white:where(:visited, :enabled):hover, .c-button--white:where(area[href], :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--white:where(:-moz-any-link, :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--white:where(:any-link, :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--white:where(:link, :enabled):hover .c-button__icon::before, .c-button--white:where(:visited, :enabled):hover .c-button__icon::before, .c-button--white:where(area[href], :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
  .c-button--white:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
  .c-button--white:where(:any-link, :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
}
.c-button--gray {
  --bg-color: var(--color-gray);
  --color: var(--color-white);
  border: 1px solid var(--border-color-gray);
}
.c-button--gray:has(.c-button__icon) .c-button__icon::before {
  background-color: #455459;
  background-color: var(--color-gray);
}
@media (hover: hover) {
  .c-button--gray:where(:link, :enabled):hover, .c-button--gray:where(:visited, :enabled):hover, .c-button--gray:where(area[href], :enabled):hover {
    --bg-color: var(--color-white);
    --color: var(--color-gray);
    border: 1px solid #ffffff;
    border: 1px solid var(--color-white);
  }
  .c-button--gray:where(:-moz-any-link, :enabled):hover {
    --bg-color: var(--color-white);
    --color: var(--color-gray);
    border: 1px solid #ffffff;
    border: 1px solid var(--color-white);
  }
  .c-button--gray:where(:any-link, :enabled):hover {
    --bg-color: var(--color-white);
    --color: var(--color-gray);
    border: 1px solid #ffffff;
    border: 1px solid var(--color-white);
  }
  .c-button--gray:where(:link, :enabled):hover .c-button__icon::before, .c-button--gray:where(:visited, :enabled):hover .c-button__icon::before, .c-button--gray:where(area[href], :enabled):hover .c-button__icon::before {
    background-color: #455459;
    background-color: var(--color-gray);
  }
  .c-button--gray:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    background-color: #455459;
    background-color: var(--color-gray);
  }
  .c-button--gray:where(:any-link, :enabled):hover .c-button__icon::before {
    background-color: #455459;
    background-color: var(--color-gray);
  }
}
.c-button--blue {
  --bg-color: var(--color-blue);
  --color: var(--color-white);
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}
.c-button--blue:has(.c-button__icon) .c-button__icon {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-button--blue:has(.c-button__icon) .c-button__icon::before {
  background-color: #005bac;
  background-color: var(--color-blue);
}
@media (hover: hover) {
  .c-button--blue:where(:link, :enabled):hover, .c-button--blue:where(:visited, :enabled):hover, .c-button--blue:where(area[href], :enabled):hover {
    --bg-color: var(--color-white);
    --color: var(--color-blue);
    border: 1px solid #005bac;
    border: 1px solid var(--color-blue);
  }
  .c-button--blue:where(:-moz-any-link, :enabled):hover {
    --bg-color: var(--color-white);
    --color: var(--color-blue);
    border: 1px solid #005bac;
    border: 1px solid var(--color-blue);
  }
  .c-button--blue:where(:any-link, :enabled):hover {
    --bg-color: var(--color-white);
    --color: var(--color-blue);
    border: 1px solid #005bac;
    border: 1px solid var(--color-blue);
  }
  .c-button--blue:where(:link, :enabled):hover .c-button__icon::before, .c-button--blue:where(:visited, :enabled):hover .c-button__icon::before, .c-button--blue:where(area[href], :enabled):hover .c-button__icon::before {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
  .c-button--blue:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
  .c-button--blue:where(:any-link, :enabled):hover .c-button__icon::before {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
}
.c-button--whiteWithGradation {
  --bg-color: var(--color-white);
  --color: var(--color-gray);
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}
.c-button--whiteWithGradation:has(.c-button__icon) .c-button__icon {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.c-button--whiteWithGradation:has(.c-button__icon) .c-button__icon::before {
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (hover: hover) {
  .c-button--whiteWithGradation:where(:link, :enabled):hover, .c-button--whiteWithGradation:where(:visited, :enabled):hover, .c-button--whiteWithGradation:where(area[href], :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--whiteWithGradation:where(:-moz-any-link, :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--whiteWithGradation:where(:any-link, :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--whiteWithGradation:where(:link, :enabled):hover .c-button__icon, .c-button--whiteWithGradation:where(:visited, :enabled):hover .c-button__icon, .c-button--whiteWithGradation:where(area[href], :enabled):hover .c-button__icon {
    background: transparent;
  }
  .c-button--whiteWithGradation:where(:-moz-any-link, :enabled):hover .c-button__icon {
    background: transparent;
  }
  .c-button--whiteWithGradation:where(:any-link, :enabled):hover .c-button__icon {
    background: transparent;
  }
  .c-button--whiteWithGradation:where(:link, :enabled):hover .c-button__icon::before, .c-button--whiteWithGradation:where(:visited, :enabled):hover .c-button__icon::before, .c-button--whiteWithGradation:where(area[href], :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
  .c-button--whiteWithGradation:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
  .c-button--whiteWithGradation:where(:any-link, :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
}
.c-button--gradation {
  --color: var(--color-white);
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}
.c-button--gradation:has(.c-button__icon) .c-button__icon {
  background-color: #ffffff;
  background-color: var(--color-white);
  box-shadow: 4px 4px 8px 0px rgba(23, 81, 99, 0.24);
  box-shadow: 4px 4px 8px 0px rgba(var(--color-dark-teal-rgb), 0.24);
}
.c-button--gradation:has(.c-button__icon) .c-button__icon::before {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
@media (hover: hover) {
  .c-button--gradation:where(:link, :enabled):hover, .c-button--gradation:where(:visited, :enabled):hover, .c-button--gradation:where(area[href], :enabled):hover {
    --color: var(--color-blue);
    background: #ffffff;
    background: var(--color-white);
    border: 1px solid #005bac;
    border: 1px solid var(--color-blue);
  }
  .c-button--gradation:where(:-moz-any-link, :enabled):hover {
    --color: var(--color-blue);
    background: #ffffff;
    background: var(--color-white);
    border: 1px solid #005bac;
    border: 1px solid var(--color-blue);
  }
  .c-button--gradation:where(:any-link, :enabled):hover {
    --color: var(--color-blue);
    background: #ffffff;
    background: var(--color-white);
    border: 1px solid #005bac;
    border: 1px solid var(--color-blue);
  }
  .c-button--gradation:where(:link, :enabled):hover .c-button__icon, .c-button--gradation:where(:visited, :enabled):hover .c-button__icon, .c-button--gradation:where(area[href], :enabled):hover .c-button__icon {
    box-shadow: none;
  }
  .c-button--gradation:where(:-moz-any-link, :enabled):hover .c-button__icon {
    box-shadow: none;
  }
  .c-button--gradation:where(:any-link, :enabled):hover .c-button__icon {
    box-shadow: none;
  }
  .c-button--gradation:where(:link, :enabled):hover .c-button__icon::before, .c-button--gradation:where(:visited, :enabled):hover .c-button__icon::before, .c-button--gradation:where(area[href], :enabled):hover .c-button__icon::before {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
  .c-button--gradation:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
  .c-button--gradation:where(:any-link, :enabled):hover .c-button__icon::before {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
}
/* サイズパターン */
.c-button--base {
  min-width: 247px;
  padding: 20px 12px 20px 28px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-button--base {
    padding: 19px 16px 19px 32px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-button--base:has(.c-button__content) {
  padding: 20px 12px 20px 28px;
}
@media (min-width: 768px) {
  .c-button--base:has(.c-button__content) {
    padding: 18px 16px 17px 32px
  }
}
.c-button--xs {
  min-width: 155px;
  padding: 7px 8px 7px 16px;
  font-size: 0.6875rem;
  font-size: var(--font-size-11);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-button--xs {
    padding: 9px 10px 8px 19px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-button--xs .c-button__icon {
  width: 20px;
  height: 20px;
}
@media (min-width: 768px) {
  .c-button--xs .c-button__icon {
    width: 29px;
    height: 29px
  }
}
.c-button--xs .c-button__icon::before {
  width: 10px;
}
@media (min-width: 768px) {
  .c-button--xs .c-button__icon::before {
    width: 12px
  }
}
@media (hover: hover) {
  .c-button--xs:where(:link, :enabled):hover .c-button__icon::before, .c-button--xs:where(:visited, :enabled):hover .c-button__icon::before, .c-button--xs:where(area[href], :enabled):hover .c-button__icon::before {
    width: 24px;
  }
  .c-button--xs:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    width: 24px;
  }
  .c-button--xs:where(:any-link, :enabled):hover .c-button__icon::before {
    width: 24px;
  }
}
.c-button--sm {
  min-width: 247px;
  padding: 11px 12px 11px 28px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-button--sm {
    padding: 12px 13px 12px 26px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-button--sm .c-button__icon {
  width: 32px;
  height: 32px;
}
@media (min-width: 768px) {
  .c-button--sm .c-button__icon {
    width: 38px;
    height: 38px
  }
}
.c-button--sm .c-button__icon::before {
  width: 12px;
}
@media (min-width: 768px) {
  .c-button--sm .c-button__icon::before {
    width: 16px
  }
}
@media (hover: hover) {
  .c-button--sm:where(:link, :enabled):hover .c-button__icon::before, .c-button--sm:where(:visited, :enabled):hover .c-button__icon::before, .c-button--sm:where(area[href], :enabled):hover .c-button__icon::before {
    width: 32px;
  }
  .c-button--sm:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    width: 32px;
  }
  .c-button--sm:where(:any-link, :enabled):hover .c-button__icon::before {
    width: 32px;
  }
}
.c-button--md {
  min-width: 247px;
  padding: 11px 12px 11px 28px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-button--md {
    padding: 14px 14px 13px 29px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-button--md .c-button__icon {
  width: 32px;
  height: 32px;
}
@media (min-width: 768px) {
  .c-button--md .c-button__icon {
    width: 43px;
    height: 43px
  }
}
.c-button--md .c-button__icon::before {
  width: 14px;
}
@media (min-width: 768px) {
  .c-button--md .c-button__icon::before {
    width: 16px
  }
}
@media (hover: hover) {
  .c-button--md:where(:link, :enabled):hover .c-button__icon::before, .c-button--md:where(:visited, :enabled):hover .c-button__icon::before, .c-button--md:where(area[href], :enabled):hover .c-button__icon::before {
    width: 32px;
  }
  .c-button--md:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    width: 32px;
  }
  .c-button--md:where(:any-link, :enabled):hover .c-button__icon::before {
    width: 32px;
  }
}
.c-button--reverse {
  flex-direction: row-reverse;
  gap: 24px;
  padding: 20px 28px 20px 12px;
}
@media (min-width: 768px) {
  .c-button--reverse {
    padding: 19px 40px 19px 16px
  }
}
.c-button--reverse .c-button__text {
  text-align: center;
}
.c-button--reverse:has(.c-button__icon) .c-button__icon {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.c-button--reverse:has(.c-button__icon) .c-button__icon::before {
  transform: translate(-50%, -50%) rotate(180deg);
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (hover: hover) {
  .c-button--reverse:where(:link, :enabled):hover, .c-button--reverse:where(:visited, :enabled):hover, .c-button--reverse:where(area[href], :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--reverse:where(:-moz-any-link, :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--reverse:where(:any-link, :enabled):hover {
    --bg-color: var(--color-gray-medium-light);
    --color: var(--color-white);
  }
  .c-button--reverse:where(:link, :enabled):hover .c-button__icon, .c-button--reverse:where(:visited, :enabled):hover .c-button__icon, .c-button--reverse:where(area[href], :enabled):hover .c-button__icon {
    background: transparent;
  }
  .c-button--reverse:where(:-moz-any-link, :enabled):hover .c-button__icon {
    background: transparent;
  }
  .c-button--reverse:where(:any-link, :enabled):hover .c-button__icon {
    background: transparent;
  }
  .c-button--reverse:where(:link, :enabled):hover .c-button__icon::before, .c-button--reverse:where(:visited, :enabled):hover .c-button__icon::before, .c-button--reverse:where(area[href], :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
  .c-button--reverse:where(:-moz-any-link, :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
  .c-button--reverse:where(:any-link, :enabled):hover .c-button__icon::before {
    background-color: #ffffff;
    background-color: var(--color-white);
  }
}

/* ==========================================================================//
// Parts Components（カード型）
// ========================================================================== */
/* 基本カード
---------------------------------------------------------- */
.c-card {
  display: block;
  padding: 16px;
  border-radius: 6px;
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (hover: hover) {
  .c-card:where(:link):hover, .c-card:where(:visited):hover, .c-card:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
    transition: all 0.3s ease;
  }
  .c-card:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .c-card:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
    transition: all 0.3s ease;
  }
}
@media (min-width: 768px) {
  .c-card {
    padding: 24px;
    border-radius: 8px
  }
}
.c-card__copy {
  position: relative;
  z-index: 1;
  width: calc(100% - 30px);
  margin-left: auto;
  margin-right: auto;
  padding: 5.5px;
  text-align: center;
  background-color: #005bac;
  background-color: var(--color-blue);
  border-radius: 4px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: #ffffff;
  color: var(--color-white);
}
.c-card__title {
  display: grid;
  align-content: center;
  justify-content: center;
  place-content: center;
  min-height: 52px;
  padding: 9px 21px 8px;
  margin-top: -8px;
  border-radius: 6px;
  text-align: center;
  -webkit-text-decoration: none;
  text-decoration: none;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .c-card__title {
    min-height: 64px;
    padding: 13px 12px 12px;
    border-radius: 8px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-card__title[target='_blank'] {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-column-gap: 6px;
  -moz-column-gap: 6px;
  column-gap: 6px;
  align-items: center;
}
.c-card__title[target='_blank']::before {
  content: '';
}
.c-card__title[target='_blank']::after {
  content: url('/common/image/ico/ico_external.svg');
  justify-self: start;
  width: 14px;
  height: 14px;
}
@media (min-width: 768px) {
  .c-card__title[target='_blank']::after {
    justify-self: end;
    width: 16px;
    height: 16px
  }
}
@media (hover: hover) {
  .c-card__title:where(:link):hover, .c-card__title:where(:visited):hover, .c-card__title:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-card__title:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-card__title:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-card__description {
  margin-top: 16px;
  font-size: 0.6875rem;
  font-size: var(--font-size-11);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-card__description {
    font-size: 0.8125rem;
    font-size: var(--font-size-13);
    font-weight: 500;
    font-weight: var(--font-weight-medium)
  }
}
.c-card[target='_blank'] .c-card__title {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-column-gap: 6px;
  -moz-column-gap: 6px;
  column-gap: 6px;
  align-items: center;
}
.c-card[target='_blank'] .c-card__title::before {
  content: '';
}
.c-card[target='_blank'] .c-card__title::after {
  content: url('/common/image/ico/ico_external.svg');
  justify-self: start;
  width: 14px;
  height: 14px;
}
@media (min-width: 768px) {
  .c-card[target='_blank'] .c-card__title::after {
    justify-self: end;
    width: 16px;
    height: 16px
  }
}
/* 色パターン */
.c-card.c-card--white {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-card.c-card--white .c-card__title {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-card.c-card--gray {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-card.c-card--gray .c-card__title {
  background-color: #ffffff;
  background-color: var(--color-white);
}

/* 事例
---------------------------------------------------------- */
.c-caseStydyCard a {
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (hover: hover) {
  .c-caseStydyCard a:where(:link):hover, .c-caseStydyCard a:where(:visited):hover, .c-caseStydyCard a:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-caseStydyCard a:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-caseStydyCard a:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-caseStydyCard__thumbnail {
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 6px;
}
@media (hover: hover) {
  .c-caseStydyCard__thumbnail:hover .c-caseStydyCard__img {
    opacity: 0.75;
    opacity: var(--opacity-default);
    transform: scale(1.1);
  }
}
.c-caseStydyCard__img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  transition: all 0.3s ease;
}
.c-caseStydyCard__industry {
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 1;
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 8px;
  background-color: #005bac;
  background-color: var(--color-blue);
  border-radius: 4px;
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
}
.c-caseStydyCard__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-caseStydyCard__link[target='_blank']::after {
  content: "";
  overflow: hidden;
  position: absolute;
  top: 4px;
  right: 4px;
  width: 24px;
  height: 24px;
  background: rgba(0, 0, 0, 0.5) url("/common/image/ico/ico_external_white.svg") center center no-repeat;
  background-size: 16px 16px;
  border-radius: 4px;
}
.c-caseStydyCard__label {
  position: absolute;
  bottom: 4px;
  left: 4px;
  width: calc(100% - 8px);
  padding: 11px 12px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  border-radius: 4px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
}
.c-caseStydyCard__title {
  margin-top: 15px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (min-width: 768px) {
  .c-caseStydyCard__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-caseStydyCard__list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 8px;
  margin-top: 12px;
  list-style: none;
}
.c-caseStydyCard__item {
  color: rgba(77, 77, 77, 0.5);
  color: rgba(var(--color-default-rgb), 0.5);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
}

/* お役立ち資料（一覧）
---------------------------------------------------------- */
.c-documentCard {
  position: relative;
  display: grid;
  grid-template-rows: auto auto 1fr;
}
.c-documentCard::before {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 36px;
  height: 36px;
  background: url('/common/image/ico/ico_documentCard_arrow.svg') no-repeat left top / 36px;
}
@media (min-width: 768px) {
  .c-documentCard::before {
    width: 48px;
    height: 48px;
    background-size: 48px
  }
}
@media (hover: hover) {
  .c-documentCard:hover .c-documentCard__img img {
    transform: scale(1.1);
  }
  .c-documentCard:hover::before {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-documentCard a {
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .c-documentCard a:where(:link):hover, .c-documentCard a:where(:visited):hover, .c-documentCard a:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-documentCard a:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-documentCard a:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-documentCard__link {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: 1 / 4;
  grid-column: 1;
}
.c-documentCard__img {
  overflow: hidden;
  position: relative;
  padding-bottom: 63.8%;
  border-radius: 8px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
}
.c-documentCard__img img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: auto;
  min-width: 100%;
  max-width: inherit;
  transition: all 0.3s ease;
}
.c-documentCard__title {
  min-height: 36px;
  margin-top: 16px;
  margin-right: 48px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-documentCard__title {
    min-height: 48px;
    margin-top: 24px;
    margin-right: 72px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-documentCard__tagList {
  grid-row: 3 / 4;
  grid-column: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 12px;
  margin-right: 48px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-documentCard__tagList {
    margin-top: 16px;
    margin-right: 72px
  }
}
.c-documentCard__tagItem {
  position: relative;
  pointer-events: none;
}
.c-documentCard__tagItem a,
.c-documentCard__tagItem span {
  font-size: 0.6875rem;
  font-size: var(--font-size-11);
  color: #a5a5a5;
  color: var(--color-gray-cool-light);
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (min-width: 768px) {
  .c-documentCard__tagItem a,
  .c-documentCard__tagItem span {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}

/* お役立ち資料（ピックアップ）
---------------------------------------------------------- */
.c-pickupCard {
  position: relative;
  display: grid;
  grid-gap: 22px;
  gap: 22px;
  background-color: #ffffff;
  background-color: var(--color-white);
  padding: 16px 16px 32px;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  border-radius: 8px;
}
@media (min-width: 768px) {
  .c-pickupCard {
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 48px;
    padding: 24px 48px 24px 24px
  }
}
.c-pickupCard::before {
  content: 'PICK UP';
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
  min-width: 120px;
  min-height: 48px;
  background-color: #005bac;
  background-color: var(--color-blue);
  border-radius: 8px 0 8px 0;
  color: #ffffff;
  color: var(--color-white);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1;
}
.c-pickupCard__img img {
  width: 100%;
  height: auto;
}
.c-pickupCard__contents {
}
.c-pickupCard__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-pickupCard__title {
    font-size: clamp(1.25rem, 0.6786rem + 1.1905vw, 1.75rem)
  }
}
.c-pickupCard__description {
  margin-top: 16px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 2;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-pickupCard__description {
    margin-top: 24px;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-pickupCard__button {
  max-width: 215px;
  margin-top: 16px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .c-pickupCard__button {
    max-width: 280px;
    margin-top: 32px;
    margin-left: 0;
    margin-right: 0
  }
}
.c-pickupCard__button .c-button--sm {
  min-width: 215px;
}

/* 実装方法タイプ
---------------------------------------------------------- */
.c-typeCard {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 6px;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-typeCard {
    padding: 24px;
    border-radius: 8px
  }
}
@media (hover: hover) {
  .c-typeCard:where(:link):hover, .c-typeCard:where(:visited):hover, .c-typeCard:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-typeCard:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-typeCard:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-typeCard:where(:link):hover .c-typeCard__img img, .c-typeCard:where(:visited):hover .c-typeCard__img img, .c-typeCard:where(area[href]):hover .c-typeCard__img img {
    transform: scale(1.1);
  }
  .c-typeCard:where(:-moz-any-link):hover .c-typeCard__img img {
    transform: scale(1.1);
  }
  .c-typeCard:where(:any-link):hover .c-typeCard__img img {
    transform: scale(1.1);
  }
  .c-typeCard:where(:link):hover .c-typeCard__button, .c-typeCard:where(:visited):hover .c-typeCard__button, .c-typeCard:where(area[href]):hover .c-typeCard__button {
    transform: scale(1.2);
  }
  .c-typeCard:where(:-moz-any-link):hover .c-typeCard__button {
    transform: scale(1.2);
  }
  .c-typeCard:where(:any-link):hover .c-typeCard__button {
    transform: scale(1.2);
  }
}
.c-typeCard__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-typeCard__head {
    padding-bottom: 24px
  }
}
.c-typeCard__sub {
  display: block;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-typeCard__sub {
    font-size: clamp(0.75rem, 0.4643rem + 0.5952vw, 1rem)
  }
}
.c-typeCard__title {
  font-size: 1.062rem;
  font-size: var(--font-size-17);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-typeCard__title {
    font-size: clamp(1.0625rem, 0.5625rem + 1.0417vw, 1.5rem)
  }
}
.c-typeCard__img {
  overflow: hidden;
  width: 42.5%;
  border-radius: 4px;
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-typeCard__img {
    max-width: 188px
  }
}
.c-typeCard__img img {
  width: 100%;
  max-width: 100%;
  height: auto;
  transition: all 0.3s ease;
}
.c-typeCard__body {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  padding-top: 16px;
}
@media (min-width: 768px) {
  .c-typeCard__body {
    gap: 24px;
    padding-top: 24px
  }
}
.c-typeCard__description {
  flex: 1;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-typeCard__description {
    font-size: clamp(0.75rem, 0.6071rem + 0.2976vw, 0.875rem)
  }
}
.c-typeCard__button {
  width: 36px;
  height: 36px;
  background: transparent url('/common/image/ico/ico_typeCard_arrow.svg') no-repeat center / 20px 8px;
  border: 1px solid #005bac;
  border: 1px solid var(--color-blue);
  border-radius: 50%;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-typeCard__button {
    width: 48px;
    height: 48px;
    cursor: pointer
  }
}
.c-typeCardList {
  list-style-type: none;
}
@media (min-width: 768px) {
  .c-typeCardList {
    display: flex;
    margin: 0 -24px
  }
}
.c-typeCardList__item {
  margin-bottom: 40px;
}
.c-typeCardList__item:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .c-typeCardList__item {
    width: 50%;
    padding: 0 24px;
    margin: 0
  }
}

/* ==========================================================================//
// Parts Components（ナビゲーション型）
// ========================================================================== */
/* ページネーション
---------------------------------------------------------- */
.c-pagination {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
  margin-top: 40px;
}
@media (min-width: 768px) {
  .c-pagination {
    margin-top: 80px
  }
}
.c-pagination__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-pagination__list {
    gap: 8px
  }
}
.c-pagination__item:where(.c-pagination__item--prev):first-of-type {
  margin-right: 6px;
}
@media (min-width: 768px) {
  .c-pagination__item:where(.c-pagination__item--prev):first-of-type {
    margin-right: 36px
  }
}
.c-pagination__item:where(.c-pagination__item--next):last-of-type {
  margin-left: 6px;
}
@media (min-width: 768px) {
  .c-pagination__item:where(.c-pagination__item--next):last-of-type {
    margin-left: 36px
  }
}
.c-pagination__item--ellipsis {
  padding: 7px;
  color: #005bac;
  color: var(--color-blue);
}
.c-pagination__item.is-active .c-pagination__num {
  background-color: #005bac;
  background-color: var(--color-blue);
  border-radius: 60px;
  color: #ffffff;
  color: var(--color-white);
}
.c-pagination__num {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 10px 5px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: none;
  text-decoration: none;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .c-pagination__num {
    width: 48px;
    height: 48px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
@media (hover: hover) {
  .c-pagination__num:where(:link), .c-pagination__num:where(:visited), .c-pagination__num:where(area[href]) {
    transition: all 0.3s ease;
  }
  .c-pagination__num:where(:-moz-any-link) {
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .c-pagination__num:where(:any-link) {
    transition: all 0.3s ease;
  }
  .c-pagination__num:where(:link):hover, .c-pagination__num:where(:visited):hover, .c-pagination__num:where(area[href]):hover {
    background-color: #005bac;
    background-color: var(--color-blue);
    color: #ffffff;
    color: var(--color-white);
  }
  .c-pagination__num:where(:-moz-any-link):hover {
    background-color: #005bac;
    background-color: var(--color-blue);
    color: #ffffff;
    color: var(--color-white);
  }
  .c-pagination__num:where(:any-link):hover {
    background-color: #005bac;
    background-color: var(--color-blue);
    color: #ffffff;
    color: var(--color-white);
  }
}
.c-pagination__text {
  display: none;
}
@media (min-width: 768px) {
  .c-pagination__text {
    display: block;
    font-family: "Marcellus", serif;
    font-family: var(--font-family-en);
    font-size: 0.875rem;
    font-size: var(--font-size-14);
    line-height: 1;
    color: #005bac;
    color: var(--color-blue)
  }
}
.c-pagination__arrow {
  position: relative;
  display: block;
  -webkit-text-decoration: none;
  text-decoration: none;
}
span.c-pagination__arrow {
  opacity: 0.5;
}
@media (min-width: 768px) {
  .c-pagination__arrow {
    width: 72px
  }
}
@media (hover: hover) {
  .c-pagination__arrow:where(:link):hover, .c-pagination__arrow:where(:visited):hover, .c-pagination__arrow:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-pagination__arrow:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-pagination__arrow:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-pagination__arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 12px;
  background: url('/common/image/ico/ico_pagination_arrow.svg') no-repeat center / contain;
}
@media (min-width: 768px) {
  .c-pagination__arrow--prev {
    text-align: right
  }
}
.c-pagination__arrow--prev::before {
  left: -24px;
  transform: translateY(-50%) rotate(180deg);
}
@media (min-width: 768px) {
  .c-pagination__arrow--prev::before {
    left: 0
  }
}
.c-pagination__arrow--next::before {
  right: -24px;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .c-pagination__arrow--next::before {
    right: 0
  }
}

.c-pagination__item.is-hide {
  display: none;
}

#js-paginationTrigger.c-pagination[data-pager-total="1"] .c-pagination__item--prev,
#js-paginationTrigger.c-pagination[data-pager-total="1"] .c-pagination__item--next {
  display: none;
}

/* ページ上部ナビゲーション
---------------------------------------------------------- */
.c-pageNav {
  padding: 0 16px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
.c-pageNav__inner {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .c-pageNav__inner {
    grid-template-columns: 184px 1fr;
    gap: 40px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 60px;
    padding-bottom: 60px
  }
}
@media (min-width: 1024px) {
  .c-pageNav__inner {
    grid-template-columns: 244px 1fr
  }
}
.c-pageNav__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-pageNav__title {
    margin-top: 18px;
    font-size: clamp(1.125rem, 0.4107rem + 1.4881vw, 1.75rem)
  }
}
.c-pageNav__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 8px 7px;
  gap: 8px 7px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-pageNav__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px
  }
}
@media (min-width: 1024px) {
  .c-pageNav__list {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr))
  }
}
.c-pageNavLink {
  position: relative;
  display: grid;
  align-items: center;
  height: 100%;
  min-height: 60px;
  padding: 12px 36px 12px 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 6px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  color: #455459;
  color: var(--color-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-pageNavLink {
    min-height: 80px;
    padding: 20px 20px 20px 56px;
    border-radius: 8px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-pageNavLink::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 5px solid #a9babf;
  border: 5px solid var(--color-gray-medium-light);
  border-radius: 50%;
}
@media (min-width: 768px) {
  .c-pageNavLink::before {
    right: auto;
    left: 20px;
    width: 24px;
    height: 24px;
    border: 8px solid #a9babf;
    border: 8px solid var(--color-gray-medium-light)
  }
}
.c-pageNavLink[target='_blank'] {
  padding: 12px 36px 12px 16px;
}
@media (min-width: 768px) {
  .c-pageNavLink[target='_blank'] {
    padding: 20px 52px 20px 24px
  }
}
.c-pageNavLink[target='_blank']::before {
  left: auto;
  right: 13px;
  width: 20px;
  height: 20px;
  background: url('/common/image/ico/ico_pageNav_external.svg') no-repeat top center / 20px;
  border: none;
}
@media (min-width: 768px) {
  .c-pageNavLink[target='_blank']::before {
    right: 24px;
    width: 22px;
    height: 22px;
    background-size: 22px
  }
}
.c-pageNavLink.is-active {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  color: #ffffff;
  color: var(--color-white);
}
.c-pageNavLink.is-active::before {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  border: 3px solid #ffffff;
  border: 3px solid var(--color-white);
}
@media (min-width: 768px) {
  .c-pageNavLink.is-active::before {
    border: 5px solid #ffffff;
    border: 5px solid var(--color-white)
  }
}
@media (hover: hover) {
  .c-pageNavLink:where(:link):hover, .c-pageNavLink:where(:visited):hover, .c-pageNavLink:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-pageNavLink:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-pageNavLink:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-pageNavLink span {
  display: inline-block;
}

/* ハッシュタグ
---------------------------------------------------------- */
.c-pageNavHash {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
@media (min-width: 768px) {
  .c-pageNavHash {
    flex-direction: row;
    gap: 40px;
    max-width: 1200px;
    margin: auto;
    padding-top: 60px;
    padding-bottom: 60px
  }
}
@media (min-width: 1024px) {
  .c-pageNavHash {
    gap: 80px
  }
}
.c-pageNavHash__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-pageNavHash__title {
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.c-pageNavHash__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-pageNavHash__list {
    gap: 12px;
    flex: 1
  }
}
.c-pageNavHashLink {
  position: relative;
  display: grid;
  align-items: center;
  height: 100%;
  min-height: 32px;
  padding: 7px 10px 7px 24px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 6px;
  font-size: 0.6875rem;
  font-size: var(--font-size-11);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: #455459;
  color: var(--color-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-pageNavHashLink {
    min-height: 48px;
    padding: 13px 16px 13px 36px;
    border-radius: 8px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-pageNavHashLink::before {
  content: '＃';
  position: absolute;
  top: 50%;
  left: 8px;
  transform: translateY(-50%);
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-pageNavHashLink::before {
    left: 12px;
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
@media (hover: hover) {
  .c-pageNavHashLink:where(:link):hover, .c-pageNavHashLink:where(:visited):hover, .c-pageNavHashLink:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-pageNavHashLink:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-pageNavHashLink:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-pageNavHashLink span {
  display: inline-block;
}

/* タブナビゲーション
---------------------------------------------------------- */
.c-tabNavigation {
  overflow: hidden;
  padding: 40px 16px 0;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-tabNavigation__list {
  margin-bottom: 40px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 8px 7px;
  gap: 8px 7px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-tabNavigation__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px
  }
}
@media (min-width: 1024px) {
  .c-tabNavigation__list {
    display: flex;
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto
  }
}
@media (min-width: 1024px) {
  .c-tabNavigation__item {
    width: 100%;
    max-width: 220px
  }
}
@media (min-width: 1024px) {
  .c-tabNavigation__item.is-active {
    max-width: 280px
  }
}
.c-tabNavigation__item.is-active .c-tabNavigation__link {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 1024px) {
  .c-tabNavigation__item.is-active .c-tabNavigation__link {
    width: 100%;
    min-height: 96px;
    background: #ffffff;
    background: var(--color-white);
    padding: 17px 18px 17px 18px;
    justify-content: center;
    color: #4d4d4d;
    color: var(--color-default);
    font-size: 1.375rem;
    font-size: var(--font-size-22);
    letter-spacing: 0.1em;
    box-shadow: 12px 12px 40px 0px rgba(0,0,0, 0.16);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
  }
}
.c-tabNavigation__item.is-active .c-tabNavigation__link::before {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  border: 3px solid #ffffff;
  border: 3px solid var(--color-white);
}
@media (min-width: 1024px) {
  .c-tabNavigation__item.is-active .c-tabNavigation__link::before {
    display: none
  }
}
.c-tabNavigation__link {
  position: relative;
  display: grid;
  align-items: center;
  min-height: 60px;
  padding: 12px 36px 12px 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 6px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  color: #455459;
  color: var(--color-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 1024px) {
  .c-tabNavigation__link {
    min-height: 72px;
    padding: 17px 20px 17px 56px;
    border-radius: 8px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-tabNavigation__link::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 5px solid #a9babf;
  border: 5px solid var(--color-gray-medium-light);
  border-radius: 50%;
}
@media (min-width: 1024px) {
  .c-tabNavigation__link::before {
    right: auto;
    left: 20px;
    width: 24px;
    height: 24px;
    border: 8px solid #a9babf;
    border: 8px solid var(--color-gray-medium-light)
  }
}
@media (hover: hover) {
  .c-tabNavigation__link:where(:link):hover, .c-tabNavigation__link:where(:visited):hover, .c-tabNavigation__link:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-tabNavigation__link:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-tabNavigation__link:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-tabNavigation__link span {
  display: inline-block;
}
.c-tabNavigation__sp-view {
  display: inline-block;
  vertical-align: middle;
  padding: 16px 24px 8px;
  background-color: #ffffff;
  background-color: var(--color-white);
  box-shadow: 6px 6px 24px 0 rgba(0,0,0, 0.19);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}
@media (min-width: 1024px) {
  .c-tabNavigation__sp-view {
    display: none
  }
}
.c-tabNavigation--hasTitle {
  padding: 0 16px 0;
}
@media (min-width: 1024px) {
  .c-tabNavigation__tab {
    max-width: 1200px;
    margin: 0 auto
  }
}
.c-tabNavigation__tabTitle {
  display: inline-block;
  vertical-align: middle;
  padding: 16px 24px 8px;
  background-color: #ffffff;
  background-color: var(--color-white);
  box-shadow: 6px 6px 24px 0 rgba(0,0,0, 0.19);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}
@media (min-width: 1024px) {
  .c-tabNavigation__tabTitle {
    padding: 30px 40px 20px;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}

/* 新着一覧用ナビゲーション
---------------------------------------------------------- */
.c-searchArticle {
  margin-bottom: 40px;
  padding: 16px 16px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
@media (min-width: 1024px) {
  .c-searchArticle {
    padding: 36px 56px
  }
}
.c-searchArticle__submit {
  max-width: 240px;
  margin: 25px auto 0;
}
.c-searchArticle-category {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
@media (min-width: 1024px) {
  .c-searchArticle-category {
    display: flex;
    align-items: center
  }
}
.c-searchArticle-category__title {
  margin-bottom: 10px;
  padding-right: 20px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 1024px) {
  .c-searchArticle-category__title {
    width: 140px;
    margin: 0;
    padding: 0 0 0 32px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
@media (min-width: 1024px) {
  .c-searchArticle-category__field {
    flex: 1;
    border-left: 1px solid #d4dddf;
    border-left: 1px solid var(--color-pale-aqua);
    padding-left: 24px
  }
}

.c-searchArticle-year{
  padding-bottom: 24px;
}

@media (min-width: 1024px) {

  .c-searchArticle-year{
    display: flex;
    align-items: center
  }
}

.c-searchArticle-year__title {
  margin-bottom: 10px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

@media (min-width: 1024px) {

  .c-searchArticle-year__title {
    width: 140px;
    padding: 0 0 0 32px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}

.c-searchArticle-year__field {
  flex: 1;
  min-height: 32px;
}

@media (min-width: 1024px) {

  .c-searchArticle-year__field {
    flex: none
  }
}

.c-searchArticle-year__select {
  overflow: hidden;
  width: 240px;
  height: 100%;
  background: #ffffff url('/common/image/ico/ico_select_arrow.svg') no-repeat center right 7px;
  background: var(--color-white) url('/common/image/ico/ico_select_arrow.svg') no-repeat center right 7px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
  border-radius: 4px;
}

.c-searchArticle-year__select select {
  width: 100%;
  height: 32px;
  padding: 5px 40px 5px 16px;
  font-size: 16px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #4d4d4d;
  color: var(--color-default);
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  transform: scale(0.875);
  transform-origin: left center;
}

@media (min-width: 1024px) {

  .c-searchArticle-year__select select {
    transform: none;
    font-size: 13px
  }
}
.c-searchArticle--irNewslist {
  margin-top: 30px;
}

.c-searchArticleMini {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .c-searchArticleMini__inner {
    display: flex;
    align-items: center;
    justify-content: flex-end
  }
}

.c-searchArticleMini__year {
  overflow: hidden;
  width: 100%;
  max-width: 220px;
  height: 100%;
  background: #ffffff url('/common/image/ico/ico_select_arrow.svg') no-repeat center right 7px;
  background: var(--color-white) url('/common/image/ico/ico_select_arrow.svg') no-repeat center right 7px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
  border-radius: 4px;
  margin: 0 auto 20px;
}

@media (min-width: 1024px) {

  .c-searchArticleMini__year {
    margin: 0
  }
}

.c-searchArticleMini__year select {
  width: 100%;
  height: 40px;
  padding: 5px 40px 5px 16px;
  font-size: 16px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #4d4d4d;
  color: var(--color-default);
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  transform: scale(0.875);
  transform-origin: left center;
}

@media (min-width: 1024px) {

  .c-searchArticleMini__year select {
    transform: none;
    font-size: 13px
  }
}

.c-searchArticleMini__button {
  min-width: 220px;
  max-width: 220px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 1024px) {

  .c-searchArticleMini__button {
    min-width: 200px;
    max-width: 200px;
    margin-left: 20px;
    margin-right: 0
  }
}

.c-tabNavigation + .c-searchArticleMini {
  margin-top: 30px;
}

/* よくある質問用ナビゲーション
---------------------------------------------------------- */
.c-sideNaviFollow {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
  padding: 16px 16px;
  margin-bottom: 60px;
}
@media (min-width: 1024px) {
  .c-sideNaviFollow {
    position: absolute;
    z-index: 20;
    top: 0;
    right: 0;
    margin: 0;
    width: 100%;
    max-width: 360px;
    padding: 80px 61px
  }
  .c-sideNaviFollow.is-fixed {
    position: fixed;
    top: 130px;
    right: 0;
  }
  .c-sideNaviFollow.is-bottomFixed {
    position: absolute;
    top: auto;
    right: 0;
    bottom: 40px;
  }
}
.c-sideNaviFollow__title {
  position: relative;
  padding: 0 0 9px;
  margin-bottom: 30px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  border-bottom: 2px solid #DFE5E8;
}
@media (min-width: 1024px) {
  .c-sideNaviFollow__title {
    font-size: 1.25rem;
    font-size: var(--font-size-20);
    padding: 0 0 15px;
    margin-bottom: 60px
  }
}
.c-sideNaviFollow__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 25px;
  height: 2px;
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
}
.c-sideNaviFollow__list {
  list-style-type: none;
}
.c-sideNaviFollow__item {
  position: relative;
  padding-left: 20px;
  margin-bottom: 9px;
}
@media (min-width: 1024px) {
  .c-sideNaviFollow__item {
    margin-bottom: 15px
  }
}
.c-sideNaviFollow__item:last-child {
  margin-bottom: 0;
}
.c-sideNaviFollow__item::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background: url(/common/image/ico/ico_linkNav_arrow_black.svg) 0 0 no-repeat;
  background-size: contain;
}
.c-sideNaviFollow__item a {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 1024px) {
  .c-sideNaviFollow__item a {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
@media (hover: hover) {
  .c-sideNaviFollow__item a:where(:link):hover, .c-sideNaviFollow__item a:where(:visited):hover, .c-sideNaviFollow__item a:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-sideNaviFollow__item a:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-sideNaviFollow__item a:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-sideNaviFollowEexpandList {
  list-style-type: none;
}
.c-sideNaviFollowEexpandList__item {
  position: relative;
  display: block;
  margin-bottom: 24px;
}
.c-sideNaviFollowEexpandList__item:last-child {
  margin-bottom: 0;
}
.c-sideNaviFollowEexpandList__item[open] .c-sideNaviFollowEexpandChildList {
  opacity: 1;
  height: auto;
}
.c-sideNaviFollowEexpandChild {
  position: relative;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  cursor: pointer;
}
.c-sideNaviFollowEexpandChild::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background: url(/common/image/ico/ico_plus.svg) no-repeat center center / contain;
  transition: all 0.3s ease;
}
.c-sideNaviFollowEexpandChild.is-open::after {
  background-image: url(/common/image/ico/ico_minus.svg);
}
.c-sideNaviFollowEexpandChildList {
  list-style-type: none;
  padding: 10px 0 0 12px;
  overflow: hidden;
  height: 0;
  opacity: 0;
  transition: all 0.3s ease;
}
.c-sideNaviFollowEexpandChildList__item {
  margin-bottom: 8px;
}
.c-sideNaviFollowEexpandChildList__item:last-child {
  margin-bottom: 0;
}
.c-sideNaviFollowEexpandChildList__item a {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-sideNaviFollowEexpandChildList__item a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
/* open */
.c-sideNaviFollowEexpandChild.is-open + .c-sideNaviFollowEexpandChildList {
  opacity: 1;
}

/* ==========================================================================//
// Parts Components（ボックス型）
// ========================================================================== */
/* GMO PGはあなたの事業成長を多方面からサポート
---------------------------------------------------------- */
.c-supportBox {
  padding: 24px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
@media (min-width: 768px) {
  .c-supportBox {
    width: min(960px, 100%);
    margin-left: auto;
    margin-right: auto;
    padding: 40px
  }
}
.c-supportBox__title {
  padding-bottom: 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  color: var(--color-white);
  text-wrap: wrap;
}
@media (min-width: 768px) {
  .c-supportBox__title {
    padding-bottom: 12px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.c-supportBox__description {
  margin-top: 18px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-supportBox__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-supportBox__button {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
  margin-top: 36px;
  max-width: 256px;
  margin-left: auto;
  margin-right: auto;
}
.c-supportBox__buttonList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  margin-top: 36px;
  list-style: none;
}
.c-supportBox__buttonItem {
  width: min(256px, 100%);
}

/* VIEW MORE
---------------------------------------------------------- */
.c-viewMoreBox {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 14px;
  gap: 14px;
  width: calc(100% - 8.53%);
  padding: 16px 14px 32px;
  background-color: transparent;
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-viewMoreBox {
    gap: 36px;
    width: min(1120px, calc((1120 / 1440) * 100vw));
    padding: 24px 60px
  }
}
.c-viewMoreBox__title {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.75rem;
  font-size: var(--font-size-28);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
  color: #d4dddf;
  color: var(--color-pale-aqua);
  writing-mode: vertical-rl;
}
@media (min-width: 768px) {
  .c-viewMoreBox__title {
    margin-top: 28px;
    font-size: 4.5rem;
    font-size: var(--font-size-72);
    font-size: clamp(2rem, -0.8571rem + 5.9524vw, 4.5rem);
    writing-mode: horizontal-tb
  }
}
.c-viewMoreBox__title--only {
  display: grid;
  align-content: center;
  justify-content: center;
  place-content: center;
  width: -moz-max-content;
  width: max-content;
  margin-top: 0;
}
.c-viewMoreBox__title > br {
  display: none;
}
@media (min-width: 768px) {
  .c-viewMoreBox__title > br {
    display: block
  }
}
.c-viewMoreBox__list {
  display: grid;
  justify-self: end;
  grid-gap: 12px;
  gap: 12px;
  margin-top: 16px;
  margin-right: calc(50% - 50vw + 16px);
  list-style: none;
}
@media (min-width: 768px) {
  .c-viewMoreBox__list {
    gap: 24px;
    margin-top: 0;
    margin-right: 0;
    grid-template-columns: repeat(2, 1fr)
  }
}
@media (min-width: 768px) {
  .c-viewMoreBox__list--only {
    grid-column: 2 / 2;
    gap: 0;
    margin-left: min(258px, calc((258 / 1440) * 100vw))
  }
}
@media (min-width: 768px) {
  .c-viewMoreBox__item--right {
    grid-column: 2 / 2
  }
}
.c-viewMoreCard {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: min(287px, calc((287 / 375) * 100vw));
  height: 120px;
  padding: 26px 24px 14px;
  background-color: #144b63;
  background-color: var(--color-dark-teal-blue);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: auto 100%;
  border-radius: 6px;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: #ffffff;
  color: var(--color-white);
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-viewMoreCard {
    gap: 24px;
    width: min(432px, calc((432 / 1440) * 100vw));
    height: 100%;
    padding: 3.33vw 1.67vw 1.67vw 2.78vw;
    border-radius: 8px
  }
}
@media (min-width: 1024px) {
  .c-viewMoreCard {
    padding: 48px 24px 24px 40px
  }
}
@media (hover: hover) {
  .c-viewMoreCard:where(:link):hover, .c-viewMoreCard:where(:visited):hover, .c-viewMoreCard:where(area[href]):hover {
    opacity: 0.75;
    background-size: auto 120%;
  }
  .c-viewMoreCard:where(:-moz-any-link):hover {
    opacity: 0.75;
    background-size: auto 120%;
  }
  .c-viewMoreCard:where(:any-link):hover {
    opacity: 0.75;
    background-size: auto 120%;
  }
  @media (min-width: 768px) {
    .c-viewMoreCard:where(:link):hover .c-viewMoreCard__button, .c-viewMoreCard:where(:visited):hover .c-viewMoreCard__button, .c-viewMoreCard:where(area[href]):hover .c-viewMoreCard__button {
      transform: scale(1.1);
      background-size: 27.5px 11px
    }
    .c-viewMoreCard:where(:-moz-any-link):hover .c-viewMoreCard__button {
      transform: scale(1.1);
      background-size: 27.5px 11px
    }
    .c-viewMoreCard:where(:any-link):hover .c-viewMoreCard__button {
      transform: scale(1.1);
      background-size: 27.5px 11px
    }
  }
}
.c-viewMoreCard__title {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.75rem;
  font-size: var(--font-size-28);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
}
@media (min-width: 768px) {
  .c-viewMoreCard__title {
    font-size: 2.75rem;
    font-size: var(--font-size-44)
  }
}
.c-viewMoreCard__contents {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
}
.c-viewMoreCard__subTitle {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (min-width: 768px) {
  .c-viewMoreCard__subTitle {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-viewMoreCard__button {
  width: 36px;
  height: 36px;
  background: transparent url('/common/image/ico/ico_viewMoreCard_arrow.svg') no-repeat center / 15px 6px;
  border: 1px solid #ffffff;
  border: 1px solid var(--color-white);
  border-radius: 50%;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-viewMoreCard__button {
    width: min(60px, calc((60 / 1440) * 100vw));
    height: min(60px, calc((60 / 1440) * 100vw));
    background-size: 25px 10px;
    cursor: pointer
  }
}
/* 種類別 */
.c-viewMoreCard--top {
  background-image: url('/common/image/bg/bg_viewMoreCard_toppage.png');
}
.c-viewMoreCard--ownedMedia {
  background-image: url('/common/image/bg/bg_viewMoreCard_ownedMedia.png');
}
.c-viewMoreCard--corporate {
  background-image: url('/common/image/bg/bg_viewMoreCard_corporate.png');
}
.c-viewMoreCard--sustainability {
  background-image: url('/common/image/bg/bg_viewMoreCard_sustainability.png');
}
.c-viewMoreCard--business {
  background-image: url('/common/image/bg/bg_viewMoreCard_business.png');
}
.c-viewMoreCard--recruit {
  background-image: url('/common/image/bg/bg_viewMoreCard_recruit.png');
}
.c-viewMoreCard--news {
  background-image: url('/common/image/bg/bg_viewMoreCard_news.png');
}
.c-viewMoreCard--investorRelations {
  background-image: url('/common/image/bg/bg_viewMoreCard_investorRelations.png');
}
.c-viewMoreCard--customerSuccess {
  background-image: url('/common/image/bg/bg_viewMoreCard_customerSuccess.png');
}
.c-viewMoreCard--service {
  background-image: url('/common/image/bg/bg_viewMoreCard_service.png');
}
.c-viewMoreCard--investorRelations,
.c-viewMoreCard--customerSuccess {
  gap: 0;
  padding-top: 14px;
}
@media (min-width: 768px) {
  .c-viewMoreCard--investorRelations,
  .c-viewMoreCard--customerSuccess {
    gap: 0.14vw;
    padding-top: 1.81vw
  }
}
@media (min-width: 1024px) {
  .c-viewMoreCard--investorRelations,
  .c-viewMoreCard--customerSuccess {
    gap: 2px;
    padding-top: 26px
  }
}

/* サービスについての質問・相談
---------------------------------------------------------- */
.c-inquiryBox {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  border-radius: 6px;
}
@media (min-width: 768px) {
  .c-inquiryBox {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 60px 0 72px;
    border-radius: 8px
  }
}
.c-inquiryBox__description {
  padding: 24px 16px;
  text-align: center;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-inquiryBox__description {
    padding: 0;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-inquiryBox__description br {
  display: block;
}
@media (min-width: 768px) {
  .c-inquiryBox__description br {
    display: none
  }
}
.c-inquiryBox__list {
  display: flex;
  flex-direction: column;
  justify-content: center;
  list-style: none;
}
@media (min-width: 768px) {
  .c-inquiryBox__list {
    flex-direction: row;
    margin-top: 60px
  }
}
.c-inquiryBox__item {
  border-top: 1px dashed rgba(255, 255, 255, 0.5);
  border-top: 1px dashed rgba(var(--color-white-rgb), 0.5);
}
@media (min-width: 768px) {
  .c-inquiryBox__item {
    width: calc(100% / 3);
    border-top: none
  }
  .c-inquiryBox__item:not(:first-child) {
    border-left: 1px dashed rgba(255, 255, 255, 0.5);
    border-left: 1px dashed rgba(var(--color-white-rgb), 0.5);
  }
}
.c-inquiryBox__link {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 156px;
  padding: 24px 16px;
  background-repeat: no-repeat;
  background-position: bottom 20px left 24px;
  background-size: 36px 36px;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-inquiryBox__link {
    padding: 0 min(calc((60 / 1440) * 100vw), 60px) min(150px, calc((150 / 1440) * 100vw));
    background-position: bottom left min(calc((60 / 1440) * 100vw), 60px);
    background-size: min(86px, calc((86 / 1440) * 100vw));
    cursor: pointer
  }
}
.c-inquiryBox__link--inquiry {
  background-image: url('/common/image/ico/ico_inquiry.svg');
}
.c-inquiryBox__link--apply {
  background-image: url('/common/image/ico/ico_apply.svg');
}
.c-inquiryBox__link--download {
  background-image: url('/common/image/ico/ico_download.svg');
}
@media (hover: hover) {
  .c-inquiryBox__link:where(:link):hover, .c-inquiryBox__link:where(:visited):hover, .c-inquiryBox__link:where(area[href]):hover {
    opacity: 0.75;
    transition: all 0.3s ease;
  }
  .c-inquiryBox__link:where(:-moz-any-link):hover {
    opacity: 0.75;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .c-inquiryBox__link:where(:any-link):hover {
    opacity: 0.75;
    transition: all 0.3s ease;
  }
}
.c-inquiryBox__title {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 2rem;
  font-size: var(--font-size-32);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
  text-wrap: wrap;
  word-break: break-all;
}
@media (min-width: 768px) {
  .c-inquiryBox__title {
    font-size: 2.75rem;
    font-size: var(--font-size-44)
  }
}
.c-inquiryBox__subTitle {
  margin-top: 15px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (min-width: 768px) {
  .c-inquiryBox__subTitle {
    margin-top: 12px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-inquiryBox__button {
  position: absolute;
  bottom: 24px;
  right: 24px;
  width: 60px;
  height: 60px;
  background: transparent url('/common/image/ico/ico_inquiry_arrow.svg') no-repeat center / 25px 10px;
  border: 1px solid #ffffff;
  border: 1px solid var(--color-white);
  border-radius: 50%;
}
@media (min-width: 768px) {
  .c-inquiryBox__button {
    bottom: 6px;
    right: 60px;
    max-width: 72px;
    width: calc((72 / 1440) * 100vw);
    max-height: 72px;
    height: calc((72 / 1440) * 100vw);
    background-size: 30px 12px;
    cursor: pointer
  }
}

/* テスト環境のお申込みについて
---------------------------------------------------------- */
.c-applyBox {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
@media (min-width: 768px) {
  .c-applyBox {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
  }
}
.c-applyBox__head {
  display: grid;
  grid-gap: 18px;
  gap: 18px;
  padding: 24px 24px 18px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-applyBox__head {
    gap: 8px;
    padding: 30px 36px
  }
}
.c-applyBox__title {
  text-align: center;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-applyBox__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-applyBox__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-applyBox__description {
    text-align: center;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-applyBox__list {
  display: grid;
  grid-gap: 48px;
  gap: 48px;
  padding: 24px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-applyBox__list {
    grid-template-columns: 1fr 1fr;
    gap: 72px;
    padding: 36px
  }
}
.c-applyBox__item {
  container: c-applyBoxItem / inline-size;
  position: relative;
}
@media (min-width: 768px) {
  .c-applyBox__item:not(:first-child) {
    padding-top: 0
  }
}
.c-applyBox__item:not(:first-child)::before {
  content: '';
  position: absolute;
  top: -24px;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: 1px dashed #a9babf;
  border-top: 1px dashed var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-applyBox__item:not(:first-child)::before {
    left: -36px;
    width: 1px;
    height: 100%;
    border-top: none;
    border-left: 1px dashed #a9babf;
    border-left: 1px dashed var(--color-gray-medium-light)
  }
}
.c-applyBoxItem__img {
  max-width: 100%;
  width: 100%;
  height: auto;
}
.c-applyBoxItem__list {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  padding: 24px 12px 24px 20px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  border-radius: 8px;
  color: rgba(69, 84, 89, 0.24);
  color: rgba(var(--color-gray-rgb), 0.24);
  list-style: outside;
}
@media (min-width: 768px) {
  .c-applyBoxItem__list {
    gap: 20px;
    width: 100%;
    padding: 32px 12px 32px 37px
  }
}
.c-applyBoxItem__listItem {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-applyBoxItem__listItem {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-applyBoxItem__listText {
  color: #455459;
  color: var(--color-gray);
}

/* ==========================================================================//
// Parts Components（モーダル型）
// ========================================================================== */
/* 基本
---------------------------------------------------------- */
.c-modal__overlay:has(.c-officerModal) {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999999999;
  display: flex;
  align-items: center;
  padding: 30px;
  background: rgba(77, 77, 77, 0.3);
  background: rgba(var(--color-default-rgb), 0.3);
}
@media (min-width: 768px) {
  .c-modal__overlay:has(.c-officerModal) {
    justify-content: flex-end;
    padding: 0
  }
}
.c-modal__container {
  overflow-y: auto;
}
.c-modal__container:has(.c-officerModal) {
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 768px) {
  .c-modal__container:has(.c-officerModal) {
    max-width: 1040px;
    width: 90%;
    margin-left: 0;
    margin-right: 0
  }
}
.c-modal__content {
  height: 100%;
  overflow-y: auto;
}
.c-modal__close {
  background: transparent;
  border: 0;
  cursor: pointer;
}
@media (hover: hover) {
  .c-modal__close:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}

/* モーダルアニメーション keyframe */
@keyframes modalFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes modalFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes modalSlideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes modalSlideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
/* モーダルプラグイン向け設定 */
.c-micromodal__slide {
  display: none;
}
.c-micromodal__slide.is-open {
  display: block;
}
.c-micromodal__slide[aria-hidden='false'] .c-modal__overlay {
  animation: modalFadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-micromodal__slide[aria-hidden='false'] .c-modal__container {
  animation: modalSlideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-micromodal__slide[aria-hidden='true'] .c-modal__overlay {
  animation: modalFadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-micromodal__slide[aria-hidden='true'] .c-modal__container {
  animation: modalSlideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-micromodal__slide .c-modal__container,
.c-micromodal__slide .c-modal__overlay {
  will-change: transform;
}
/* モーダル展開時設定 */
body.is-modalOpen .l-header {
  z-index: 3;
}
body.is-modalOpen .l-main {
  z-index: auto;
}

/* 役員一覧用
---------------------------------------------------------- */
.c-officerModal {
  position: relative;
  height: 100%;
  background: #ffffff url("/common/image/bg/bg_modal_wave.png") no-repeat top right 80px / 140px 900px;
  background: var(--color-white) url("/common/image/bg/bg_modal_wave.png") no-repeat top right 80px / 140px 900px;
}
.c-officerModal__close {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  background: url('/common/image/ico/ico_circle_modal_close.svg') no-repeat center center / 40px;
}
@media (min-width: 768px) {
  .c-officerModal__close {
    top: 48px;
    right: 48px;
    width: 60px;
    height: 60px;
    background-size: contain
  }
}
.c-officerModal__close span {
  display: none;
}
.c-officerModal__profile {
  padding: 72px 30px 30px;
}
@media (min-width: 768px) {
  .c-officerModal__profile {
    padding: 72px 120px 0 96px
  }
}
.c-officerModal__timeline {
  height: 100%;
  padding: 30px 30px 55px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
@media (min-width: 768px) {
  .c-officerModal__timeline {
    margin-top: -86px;
    padding: 146px 120px 55px 96px
  }
}
.c-officerModal__timelineList {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
  padding-bottom: 55px;
  list-style: none;
}

.c-officerTimelineTable th,
.c-officerTimelineTable td {
  color: #455459;
  padding: 16px 0;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #d4dddf;
}

.c-officerTimelineTable tr th {
  white-space: nowrap;
}

.c-officerTimelineTable tr > th:first-child {
  padding-left: 12px;
  padding-right: 12px;
}

.c-officerTimelineTable tr > td {
  padding-left: 36px;
}

/* ==========================================================================//
// Parts Components（リスト型）
// ========================================================================== */
/* お知らせ一覧
---------------------------------------------------------- */
/* お知らせリスト */
.c-infoNewsItem {
  position: relative;
  display: grid;
  align-items: start;
  grid-gap: 12px;
  gap: 12px;
  padding: 16px 0;
  list-style: none;
  border-bottom: 1px solid #e1e8eb;
  border-bottom: 1px solid var(--color-light-blue-gray);
}
@media (min-width: 768px) {
  .c-infoNewsItem {
    grid-template-columns: 86px 1fr;
    gap: 48px;
    padding: 40px 40px 40px 0
  }
}
.c-infoNewsItem__new {
  position: absolute;
  top: 16px;
  right: 0;
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2px 4px;
  background-color: #f3f4f5;
  border: 1.4px solid #b84951;
  border: 1.4px solid var(--color-rouge);
  border-radius: 2.5px;
  color: #b84951;
  color: var(--color-rouge);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .c-infoNewsItem__new {
    top: 44px
  }
}
@media (min-width: 768px) {
  .c-infoNewsItem__head {
    width: 86px
  }
}
.c-infoNewsItem__body {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}
@media (min-width: 768px) {
  .c-infoNewsItem__body {
    gap: 24px
  }
}
.c-infoNewsItem__date {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
  color: #a5a5a5;
  color: var(--color-gray-cool-light);
}
@media (min-width: 768px) {
  .c-infoNewsItem__date {
    font-size: 0.875rem;
    font-size: var(--font-size-14);
    color: rgba(77, 77, 77, 1)
  }
}
.c-infoNewsItem__tagList {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-infoNewsItem__tagList {
    gap: 16px
  }
}
.c-infoNewsItem__icon {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
}
.c-infoNewsItem__title {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-infoNewsItem__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-infoNewsItem__title a {
  transition: all 0.1s ease;
}
.c-infoNewsItem__title a:hover {
  opacity: 0.75;
  -webkit-text-decoration: none;
  text-decoration: none;
}
/* お知らせ用タグ */
.c-tag {
  display: grid;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  padding: 3px 8px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 4px;
  color: #a1a9ab;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .c-tag {
    padding: 6px 12px
  }
}
/* タグ 色種類 */
.c-tag--ir {
  background-color: #42B5AF;
  color: #ffffff;
  color: var(--color-white);
}
.c-tag--news {
  background-color: #449ED0;
  color: #ffffff;
  color: var(--color-white);
}
.c-tag--press {
  background-color: #6A8AD4;
  color: #ffffff;
  color: var(--color-white);
}
.c-tag--white {
  background-color: #ffffff;
  background-color: var(--color-white);
  color: #a1a9ab;
  border: 1px solid #F2F4F5;
}

/* セミナー一覧
---------------------------------------------------------- */
.c-infoSeminarItem {
  display: grid;
  align-items: start;
  grid-gap: 16px;
  gap: 16px;
  padding: 28px 0;
  list-style: none;
}
@media (min-width: 768px) {
  .c-infoSeminarItem {
    grid-template-columns: 260px 1fr;
    gap: 40px;
    padding: 28px 40px 28px 0
  }
}
.c-infoSeminarItem:not(:last-child) {
  border-bottom: 1px solid #e1e8eb;
  border-bottom: 1px solid var(--color-light-blue-gray);
}
.c-infoSeminarItem__head {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (min-width: 768px) {
  .c-infoSeminarItem__head {
    width: 260px
  }
}
.c-infoSeminarItem__body {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}
.c-infoSeminarItem__date {
  display: inline-block;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
  color: rgba(77, 77, 77, 0.75);
  color: rgba(var(--color-default-rgb), var(--opacity-default));
}
.c-infoSeminarItem__category {
  width: min(160px, 100%);
  padding: 7px 10px;
  text-align: center;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
  border-radius: 4px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  letter-spacing: 0.05em;
  color: rgba(77, 77, 77, 0.75);
  color: rgba(var(--color-default-rgb), var(--opacity-default));
}
.c-infoSeminarItem__title {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-infoSeminarItem__title {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-infoSeminarItem__link {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-infoSeminarItem__link {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

/* サービス一覧
---------------------------------------------------------- */
.c-serviceList {
  overflow: hidden;
  list-style-type: none;
  margin-top: -24px;
}
@media (min-width: 768px) {
  .c-serviceList {
    display: flex;
    flex-wrap: wrap;
    margin: -48px -12px 0
  }
}
@media (min-width: 1024px) {
  .c-serviceList {
    margin: -48px -24px 0
  }
}
.c-serviceList__item {
  margin-top: 24px;
}
@media (min-width: 768px) {
  .c-serviceList__item {
    margin-top: 48px;
    width: 50%;
    padding: 0 12px
  }
  .c-serviceList__item > .c-card {
    min-height: 100%;
  }
}
@media (min-width: 1024px) {
  .c-serviceList__item {
    width: 33.33%;
    padding: 0 24px
  }
  .c-serviceList__item:nth-child(3n-1) {
    width: 33.34%;
  }
}
@media (min-width: 768px) {
  .c-serviceItemGrid {
    display: flex;
    flex-wrap: wrap;
    margin: -48px -12px 0
  }
}
@media (min-width: 1024px) {
  .c-serviceItemGrid {
    margin: -48px -24px 0
  }
}
.c-serviceItemGrid__col {
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .c-serviceItemGrid__col {
    padding: 0 12px;
    margin-top: 48px;
    margin-bottom: 0
  }
}
@media (min-width: 1024px) {
  .c-serviceItemGrid__col {
    padding: 0 24px
  }
}
.c-serviceItemGrid__col:last-child {
  margin-bottom: 0;
}
.c-serviceItemGrid + .c-serviceItemGrid {
  margin-top: 30px;
}
@media (min-width: 768px) {
  .c-serviceItemGrid + .c-serviceItemGrid {
    margin-top: -18px
  }
}

/* ３等分 パターン */
@media (min-width: 768px) {
  .c-serviceItemGrid.c-serviceItemGrid--threeEqual .c-serviceItemGrid__col {
    width: 50%
  }
}
@media (min-width: 1024px) {
  .c-serviceItemGrid.c-serviceItemGrid--threeEqual .c-serviceItemGrid__col {
    width: 33.33%
  }
  .c-serviceItemGrid.c-serviceItemGrid--threeEqual .c-serviceItemGrid__col:nth-child(3n-1) {
    width: 33.34%;
  }
}
/* 比率 2:1 パターン */
@media (min-width: 768px) {
  .c-serviceItemGrid.c-serviceItemGrid--ratio2to1 .c-serviceItemGrid__col:nth-child(2n-1) {
    width: 100%
  }
}
@media (min-width: 1024px) {
  .c-serviceItemGrid.c-serviceItemGrid--ratio2to1 .c-serviceItemGrid__col:nth-child(2n-1) {
    width: 66.67%
  }
}
@media (min-width: 768px) {
  .c-serviceItemGrid.c-serviceItemGrid--ratio2to1 .c-serviceItemGrid__col:nth-child(2n) {
    width: 50%
  }
}
@media (min-width: 1024px) {
  .c-serviceItemGrid.c-serviceItemGrid--ratio2to1 .c-serviceItemGrid__col:nth-child(2n) {
    width: 33.33%
  }
}
.c-serviceItem__title {
  margin-bottom: 15px;
  color: #455459;
  color: var(--color-gray);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-serviceItem__title {
    margin-bottom: 25px;
    font-size: 1.25rem;
    font-size: var(--font-size-20);
    min-height: 1.5em
  }
}
.c-serviceItem__note {
  margin-top: 10px;
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-serviceItem__note {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-serviceItem__note + .c-serviceItem__note {
  margin-top: 0;
}
.c-serviceItem__note a {
  color: #005bac;
  color: var(--color-blue);
}
.c-serviceItem__note a:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-serviceItemList {
  list-style-type: none;
  margin-top: -9px;
}
@media (min-width: 768px) {
  .c-serviceItemList {
    display: flex;
    flex-wrap: wrap;
    margin: -48px -12px 0
  }
}
@media (min-width: 1024px) {
  .c-serviceItemList {
    margin: -48px -24px 0
  }
}
.c-serviceItemList__item {
  margin-top: 24px;
}
@media (min-width: 768px) {
  .c-serviceItemList__item {
    flex: 1;
    margin-top: 48px;
    padding: 0 12px
  }
}
@media (min-width: 1024px) {
  .c-serviceItemList__item {
    padding: 0 24px
  }
}

/* 豊富な決済手段（マルペイ）
---------------------------------------------------------- */
.c-paymentList {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  margin: -8px -4px 0;
}
@media (min-width: 1024px) {
  .c-paymentList {
    margin: -12px -6px 0
  }
}
.c-paymentList__item {
  width: 33.33%;
  padding: 0 4px;
  margin-top: 8px;
}
.c-paymentList__item:nth-child(3n-1) {
  width: 33.34%;
}
@media (min-width: 1024px) {
  .c-paymentList__item {
    width: 25%;
    padding: 0 6px;
    margin-top: 12px
  }
  .c-paymentList__item:nth-child(3n-1) {
    width: 25%;
  }
}
.c-paymentButton {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 11px;
  height: 100%;
  padding-top: 12px;
  padding-bottom: 12px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
  border-radius: 6px;
  font-size: 0.6875rem;
  font-size: var(--font-size-11);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-paymentButton {
    flex-direction: row;
    gap: 16px;
    padding: 8px 26px 8px 8px;
    font-size: 0.875rem;
    font-size: var(--font-size-14);
    color: #4d4d4d;
    color: var(--color-default);
    -webkit-text-decoration: none;
    text-decoration: none
  }
}
@media (min-width: 768px) {
  .c-paymentButton::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background: url('/common/image/ico/ico_payment_arrow.svg') no-repeat center / contain
  }
}
@media (hover: hover) {
  .c-paymentButton:where(:link):hover, .c-paymentButton:where(:visited):hover, .c-paymentButton:where(area[href]):hover {
    background-color: #ffffff;
    background-color: var(--color-white);
    color: #005bac;
    color: var(--color-blue);
    box-shadow: 6px 6px 24px 0 rgba(113, 156, 174, 0.24);
    box-shadow: 6px 6px 24px 0 rgba(var(--color-cadet-blue-rgb), 0.24);
  }
  .c-paymentButton:where(:-moz-any-link):hover {
    background-color: #ffffff;
    background-color: var(--color-white);
    color: #005bac;
    color: var(--color-blue);
    box-shadow: 6px 6px 24px 0 rgba(113, 156, 174, 0.24);
    box-shadow: 6px 6px 24px 0 rgba(var(--color-cadet-blue-rgb), 0.24);
  }
  .c-paymentButton:where(:any-link):hover {
    background-color: #ffffff;
    background-color: var(--color-white);
    color: #005bac;
    color: var(--color-blue);
    box-shadow: 6px 6px 24px 0 rgba(113, 156, 174, 0.24);
    box-shadow: 6px 6px 24px 0 rgba(var(--color-cadet-blue-rgb), 0.24);
  }
}
.c-paymentButton__img {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-paymentButton__label {
  text-align: center;
  text-decoration: inherit;
}
@media (min-width: 768px) {
  .c-paymentButton__label {
    text-align: left;
    -webkit-text-decoration: none;
    text-decoration: none
  }
}
.c-paymentButton__label span {
  display: inline-block;
  text-decoration: inherit;
}
.c-paymentButton.c-paymentButton--noLink {
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-paymentButton.c-paymentButton--noLink::after {
  display: none;
}

/* SDGsの取り組み・貢献リスト（サステナビリティ）
---------------------------------------------------------- */
.c-sustainabilitySdgsList {
  display: block;
  list-style: none;
  margin-top: -40px;
}
@media (min-width: 1024px) {
  .c-sustainabilitySdgsList {
    display: grid;
    grid-template-columns: repeat(2, 1fr)
  }
}
.c-sustainabilitySdgsListItem {
  position: relative;
  padding: 20px 20px 0;
  margin-top: 40px;
  border-top: 1px;
  border-right: 0;
  border-bottom: 0;
  border-left: 1px;
  border-style: solid;
  border-color: #d8e8eb;
  border-color: var(--color-soft-aqua);
}
@media (min-width: 768px) {
  .c-sustainabilitySdgsListItem {
    padding: 40px 40px 0
  }
}
.c-sustainabilitySdgsListItem__block {
  display: flex;
}
.c-sustainabilitySdgsListItem__img {
  width: 80px;
  height: 80px;
  margin-right: 24px;
}
@media (min-width: 768px) {
  .c-sustainabilitySdgsListItem__img {
    width: 160px;
    height: 160px
  }
}
.c-sustainabilitySdgsContent__title {
  display: flex;
  align-items: center;
  margin-bottom: 18px;
}
.c-sustainabilitySdgsContent__number {
  font-size: 2.75rem;
  font-size: var(--font-size-44);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 60px;
  text-align: left;
}
@media (min-width: 768px) {
  .c-sustainabilitySdgsContent__number {
    font-size: 3.75rem;
    font-size: var(--font-size-60)
  }
}
.c-sustainabilitySdgsContent__numberText {
  display: inline-block;
  font-style: normal;
  background: -webkit-linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.c-sustainabilitySdgsContent__text {
  display: flex;
  flex-direction: column;
  margin-left: 12px;
}
.c-sustainabilitySdgsContent__textGray {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 14px;
  text-align: left;
  color: #a9babf;
  color: var(--color-gray-medium-light);
}
.c-sustainabilitySdgsContent__textCatchphrase {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 30px;
  letter-spacing: 0.04em;
  text-align: left;
  color: #4d4d4d;
  color: var(--color-default);
}
.c-sustainabilitySdgsContent__list {
  list-style-type: disc;
}
.c-sustainabilitySdgsContent__list--link {
  color: #005bac;
  color: var(--color-blue);
}
.c-sustainabilitySdgsContent__item {
  margin-left: 20px;
}
.c-sustainabilitySdgsContent__list--climate {
  padding: 0px;
  margin: 0px;
  list-style-type: disc;
}
.c-sustainabilitySdgsContent__list--climate > .c-sustainabilitySdgsContent__item--link {
  list-style: none;
  position: relative;
  padding-left: 20px;
}
.c-sustainabilitySdgsContent__list--climate > .c-sustainabilitySdgsContent__item--link::before {
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  width: 0px;
  height: 0px;
  border: 0.3em solid transparent;
  border-left: 0.4em solid #3388dd;
  content: "";
}
.c-sustainabilitySdgs__link {
  color: #005bac;
  color: var(--color-blue);
}
.c-sustainabilitySdgs__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

/* ==========================================================================//
// Parts Components（アコーディオン型）
// ========================================================================== */
/* 基本
---------------------------------------------------------- */
.c-baseAccordion {
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 8px;
}
.c-baseAccordion__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 16px;
  cursor: pointer;
}
@media (min-width: 768px) {
  .c-baseAccordion__summary {
    gap: 16px;
    padding: 24px 20px
  }
}
.c-baseAccordion__title {
  flex: 1;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-baseAccordion__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-baseAccordion__icon {
  width: 12px;
  height: 12px;
  background: url('/common/image/ico/ico_plus.svg') no-repeat center center / contain;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-baseAccordion__icon {
    margin-right: 6px
  }
}
.c-baseAccorion__contents {
  margin-left: 16px;
  margin-right: 16px;
  border-top: 1px solid #a9babf;
  border-top: 1px solid var(--color-gray-medium-light);
  overflow: hidden;
}
@media (min-width: 768px) {
  .c-baseAccorion__contents {
    margin-left: 20px;
    margin-right: 20px
  }
}
.c-baseAccorion__inner {
  padding: 18px;
}
@media (min-width: 768px) {
  .c-baseAccorion__inner {
    padding: 24px
  }
}

/* open */
.c-baseAccordion[open] .c-baseAccordion__icon {
  background-image: url('/common/image/ico/ico_minus.svg');
}
/* 色パターン */
.c-baseAccordion--gray {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
/* wysiwygエディタ（コンテンツ本文）用 */
.c-baseAccorion__inner > * + * {
  margin-top: 12px;
}
.c-baseAccorion__inner p {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-baseAccorion__inner p {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-baseAccorion__inner a {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-baseAccorion__inner a {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
@media (hover: hover) {
  .c-baseAccorion__inner a:where(:link, :enabled):hover, .c-baseAccorion__inner a:where(:visited, :enabled):hover, .c-baseAccorion__inner a:where(area[href], :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
  .c-baseAccorion__inner a:where(:-moz-any-link, :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
  .c-baseAccorion__inner a:where(:any-link, :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
}

/* セキュリティソリューションの導入をサポート（マルペイ）
---------------------------------------------------------- */
.c-flowAccordion {
  position: relative;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 8px;
}
.c-flowAccordion--noAccordion .c-flowAccordion__summary {
  cursor: default;
}
.c-flowAccordion--gray {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-flowAccordion[open] .c-flowAccordion__icon {
  background-image: url('/common/image/ico/ico_minus.svg');
}
.c-flowAccordion + .c-flowAccordion {
  margin-top: 16px;
}
@media (min-width: 768px) {
  .c-flowAccordion + .c-flowAccordion {
    margin-top: 24px
  }
}
.c-flowAccordion + .c-flowAccordion::before {
  content: '';
  position: absolute;
  top: -24px;
  left: 40px;
  z-index: 2;
  width: 1px;
  height: 24px;
  background-color: #455459;
  background-color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-flowAccordion + .c-flowAccordion::before {
    top: -36px;
    left: 50px;
    height: 36px;
    background-color: #a9babf;
    background-color: var(--color-gray-medium-light)
  }
}
.c-flowAccordion__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 16px;
  cursor: pointer;
}
@media (min-width: 768px) {
  .c-flowAccordion__summary {
    gap: 16px;
    padding: 24px 20px 24px 92px
  }
}
.c-flowAccordion__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
@media (min-width: 768px) {
  .c-flowAccordion__head {
    flex-direction: row;
    align-items: center;
    gap: 16px
  }
}
.c-flowAccordion__title {
  position: relative;
  flex: 1;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-flowAccordion__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
@media (min-width: 768px) {
  .c-flowAccordion__title::before {
    content: 'FLOW';
    position: absolute;
    top: 0;
    left: -68px;
    padding: 6px;
    border: 1px solid #a9babf;
    border: 1px solid var(--color-gray-medium-light);
    border-radius: 4px;
    font-family: "Marcellus", serif;
    font-family: var(--font-family-en);
    font-size: 0.8125rem;
    font-size: var(--font-size-13);
    font-weight: 400;
    font-weight: var(--font-weight-regular);
    line-height: 1;
    color: #a9babf;
    color: var(--color-gray-medium-light)
  }
}
.c-flowAccordion__tagList {
  display: flex;
  gap: 8px;
}
.c-flowAccordion__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2.5px 6px;
  border-radius: 4px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-flowAccordion__tag {
    padding: 3px 8px;
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-flowAccordion__tag--blue {
  background-color: rgba(0, 91, 172, 0.72);
  background-color: rgba(var(--color-blue-rgb), 0.72);
}
.c-flowAccordion__tag--gray {
  background-color: #455459;
  background-color: var(--color-gray);
}
.c-flowAccordion__tag--blueGray {
  background-color: #628e99;
  background-color: var(--color-blue-gray);
}
.c-flowAccordion__icon {
  width: 12px;
  height: 12px;
  background: url('/common/image/ico/ico_plus.svg') no-repeat center center / contain;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-flowAccordion__icon {
    margin-right: 6px
  }
}
.c-flowAccordion__contents {
  margin-left: 16px;
  margin-right: 16px;
  border-top: 1px solid #a9babf;
  border-top: 1px solid var(--color-gray-medium-light);
  overflow: hidden;
}
@media (min-width: 768px) {
  .c-flowAccordion__contents {
    margin-left: 24px;
    margin-right: 24px
  }
}
.c-flowAccordion__inner {
  padding-top: 18px;
  padding-bottom: 18px;
}
@media (min-width: 768px) {
  .c-flowAccordion__inner {
    padding-top: 24px;
    padding-bottom: 24px
  }
}
/* wysiwygエディタ（コンテンツ本文）用 */
.c-flowAccordion__inner > * + * {
  margin-top: 12px;
}
.c-flowAccordion__inner p {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-flowAccordion__inner p {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-flowAccordion__inner a {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-flowAccordion__inner a {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
@media (hover: hover) {
  .c-flowAccordion__inner a:where(:link, :enabled):hover, .c-flowAccordion__inner a:where(:visited, :enabled):hover, .c-flowAccordion__inner a:where(area[href], :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
  .c-flowAccordion__inner a:where(:-moz-any-link, :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
  .c-flowAccordion__inner a:where(:any-link, :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
}

/* FAQ用
---------------------------------------------------------- */
.c-faqAccordion {
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 8px;
}
.c-faqAccordion__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 16px 18px 52px;
  cursor: pointer;
}
@media (min-width: 768px) {
  .c-faqAccordion__summary {
    gap: 16px;
    padding: 24px 20px 24px 72px
  }
}
.c-faqAccordion__title {
  position: relative;
  flex: 1;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-faqAccordion__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-faqAccordion__title::before {
  content: 'Q';
  position: absolute;
  top: 0;
  left: -36px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.375rem;
  font-size: var(--font-size-22);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
  color: #005bac;
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .c-faqAccordion__title::before {
    top: -4px;
    left: -48px;
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-faqAccordion__icon {
  width: 12px;
  height: 12px;
  background: url('/common/image/ico/ico_plus.svg') no-repeat center center / contain;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-faqAccordion__icon {
    margin-right: 6px
  }
}
.c-faqAccorion__contents {
  margin-left: 16px;
  margin-right: 16px;
  border-top: 1px solid #a9babf;
  border-top: 1px solid var(--color-gray-medium-light);
  overflow: hidden;
}
@media (min-width: 768px) {
  .c-faqAccorion__contents {
    margin-left: 24px;
    margin-right: 24px
  }
}
.c-faqAccorion__inner {
  position: relative;
  padding: 18px 0 18px 36px;
}
@media (min-width: 768px) {
  .c-faqAccorion__inner {
    padding: 24px 0 24px 48px
  }
}
.c-faqAccorion__inner::before {
  content: 'A';
  position: absolute;
  top: 18px;
  left: 2px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.375rem;
  font-size: var(--font-size-22);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
  color: #005bac;
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .c-faqAccorion__inner::before {
    top: 24px;
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}

/* open */
.c-faqAccordion[open] .c-faqAccordion__icon {
  background-image: url('/common/image/ico/ico_minus.svg');
}
/* 色パターン */
.c-faqAccordion--gray {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
/* wysiwygエディタ（コンテンツ本文）用 */
.c-faqAccorion__inner > * + * {
  margin-top: 12px;
}
.c-faqAccorion__inner p {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-faqAccorion__inner p {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-faqAccorion__inner a {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-faqAccorion__inner a {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
@media (hover: hover) {
  .c-faqAccorion__inner a:where(:link, :enabled):hover, .c-faqAccorion__inner a:where(:visited, :enabled):hover, .c-faqAccorion__inner a:where(area[href], :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
  .c-faqAccorion__inner a:where(:-moz-any-link, :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
  .c-faqAccorion__inner a:where(:any-link, :enabled):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }
}

.c-faqList {
  list-style-type: none;
}

.c-faqList__item {
  margin-bottom: 16px;
}

.c-faqList__item:last-child {
  margin-bottom: 0;
}


/* ==========================================================================//
// Parts Components（スライダー型）
// ========================================================================== */
/* プラグイン設定
---------------------------------------------------------- */
.splide {
  padding-bottom: 52px;
}
@media (min-width: 768px) {
  .splide {
    padding-bottom: 100px
  }
}
:has(.splide[data-slider='caseStudy']) .splide__arrow {
  color: #005bac;
  color: var(--color-blue);
}
:has(.splide[data-slider='caseStudy']) .splide__arrow::before {
  color: #005bac;
  color: var(--color-blue);
}
.splide__track {
  margin-left: calc(-8.67% / 2);
  margin-right: calc(-8.67% / 2);
}
@media (min-width: 768px) {
  .splide__track {
    margin-left: 0;
    margin-right: 0
  }
}
.splide__arrows {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  width: 100%;
}
@media (min-width: 768px) {
  .splide__arrows {
    left: 0;
    transform: translateX(0);
    gap: 48px;
    width: auto
  }
}
.splide__arrow {
  position: relative;
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: all 0.3s ease;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
}
.splide__arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 12px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  background-color: currentColor;
}
.splide__arrow--prev {
  padding-left: 20px;
}
@media (min-width: 768px) {
  .splide__arrow--prev {
    padding-left: 36px
  }
}
.splide__arrow--prev::before {
  left: 0;
  -webkit-mask-image: url('/common/image/ico/ico_slider_arrow_prev.svg');
  mask-image: url('/common/image/ico/ico_slider_arrow_prev.svg');
}
.splide__arrow--next {
  padding-right: 20px;
}
@media (min-width: 768px) {
  .splide__arrow--next {
    padding-right: 36px
  }
}
.splide__arrow--next::before {
  right: 0;
  -webkit-mask-image: url('/common/image/ico/ico_slider_arrow_next.svg');
  mask-image: url('/common/image/ico/ico_slider_arrow_next.svg');
}
@media (hover: hover) {
  .splide__arrow:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.splide__arrow > span {
  display: none;
}
@media (min-width: 768px) {
  .splide__arrow > span {
    display: block
  }
}
.splide__pagination > li {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
}
.splide__pagination__page {
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 24px;
  height: 2px;
  margin: 0 4px;
  background-color: rgba(0, 91, 172, 0.2);
  background-color: rgba(var(--color-blue-rgb), 0.2);
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .splide__pagination__page {
    width: 65px
  }
}
.splide__pagination__page.is-active {
  background-color: #005bac;
  background-color: var(--color-blue);
}
@media (hover: hover) {
  .splide__pagination__page:hover {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
}
.splide__toggle {
  position: relative;
  width: 28px;
  height: 16px;
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .splide__toggle:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.splide__toggle__pause::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 28px;
  height: 16px;
  background: url('/common/image/ico/ico_slider_pause.svg') no-repeat top left / contain;
}
.splide__toggle__play::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 28px;
  height: 16px;
  background: url('/common/image/ico/ico_slider_play.svg') no-repeat top left / contain;
}
.splide__toggle__text {
  display: none;
}

/* 導入事例（先頭アイテムが大きいVer）
---------------------------------------------------------- */
.c-customerSuccessSlider {
  padding-left: 16px;
  margin-bottom: 60px;
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider {
    width: 100%;
    padding: 0;
    margin: 0 auto 120px
  }
}
@media (min-width: 1240px) {
  .c-customerSuccessSlider .splide {
    padding-bottom: 0
  }
}
.c-customerSuccessSlider .splide__slide {
  display: grid;
  align-content: center;
  justify-content: center;
  place-content: center;
  width: 53.6vw !important;
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider .splide__slide {
    width: 435px !important
  }
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide .c-caseStydyCard__industry {
    padding-top: 8px;
    padding-bottom: 7px;
    font-size: 0.8125rem;
    font-size: var(--font-size-13)
  }
}
.c-customerSuccessSlider .splide__slide .c-caseStydyCard__label {
  font-size: 0.625rem;
  font-size: var(--font-size-10);
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide .c-caseStydyCard__label {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-customerSuccessSlider .splide__slide .c-caseStydyCard__title {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide .c-caseStydyCard__title {
    font-size: 1.125rem;
    font-size: var(--font-size-18)
  }
}
.c-customerSuccessSlider .splide__slide .c-caseStydyCard__item {
  font-size: 0.6875rem;
  font-size: var(--font-size-11);
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide .c-caseStydyCard__item {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-customerSuccessSlider .splide__slide.is-active {
  width: 78.67vw !important;
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider .splide__slide.is-active {
    width: 560px !important
  }
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__industry {
    padding-top: 9px;
    padding-bottom: 9px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__label {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__label {
    padding-top: 16px;
    padding-bottom: 16px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__list {
    margin-top: 16px
  }
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__item {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-customerSuccessSlider .splide__slide.is-active .c-caseStydyCard__link[target='_blank']::after {
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border-radius: 6px;
}
.c-customerSuccessSlider .splide__list {
  align-items: flex-start !important;
}
.c-customerSuccessSlider .splide__track {
  margin-left: 0;
}
.c-customerSuccessSlider .splide__arrows {
  z-index: 1;
  left: 0;
  transform: none;
  width: calc(100% - 48px);
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__arrows {
    left: 50%;
    transform: translateX(-50%);
    width: -moz-max-content;
    width: max-content
  }
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider .splide__arrows {
    left: auto;
    transform: none;
    right: auto;
    width: calc(100vw - 112px);
    max-width: 1200px;
    margin: 0 auto;
    justify-content: flex-end
  }
}
.c-customerSuccessSlider .splide__arrow {
  color: #005bac;
  color: var(--color-blue);
}
.c-customerSuccessSlider .splide__pagination {
  flex: 1;
  gap: 4px;
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider .splide__pagination {
    flex: none
  }
}
.c-customerSuccessSlider .splide__pagination > li {
  flex: 1;
}
.c-customerSuccessSlider .splide__pagination__page {
  width: 100%;
}
@media (min-width: 768px) {
  .c-customerSuccessSlider .splide__pagination__page {
    min-width: 100%;
    width: 65px
  }
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider__inner {
    max-width: calc(1200px + 112px);
    padding-left: 56px;
    margin: 0 auto
  }
}
.c-customerSuccessSlider__contents {
  width: 100vw;
}
@media (min-width: 1024px) {
  .c-customerSuccessSlider__contents {
    margin-left: calc(50% - 50vw);
    padding-left: calc(50vw - 50%)
  }
}

/* ==========================================================================//
// Parts Components（Grid型）
// ========================================================================== */
.c-grid {
  --auto-repeat: var(--auto-repeat, auto-fit);
  --item-width: var(--item-width, 1fr);
  --item-width-pc: var(--item-width-pc, 1fr);
  --column-gap: var(--column-gap, 0);
  --column-gap-pc: var(--column-gap-pc, 0);
  --row-gap: var(--row-gap, 0);
  --row-gap-pc: var(--row-gap-pc, 0);
  display: grid;
  grid-template-columns: repeat(var(--auto-repeat, auto-fit), minmax(var(--item-width, 1fr), 1fr));
  grid-template-columns: repeat(var(--auto-repeat), minmax(var(--item-width), 1fr));
  grid-column-gap: var(--column-gap, 0);
  grid-column-gap: var(--column-gap);
  -moz-column-gap: var(--column-gap, 0);
  column-gap: var(--column-gap, 0);
  -moz-column-gap: var(--column-gap);
  column-gap: var(--column-gap);
  grid-row-gap: var(--row-gap, 0);
  grid-row-gap: var(--row-gap);
  row-gap: var(--row-gap, 0);
  row-gap: var(--row-gap);
  list-style: none;
}
@media (min-width: 768px) {
  .c-grid {
    grid-template-columns: repeat(var(--auto-repeat), minmax(var(--item-width-pc), 1fr));
    -moz-column-gap: var(--column-gap-pc);
    column-gap: var(--column-gap-pc);
    row-gap: var(--row-gap-pc)
  }
}
.c-grid--col1 {
  --auto-repeat: auto-fit;
  --item-width: 100%;
}
@media (min-width: 768px) {
  .c-grid--colPc1 {
    --auto-repeat: auto-fit;
    --item-width-pc: 100%
  }
}
.c-grid--col2 {
  --auto-repeat: auto-fit;
  --item-width: calc(50% - var(--column-gap) / 2);
}
@media (min-width: 768px) {
  .c-grid--colPc2 {
    --auto-repeat: auto-fit;
    --item-width-pc: calc(50% - var(--column-gap-pc) / 2)
  }
}
.c-grid--col3 {
  --auto-repeat: auto-fit;
  --item-width: calc(100% / 3 - var(--column-gap));
}
@media (min-width: 768px) {
  .c-grid--colPc3 {
    --auto-repeat: auto-fit;
    --item-width-pc: calc(100% / 3 - var(--column-gap-pc))
  }
}
.c-grid--col4 {
  --auto-repeat: auto-fit;
  --item-width: calc(100% / 4 - var(--column-gap));
}
@media (min-width: 768px) {
  .c-grid--colPc4 {
    --auto-repeat: auto-fit;
    --item-width-pc: calc(100% / 4 - var(--column-gap-pc))
  }
}
.c-grid--colGap4,
.c-grid--colGaPc4 {
  --column-gap: 4px;
  --column-gap-pc: 4px;
}
.c-grid--colGap8,
.c-grid--colGaPc8 {
  --column-gap: 8px;
  --column-gap-pc: 8px;
}
.c-grid--colGap12,
.c-grid--colGapPc12 {
  --column-gap: 12px;
  --column-gap-pc: 12px;
}
.c-grid--colGap16,
.c-grid--colGapPc16 {
  --column-gap: 16px;
  --column-gap-pc: 16px;
}
.c-grid--colGap20,
.c-grid--colGapPc20 {
  --column-gap: 20px;
  --column-gap-pc: 20px;
}
.c-grid--colGap24,
.c-grid--colGapPc24 {
  --column-gap: 24px;
  --column-gap-pc: 24px;
}
.c-grid--colGap28,
.c-grid--colGapPc28 {
  --column-gap: 28px;
  --column-gap-pc: 28px;
}
.c-grid--colGap32,
.c-grid--colGapPc32 {
  --column-gap: 32px;
  --column-gap-pc: 32px;
}
.c-grid--colGap36,
.c-grid--colGapPc36 {
  --column-gap: 36px;
  --column-gap-pc: 36px;
}
.c-grid--colGap40,
.c-grid--colGapPc40 {
  --column-gap: 40px;
  --column-gap-pc: 40px;
}
.c-grid--colGap44,
.c-grid--colGapPc44 {
  --column-gap: 44px;
  --column-gap-pc: 44px;
}
.c-grid--colGap48,
.c-grid--colGapPc48 {
  --column-gap: 48px;
  --column-gap-pc: 48px;
}
.c-grid--colGap52,
.c-grid--colGapPc52 {
  --column-gap: 52px;
  --column-gap-pc: 52px;
}
.c-grid--colGap56,
.c-grid--colGapPc56 {
  --column-gap: 56px;
  --column-gap-pc: 56px;
}
.c-grid--colGap60,
.c-grid--colGapPc60 {
  --column-gap: 60px;
  --column-gap-pc: 60px;
}
.c-grid--colGap64,
.c-grid--colGapPc64 {
  --column-gap: 64px;
  --column-gap-pc: 64px;
}
.c-grid--colGap68,
.c-grid--colGapPc68 {
  --column-gap: 68px;
  --column-gap-pc: 68px;
}
.c-grid--colGap72,
.c-grid--colGapPc72 {
  --column-gap: 72px;
  --column-gap-pc: 72px;
}
.c-grid--colGap76,
.c-grid--colGapPc76 {
  --column-gap: 76px;
  --column-gap-pc: 76px;
}
.c-grid--colGap80,
.c-grid--colGapPc80 {
  --column-gap: 80px;
  --column-gap-pc: 80px;
}
.c-grid--rowGap4,
.c-grid--rowGaPc4 {
  --row-gap: 4px;
  --row-gap-pc: 4px;
}
.c-grid--rowGap8,
.c-grid--rowGaPc8 {
  --row-gap: 8px;
  --row-gap-pc: 8px;
}
.c-grid--rowGap12,
.c-grid--rowGapPc12 {
  --row-gap: 12px;
  --row-gap-pc: 12px;
}
.c-grid--rowGap16,
.c-grid--rowGapPc16 {
  --row-gap: 16px;
  --row-gap-pc: 16px;
}
.c-grid--rowGap20,
.c-grid--rowGapPc20 {
  --row-gap: 20px;
  --row-gap-pc: 20px;
}
.c-grid--rowGap24,
.c-grid--rowGapPc24 {
  --row-gap: 24px;
  --row-gap-pc: 24px;
}
.c-grid--rowGap28,
.c-grid--rowGapPc28 {
  --row-gap: 28px;
  --row-gap-pc: 28px;
}
.c-grid--rowGap32,
.c-grid--rowGapPc32 {
  --row-gap: 32px;
  --row-gap-pc: 32px;
}
.c-grid--rowGap36,
.c-grid--rowGapPc36 {
  --row-gap: 36px;
  --row-gap-pc: 36px;
}
.c-grid--rowGap40,
.c-grid--rowGapPc40 {
  --row-gap: 40px;
  --row-gap-pc: 40px;
}
.c-grid--rowGap44,
.c-grid--rowGapPc44 {
  --row-gap: 44px;
  --row-gap-pc: 44px;
}
.c-grid--rowGap48,
.c-grid--rowGapPc48 {
  --row-gap: 48px;
  --row-gap-pc: 48px;
}
.c-grid--rowGap52,
.c-grid--rowGapPc52 {
  --row-gap: 52px;
  --row-gap-pc: 52px;
}
.c-grid--rowGap56,
.c-grid--rowGapPc56 {
  --row-gap: 56px;
  --row-gap-pc: 56px;
}
.c-grid--rowGap60,
.c-grid--rowGapPc60 {
  --row-gap: 60px;
  --row-gap-pc: 60px;
}
.c-grid--rowGap64,
.c-grid--rowGapPc64 {
  --row-gap: 64px;
  --row-gap-pc: 64px;
}
.c-grid--rowGap68,
.c-grid--rowGapPc68 {
  --row-gap: 68px;
  --row-gap-pc: 68px;
}
.c-grid--rowGap72,
.c-grid--rowGapPc72 {
  --row-gap: 72px;
  --row-gap-pc: 72px;
}
.c-grid--rowGap76,
.c-grid--rowGapPc76 {
  --row-gap: 76px;
  --row-gap-pc: 76px;
}
.c-grid--rowGap80,
.c-grid--rowGapPc80 {
  --row-gap: 80px;
  --row-gap-pc: 80px;
}

/* ==========================================================================//
// Parts Components（フォーム）
// ========================================================================== */
/* checkbox
---------------------------------------------------------- */
.c-checkBoxLabel {
  display: inline-flex;
  gap: 8px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: #455459;
  color: var(--color-gray);
  cursor: pointer;
}
@media (min-width: 768px) {
  .c-checkBoxLabel {
    font-size: 0.8125rem;
    font-size: var(--font-size-13)
  }
}
.c-checkBox {
  position: relative;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 2px solid #a9babf;
  border: 2px solid var(--color-gray-medium-light);
  border-radius: 3px;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media (min-width: 768px) {
  .c-checkBox {
    width: 20px;
    height: 20px;
    border-radius: 3px
  }
}
.c-checkBox:checked {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  border: none;
}
.c-checkBox:checked::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 6px;
  background: url('/common/image/ico/ico_checkbox_checked.svg') no-repeat top center / 8px;
}
@media (min-width: 768px) {
  .c-checkBox:checked::before {
    width: 10px;
    height: 7px;
    background-size: 10px
  }
}

/* select
---------------------------------------------------------- */
.c-select {
  width: 60px;
  height: 30px;
  background: #ffffff url('/common/image/ico/ico_select_arrow.svg') no-repeat center right 7px;
  background: var(--color-white) url('/common/image/ico/ico_select_arrow.svg') no-repeat center right 7px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
  border-radius: 4px;
  text-align: center;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #4d4d4d;
  color: var(--color-default);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media (min-width: 768px) {
  .c-select {
    width: 70px
  }
}

/* クーポン選択（checkbox）
---------------------------------------------------------- */
.c-couponCheckBoxes {
  display: grid;
  padding: 24px 16px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
@media (min-width: 768px) {
  .c-couponCheckBoxes {
    grid-template-columns: 252px 1fr;
    gap: 100px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 40px
  }
}
.c-couponCheckBoxes__fieldset {
  display: contents;
  border: none;
}
.c-couponCheckBoxes__legend {
  max-width: 252px;
  margin-left: auto;
  margin-right: auto;
}
.c-couponCheckBoxes__legend img {
  width: 100%;
  height: auto;
}
.c-couponCheckBoxes__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
  gap: 20px;
  margin-top: 24px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-couponCheckBoxes__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    grid-gap: 24px;
    gap: 24px;
    margin-top: 0
  }
}
.c-selectedCoupons {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
  padding: 24px 20px 30px 20px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
@media (min-width: 768px) {
  .c-selectedCoupons {
    max-width: 960px;
    padding: 42px 40px 60px 40px
  }
}
.c-selectedCoupons__list {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
  list-style: none;
}
.c-selectedCouponsTitle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 16px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  font-size: 1.375rem;
  font-size: var(--font-size-22);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-selectedCouponsTitle {
    gap: 24px;
    padding-bottom: 20px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.c-selectedCouponsTable {
  width: 100%;
  border-collapse: collapse;
  color: #4d4d4d;
  color: var(--color-default);
}
.c-selectedCouponsTable__caption {
  margin-bottom: 12px;
  text-align: left;
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-selectedCouponsTable__caption {
    margin-bottom: 22px
  }
}
.c-selectedCouponsTable__caption--note {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  display: block;
}
.c-selectedCouponsTable th,
.c-selectedCouponsTable td {
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  padding: 6px;
  text-align: center;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .c-selectedCouponsTable th,
  .c-selectedCouponsTable td {
    width: 252px;
    padding: 16px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
@media (min-width: 768px) {
  .c-selectedCouponsTable th:first-child, .c-selectedCouponsTable td:first-child {
    width: 124px
  }
}
.c-selectedCouponsTable th {
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  border: 1px solid #d8e8eb;
  border: 1px solid var(--color-soft-aqua);
  border-right: 1px solid #ffffff;
  border-right: 1px solid var(--color-white);
  border-bottom: 1px solid #d8e8eb;
  border-bottom: 1px solid var(--color-soft-aqua);
}
.c-selectedCouponsTable th:last-child {
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
  border-top: 1px solid #a9babf;
  border-top: 1px solid var(--color-gray-medium-light);
  border-right: 1px solid #a9babf;
  border-right: 1px solid var(--color-gray-medium-light);
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  color: #ffffff;
  color: var(--color-white);
}
.c-selectedCouponsTable td {
  background-color: #ffffff;
  background-color: var(--color-white);
}
.c-selectedCouponsTable tbody > tr > td {
  border-top: none;
}
.c-selectedCouponsTable__discountEm {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #b84951;
  color: var(--color-rouge);
  font-style: normal;
}
@media (min-width: 768px) {
  .c-selectedCouponsTable__discountEm {
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.c-selectedCouponsTable__discountRate {
  display: block;
  margin-top: 3px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #b84951;
  color: var(--color-rouge);
}
@media (min-width: 768px) {
  .c-selectedCouponsTable__discountRate {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-selectedCouponsTable__discountNote {
  display: block;
  margin-top: 3px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.2;
}
@media (min-width: 768px) {
  .c-selectedCouponsTable__discountNote {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}
.c-selectedCouponsTable__quantityItem {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
}
@media (min-width: 768px) {
  .c-selectedCouponsTable__quantityItem {
    flex-direction: row;
    gap: 24px
  }
}
.c-selectedCouponsTable__quantityItem:not(:first-child) {
  margin-top: 11px;
}

/* SSLクーポンステップナビ
---------------------------------------------------------- */
.c-formStep {
  padding: 24px 0 224px;
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
}
@media (min-width: 768px) {
  .c-formStep {
    padding: 48px 0 224px
  }
}
@media (min-width: 768px) {
  .c-formStep__inner {
    max-width: 1200px;
    margin: 0 auto
  }
}
.c-formStep__list {
  display: grid;
  grid-gap: 45px;
  gap: 45px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-formStep__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 0
  }
}
.c-formStep__item {
  position: relative;
}
@media (min-width: 768px) {
  .c-formStep__item {
    padding-right: 26px;
    padding-left: 26px
  }
}
@media (min-width: 1024px) {
  .c-formStep__item {
    padding-right: 54px;
    padding-left: 54px
  }
}
.c-formStep__item:first-child {
  padding-top: 20px;
}
@media (min-width: 768px) {
  .c-formStep__item:first-child {
    padding-top: 0;
    padding-left: 30px
  }
}
@media (min-width: 1024px) {
  .c-formStep__item:first-child {
    padding-left: 60px
  }
}
.c-formStep__item:first-child:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #ffffff;
  background-color: var(--color-white);
  display: none;
}
@media (min-width: 768px) {
  .c-formStep__item:first-child:before {
    top: 50%;
    transform: translateY(-50%);
    width: 2px;
    height: 66px;
    display: block
  }
}
@media (min-width: 1024px) {
  .c-formStep__item:first-child:before {
    height: 96px
  }
}
.c-formStep__item:not(:last-child)::after {
  content: '';
  position: absolute;
  bottom: -48px;
  left: 64px;
  width: 12px;
  height: 48px;
  background: url('/common/image/ico/ico_formStep_arrow.svg') no-repeat center center / contain;
  transform: rotate(90deg) translateX(-50%);
}
@media (min-width: 768px) {
  .c-formStep__item:not(:last-child)::after {
    top: 50%;
    bottom: auto;
    right: 0;
    left: auto;
    width: 24px;
    height: 66px;
    transform: rotate(0) translateY(-50%)
  }
}
@media (min-width: 1024px) {
  .c-formStep__item:not(:last-child)::after {
    width: 24px;
    height: 96px
  }
}
.c-formStepItem {
  position: relative;
  display: flex;
  align-items: flex-start;
  padding: 0 20px;
}
@media (min-width: 768px) {
  .c-formStepItem {
    display: grid;
    left: 50%;
    transform: translateX(-50%);
    padding: 0
  }
}
.c-formStepItem__num {
  position: relative;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 2rem;
  font-size: var(--font-size-32);
  line-height: 1;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0.1;
  min-width: 110px;
}
@media (min-width: 768px) {
  .c-formStepItem__num {
    font-size: 5.25rem;
    font-size: var(--font-size-84);
    font-size: clamp(2.5rem, -0.6429rem + 6.5476vw, 5.25rem)
  }
}
.c-formStepItem__num span {
  position: relative;
  padding-left: 20px;
  font-size: 2.5rem;
  font-size: var(--font-size-40);
  line-height: 1;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (min-width: 768px) {
  .c-formStepItem__num span {
    padding-left: 40px;
    font-size: 6.75rem;
    font-size: var(--font-size-108);
    font-size: clamp(3.25rem, -0.75rem + 8.3333vw, 6.75rem)
  }
}
.c-formStepItem__num span::before {
  content: '';
  position: absolute;
  bottom: 10px;
  left: 0;
  width: 12px;
  height: 2px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
@media (min-width: 768px) {
  .c-formStepItem__num span::before {
    bottom: 30px;
    width: 32px;
    height: 4px
  }
}
.c-formStepItem__title {
  margin-top: 5px;
  margin-left: 20px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-formStepItem__title {
    position: absolute;
    top: 0;
    margin-top: 0;
    font-size: clamp(0.625rem, 0.1964rem + 0.8929vw, 1rem)
  }
}
@media (min-width: 1024px) {
  .c-formStepItem__title {
    top: 10px
  }
}
.c-formStepItem__title.is-active {
  color: #455459;
  color: var(--color-gray);
}

/* サービス・特徴から探すBOX（成功事例）
---------------------------------------------------------- */
.c-searchArticleBox {
  margin-bottom: 80px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-searchArticleBox__heading {
  padding: 16px 16px 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-searchArticleBox__heading {
    padding: 40px 32px 18px
  }
}
.c-searchArticleBox__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-searchArticleBox__title {
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.c-searchArticleBox__body {
  margin-bottom: 24px;
  padding: 0 16px;
}
@media (min-width: 768px) {
  .c-searchArticleBox__body {
    margin-bottom: 20px;
    padding: 16px 36px 0
  }
}
.c-searchArticleBox__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px 16px;
}
@media (min-width: 768px) {
  .c-searchArticleBox__bottom {
    padding: 0 56px 20px
  }
}
.c-searchArticleBox__number {
  color: #9ba4a6;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-searchArticleBox__number {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-searchArticleBox__button {
  width: 155px;
}
@media (min-width: 768px) {
  .c-searchArticleBox__button {
    width: 180px
  }
}
.c-searchArticleBoxList__item {
  padding: 24px 0;
}
@media (min-width: 768px) {
  .c-searchArticleBoxList__item {
    display: flex;
    align-items: flex-start;
    padding: 20px 0
  }
}
.c-searchArticleBoxList__item:not(:first-child) {
  border-top: 1px solid #d4dddf;
  border-top: 1px solid var(--color-pale-aqua);
}
.c-searchArticleBoxList__title {
  margin-bottom: 12px;
  color: #455459;
  color: var(--color-gray);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .c-searchArticleBoxList__title {
    width: 176px;
    padding-left: 20px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
@media (min-width: 768px) {
  .c-searchArticleBoxList__content {
    flex: 1
  }
}

.c-searchArticleBoxSub {
  overflow: hidden;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 5px;
}

@media (min-width: 768px) {

  .c-searchArticleBoxSub {
    border-radius: 8px
  }
}

.c-searchArticleBoxSub__title {
  position: relative;
  padding: 14px 35px 14px 20px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  cursor: pointer;
}

@media (min-width: 768px) {

  .c-searchArticleBoxSub__title {
    padding: 16px 40px 16px 20px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}

.c-searchArticleBoxSub__title::before,
.c-searchArticleBoxSub__title::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 10px;
  height: 2px;
  background-color: #005bac;
  background-color: var(--color-blue);
}

.c-searchArticleBoxSub__title::after {
  transform: rotate(90deg);
}

.c-searchArticleBoxSub__content {
  position: relative;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease-out;
}

.c-searchArticleBoxSub__content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  width: calc(100% - 40px);
  height: 1px;
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
}

.c-searchArticleBoxSub__inner {
  padding: 16px 20px;
}
.c-searchArticleBoxSub__title.is-active + .c-searchArticleBoxSub__content {
  max-height: inherit;
}
.c-searchArticleBoxSub__title.is-active::after {
  opacity: 0;
}

.c-searchArticleBoxSub--news {
  margin-bottom: 48px;
}

.c-list-checkboxes {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
  column-gap: 20px;
  row-gap: 12px;
  list-style-type: none;
}

.c-list-checkboxes__item {

}

.c-searchSelect {
  overflow: hidden;
  width: 100%;
  height: 48px;
  background: #ffffff url(/common/image/ico/ico_select_arrow.svg) no-repeat center right 7px;
  background: var(--color-white) url(/common/image/ico/ico_select_arrow.svg) no-repeat center right 7px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
  border-radius: 4px;
}

.c-searchSelect__input {
  width: 100%;
  height: 100%;
  padding: 5px 40px 5px 16px;
  font-size: 16px;;
  font-weight: 700;;
  font-weight: var(--font-weight-bold);
  color: #4d4d4d;
  color: var(--color-default);
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  transform: scale(0.875);
  transform-origin: left center;
}

.c-searchSelect.c-searchSelect--year {
  max-width: 240px;
}

/* ==========================================================================//
// Parts Components（その他）
// ========================================================================== */
/* お役立ち情報
---------------------------------------------------------- */
.c-useful {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
}
@media (min-width: 768px) {
  .c-useful {
    gap: 48px
  }
}
.c-useful__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-useful__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.c-useful__list {
  display: flex;
  gap: 40px;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .c-useful__list {
    flex-direction: row
  }
}
@media (min-width: 1240px) {
  .c-useful__list {
    gap: 80px
  }
}
.c-useful__listItem {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
}
@media (min-width: 768px) {
  .c-useful__listItem {
    gap: 48px;
    align-content: baseline
  }
}
@media (min-width: 1024px) {
  .c-useful__listItem {
    width: 50%
  }
}
.c-useful__listTitle {
  padding-bottom: 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-useful__listTitle {
    padding-bottom: 12px;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-useful__itemList {
  display: flex;
  gap: 40px;
  flex-direction: column;
}
.c-usefulItem {
  display: grid;
  grid-template-columns: 107px 1fr;
  grid-gap: 12px;
  gap: 12px;
}
@media (min-width: 768px) {
  .c-usefulItem {
    grid-template-columns: 160px 1fr;
    gap: 24px
  }
}
.c-usefulItem a {
  display: block;
  width: 100%;
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (hover: hover) {
  .c-usefulItem a:where(:link):hover, .c-usefulItem a:where(:visited):hover, .c-usefulItem a:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-usefulItem a:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-usefulItem a:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-usefulItem__contents {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}
@media (min-width: 768px) {
  .c-usefulItem__contents {
    gap: 12px
  }
}
.c-usefulItem__tagList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
}
.c-usefulItem__tagLink {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
  padding: 4px 9px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 1.15px solid #f2f4f5;
  border: 1.15px solid var(--color-gray-light);
  border-radius: 4px;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  color: rgba(77, 77, 77, 0.75);
  color: rgba(var(--color-default-rgb), var(--opacity-default));
}
.c-usefulItem__title {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-usefulItem__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-usefulItem__title a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: auto;
}
.c-usefulItem__title a[target='_blank']::before {
  content: '';
  position: absolute;
  top: 50%;
  right: -19px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: url('/common/image/ico/ico_inquiryServiceLink_external.svg') no-repeat top center / 16px;
}
@media (min-width: 768px) {
  .c-usefulItem__title a[target='_blank']::before {
    right: -25px;
    width: 22px;
    height: 22px;
    background-size: 22px
  }
}
.c-usefulItem__description {
  display: none;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: rgba(77, 77, 77, 0.5);
  color: rgba(var(--color-default-rgb), 0.5);
  white-space: nowrap;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 768px) {
  .c-usefulItem__description {
    display: block
  }
}

/* ページ内アンカーリンク
---------------------------------------------------------- */
.c-pageAnchorLinks {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  margin-top: -24px;
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  .c-pageAnchorLinks {
    justify-content: center
  }
}
.c-pageAnchorLinks__item {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 50%;
  min-height: 40px;
  margin-top: 24px;
  border-left: 1px solid #d4dddf;
  border-left: 1px solid var(--color-pale-aqua);
  border-right: 1px solid #d4dddf;
  border-right: 1px solid var(--color-pale-aqua);
}
@media (min-width: 768px) {
  .c-pageAnchorLinks__item {
    width: auto;
    min-width: 216px;
    border-left: 1px solid #d4dddf;
    border-left: 1px solid var(--color-pale-aqua);
    border-right: none
  }
}
.c-pageAnchorLinks__item:nth-child(2n) {
  border-left: none;
}
@media (min-width: 768px) {
  .c-pageAnchorLinks__item:nth-child(2n) {
    border-left: 1px solid #d4dddf;
    border-left: 1px solid var(--color-pale-aqua)
  }
}
@media (min-width: 768px) {
  .c-pageAnchorLinks__item:last-child {
    border-right: 1px solid #d4dddf;
    border-right: 1px solid var(--color-pale-aqua)
  }
}
.c-pageAnchorLinks__link {
  position: relative;
  display: block;
  padding: 3px 0 28px;
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (min-width: 768px) {
  .c-pageAnchorLinks__link {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-pageAnchorLinks__link::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 12px;
  height: 12px;
  background: url(/common/image/ico/ico_inquiryAnchorLink_arrow.svg) no-repeat top center / 12px;
}
.c-pageAnchorLinks__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

/* 最新資料一括ダウンロード
---------------------------------------------------------- */
.c-documentDownload {
  padding: 16px 0 24px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
@media (min-width: 768px) {
  .c-documentDownload {
    width: min(960px, 100%);
    margin-left: auto;
    margin-right: auto
  }
}
.c-documentDownload__title {
  padding: 0 16px 16px;
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  color: var(--color-white);
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-documentDownload__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-documentDownloadContent {
  padding: 24px 16px 0;
  display: block;
  justify-content: space-between;
}
@media (min-width: 1024px) {
  .c-documentDownloadContent {
    display: flex;
    align-items: center
  }
}
.c-documentDownloadContent__button {
  max-width: 260px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .c-documentDownloadContent__button {
    margin: 0 0 0 24px
  }
}
.c-documentDownloadContent__button .c-button {
  width: 100%;
  max-width: 100%;
}
.c-documentFiscal {
  margin-bottom: 30px;
  background-color:rgba(169, 186, 191, 0.25);
  border-radius: 0 0 4px 4px;
}
@media (min-width: 1024px) {
  .c-documentFiscal {
    margin-bottom: 0
  }
}
.c-documentFiscal__text {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 24px;
  letter-spacing: 0.05em;
  text-align: left;
  color: #455459;
  color: var(--color-gray);
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  padding: 6px 0 6px 12px;
  width: 100%;
  border-radius: 4px 4px 0 0;
}
@media (min-width: 768px) {
  .c-documentFiscal__text {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.c-documentFiscal__list {
  display: block;
  padding: 17px 17px;
}
.c-documentFiscal__list ul {
  list-style-type: none;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-documentFiscal__list ul {
    display: flex
  }
}
.c-documentFiscal__list ul > li {
  position: relative;
  padding-left: 13px;
}
.c-documentFiscal__list ul > li::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 768px) {
  .c-documentFiscal__list ul > li {
    margin-right: 25px
  }
}
.c-documentFiscal__list ul > li:last-child {
  margin-right: 0;
}

/* IR資料テーブル
---------------------------------------------------------- */
.c-irDocumentTable {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.c-irDocumentTable thead th {
  padding: 13px 10px;
  background-color: #455459;
  background-color: var(--color-gray);
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  border-right: 1px solid #e1e8eb;
  border-right: 1px solid var(--color-light-blue-gray);
  text-align: center;
}
@media (min-width: 768px) {
  .c-irDocumentTable thead th {
    padding: 13px 16px
  }
}
.c-irDocumentTable thead th.c-irDocumentTable__thNone {
  width: 110px;
  background-color: transparent;
  border-right: none;
}
@media (min-width: 768px) {
  .c-irDocumentTable thead th.c-irDocumentTable__thNone {
    width: 136px
  }
}
.c-irDocumentTable tbody th,
.c-irDocumentTable tbody td {
  padding: 20px 10px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 768px) {
  .c-irDocumentTable tbody th,
  .c-irDocumentTable tbody td {
    padding: 20px 16px
  }
}
.c-irDocumentTable tbody th .noFile, .c-irDocumentTable tbody td .noFile {
  display: inline-block;
  vertical-align: middle;
  width: 12px;
  height: 2px;
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
}
.c-irDocumentTable tbody th .pdf, .c-irDocumentTable tbody td .pdf {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  margin: 4px;
  background: url("/common/image/ico/ico_pdfBlue.svg") 0 0 no-repeat;
  background-size: contain;
}
.c-irDocumentTable tbody th .xls, .c-irDocumentTable tbody td .xls {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  margin: 4px;
  background: url("/common/image/ico/ico_xls.svg") 0 0 no-repeat;
  background-size: contain;
}
.c-irDocumentTable tbody th .movie, .c-irDocumentTable tbody td .movie {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  margin: 4px;
  background: url("/common/image/ico/ico_reproduction.svg") 0 0 no-repeat;
  background-size: contain;
}
.c-irDocumentTable tbody th a:hover, .c-irDocumentTable tbody td a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-irDocumentTable tbody th {
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  color: #4d4d4d;
  color: var(--color-default);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  border-bottom: 1px solid #ffffff;
  border-bottom: 1px solid var(--color-white);
  text-align: left;
}
.c-irDocumentTable tbody td {
  background-color: #ffffff;
  background-color: var(--color-white);
  border-right: 1px solid #d4dddf;
  border-right: 1px solid var(--color-pale-aqua);
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
.c-irDocumentTable tbody tr:last-child th {
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}

/* 誘導リンクエリア（FAQ、メールマガジン）
---------------------------------------------------------- */
.c-inductionLink {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.c-inductionLinkList {
  display: grid;
  justify-self: end;
  grid-gap: 12px;
  gap: 12px;
  list-style: none;
  padding: 24px 16px;
  max-width: 912px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .c-inductionLinkList {
    gap: 24px;
    grid-template-columns: repeat(2, 1fr);
    padding: 32px 24px
  }
}
.c-inductionLinkList__item {
}
.c-inductionItem {
  background: linear-gradient(45deg, #4582ac 0%, #a9babf 100%);
  background: linear-gradient(45deg, #4582ac 0%, var(--color-gray-medium-light) 100%);
  border-radius: 8px;
  transition: opacity 0.3s ease;
}
.c-inductionItem:hover {
  opacity: 0.75;
}
.c-inductionItem:hover .c-inductionItem__contentButton {
  transform: scale(1.2);
}
.c-inductionItem.c-inductionFaq {
  position: relative;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  height: 160px;
  padding: 40px 18px 18px 40px;
}
.c-inductionItem.c-inductionFaq::before {
  content: '';
  position: absolute;
  top: 78%;
  right: 67px;
  transform: translateY(-50%);
  width: 73px;
  height: 73px;
  background: url(/common/image/ico/ico_linkFaq.svg) no-repeat center / 73px;
}
@media (min-width: 768px) {
  .c-inductionItem.c-inductionFaq::before {
    top: 76%;
    right: 67px;
    width: 83px;
    height: 83px;
    background: url(/common/image/ico/ico_linkFaq.svg) no-repeat center / 83px
  }
}
@media (min-width: 1024px) {
  .c-inductionItem.c-inductionFaq::before {
    top: 57%;
    right: 60px;
    width: 144px;
    height: 144px;
    background: url(/common/image/ico/ico_linkFaq.svg) no-repeat center / 144px
  }
}
.c-inductionItem.c-inductionMail {
  position: relative;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 16px;
  height: 160px;
  padding: 22px 18px 18px 40px;
}
.c-inductionItem.c-inductionMail::before {
  content: '';
  position: absolute;
  top: 78%;
  right: 67px;
  transform: translateY(-50%);
  width: 73px;
  height: 73px;
  background: url(/common/image/ico/ico_linkMailMagazine.svg) no-repeat center / 73px;
}
@media (min-width: 768px) {
  .c-inductionItem.c-inductionMail::before {
    top: 76%;
    right: 67px;
    width: 83px;
    height: 83px;
    background: url(/common/image/ico/ico_linkMailMagazine.svg) no-repeat center / 83px
  }
}
@media (min-width: 1024px) {
  .c-inductionItem.c-inductionMail::before {
    top: 57%;
    right: 60px;
    width: 144px;
    height: 144px;
    background: url(/common/image/ico/ico_linkMailMagazine.svg) no-repeat center / 144px
  }
}
.c-inductionItem__title {
  position: relative;
  z-index: 2;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 2.25rem;
  font-size: var(--font-size-36);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 1;
  color: #ffffff;
  color: var(--color-white);
}
.c-inductionItem__content {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  color: #ffffff;
  color: var(--color-white);
}
.c-inductionItem__contentTitle {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  letter-spacing: 0.1em;
}
.c-inductionItem__contentButton {
  width: 36px;
  height: 36px;
  background: transparent url(/common/image/ico/ico_viewMoreCard_arrow.svg) no-repeat center / 15px 6px;
  border: 1px solid #ffffff;
  border: 1px solid var(--color-white);
  border-radius: 50%;
  transition: all 0.3s ease;
}

/* セキュリティソリューションの導入をサポート（マルペイ）
---------------------------------------------------------- */
.c-securityBox {
  position: relative;
  width: calc(100% - 32px);
  margin-left: auto;
  margin-right: auto;
  padding-top: 24px;
  padding-bottom: 24px;
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
  border-radius: 6px;
}
@media (min-width: 768px) {
  .c-securityBox {
    width: calc(100% - 48px);
    border-radius: 8px
  }
}
.c-securityBox__title {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  padding-left: 16px;
  padding-right: 16px;
  text-align: center;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1;
  color: #a9babf;
  color: var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-securityBox__title {
    top: -12px;
    padding-left: 24px;
    padding-right: 24px;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.c-securityBox__list {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  margin-left: -16px;
  margin-right: -16px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-securityBox__list {
    gap: 12px;
    margin-left: -24px;
    margin-right: -24px
  }
}
.c-securityBoxCard {
  position: relative;
  padding: 20px 80px 20px 24px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 768px) {
  .c-securityBoxCard {
    padding: 20px 94px 20px 36px
  }
}
.c-securityBoxCard::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 24px;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  background: url('/common/image/ico/ico_security.svg') no-repeat center / 44px;
}
@media (min-width: 768px) {
  .c-securityBoxCard::before {
    width: 48px;
    height: 48px;
    background-size: 48px
  }
}
.c-securityBoxCard__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-securityBoxCard__title {
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.c-securityBoxCard__description {
  margin-top: 4px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-securityBoxCard__description {
    margin-top: 5px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

/* 数字で見る（マルペイ）
---------------------------------------------------------- */
.c-numOfData {
  display: flex;
  flex-direction: column;
  list-style: none;
}
@media (min-width: 768px) {
  .c-numOfData {
    flex-direction: row;
    justify-content: space-between;
    gap: 72px
  }
}
.c-numOfData__item {
  position: relative;
}
@media (min-width: 768px) {
  .c-numOfData__item {
    min-width: 246px;
    border-top: none;
    flex: 1
  }
}
.c-numOfData__item:not(:first-child) {
  padding-top: 30px;
}
@media (min-width: 768px) {
  .c-numOfData__item:not(:first-child) {
    padding-top: 0
  }
}
.c-numOfData__item:not(:first-child)::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: 1px dashed #a9babf;
  border-top: 1px dashed var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-numOfData__item:not(:first-child)::before {
    left: -36px;
    width: 1px;
    height: 100%;
    border-top: none;
    border-left: 1px dashed #a9babf;
    border-left: 1px dashed var(--color-gray-medium-light)
  }
}
.c-numOfDataItem {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 36px;
  padding-bottom: 20px;
}
.c-numOfDataItem::before {
  content: '';
  position: absolute;
  top: 0;
  left: 2px;
  width: 20px;
  height: 4px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.c-numOfDataItem__count {
  display: flex;
  align-items: flex-end;
  gap: 4px;
}
.c-numOfDataItem__num {
  font-style: normal;
  font-size: 2.75rem;
  font-size: var(--font-size-44);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (min-width: 768px) {
  .c-numOfDataItem__num {
    font-size: clamp(1.5rem, 0.0714rem + 2.9762vw, 2.75rem)
  }
}
.c-numOfDataItem__unit {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-numOfDataItem__unit {
    font-size: clamp(0.625rem, 0.1964rem + 0.8929vw, 1rem)
  }
}
.c-numOfDataItem__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-numOfDataItem__title {
    font-size: clamp(0.625rem, 0.1964rem + 0.8929vw, 1rem)
  }
}
.c-numOfDataItem__title sup {
  vertical-align: top;
  font-size: calc(1rem * 0.6);
  font-size: calc(var(--font-size-16) * 0.6);
}
.c-numOfDataItem__note {
  display: flex;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: rgba(77, 77, 77, 0.5);
  color: rgba(var(--color-default-rgb), 0.5);
}
@media (min-width: 768px) {
  .c-numOfDataItem__note {
    font-size: clamp(0.5rem, 0.0893rem + 0.7143vw, 0.875rem)
  }
}

/* 役員一覧（会社情報）
---------------------------------------------------------- */
.c-officer__title {
  font-size: 1.75rem;
  font-size: var(--font-size-28);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-officer__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.c-officer__list {
  display: grid;
  grid-gap: 24px;
  gap: 24px;
  margin-top: 40px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-officer__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 60px;
    max-width: 960px;
    margin-top: 60px
  }
}
.c-officer__item {
  display: grid;
}
.c-officerCard {
  display: grid;
  padding-bottom: 16px;
  border-bottom: 1px solid #e1e8eb;
  border-bottom: 1px solid var(--color-light-blue-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .c-officerCard:where(:link):hover, .c-officerCard:where(:visited):hover, .c-officerCard:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-officerCard:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-officerCard:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-officerCard:where(:link):hover .c-officerCard__img img, .c-officerCard:where(:visited):hover .c-officerCard__img img, .c-officerCard:where(area[href]):hover .c-officerCard__img img {
    transform: scale(1.1);
  }
  .c-officerCard:where(:-moz-any-link):hover .c-officerCard__img img {
    transform: scale(1.1);
  }
  .c-officerCard:where(:any-link):hover .c-officerCard__img img {
    transform: scale(1.1);
  }
}
.c-officerCard:has(.c-officerCard__img) {
  position: relative;
}
.c-officerCard:has(.c-officerCard__img)::before {
  content: '';
  position: absolute;
  bottom: 20px;
  right: 0;
  width: 12px;
  height: 12px;
  background: url('/common/image/ico/ico_modal_plus.svg') no-repeat top center / contain;
}
.c-officerCard:has(.c-officerCard__img) .c-officerCard__position {
  min-height: 2rem;
}
.c-officerCard__img {
  overflow: hidden;
  margin-bottom: 16px;
}
.c-officerCard__img img {
  width: 100%;
  height: auto;
  transition: all 0.3s ease;
}
.c-officerCard__contents {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}
.c-officerCard__position {
  display: grid;
  align-items: end;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #005bac;
  color: var(--color-blue);
}
.c-officerCard__name {
  margin-top: 8px;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #4d4d4d;
  color: var(--color-default);
}
.c-officerCard__nameEn {
  margin-top: 3px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #a9babf;
  color: var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .c-officerProfile {
    display: flex;
    gap: 72px
  }
}
@media (min-width: 768px) {
  .c-officerProfile__img {
    width: 33.98%;
    max-width: 280px
  }
}
.c-officerProfile__img img {
  width: 100%;
  height: auto;
}
.c-officerProfile__contents {
  margin-top: 24px;
}
@media (min-width: 768px) {
  .c-officerProfile__contents {
    margin-top: 48px
  }
}
.c-officerProfile__name {
  font-size: 1.75rem;
  font-size: var(--font-size-28);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-officerProfile__name {
    font-size: clamp(1.75rem, 1.1786rem + 1.1905vw, 2.25rem)
  }
}
.c-officerProfile__nameEn {
  margin-top: 3px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 1rem;
  font-size: var(--font-size-16);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #005bac;
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .c-officerProfile__nameEn {
    margin-top: 6px
  }
}
.c-officerProfile__position {
  margin-top: 24px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-officerProfile__position {
    margin-top: 36px
  }
}
.c-officerTimeline {
  padding-bottom: 16px;
  padding-left: 12px;
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
.c-officerTimeline__contents {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (min-width: 768px) {
  .c-officerTimeline__contents {
    flex-direction: row;
    gap: 36px
  }
}
.c-officerTimeline__title {
  display: flex;
  gap: 12px;
  min-width: 94px;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
.c-officerTimeline__description {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}

/* 提供価値の領域（会社情報）
---------------------------------------------------------- */
.p-companyValue {
  position: relative;
  margin-bottom: 80px;
}
.p-companyValue__figure {
  position: relative;
  margin-bottom: 20px;
  text-align: center;
}
@media (min-width: 1024px) {
  .p-companyValue__figure {
    width: 100%;
    max-width: 960px;
    margin: 0;
    padding-bottom: 62.5%
  }
}
.p-companyValue__figure .sp {
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .p-companyValue__figure .sp {
    display: none
  }
}
.p-companyValue__figure .pc {
  display: none;
  position: absolute;
  top: -20.5%;
  left: 0;
  transform: scale(1.02);
}
@media (min-width: 1024px) {
  .p-companyValue__figure .pc {
    display: block
  }
}
@media (min-width: 1024px) {
  .p-companyValueBox {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
  }
}
.p-companyValueBox__item {
  position: relative;
  padding-left: 28px;
  margin-bottom: 25px;
}
@media (min-width: 1024px) {
  .p-companyValueBox__item {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.8);
    margin: 0;
    padding: 16px 16px;
    border: 2px solid #000;
    border-radius: 8px;
    z-index: 2
  }
}
.p-companyValueBox__item:last-child {
  margin-bottom: 0;
}
@media(max-width: 1023px) {
  .p-companyValueBox__item.p-companyValueBox__item--01,
  .p-companyValueBox__item.p-companyValueBox__item--02,
  .p-companyValueBox__item.p-companyValueBox__item--03,
  .p-companyValueBox__item.p-companyValueBox__item--04 {
    display: block !important;
    opacity: 1 !important
  }
}
@media (min-width: 1024px) {
  .p-companyValueBox__item.p-companyValueBox__item--01,
  .p-companyValueBox__item.p-companyValueBox__item--02,
  .p-companyValueBox__item.p-companyValueBox__item--03,
  .p-companyValueBox__item.p-companyValueBox__item--04 {
    display: none
  }
}
.p-companyValueBox__item.p-companyValueBox__item--01::before, .p-companyValueBox__item.p-companyValueBox__item--02::before, .p-companyValueBox__item.p-companyValueBox__item--03::before, .p-companyValueBox__item.p-companyValueBox__item--04::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 4px;
  width: 18px;
  height: 20px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 1024px) {
  .p-companyValueBox__item.p-companyValueBox__item--01::before, .p-companyValueBox__item.p-companyValueBox__item--02::before, .p-companyValueBox__item.p-companyValueBox__item--03::before, .p-companyValueBox__item.p-companyValueBox__item--04::before {
    display: none
  }
}
@media (min-width: 1024px) {
  .p-companyValueBox__item.p-companyValueBox__item--01 {
    top: 26%;
    left: 19.5%;
    max-width: 390px;
    border-color: #6a8ad4
  }
  .p-companyValueBox__item.p-companyValueBox__item--01 .p-companyValueBox__title {
    border-color: #6a8ad4;
  }
}
.p-companyValueBox__item.p-companyValueBox__item--01::before {
  background-image: url('/common/image/ico/ico_pin01.svg');
}
@media (min-width: 1024px) {
  .p-companyValueBox__item.p-companyValueBox__item--02 {
    top: 51.3%;
    left: 10.5%;
    max-width: 480px;
    border-color: #449ed0
  }
  .p-companyValueBox__item.p-companyValueBox__item--02 .p-companyValueBox__title {
    border-color: #449ed0;
  }
}
.p-companyValueBox__item.p-companyValueBox__item--02::before {
  background-image: url('/common/image/ico/ico_pin02.svg');
}
@media (min-width: 1024px) {
  .p-companyValueBox__item.p-companyValueBox__item--03 {
    top: 76.5%;
    left: 19.5%;
    max-width: 410px;
    border-color: #42b5af
  }
  .p-companyValueBox__item.p-companyValueBox__item--03 .p-companyValueBox__title {
    border-color: #42b5af;
  }
}
.p-companyValueBox__item.p-companyValueBox__item--03::before {
  background-image: url('/common/image/ico/ico_pin03.svg');
}
@media (min-width: 1024px) {
  .p-companyValueBox__item.p-companyValueBox__item--04 {
    top: 58%;
    left: 45.5%;
    max-width: 300px;
    border-color: #a389d6
  }
  .p-companyValueBox__item.p-companyValueBox__item--04 .p-companyValueBox__title {
    border-color: #a389d6;
  }
}
.p-companyValueBox__item.p-companyValueBox__item--04::before {
  background-image: url('/common/image/ico/ico_pin04.svg');
}
.p-companyValueBox__title {
  margin-bottom: 8px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 1024px) {
  .p-companyValueBox__title {
    padding-bottom: 16px;
    font-size: 0.875rem;
    font-size: var(--font-size-14);
    font-weight: 700;
    font-weight: var(--font-weight-bold);
    border-bottom: 2px solid #000
  }
}
.p-companyValueBox__list {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 14px;
  column-gap: 14px;
  row-gap: 8px;
  list-style-type: none;
}
.p-companyValueBox__list > li {
  position: relative;
  padding-left: 10px;
}
.p-companyValueBox__list > li::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #9bb7c2;
  background-color: var(--color-pale-blue-gray);
}
.p-companyValueBox__list > li > span {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.2;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: #455459;
  color: var(--color-gray);
}
.p-companyValueBox__list > li > a {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.2;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: #455459;
  color: var(--color-gray);
}
.p-companyValueBox__list > li > a:hover {
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
.p-companyValueBox__list > li > a[target='_blank'] {
  padding-right: 15px;
}
.p-companyValueBox__list > li > a[target='_blank']::after {
  position: absolute;
  top: 0;
  right: 0;
  content: url('/common/image/ico/ico_external.svg');
  width: 14px;
  height: 14px;
  opacity: 0.5;
}

.p-companyValueLinks {
  display: none;
}

@media (min-width: 1024px) {

  .p-companyValueLinks {
    display: block
  }
}

.p-companyValueLinks{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  list-style-type: none;
}

.p-companyValueLinks__item {
  position: absolute;
}

.p-companyValueLinks__item button {
  display: block;
  width: 36px;
  height: 36px;
  background-color: transparent;
  outline: none;
  border: none;
  cursor: pointer;
}

.p-companyValueLinks__item button:hover {
  background-color: rgba(255, 255, 255, 0.25);
  transition: all 0.3s ease;
}

.p-companyValueLinks__item.p-companyValueLinks__item--01 {
  top: 22%;
  left: 22%;
}

@media (min-width: 1024px) and (max-width: 1300px) {

  .p-companyValueLinks__item.p-companyValueLinks__item--01 {
    top: 21.25%;
    left: 21.5%
  }
}

.p-companyValueLinks__item.p-companyValueLinks__item--02 {
  top: 47%;
  left: 12%;
}

.p-companyValueLinks__item.p-companyValueLinks__item--03 {
  top: 73.5%;
  left: 21.9%;
}

.p-companyValueLinks__item.p-companyValueLinks__item--04 {
  top: 54%;
  left: 46.75%;
}

/* 資料詳細
---------------------------------------------------------- */
.c-documentDetail {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .c-documentDetail {
    flex-direction: row-reverse;
    gap: 80px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
  }
}
.c-documentDetail__img {
  height: -moz-max-content;
  height: max-content;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  border-radius: 8px;
  box-shadow: 30px 30px 30px 0px rgba(113, 156, 174, 0.32);
  box-shadow: 30px 30px 30px 0px rgba(var(--color-cadet-blue-rgb), 0.32);
}
@media (min-width: 768px) {
  .c-documentDetail__img {
    width: 50%;
    max-width: 600px;
    box-shadow: 60px 60px 60px 0px rgba(113, 156, 174, 0.32);
    box-shadow: 60px 60px 60px 0px rgba(var(--color-cadet-blue-rgb), 0.32)
  }
}
.c-documentDetail__img img {
  width: 100%;
  height: auto;
  border-radius: 8px;
}
@media (min-width: 768px) {
  .c-documentDetail__contents {
    flex: 1;
    gap: 36px
  }
}
.c-documentDetail__title {
  margin-bottom: 24px;
  font-size: 1.75rem;
  font-size: var(--font-size-28);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-documentDetail__title {
    margin-bottom: 36px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.c-documentDetail__button {
  width: 100%;
  max-width: 260px;
  margin-top: 24px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .c-documentDetail__button {
    max-width: 320px;
    margin-top: 36px;
    margin-left: 0;
    margin-right: 0
  }
}
.c-documentDetail__button .c-button {

}
/* wysiwygエディタ（コンテンツ本文）用 */
.c-documentDetail__description {
  color: #4d4d4d;
  color: var(--color-default);
}
.c-documentDetail__description p {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.75;
}
@media (min-width: 768px) {
  .c-documentDetail__description p {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-documentDetail__description ul,.c-documentDetail__description ol {
  list-style-type: none;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.75;
}
@media (min-width: 768px) {
  .c-documentDetail__description ul,.c-documentDetail__description ol {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-documentDetail__description ul li, .c-documentDetail__description ol li {
  margin-bottom: 1em;
}
.c-documentDetail__description ul li:last-child, .c-documentDetail__description ol li:last-child {
  margin-bottom: 0;
}
.c-documentDetail__description ul > li {
  position: relative;
  padding-left: 33px;
}
.c-documentDetail__description ul > li::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-documentDetail__description ol {
  list-style-type: decimal-leading-zero;
}
.c-documentDetail__description ol > li {
  position: relative;
  margin-left: 25px;
  padding-left: 8px;
}
.c-documentDetail__description ol > li::marker {
  position: absolute;
  top: 0;
  left: 0;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.c-documentDetail__description p + *,
.c-documentDetail__description * + p {
  margin-top: 2em;
}

/* お問い合わせインデックス お問い合わせリンク集エリア
---------------------------------------------------------- */
.c-inquiryServiceLinks {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-inquiryServiceLinks {
    grid-template-columns: repeat(2, 1fr);
    gap: 48px
  }
}
.c-inquiryServiceLinks__item {
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 4px;
}
@media (min-width: 768px) {
  .c-inquiryServiceLinks__item {
    gap: 12px
  }
}
.c-inquiryServiceLinks__item:has(.c-inquiryServiceLinks__description) {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}
.c-inquiryServiceLinks__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-inquiryServiceLinks__description {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-inquiryServiceLink {
  position: relative;
  display: grid;
  align-items: center;
  min-height: 65px;
  padding: 8px 59px 12px 12px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 8px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-inquiryServiceLink {
    min-height: 80px;
    padding: 24px 60px 24px 24px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-inquiryServiceLink::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  width: 15px;
  height: 6px;
  background: url('/common/image/ico/ico_inquiryServiceLink_arrow.svg') no-repeat top center / 15px;
}
@media (min-width: 768px) {
  .c-inquiryServiceLink::before {
    right: 34px;
    width: 24px;
    height: 10px;
    background-size: 24px
  }
}
@media (hover: hover) {
  .c-inquiryServiceLink:where(:link):hover, .c-inquiryServiceLink:where(:visited):hover, .c-inquiryServiceLink:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryServiceLink:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryServiceLink:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-inquiryServiceLink[target='_blank']::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: url('/common/image/ico/ico_inquiryServiceLink_external.svg') no-repeat top center / 16px;
}
@media (min-width: 768px) {
  .c-inquiryServiceLink[target='_blank']::before {
    right: 34px;
    width: 22px;
    height: 22px;
    background-size: 22px
  }
}
.c-inquiryServices {
  padding: 32px 16px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
@media (min-width: 768px) {
  .c-inquiryServices {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 80px 0
  }
}
.c-inquiryServices__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-inquiryServices__title {
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-inquiryServices__description {
  margin-top: 16px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-inquiryServices__description {
    margin-top: 12px;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.c-inquiryServices__link {
  display: inline-block;
  margin-top: 8px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-inquiryServices__link {
    margin-top: 6px;
    font-size: 0.875rem;
    font-size: var(--font-size-14);
    line-height: 2
  }
}
@media (hover: hover) {
  .c-inquiryServices__link:where(:link):hover, .c-inquiryServices__link:where(:visited):hover, .c-inquiryServices__link:where(area[href]):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryServices__link:where(:-moz-any-link):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryServices__link:where(:any-link):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-inquiryServices__list {
  display: grid;
  grid-gap: 48px;
  gap: 48px;
  margin-top: 48px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-inquiryServices__list {
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
        'item01 item01'
        'item02 item02'
        'item03 item03'
        'item04 item05';
    gap: 60px;
    margin-top: 60px
  }
}
.c-inquiryServices__item {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
}
@media (min-width: 768px) {
  .c-inquiryServices__item {
    gap: 48px
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(1) {
    grid-area: item01
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(2) {
    grid-area: item02
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(3) {
    grid-area: item03
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(4) {
    grid-area: item04
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(4) .c-inquiryServiceLinks {
    grid-template-columns: 1fr
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(5) {
    grid-area: item05
  }
}
@media (min-width: 768px) {
  .c-inquiryServices__item:nth-child(5) .c-inquiryServiceLinks {
    grid-template-columns: 1fr
  }
}
.c-inquiryServiceTitle {
  padding-bottom: 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .c-inquiryServiceTitle {
    padding-bottom: 12px;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}

/* お問い合わせインデックス お問い合わせカード＆ナビ
---------------------------------------------------------- */
.c-inquiryServiceCards {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
  list-style: none;
}
@media (min-width: 768px) {
  .c-inquiryServiceCards {
    grid-template-columns: repeat(2, 1fr);
    gap: 48px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
  }
}
.c-inquiryServiceCards__item {
  display: flex;
}
.c-inquiryServiceCard {
  width: 100%;
  padding: 32px 15px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
@media (min-width: 768px) {
  .c-inquiryServiceCard {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 36px 48px 48px
  }
}
.c-inquiryServiceCard__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-inquiryServiceCard__title {
    flex: 1;
    font-size: 2rem;
    font-size: var(--font-size-32)
  }
}
.c-inquiryServiceCard__description {
  margin-top: 16px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .c-inquiryServiceCard__description {
    flex: 1;
    margin-top: 12px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-inquiryServiceCard__textLink {
  display: inline-block;
  margin-top: 8px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: underline;
  text-decoration: underline;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-inquiryServiceCard__textLink {
    margin-top: 6px;
    font-size: 0.875rem;
    font-size: var(--font-size-14);
    line-height: 2
  }
}
@media (hover: hover) {
  .c-inquiryServiceCard__textLink:where(:link):hover, .c-inquiryServiceCard__textLink:where(:visited):hover, .c-inquiryServiceCard__textLink:where(area[href]):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryServiceCard__textLink:where(:-moz-any-link):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryServiceCard__textLink:where(:any-link):hover {
    -webkit-text-decoration: none;
    text-decoration: none;
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.c-inquiryServiceCard__link {
  margin-top: 16px;
}
@media (min-width: 768px) {
  .c-inquiryServiceCard__link {
    margin-top: 24px
  }
}

/* お問い合わせインデックス アンカーリンク
---------------------------------------------------------- */
.c-inquiryAnchorLinks {
  list-style: none;
}
@media (min-width: 768px) {
  .c-inquiryAnchorLinks {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(368px, 1fr));
    grid-gap: 40px 48px;
    gap: 40px 48px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
  }
}
.c-inquiryAnchorLink {
  position: relative;
  display: grid;
  align-items: center;
  min-height: 64px;
  padding: 8px 40px 12px 12px;
  background-color: rgba(255, 255, 255, 0.8);
  background-color: rgba(var(--color-white-rgb), 0.8);
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #005bac;
  color: var(--color-blue);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .c-inquiryAnchorLink {
    min-height: 84px;
    padding: 24px 112px 24px 16px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-inquiryAnchorLink::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background: url('/common/image/ico/ico_inquiryAnchorLink_arrow.svg') no-repeat top center / 12px;
}
@media (min-width: 768px) {
  .c-inquiryAnchorLink::before {
    right: 16px;
    width: 16px;
    height: 16px;
    background-size: 16px
  }
}
@media (hover: hover) {
  .c-inquiryAnchorLink:where(:link):hover, .c-inquiryAnchorLink:where(:visited):hover, .c-inquiryAnchorLink:where(area[href]):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryAnchorLink:where(:-moz-any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .c-inquiryAnchorLink:where(:any-link):hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}


/* 汎用クラス
---------------------------------------------------------- */
/* スマホレイアウト（767px以下）のみ表示 */
@media (min-width: 768px) {
  .u-sp-only {
    display: none !important
  }
}
/* スマホレイアウト以外（768px以上）のみ表示 */
.u-md-only {
  display: none;
}
@media (min-width: 1024px) {
  .u-md-only {
    display: block !important
  }
}

.u-img-border-gray {
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
}

@media (min-width: 768px) {
  .u-fz-pc-15 {
    font-size: 0.9375rem !important;
    font-size: var(--font-size-15) !important;
  }
  .u-fz-pc-16 {
    font-size: 1rem !important;
    font-size: var(--font-size-16) !important;
  }
}

/* ==========================================================================//
// ページ固有
// ========================================================================== */
/* 共通 */
.p-sectionViewMore {
  padding: 32px 16px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
@media (min-width: 1024px) {
  .p-sectionViewMore {
    padding: 80px 20px
  }
}
.p-sectionViewMore__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-sectionViewMore.p-sectionViewMore--white {
  background-color: transparent;
}
.p-sectionViewMore.p-sectionViewMore--noPaddingBottom {
  padding-bottom: 0;
}

.p-sectionInquiry {
  overflow: hidden;
  padding: 80px 16px;
  background-color: transparent;
}

@media (min-width: 1024px) {

  .p-sectionInquiry {
    padding: 80px 20px
  }
}

.p-sectionInquiry__inner {
  max-width: 1200px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .l-hasNaviLayout + .p-sectionInquiry {
    padding-top: 0
  }
}

.p-sectionUseful {
  padding: 0 16px;
}

.p-sectionUseful__inner {
  max-width: 1200px;
  margin: 0 auto;
}


/* お知らせ
---------------------------------------------------------- */
/* News Index */
.p-sectionNewsIndex {
  padding: 30px 16px 80px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
.p-sectionNewsIndex__inner {
  max-width: 1200px;
  margin: 0 auto;
}

/* セミナー
---------------------------------------------------------- */
/* Seminar Index */
.p-sectionSeminarIndex {
  padding: 30px 16px 0;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 1024px) {
  .p-sectionSeminarIndex {
    padding: 120px 16px 0
  }
}
.p-sectionSeminarIndex__inner {
  max-width: 1200px;
  margin: 0 auto;
}

/* ダウンロード
---------------------------------------------------------- */
/* Download Index */
.p-sectionDownloadIndexPickUp {
  padding: 0 16px;
  background: linear-gradient(180deg, transparent 0%, transparent 50%, #f0f5f5 50%, #f0f5f5 100%);
  background: linear-gradient(180deg, transparent 0%, transparent 50%, var(--color-ice-blue) 50%, var(--color-ice-blue) 100%);
}
.p-sectionDownloadIndexPickUp__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-sectionDownloadIndexList {
  position: relative;
  padding: 80px 16px 80px;
}
.p-sectionDownloadIndexList::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 300px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
.p-sectionDownloadIndexList__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
.p-downloadList {
  margin-bottom: 80px;
}
.p-downloadList__title {
  margin-bottom: 25px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-downloadList__title {
    margin-bottom: 45px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-downloadListItems {
  list-style-type: none;
}
@media (min-width: 768px) {
  .p-downloadListItems {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    -moz-column-gap: 72px;
    column-gap: 72px
  }
}
.p-downloadListItems__item {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .p-downloadListItems__item {
    width: calc(50% - 36px);
    margin-top: 60px
  }
}

/* Download Entry */
.p-sectionDownloadEntry {
  padding: 0 16px 60px;
  background: linear-gradient(180deg, transparent 0%, transparent 35%, #f0f5f5 35%, #f0f5f5 100%);
  background: linear-gradient(180deg, transparent 0%, transparent 35%, var(--color-ice-blue) 35%, var(--color-ice-blue) 100%);
}
@media (min-width: 1024px) {
  .p-sectionDownloadEntry {
    padding: 0 16px 115px
  }
}
.p-sectionDownloadEntry__inner {
  max-width: 1200px;
  margin: 0 auto;
}

/* よくある質問
---------------------------------------------------------- */
/* Faq Index */
.p-sectionFaqIndex {
  position: relative;
  padding: 16px 16px 16px;
  background-color: #ffffff;
  background-color: var(--color-white);
}
@media (min-width: 1024px) {
  .p-sectionFaqIndex {
    padding: 80px 16px 40px
  }
}
@media (min-width: 1024px) {
  .p-sectionFaqIndex__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding-right: 350px
  }
}
@media (min-width: 1360px) {
  .p-sectionFaqIndex__inner {
    padding-right: 0
  }
}
.p-sectionFaqIndexContents {
  max-width: 920px;
}
.p-sectionFaqIndexCategory .c-sectionTitleLevel3 {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .p-sectionFaqIndexCategory .c-sectionTitleLevel3 {
    margin-bottom: 48px
  }
}
.p-sectionFaqIndexCategory + .p-sectionFaqIndexCategory {
  margin-top: 80px;
}

.p-faqList {
  list-style-type: none;
}

.p-faqList__item {
  margin-bottom: 8px;
}

.p-faqList__item:last-child {
  margin-bottom: 0;
}
.p-faqKeywordSearch {
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  .p-faqKeywordSearch {
    margin-bottom: 120px
  }
}
.p-faqKeywordSearch__title {
  margin-bottom: 24px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-faqKeywordSearch__title {
    margin-bottom: 24px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.p-faqKeywordSearchField {
  position: relative;

}
.p-faqKeywordSearchField__input {
  overflow: hidden;
  display: block;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  border-radius: 8px;
}
.p-faqKeywordSearchField__input input {
  background-color: #ffffff;
  background-color: var(--color-white);
  width: 110%;
  padding: 5px 12px;
  height: 38px;
  line-height: 1.5;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  font-size: 16px;
  transform: scale(0.8);
  transform-origin: left center;
}
@media (min-width: 768px) {
  .p-faqKeywordSearchField__input input {
    width: 100%;
    height: 58px;
    font-size: 16px;
    padding: 5px 24px;
    transform: none
  }
}
.p-faqKeywordSearchField__button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  background-color: #455459;
  background-color: var(--color-gray);
  border: none;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}
@media (min-width: 768px) {
  .p-faqKeywordSearchField__button {
    width: 60px;
    height: 60px
  }
}
.p-faqListNoSearch {
  display: none;
  font-size: 1rem;
  font-size: var(--font-size-16);
}

/* サービス
---------------------------------------------------------- */
/* Service TOP */
.p-sectionServiceIndex {
  padding: 40px 16px 0;
}
@media (min-width: 768px) {
  .p-sectionServiceIndex {
    padding-top: 80px
  }
}
.p-sectionServiceIndex__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-ServiceIndex__title {
  margin-bottom: 48px;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 768px) {
  .p-ServiceIndex__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceIndexContents > .c-sectionTitleLevel3 {
  margin-bottom: 32px;
}

@media (min-width: 768px) {

  .p-serviceIndexContents > .c-sectionTitleLevel3 {
    margin-bottom: 48px
  }
}
.p-serviceIndexContents + .p-serviceIndexContents {
  margin-top: 80px;
}
.p-serviceIndexSearchIssue {
  margin-top: 80px;

}
@media (min-width: 768px) {
  .p-serviceIndexSearchIssue {
    margin-top: 120px

  }
}
.p-serviceIndexSearchIssue > .c-pageNavHash {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 1024px) {
  .p-serviceIndexSearchIssue > .c-pageNavHash {
    padding-left: 40px;
    padding-right: 40px
  }
}

/* Service マルペイ */
.p-sectionServiceMulpay {
  padding: 80px 16px 80px;
}
.p-sectionServiceMulpay.p-sectionServiceMulpay--noPadding {
  padding-top: 0;
}
.p-sectionServiceMulpay__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-sectionServiceMulpay--gray {
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

.p-sectionServiceMulpayLineup {
  padding: 80px 16px 80px;
}

.p-sectionServiceMulpayLineup__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-sectionServiceMulpayLineup__title {
  margin-bottom: 40px;
  color: #455459;
  color: var(--color-gray);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-sectionServiceMulpayLineup__title {
    margin-bottom: 60px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-sectionServiceMulpayLineup .c-viewMoreBox {
  margin: 80px 0;
}
.p-sectionServiceMulpayLineupContents {
  margin-bottom: 60px;
}
.p-sectionServiceMulpayLineupContents:last-child {
  margin-bottom: 0;
}
.p-sectionServiceMulpayLineupContents > .c-sectionTitleLevel3 {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .p-sectionServiceMulpayLineupContents > .c-sectionTitleLevel3 {
    margin-bottom: 48px
  }
}

.p-serviceMulpayLogoListWrap {
  overflow: hidden;
  width: 100%;
  margin-bottom: 80px;
}

.p-serviceMulpayLogoListWrap__text {
  max-width: 1200px;
  padding: 0 16px;
  margin: 10px auto 0;
  text-align: right;
}
.p-serviceMulpayLogoListNoteText {
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1;
}

.p-serviceMulpayLogoList {
  overflow: hidden;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  min-width: 100vw;
  height: 60px;
}

@media (min-width: 768px) {

  .p-serviceMulpayLogoList {
    height: 60px
  }
}

.p-serviceMulpayLogoList__item {
  width: 2321px;
  background-color: #ffffff;
}

.p-serviceMulpayLogoList picture {
  width: auto;
  max-width: none;
  height: 100%;
}

.p-serviceMulpayLogoList picture sorce,
.p-serviceMulpayLogoList picture img {
  width: auto;
  max-width: none;
  height: 100%;
}
.p-serviceMulpayLogoList.is-active .p-serviceMulpayLogoList__item {
  animation: infinite-slide 20s linear infinite;
}
/* 無限横スクロール用アニメーションキーフレーム */
@keyframes infinite-slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

@media (min-width: 1024px) {

  .p-serviceMulpayAbout {
    display: flex;
    gap: 80px
  }
}

.p-serviceMulpayAbout__content {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayAbout__content {
    margin: 0;
    flex: 1
  }
}

.p-serviceMulpayAbout__heading {
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-serviceMulpayAbout__heading {
    margin-bottom: 45px
  }
}

.p-serviceMulpayAbout__subTitle {
  margin-bottom: 8px;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayAbout__subTitle {
    margin-bottom: 12px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}

.p-serviceMulpayAbout__title {
  color: #455459;
  color: var(--color-gray);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayAbout__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceMulpayAbout__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-serviceMulpayAbout__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-serviceMulpayAbout__description em {
  color: #005bac;
  color: var(--color-blue);
  font-style: normal;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.p-serviceMulpayAbout__figure {
  margin: 0 -16px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayAbout__figure {
    margin: 0;
    max-width: 600px
  }
}

.p-serviceMulpayAbout__figure img {
  width: 100%;
  max-width: 100%;
}

.p-serviceMulpayPayment__heading {
  margin-bottom: 50px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayPayment__heading {
    display: flex;
    align-items: center;
    justify-content: flex-start
  }
}

.p-serviceMulpayPayment__title {
  margin-bottom: 40px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayPayment__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

@media (min-width: 1024px) {

  .p-serviceMulpayPayment__title {
    margin: 0 48px 0 0
  }
}

.p-serviceMulpayPayment__body {

}
.p-serviceMulpayPaymentTabButtons {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.p-serviceMulpayPaymentTabButtons__item {
}
.p-serviceMulpayPaymentTabButtons__button {
  padding: 17px 24px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  border-radius: 4px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  line-height: 1;
  cursor: pointer;
}
.p-serviceMulpayPaymentTabButtons__button:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-serviceMulpayPaymentTabContents__item {
  display: none;
  opacity: 0;
}
.p-serviceMulpayPaymentTabButtons__item.is-active .p-serviceMulpayPaymentTabButtons__button {
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  color: #ffffff;
  color: var(--color-white);
}
.p-serviceMulpayPaymentTabContents__item.is-active {
  display: block;
  opacity: 1;
  animation: tabFadeIn 0.3s ease-in 0s forwards;
}

.p-serviceMulpayPlatform__heading {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayPlatform__heading {
    margin-bottom: 88px
  }
}

.p-serviceMulpayPlatform__subTitle {
  margin-bottom: 8px;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayPlatform__subTitle {
    margin-bottom: 12px;
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}

.p-serviceMulpayPlatform__title {
  color: #455459;
  color: var(--color-gray);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayPlatform__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceMulpayPlatformList {
  overflow: hidden;
  list-style-type: none;
  padding: 16px 0 0;
  margin: 0 0 80px -16px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayPlatformList {
    overflow: visible;
    display: flex;
    margin: 0 0 80px
  }
}

.p-serviceMulpayPlatformList__item {
  margin-left: -16px;
  margin-bottom: 24px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayPlatformList__item {
    width: 25%;
    margin: 0;
    padding: 0 28px
  }
}

/* プラットフォームの理由 ※ 型崩れを防ぐため文字サイズなどは px を用いる */
.p-serviceMulpayPlatformCard {
  display: flex;
  align-items: center;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 100%
  }
}
.p-serviceMulpayPlatformCard__heading {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 156px;
  height: 156px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  color: #ffffff;
  color: var(--color-white);
  border-radius: 50%;
  text-align: center;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__heading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%
  }
}
.p-serviceMulpayPlatformCard__heading::before {
  content: "";
  position: absolute;
  top: -16px;
  left: -16px;
  width: 189px;
  height: 189px;
  border: 1px solid #d4dddf;
  border-radius: 50%;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__heading::before {
    top: -40px;
    left: -40px;
    width: calc(100% + 80px);
    height: calc(100% + 80px);
    border: none;
    background: url("/service/image/bg_serviceMulpayPlatform_circle_pc.svg") 0 0 no-repeat;
    background-size: contain
  }
}
.p-serviceMulpayPlatformCard__number {
  position: absolute;
  top: 28px;
  left: 0;
  right: 0;
  margin: 0 auto;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 12px;
  line-height: 1;

}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__number {
    display: inline-block;
    vertical-align: middle;
    top: 3.2vw;
    left: 52px;
    right: auto;
    text-align: left

  }
  .p-serviceMulpayPlatformCard__number::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-position: top left;
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media (min-width: 1440px) {
  .p-serviceMulpayPlatformCard__number {
    top: 52px

  }
}
.p-serviceMulpayPlatformCard__number > span {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.25em;
  font-size: 20px;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__number > span {
    font-size: 24px
  }
}
.p-serviceMulpayPlatformCard__title {
  font-size: 16px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.37;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__title {
    font-size: 24px
  }
}
.p-serviceMulpayPlatformCard__icon {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
}
.p-serviceMulpayPlatformCard__button {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__button {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    cursor: pointer;
    background-color: transparent
  }
  .p-serviceMulpayPlatformCard__button:hover {
    opacity: 0.75;
    transition: all 0.3s ease;
    background-color: rgba(255,255,255, 0.25);
  }
}
.p-serviceMulpayPlatformCard__body {
  flex: 1;
  padding-left: 28px;
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard__body {
    display: none
  }
}
.p-serviceMulpayPlatformCard__description {
  font-size: 13px;
  line-height: 1.5;
}
.p-serviceMulpayPlatformCard__note {
  margin-top: 10px;
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 10px;
  line-height: 1.5;
}

.p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__icon {
  bottom: 25px;
  width: 23px;
  height: 19px;
  background-image: url("/service/image/ico_serviceMulpay_reason1_white.svg");
}
.p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__icon {
  bottom: 25px;
  width: 23px;
  height: 19px;
  background-image: url("/service/image/ico_serviceMulpay_reason2_white.svg");
}
.p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__icon {
  bottom: 24px;
  width: 32px;
  height: 24px;
  background-image: url("/service/image/ico_serviceMulpay_reason3_white.svg");
}
.p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__icon {
  bottom: 24px;
  width: 24px;
  height: 24px;
  background-image: url("/service/image/ico_serviceMulpay_reason4_white.svg");
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__heading::before {
    background: none;
    border: 2px solid #d4dddf
  }
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__icon,
  .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__icon,
  .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__icon,
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__icon {
    bottom: 2.75vw;
    width: 24px;
    height: 24px;
    background: #ffffff;
    background: var(--color-white);
    border-radius: 50%
  }
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__icon::before,
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__icon::after,
  .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__icon::before,
  .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__icon::after,
  .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__icon::before,
  .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__icon::after,
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__icon::before,
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__icon::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 12px;
    height: 2px;
    background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
    background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  }
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__icon::after, .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__icon::after, .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__icon::after, .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__icon::after {
    transform: rotate(90deg);
    transform-origin: center center;
  }
}
@media (min-width: 1440px) {
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__icon,
  .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__icon,
  .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__icon,
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__icon {
    bottom: 44px
  }
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__number {
    padding-right: 60px
  }
  .p-serviceMulpayPlatformCard--reason1 .p-serviceMulpayPlatformCard__number::after {
    width: 40px;
    height: 33px;
    background-image: url("/service/image/ico_serviceMulpay_reason1_white.svg");
  }
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__number {
    padding-right: 60px
  }
  .p-serviceMulpayPlatformCard--reason2 .p-serviceMulpayPlatformCard__number::after {
    width: 40px;
    height: 30px;
    background-image: url("/service/image/ico_serviceMulpay_reason2_white.svg");
  }
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__number {
    padding-right: 64px
  }
  .p-serviceMulpayPlatformCard--reason3 .p-serviceMulpayPlatformCard__number::after {
    width: 30px;
    height: 33px;
    background-image: url("/service/image/ico_serviceMulpay_reason3_white.svg");
  }
}
@media (min-width: 1024px) {
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__number {
    padding-right: 63px
  }
  .p-serviceMulpayPlatformCard--reason4 .p-serviceMulpayPlatformCard__number::after {
    width: 30px;
    height: 30px;
    background-image: url("/service/image/ico_serviceMulpay_reason4_white.svg");
  }
}

@media (min-width: 1024px) {

  .p-serviceMulpayPlatformCard.is-active {
    transform: scale(1.4);
    z-index: 2;
    transition: transform 0.3s ease
  }
  .p-serviceMulpayPlatformCard.is-active .p-serviceMulpayPlatformCard__heading::before {
    opacity: 0;
  }
  .p-serviceMulpayPlatformCard.is-active .p-serviceMulpayPlatformCard__icon {
    transform: scale(0.8);
  }
  .p-serviceMulpayPlatformCard.is-active .p-serviceMulpayPlatformCard__icon::after {
    display: none;
  }
}

.p-serviceMulpayPlatformDetail {
  display: none;
}

@media (min-width: 1024px) {

  .p-serviceMulpayPlatformDetail {
    display: block
  }
}

.p-serviceMulpayPlatformDetail__item {
  display: none;
  margin-bottom: 80px;
}

.p-serviceMulpayPlatformDetail__item.is-active {
  display: block;
}

.p-serviceMulpayPlatformDetailBox {
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
}

.p-serviceMulpayPlatformDetailBox::before {
  content: "";
  position: absolute;
  top: -13px;
  width: 30px;
  height: 36px;
  background: url("/service/image/ico_serviceMulpayPlatformDetailBox.svg") 0 0 no-repeat;
  background-size: contain;
  z-index: 2;
}

.p-serviceMulpayPlatformDetailBox__inner {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 190px;
  padding: 24px 48px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 8px;
  border: 2px solid #005bac;
  border: 2px solid var(--color-blue);
  box-shadow: 24px 24px 48px rgba(113, 156, 174, 0.24);
}

.p-serviceMulpayPlatformDetailBox__inner::before,
.p-serviceMulpayPlatformDetailBox__inner::after {
  content: "";
  position: absolute;
  width: 2px;
  height: calc(100% - 4px);
  background-color: #ffffff;
  background-color: var(--color-white);
}

.p-serviceMulpayPlatformDetailBox__inner::before {
  left: -2px;
}

.p-serviceMulpayPlatformDetailBox__inner::after {
  right: -2px;
}

.p-serviceMulpayPlatformDetailBox__icon {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 144px;
  height: 144px;
  padding: 0 0 24px;
  margin-right: 48px;
}

.p-serviceMulpayPlatformDetailBox__icon::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
}

.p-serviceMulpayPlatformDetailBox__number {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.p-serviceMulpayPlatformDetailBox__number > span {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.25em;
  font-size: 1.75rem;
  font-size: var(--font-size-28);
}

.p-serviceMulpayPlatformDetailBox__content {
  flex: 1;
}

.p-serviceMulpayPlatformDetailBox__title {
  margin-bottom: 10px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  line-height: 1.5;
}

.p-serviceMulpayPlatformDetailBox__description {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 2;
}

.p-serviceMulpayPlatformDetailBox__note {
  margin-top: 10px;
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
}

.p-serviceMulpayPlatformDetailBox--reason1::before {
  left: calc(12.5% - 60px);
}

.p-serviceMulpayPlatformDetailBox--reason1 .p-serviceMulpayPlatformDetailBox__icon::before {
  top: 32px;
  width: 57px;
  height: 48px;
  background-image: url("/service/image/ico_serviceMulpay_reason1_blue.svg");
}
.p-serviceMulpayPlatformDetailBox--reason2::before {
  left: calc(37.5% - 30px);
}
.p-serviceMulpayPlatformDetailBox--reason2 .p-serviceMulpayPlatformDetailBox__icon::before {
  top: 28px;
  width: 80px;
  height: 60px;
  background-image: url("/service/image/ico_serviceMulpay_reason2_blue.svg");
}
.p-serviceMulpayPlatformDetailBox--reason3::before {
  left: calc(62.5%);
}
.p-serviceMulpayPlatformDetailBox--reason3 .p-serviceMulpayPlatformDetailBox__icon::before {
  top: 20px;
  width: 59px;
  height: 66px;
  background-image: url("/service/image/ico_serviceMulpay_reason3_blue.svg");
}
.p-serviceMulpayPlatformDetailBox--reason4::before {
  left: calc(87.5% - 30px + 60px);
}
.p-serviceMulpayPlatformDetailBox--reason4 .p-serviceMulpayPlatformDetailBox__icon::before {
  top: 22px;
  width: 60px;
  height: 60px;
  background-image: url("/service/image/ico_serviceMulpay_reason4_blue.svg");
}

.p-serviceMulpayNumber .c-sectionTitleLevel3 {
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-serviceMulpayNumber .c-sectionTitleLevel3 {
    margin-bottom: 48px
  }
}

.p-serviceMulpayCase__heading {
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-serviceMulpayCase__heading {
    margin-bottom: 48px
  }
}

.p-serviceMulpayCase__title {
  color: #455459;
  color: var(--color-gray);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayCase__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceMulpayCase__body {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayCase__body {
    margin: 0
  }
}

.p-serviceMulpayCase__body .splide__arrows {
  z-index: 2;
}

.p-serviceMulpayCase__body .splide__arrow {
  color: #005bac;
  color: var(--color-blue);
}

.p-serviceMulpayCase__bottom {
  max-width: 247px;
  margin: 0 auto;
}

@media (min-width: 768px) {

  .p-serviceMulpayCase__bottom {
    max-width: 320px
  }
}

@media (min-width: 1024px) {

  .p-serviceMulpayCase__bottom {
    display: flex;
    justify-content: flex-end;
    max-width: 100%;
    transform: translateY(-75%)
  }
  .p-serviceMulpayCase__bottom .c-button {
    max-width: 320px;
  }
}

.p-serviceMulpayFlow {
  margin-bottom: 80px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayFlow {
    display: flex;
    gap: 80px
  }
}

.p-serviceMulpayFlow__heading {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayFlow__heading {
    flex: 1
  }
}

.p-serviceMulpayFlow__title {
  margin-bottom: 40px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayFlow__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceMulpayFlow__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-serviceMulpayFlow__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-serviceMulpayFlow__note {
  margin-top: 15px;
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayFlow__note {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}

@media (min-width: 1024px) {

  .p-serviceMulpayFlow__body {
    width: 100%;
    max-width: 600px
  }
}

@media (min-width: 1240px) {

  .p-serviceMulpayFlow__body {
    max-width: 715px
  }
}

.p-serviceMulpayDevMethod__heading {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-serviceMulpayDevMethod__heading {
    display: flex;
    gap: 60px;
    margin-bottom: 48px
  }
}

.p-serviceMulpayDevMethod__title {
  margin-bottom: 40px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpayDevMethod__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceMulpayDevMethod__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-serviceMulpayDevMethod__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

@media (min-width: 1024px) {

  .p-serviceMulpayDevMethod__description {
    flex: 1
  }
}

.p-serviceMulpaySecurity__heading {
  margin-bottom: 40px;
}

.p-serviceMulpaySecurity__title {
  color: #455459;
  color: var(--color-gray);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceMulpaySecurity__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-serviceMulpaySecurity__body {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-serviceMulpaySecurity__body {
    margin-bottom: 0
  }
}

.p-serviceMulpaySecurity__bottom {
  max-width: 247px;
  margin: 0 auto;
}

@media (min-width: 1024px) {

  .p-serviceMulpaySecurity__bottom {
    display: none
  }
}
@media (min-width: 1024px) {
  .p-serviceMulpaySecurityContents {
    display: flex;
    gap: 60px
  }
}
.p-serviceMulpaySecurityContents__content {
  margin-bottom: 40px;
}
@media (min-width: 1024px) {
  .p-serviceMulpaySecurityContents__content {
    flex: 1
  }
}
.p-serviceMulpaySecurityContents__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}
@media (min-width: 768px) {
  .p-serviceMulpaySecurityContents__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-serviceMulpaySecurityContents__button {
  display: none;
}
@media (min-width: 1024px) {
  .p-serviceMulpaySecurityContents__button {
    display: block;
    max-width: 320px;
    margin-top: 48px
  }
}
.p-serviceMulpaySecurityContents__figure {
  width: 100%;
  max-width: 600px;
}


/* ssl select */
.p-sectionServiceSslSelect {
  padding: 0 16px;
}
.p-sectionServiceSslSelect__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.c-formStep + .p-sectionServiceSslSelect {
  margin-top: -176px;
}

.p-serviceSslSelectList__item {
  margin-bottom: 16px;
}

@media (min-width: 768px) {

  .p-serviceSslSelectList__item {
    margin-bottom: 60px
  }
}

.p-serviceSslSelectList__item:last-child {
  margin-bottom: 0;
}

.p-serviceSslSelectList__button {
  max-width: 247px;
  margin: 60px auto 0;
}

@media (min-width: 768px) {

  .p-serviceSslSelectList__button {
    max-width: 320px
  }
}

.p-sectionServiceSslSelectStep2 {
  position: relative;
  padding: 0 16px;
}

.p-sectionServiceSslSelectStep2__inner {
  max-width: 1440px;
  margin: 0 auto;
}

@media (min-width: 1024px) {

  .p-sectionServiceSslSelectStep2__inner {
    padding: 0 360px 0 16px
  }
}

@media (min-width: 1440px) {

  .p-sectionServiceSslSelectStep2__inner {
    padding: 0 360px 0 120px
  }
}

.c-formStep + .p-sectionServiceSslSelectStep2 {
  margin-top: -176px;
}

.p-selectedCouponView {
  margin: 16px -16px 0;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}

@media (min-width: 1024px) {

  .p-selectedCouponView {
    position: absolute;
    z-index: 20;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 360px;
    margin: 0
  }
  .p-selectedCouponView.is-fixed {
    position: fixed;
    top: 130px;
    right: 0;
  }
  .p-selectedCouponView.is-bottomFixed {
    position: absolute;
    top: auto;
    right: 0;
    bottom: 0;
  }
}

.p-selectedCouponView__inner {
  padding: 48px 40px;
}

.p-selectedCouponView__title {
  margin-bottom: 30px;
  color: #ffffff;
  color: var(--color-white);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  line-height: 1.5;
}

.p-selectedCouponView__button {
  max-width: 100%;
  margin: 0 auto;
}
.p-selectedCouponViewDetails {
  color: #ffffff;
  color: var(--color-white);
}
.p-selectedCouponViewDetails__item {
  margin-bottom: 16px;
}
.p-selectedCouponViewDetails__title {
  padding-bottom: 5px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.2;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
.p-selectedCouponList {
  padding: 16px;
  list-style-type: none;
}
.p-selectedCouponList__item {

}
.p-selectedCouponList__title {
  margin-bottom: 10px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.2;
}
.p-selectedCouponList__info {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.2;
}
.p-selectedCouponList__info > dl {
  display: flex;
}
.p-selectedCouponList__info > dl dt {
  position: relative;
  min-width: 2em;
}
.p-selectedCouponList__info > dl dt::after {
  content: "：";
  display: inline-block;
  vertical-align: middle;
}
.p-selectedCouponList__info > dl dd {
}
.p-selectedCouponList__subtotal {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1rem;
  font-size: var(--font-size-16);
  line-height: 1.5;
  text-align: right;
}
.p-selectedCouponViewTotal {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  margin-bottom: 36px;
  border-radius: 8px;
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
  color: #ffffff;
  color: var(--color-white);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

/* 課題別ソリューション
---------------------------------------------------------- */
/* theme solution Index */
.p-sectionThemeSolution {
  padding: 0 16px;
  margin-bottom: 80px;
}
.p-sectionThemeSolution__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-themeSolution {
  margin-bottom: 80px;
}

.p-themeSolution__heading {
  margin-bottom: 80px;
}

@media (min-width: 768px) {

  .p-themeSolution__heading {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
  }
}

.p-themeSolution__title {
  margin-bottom: 40px;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-themeSolution__title {
    margin: 0 60px 40px 0;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

@media (min-width: 1024px) {

  .p-themeSolution__title {
    margin-bottom: 0
  }
}

.p-themeSolution__description {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-themeSolution__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

@media (min-width: 1024px) {

  .p-themeSolution__description {
    flex: 1
  }
}

.p-themeSolution__content {
}

.p-sectionUseful--themesolution {
  padding: 40px 16px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

@media (min-width: 768px) {

  .p-sectionUseful--themesolution {
    padding: 80px 16px
  }
}

/* セキュリティ ソリューション
---------------------------------------------------------- */
.p-sectionSecuritySolution {
  padding: 0 16px;
}
@media (min-width: 768px) {
  .p-sectionSecuritySolution {
    margin-bottom: 80px
  }
}
.p-sectionSecuritySolution__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-securitySolution__heading {
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-securitySolution__heading {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px
  }
}

.p-securitySolution__title {
  margin-bottom: 40px;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-securitySolution__title {
    margin: 0 60px 40px 0;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

@media (min-width: 1024px) {

  .p-securitySolution__title {
    margin-bottom: 0
  }
}

.p-securitySolution__description {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-securitySolution__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

@media (min-width: 1024px) {

  .p-securitySolution__description {
    flex: 1
  }
}

.p-securitySolution__content {
  margin: 0 -16px;
}

@media (min-width: 768px) {

  .p-securitySolution__content {
    margin: 0
  }
}

.p-securitySolutionResk__title {
  margin-bottom: 16px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-align: center;
}

@media (min-width: 768px) {

  .p-securitySolutionResk__title {
    margin-bottom: 25px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}

.p-securitySolutionResk__figure {
  display: flex;
  justify-content: center;
}

.p-sectionSecuritySolutionEc {
  padding: 40px 16px 80px;
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
}

@media (min-width: 768px) {

  .p-sectionSecuritySolutionEc {
    padding: 80px 16px 80px
  }
}

.p-sectionSecuritySolutionEc__inner {
  max-width: calc(1200px - 160px);
  margin: 0 auto;
}

@media (min-width: 768px) {

  .p-securitySolutionEc {
    display: flex;
    align-items: flex-start
  }
}

@media (min-width: 768px) {

  .p-securitySolutionEc__content {
    flex: 1
  }
}

.p-securitySolutionEc__title {
  margin-bottom: 40px;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-securitySolutionEc__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-securitySolutionEc__description {
  margin-bottom: 40px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-securitySolutionEc__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15);
    margin-bottom: 0
  }
}

.p-securitySolutionEc__icon {
  width: 126px;
  margin: 0 auto;
}

@media (min-width: 768px) {

  .p-securitySolutionEc__icon {
    margin-left: 80px
  }
}

.p-sectionSecuritySolutionContents {
  padding: 80px 16px 80px;
}

.p-sectionSecuritySolutionContents__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-sectionSecuritySolutionContents__heading {
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-sectionSecuritySolutionContents__heading {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px
  }
}

.p-sectionSecuritySolutionContents__title {
  margin-bottom: 40px;
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-sectionSecuritySolutionContents__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-sectionSecuritySolutionContents__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-sectionSecuritySolutionContents__description {
    flex: 1;
    max-width: 784px;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-securitySolutionContents__title {
  padding-bottom: 8px;
  margin-bottom: 40px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}

@media (min-width: 768px) {

  .p-securitySolutionContents__title {
    padding-bottom: 12px;
    margin-bottom: 48px;
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.p-securitySolutionContents + .p-securitySolutionContents {
  margin-top: 60px;
}

.p-securitySolutionContentsButton {
  margin-top: 60px;
}

@media (min-width: 1024px) {

  .p-securitySolutionContentsButton {
    display: flex;
    justify-content: center;
    align-items: center
  }
}

.p-securitySolutionContentsButton__item {
  margin-bottom: 16px;
}

@media (min-width: 1024px) {

  .p-securitySolutionContentsButton__item {
    margin: 0 24px
  }
}

.p-securitySolutionContentsButton__item:last-child {
  margin-bottom: 0;
}

.p-securitySolutionContentsButton__item .c-button {
  max-width: 247px;
  margin: 0 auto;
}

@media (min-width: 768px) {

  .p-securitySolutionContentsButton__item .c-button {
    max-width: 320px;
    width: 320px
  }
}

.p-serviceOwnedMediaList {
  overflow: hidden;
  list-style-type: none;
  margin-top: -24px;
}

@media (min-width: 768px) {

  .p-serviceOwnedMediaList {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: -24px -12px 0
  }
}

@media (min-width: 1024px) {

  .p-serviceOwnedMediaList {
    margin: -48px -24px 0
  }
}

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

@media (min-width: 768px) {

  .p-serviceOwnedMediaList__item {
    margin-top: 48px;
    width: 50%;
    padding: 0 12px
  }
  .p-serviceOwnedMediaList__item > .c-card {
    min-height: 100%;
  }
}

@media (min-width: 1024px) {

  .p-serviceOwnedMediaList__item {
    width: 33.3%;
    padding: 0 24px;
    margin-bottom: 0
  }
  .p-serviceOwnedMediaList__item:nth-child(3n-2) {
    width: 33.4%;
  }
}

.p-serviceOwnedMediaCard {
  display: block;
  color: #4d4d4d;
  color: var(--color-default);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.p-serviceOwnedMediaCard:hover {
  opacity: 0.75;
  opacity: var(--opacity-default);
  transition: opacity 0.3s ease;
}

.p-serviceOwnedMediaCard__thumbnail {
  overflow: hidden;
  border-radius: 6px;
  margin-bottom: 14px;
}

.p-serviceOwnedMediaCard__thumbnail img {
  width: 100%;
}

.p-serviceOwnedMediaCard__headline {
  display: flex;
  align-items: baseline;
  margin-bottom: 10px;
}

.p-serviceOwnedMediaCard__date {
  margin-right: 16px;
  color: #797979;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1;
}

.p-serviceOwnedMediaCard__category {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.p-serviceOwnedMediaCard__category > span {
  display: inline-block;
  vertical-align: middle;
  padding: 5px 8px;
  color: #797979;
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  border-radius: 3px;
  line-height: 1;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}

.p-serviceOwnedMediaCard__title {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-serviceOwnedMediaCard__title {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

/* 色違い */
.p-sectionSecuritySolutionContents--gray {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.p-sectionSecuritySolutionContents--gray .p-serviceOwnedMediaCard__category > span {
  background-color: #ffffff;
  background-color: var(--color-white);
}

/* 会社情報
---------------------------------------------------------- */
/* 会社情報TOP */
.p-heroCorpIndex {
  margin: 0 0 80px;
  padding: 35px 16px 0;
}
@media (min-width: 768px) {
  .p-heroCorpIndex {
    padding-top: 70px
  }
}
.p-heroCorpIndex__inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: column;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  gap: 40px;
}
@media (min-width: 1024px) {
  .p-heroCorpIndex__inner {
    flex-direction: row
  }
}
@media (min-width: 1024px) {
  .p-heroCorpIndex__content {
    width: 55%
  }
}
@media (min-width: 1240px) {
  .p-heroCorpIndex__content {
    padding-left: 60px
  }
}
@media (min-width: 1440px) {
  .p-heroCorpIndex__content {
    padding-left: 120px
  }
}
.p-heroCorpIndex__content .c-heroLevel2 {
  padding: 0;
}
@media (min-width: 1024px) {
  .p-heroCorpIndex__content .c-heroLevel2__title {
    display: flex;
    flex-wrap: wrap
  }
}
.p-heroCorpIndex__heading {
  padding: 24px 0 0 0;
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  .p-heroCorpIndex__heading {
    margin-bottom: 120px
  }
}
.p-heroCorpIndex__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}
@media (min-width: 768px) {
  .p-heroCorpIndex__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-heroCorpIndex__figure {
  position: relative;
  max-width: 640px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .p-heroCorpIndex__figure {
    width: 45%
  }
}
.p-heroCorpIndex__figure::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 320px;
  height: 180px;
  left: 60px;
  top: 60px;
  background: linear-gradient(225deg, #005BAC 0%, #82A2AC 100%);
  mix-blend-mode: multiply;
  opacity: 0.6;
  filter: blur(30px);
  border-radius: 8px 0px 0px 8px;
}
@media (min-width: 768px) {
  .p-heroCorpIndex__figure::after {
    width: 640px;
    height: 360px
  }
}
.p-heroCorpIndexImage {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.p-heroCorpIndexImage a {
  display: block;
}
.p-heroCorpIndexImage a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-heroCorpIndexImage__figure {
  overflow: hidden;
  position: relative;
  border-radius: 8px 0 0 8px;
}
.p-heroCorpIndexImage__figure::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.p-heroCorpIndexImage__figure img {
  width: 100%;
  max-width: 100%;
}
.p-heroCorpIndexImage__play {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 168px;
  height: 195.5px;
  margin: auto;
}
.p-sectionCorpIndex {
  padding: 0 16px 80px;
}
.p-sectionCorpIndex__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-corpMainCards {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
  list-style: none;
  margin-bottom: 120px;
}
@media (min-width: 768px) {
  .p-corpMainCards {
    grid-template-columns: repeat(3, 1fr);
    gap: 0
  }
}
.p-corpMainCards__item {
  border-top: 1px solid #e1e8eb;
  border-top: 1px solid var(--color-light-blue-gray);
}
.p-corpMainCard {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 16px 16px 0;
  background-color: rgba(#ffffff, 0.8);
  background-color: rgba(var(--color-white), 0.8);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpMainCard {
    padding: 30px 30px 0
  }
}
@media (min-width: 1024px) {
  .p-corpMainCard {
    padding: 40px 40px 0
  }
}
.p-corpMainCard::before {
  content: '';
  position: absolute;
  bottom: 0;
  right: 20px;
  width: 36px;
  height: 36px;
  background: url('/common/image/ico/ico_corporateMainCard_arrow.svg') no-repeat left top / 36px;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpMainCard::before {
    right: 30px;
    width: 40px;
    height: 40px;
    background-size: 40px
  }
}
@media (min-width: 1024px) {
  .p-corpMainCard::before {
    right: 40px;
    width: 60px;
    height: 60px;
    background-size: 60px
  }
}
@media (hover: hover) {
  .p-corpMainCard:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .p-corpMainCard:hover::before {
    transform: scale(1.2);
  }
  .p-corpMainCard:hover .p-corpMainCard__img img {
    transform: scale(1.1);
  }
}
.p-corpMainCard__img {
  overflow: hidden;
  position: relative;
}
.p-corpMainCard__img::before {
  content: '';
  position: absolute;
  top: -16px;
  left: -16px;
  width: 1px;
  height: calc(100% + 16px);
  background-color: #e1e8eb;
  background-color: var(--color-light-blue-gray);
}
@media (min-width: 768px) {
  .p-corpMainCard__img::before {
    top: -30px;
    left: -30px;
    height: calc(100% + 30px)
  }
}
@media (min-width: 1024px) {
  .p-corpMainCard__img::before {
    top: -40px;
    left: -40px;
    height: calc(100% + 40px)
  }
}
.p-corpMainCard__img img {
  width: 100%;
  height: auto;
  transition: all 0.3s ease;
}
.p-corpMainCard__title {
  margin-top: 24px;
  margin-right: 64px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .p-corpMainCard__title {
    margin-top: 36px;
    margin-right: 52px;
    font-size: clamp(0.9375rem, 0rem + 1.9531vw, 1.25rem)
  }
}
@media (min-width: 1024px) {
  .p-corpMainCard__title {
    margin-top: 36px;
    margin-right: 84px;
    font-size: clamp(0.9375rem, -0.4471rem + 2.1635vw, 1.5rem)
  }
}
.p-corpMainCard__sub {
  margin-top: 8px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.5;
  color: #9bb7c2;
  color: var(--color-pale-blue-gray);
}
.p-corpSubCards {
  display: grid;
  grid-gap: 24px;
  gap: 24px;
  padding-left: 16px;
  padding-right: 16px;
  margin-bottom: 80px;
  list-style: none;
}
@media (min-width: 768px) {
  .p-corpSubCards {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 0;
    padding-left: 0;
    padding-right: 0
  }
}
.p-corpSubCards__item {
  border-top: 1px solid #e1e8eb;
  border-top: 1px solid var(--color-light-blue-gray);
}
.p-corpSubCard {
  position: relative;
  display: flex;
  gap: 16px;
  padding: 16px 0 0 16px;
  background-color: rgba(#ffffff, 0.8);
  background-color: rgba(var(--color-white), 0.8);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpSubCard {
    gap: 20px;
    padding: 30px 30px 0
  }
}
@media (min-width: 1024px) {
  .p-corpSubCard {
    gap: 40px;
    padding: 40px 40px 0
  }
}
.p-corpSubCard::before {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 36px;
  height: 36px;
  background: url('/common/image/ico/ico_corporateSubCard_arrow.svg') no-repeat left top / 36px;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpSubCard::before {
    right: 30px;
    width: 40px;
    height: 40px;
    background-size: 40px
  }
}
@media (min-width: 1024px) {
  .p-corpSubCard::before {
    right: 40px;
    width: 60px;
    height: 60px;
    background-size: 60px
  }
}
@media (hover: hover) {
  .p-corpSubCard:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .p-corpSubCard:hover::before {
    transform: scale(1.2);
  }
  .p-corpSubCard:hover .p-corpSubCard__img img {
    transform: scale(1.1);
  }
}
.p-corpSubCard__img {
  overflow: hidden;
  position: relative;
  width: 38.71%;
  min-width: 120px;
}
@media (min-width: 768px) {
  .p-corpSubCard__img {
    width: 42.67%;
    max-width: 256px
  }
}
.p-corpSubCard__img::before {
  content: '';
  position: absolute;
  top: -16px;
  left: -16px;
  width: 1px;
  height: calc(100% + 16px);
  background-color: #e1e8eb;
  background-color: var(--color-light-blue-gray);
}
@media (min-width: 768px) {
  .p-corpSubCard__img::before {
    top: -30px;
    left: -30px;
    height: calc(100% + 30px)
  }
}
@media (min-width: 1024px) {
  .p-corpSubCard__img::before {
    top: -40px;
    left: -40px;
    height: calc(100% + 40px)
  }
}
.p-corpSubCard__img img {
  width: 100%;
  height: auto;
  transition: all 0.3s ease;
}
.p-corpSubCard__contents {
  container: c-corporateSubCardContents / inline-size;
  flex: 1;
  padding-top: 8px;
  padding-right: 16px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-corpSubCard__contents {
    padding-top: 12px
  }
}
@media (min-width: 1024px) {
  .p-corpSubCard__contents {
    padding-top: 24px
  }
}
.p-corpSubCard__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #4d4d4d;
  color: var(--color-default);
}
@container c-corporateSubCardContents (max-width: 158px) {
  .p-corpSubCard__title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
  }
}
@media (min-width: 768px) {
  .p-corpSubCard__title {
    font-size: clamp(0.9375rem, 0rem + 1.9531vw, 1.25rem)
  }
}
@media (min-width: 1024px) {
  .p-corpSubCard__title {
    font-size: clamp(0.9375rem, -0.4471rem + 2.1635vw, 1.5rem)
  }
}
.p-corpSubCard__sub {
  margin-top: 8px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.5;
  color: #9bb7c2;
  color: var(--color-pale-blue-gray);
}
.p-corpOurStoryCard {
  position: relative;
  display: block;
  width: calc(100% - 16px);
  margin-left: 16px;
  margin-bottom: 190px;
  padding: 20px 16px 16px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpOurStoryCard {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 40px;
    width: 100%;
    min-height: 216px;
    margin-left: 0;
    padding: 20px 20px 16px 24px
  }
}
@media (min-width: 1024px) {
  .p-corpOurStoryCard {
    padding: 36px 36px 32px 40px
  }
}
.p-corpOurStoryCard::before {
  content: 'OUR STORY';
  position: absolute;
  bottom: 16px;
  right: 16px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  line-height: 1;
  color: #d4dddf;
  color: var(--color-pale-aqua);
  writing-mode: vertical-rl;
}
@media (min-width: 768px) {
  .p-corpOurStoryCard::before {
    top: 36px;
    right: 36px;
    bottom: auto;
    font-size: clamp(1.5rem, -1.9286rem + 7.1429vw, 4.5rem);
    writing-mode: horizontal-tb
  }
}
.p-corpOurStoryCard::after {
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpOurStoryCard::after {
    content: '';
    position: absolute;
    bottom: 32px;
    right: 32px;
    width: 40px;
    height: 40px;
    background: url('/common/image/ico/ico_ourStory_arrow.svg') no-repeat left top / 40px
  }
}
@media (min-width: 1024px) {
  .p-corpOurStoryCard::after {
    width: 60px;
    height: 60px;
    background-size: 60px
  }
}
@media (hover: hover) {
  .p-corpOurStoryCard:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .p-corpOurStoryCard:hover::after {
    transform: scale(1.2);
  }
  .p-corpOurStoryCard:hover .p-corpOurStoryCard__img img {
    transform: scale(1.1);
  }
}
@media (min-width: 768px) {
  .p-corpOurStoryCard__contents {
    flex: 1;
    padding-right: 64px
  }
}
@media (min-width: 1024px) {
  .p-corpOurStoryCard__contents {
    padding-right: 84px
  }
}
.p-corpOurStoryCard__title {
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
}
@media (min-width: 768px) {
  .p-corpOurStoryCard__title {
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.p-corpOurStoryCard__description {
  margin-top: 8px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .p-corpOurStoryCard__description {
    margin-top: 20px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.p-corpOurStoryCard__img {
  overflow: hidden;
  border-radius: 8px;
  margin-top: 20px;
  margin-right: 40px;
  margin-left: -32px;
}
@media (min-width: 768px) {
  .p-corpOurStoryCard__img {
    width: 33.33%;
    max-width: 400px;
    min-width: 300px;
    margin-left: 0;
    margin-right: 0;
    margin-top: -48px;
    margin-bottom: -44px
  }
}
.p-corpOurStoryCard__img img {
  width: 100%;
  height: auto;
  transition: all 0.3s ease;
}
.p-corpSecurityCompliance__head {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .p-corpSecurityCompliance__head {
    flex-direction: row;
    justify-content: space-between;
    align-items: center
  }
}
.p-corpSecurityCompliance__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .p-corpSecurityCompliance__title {
    font-size: clamp(1.5rem, 0.6429rem + 1.7857vw, 2.25rem)
  }
}
.p-corpSecurityCompliance__button {
  width: 200px;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .p-corpSecurityCompliance__button {
    padding-left: 0;
    padding-right: 0
  }
}
.p-corpSecurityCompliance__list {
  display: grid;
  padding-left: 16px;
  padding-right: 16px;
  margin-top: 24px;
  list-style: none;
}
@media (min-width: 768px) {
  .p-corpSecurityCompliance__list {
    grid-template-columns: repeat(auto-fit, minmax(368px, 1fr));
    gap: 36px 48px;
    padding-left: 0;
    padding-right: 0
  }
}
.p-corpSecurityComplianceItem {
  position: relative;
  display: grid;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 20px 40px 20px 12px;
  background-color: rgba(255, 255, 255, 0.8);
  background-color: rgba(var(--color-white-rgb), 0.8);
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #455459;
  color: var(--color-gray);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-corpSecurityComplianceItem {
    padding: 24px 44px 24px 12px;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.p-corpSecurityComplianceItem::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  width: 20px;
  height: 8px;
  background: url('/common/image/ico/ico_corporateSecurityList_arrow.svg') no-repeat top center / contain;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .p-corpSecurityComplianceItem:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
  .p-corpSecurityComplianceItem:hover::before {
    transform: translateY(-50%) scale(1.5);
  }
}
/* 下層ヒーロー */
.p-corpHeroArea {
  position: relative;
}
.p-corpHeroArea__image img {
  width: 100%;
  max-width: 100%;
}
.p-corpHeroArea__icon {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  max-width: 1440px;
  width: 100%;
  height: 120px;
  margin: 0 auto;
}
.p-corpHeroArea__icon > span {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  display: block;
  width: 60px;
  height: 60px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border-radius: 50%;
  border: 1px solid #005bac;
  border: 1px solid var(--color-blue);
  transform: translateY(-50%);
  filter: drop-shadow(24px 24px 48px rgba(0, 91, 172, 0.24));

}
@media (min-width: 1024px) {
  .p-corpHeroArea__icon > span {
    width: 120px;
    height: 120px

  }
}
.p-corpHeroArea__icon > span::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 18px;
  height: 10px;
  margin: auto;
  background: url(/common/image/ico/ico_viewMoreCard_arrow_blue.svg) 0 0 no-repeat;
  background-size: contain;
  transform: rotate(90deg);
}
@media (min-width: 1024px) {
  .p-corpHeroArea__icon > span::after {
    width: 30px;
    height: 17px
  }
}

/* 会社概要 */
.p-sectionCorpCompany {
  position: relative;
  padding: 80px 0;
}
.p-sectionCorpCompanyHistory {
  position: relative;
  padding: 80px 0;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
.p-sectionCorpCompanyHistory::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100vw;
  z-index: -1;
  width: 200vw;
  height: 100%;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

.p-corpCompany__title {
  margin-bottom: 25px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-corpCompany__title {
    margin-bottom: 45px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-corpCompanyInfo > .p-corpCompanyInfoItem:last-child {
  border-bottom: none;
}
.p-corpCompanyInfoItem {
  padding: 36px 0;
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  border-bottom: 1px solid #e1e8eb;
  border-bottom: 1px solid var(--color-light-blue-gray);
}
@media (min-width: 768px) {
  .p-corpCompanyInfoItem {
    display: flex;
    align-items: flex-start;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-corpCompanyInfoItem__title {
  position: relative;
  padding-left: 28px;
  margin-bottom: 15px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .p-corpCompanyInfoItem__title {
    width: 208px;
    margin-bottom: 0
  }
}
.p-corpCompanyInfoItem__title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4px;
  height: 77.75%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.p-corpCompanyInfoItem__detail {
  flex: 1;
}
.p-corpCompanyInfoItem__detail .c-text + .c-text {
  margin-top: 1.5em;
}
.p-corpCompanyInfoCertification {
  list-style-type: none;
}
.p-corpCompanyInfoCertification__item {
  margin-bottom: 12px;
}
.p-corpCompanyInfoCertification__item:last-child {
  margin-bottom: 0;
}
.p-corpCompanyInfoCertification__image {
  display: flex;
  align-items: center;
}
.p-corpCompanyInfoCertification__image img {
  width: 50px;
  margin-right: 12px;
}
.p-corpCompanyInfoCertification__image figcaption {
  flex: 1;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
}
@media (min-width: 768px) {
  .p-corpCompanyInfoCertification__image figcaption {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-corpCompanyHistory__title {
  margin-bottom: 25px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-corpCompanyHistory__title {
    margin-bottom: 45px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-corpCompanyHistoryTable > .p-corpCompanyHistoryTableItem:last-child {
  margin-bottom: 0;
}
.p-corpCompanyHistoryTableItem {
  padding-bottom: 36px;
  margin-bottom: 36px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .p-corpCompanyHistoryTableItem {
    display: flex;
    align-items: flex-start
  }
}
.p-corpCompanyHistoryTableItem__title {
  margin-bottom: 15px;
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1rem;
  font-size: var(--font-size-16);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-corpCompanyHistoryTableItem__title {
    width: 100px;
    margin-bottom: 0;
    font-size: 1.125rem;
    font-size: var(--font-size-18)
  }
}
.p-corpCompanyHistoryTableItem__detail {
  flex: 1;
}

.p-corpCompanyHistoryTimeline {
  display: flex;
  align-items: flex-start;
}

.p-corpCompanyHistoryTimeline__title {
  min-width: 55px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-corpCompanyHistoryTimeline__title {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-corpCompanyHistoryTimeline__detail {
  flex: 1;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-corpCompanyHistoryTimeline__detail {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-corpCompanyHistoryTimeline + .p-corpCompanyHistoryTimeline {
  margin-top: 36px;
  padding-top: 24px;
  border-top: 1px solid #a9babf;
  border-top: 1px solid var(--color-gray-medium-light);
}

/* IR
---------------------------------------------------------- */
.p-sectionIrMainLinks {
  position: relative;
  padding: 68px 16px 80px;
}
.p-sectionIrMainLinks::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 174px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);

}
.p-sectionIrMainLinks__inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
}
.p-sectionIrIndexDocument {
  padding: 80px 16px;
}
.p-sectionIrIndexDocument__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-sectionIrIndexMenu {
  padding: 0 16px 80px;
}
.p-sectionIrIndexMenu__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-sectionIrIndexMenu__title {
  margin-bottom: 30px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-sectionIrIndexMenu__title {
    margin-bottom: 60px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-sectionIrNews + .p-sectionIrIndexMenu {
  margin-top: 80px;
}

.p-irMainLinks .splide__track {
}

.p-irMainLinks .splide__arrows {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  width: 100%;
  margin-top: 45px;
}

@media (min-width: 768px) {

  .p-irMainLinks .splide__arrows {
    gap: 48px
  }
}

.p-irMainLinks .splide__arrow {
  position: relative;
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: all 0.3s ease;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  color: #005bac;
  color: var(--color-blue);
}

.p-irMainLinks .splide__arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 12px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  background-color: currentColor;
  color: #005bac;
  color: var(--color-blue);
}

.p-irMainLinks .splide__arrow--prev {
  padding-left: 20px;
}

@media (min-width: 768px) {

  .p-irMainLinks .splide__arrow--prev {
    padding-left: 36px
  }
}

.p-irMainLinks .splide__arrow--prev::before {
  left: 0;
  -webkit-mask-image: url('/common/image/ico/ico_slider_arrow_prev.svg');
  mask-image: url('/common/image/ico/ico_slider_arrow_prev.svg');
}

.p-irMainLinks .splide__arrow--next {
  padding-right: 20px;
}

@media (min-width: 768px) {

  .p-irMainLinks .splide__arrow--next {
    padding-right: 36px
  }
}

.p-irMainLinks .splide__arrow--next::before {
  right: 0;
  -webkit-mask-image: url('/common/image/ico/ico_slider_arrow_next.svg');
  mask-image: url('/common/image/ico/ico_slider_arrow_next.svg');
}

@media (hover: hover) {
  .p-irMainLinks .splide__arrow:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}

.p-irMainLinks .splide__arrow > span {
  display: none;
}

@media (min-width: 768px) {

  .p-irMainLinks .splide__arrow > span {
    display: block
  }
}

.p-irMainLinks .splide__pagination {
  display: flex !important;
}

.p-irMainLinks .splide__pagination > li {
  display: grid;
  align-items: center;
  justify-items: center;
  place-items: center;
}

.p-irMainLinks .splide__pagination__page {
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 24px;
  height: 2px;
  margin: 0 4px;
  background-color: rgba(0, 91, 172, 0.2);
  background-color: rgba(var(--color-blue-rgb), 0.2);
  transition: all 0.3s ease;
}

@media (min-width: 768px) {

  .p-irMainLinks .splide__pagination__page {
    width: 65px
  }
}

.p-irMainLinks .splide__pagination__page.is-active {
  background-color: #005bac;
  background-color: var(--color-blue);
}

@media (hover: hover) {
  .p-irMainLinks .splide__pagination__page:hover {
    background-color: #005bac;
    background-color: var(--color-blue);
  }
}

.p-irMainLinks .splide__toggle {
  position: relative;
  width: 28px;
  height: 16px;
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: all 0.3s ease;
}

@media (hover: hover) {
  .p-irMainLinks .splide__toggle:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}

.p-irMainLinks .splide__toggle__pause::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 28px;
  height: 16px;
  background: url('/common/image/ico/ico_slider_pause.svg') no-repeat top left / contain;
}

.p-irMainLinks .splide__toggle__play::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 28px;
  height: 16px;
  background: url('/common/image/ico/ico_slider_play.svg') no-repeat top left / contain;
}

.p-irMainLinks .splide__toggle__text {
  display: none;
}
.p-irMainLinksList {
  list-style-type: none;
}
.p-irMainLinksList__item {

}
.p-irMainLinksList__link {
  -webkit-text-decoration: none;
  text-decoration: none;
}
.p-irMainLinksList__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-irMainLinksList__image {
  margin-bottom: 20px;
}
.p-irMainLinksList__image img {
  max-width: 100%;
}
.p-irMainLinksList__title {
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.p-irMainLinksList__title > span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.p-irMainLinksList__title > span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.p-irMainLinksList__title .pdf {
  padding-right: 36px;
}
.p-irMainLinksList__title .pdf::after {
  width: 20px;
  height: 27px;
  background: url("/common/image/ico/ico_pdf_gray.svg") 0 0 no-repeat;
  background-size: contain;
}
.p-irMainLinksList__title .movie {
  padding-right: 38px;
}
.p-irMainLinksList__title .movie::after {
  width: 24px;
  height: 24px;
  background: url("/common/image/ico/ico_movie_gray.svg") 0 0 no-repeat;
  background-size: contain;
}
.c-irMenuList {
  margin-bottom: 80px;
  list-style: none;
  display: block;
}
@media (min-width: 1024px) {
  .c-irMenuList {
    display: grid;
    grid-template-columns: repeat(3, 1fr)
  }
}
.c-irMenuList__item {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px;
  border-right: 0px;
  border-bottom: 0px;
  border-left: 1px;
  border-style: solid;
  border-color: #d4dddf;
  border-color: var(--color-pale-aqua);
  padding: 40px 40px 0px;
  margin-bottom: 40px;
}
.c-irMenuList__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 30px;
  letter-spacing: 0.04em;
  text-align: left;
  color: #4d4d4d;
  color: var(--color-default);
  margin-top: 36px;
}
.c-irMenuList__sub {
  color: #a9babf;
  color: var(--color-gray-medium-light);
  margin-top: 8px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 14px;
  text-align: left;
}
.c-irMenuList__link {
  position: relative;
  display: flex;
  flex-direction: column;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-irMenuList__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.c-irMenuList__link:hover .c-irMenuList__img img {
  transform: scale(1.1);
}
.c-irMenuList__link::before {
  content: '';
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 60px;
  height: 60px;
  background: transparent url(/common/image/ico/ico_buttonArrowBlack.svg) no-repeat center / 25px 10px;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  border-radius: 50%;
}
@media (min-width: 768px) {
  .c-irMenuList__link::before {
    width: 50px;
    height: 50px
  }
}
@media (min-width: 1024px) {
  .c-irMenuList__link::before {
    width: 60px;
    height: 60px
  }
}
.c-irMenuList__img {
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.c-irMenuList__img img {
  transition: all 0.3s ease;
}
.c-irMenuList__imgSocial {
  height: auto;
  width: 100%;
}
.c-irMenuList__text {
  position: absolute;
  text-shadow: 2px 2px 5px #333;
  width: 90%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  color: var(--color-white);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  left: 50%;
}
@media (min-width: 768px) {
  .c-irMenuList__text {
    font-size: 8px
  }
}
@media (min-width: 1024px) {
  .c-irMenuList__text {
    font-size: 13px
  }
}
.c-irMenuList__textTitle {
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 30px;
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  line-height: 60px;
  text-align: center;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-irMenuList__textTitle {
    font-size: 2.75rem;
    font-size: var(--font-size-44);
    line-height: 80px
  }
}
@media (min-width: 1024px) {
  .c-irMenuList__textTitle {
    font-size: 30px;
    line-height: 48px
  }
}
.c-irMenuList__textExplanation {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 22px;
  text-align: center;
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-irMenuList__textExplanation {
    font-size: 1.25rem;
    font-size: var(--font-size-20);
    line-height: 20px
  }
}
@media (min-width: 1024px) {
  .c-irMenuList__textExplanation {
    font-size: 0.75rem;
    font-size: var(--font-size-12);
    line-height: 20px
  }
}
.c-irMenuList__linkCollection {
  min-height: 165px;
  padding: 24px 20px;
  margin-top: 36px;
  background: #f2f4f5;
  background: var(--color-gray-light);
}
.c-irMenuList__linkCollectionList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: #005bac;
  color: var(--color-blue);
  list-style-type: none;
}
.c-irMenuList__linkCollectionLink {
  position: relative;
  padding-left: 12px;
  margin-right: 10px;
}
.c-irMenuList__linkCollectionLink::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.c-irMenuList__linkCollectionLinkText {
  color: #005bac;
  color: var(--color-blue);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-align: left;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.c-irMenuList__linkCollectionLinkText:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

.p-sectionIrNews {
  position: relative;
  padding: 0 16px;
}

@media (min-width: 768px) {

  .p-sectionIrNews {
    padding-top: 80px;
    padding-bottom: 80px
  }
  .p-sectionIrNews::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: #f0f5f5;
    background: var(--color-ice-blue);
  }
}

.p-sectionIrNews__inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .p-irIndexNews {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px
  }
}
.p-irIndexNews__content {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .p-irIndexNews__content {
    flex: 1;
    max-width: 760px
  }
}
.p-irIndexNews__bottom {
  max-width: 247px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .p-irIndexNews__bottom {
    display: none
  }
}
.p-irIndexNews__title {
  margin-bottom: 40px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-irIndexNews__title {
    margin-bottom: 80px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-irIndexNews__button {
  display: none;
}
@media (min-width: 768px) {
  .p-irIndexNews__button {
    display: block;
    max-width: 256px
  }
}
.p-irIndexNewsList {
  list-style-type: none;
}
.p-irIndexNewsListItem {
  position: relative;
  padding: 16px 0;
  border-bottom: 1px solid #e1e8eb;
  border-bottom: 1px solid var(--color-light-blue-gray);
}
@media (min-width: 768px) {
  .p-irIndexNewsListItem {
    padding: 24px 0;
    border-top: 1px solid #e1e8eb;
    border-top: 1px solid var(--color-light-blue-gray);
    border-bottom: none
  }
}
.p-irIndexNewsListItem__head {
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .p-irIndexNewsListItem__head {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    padding-right: 40px
  }
}
.p-irIndexNewsListItem__date {
  display: block;
  margin-bottom: 10px;
  color: #a5a5a5;
  color: var(--color-gray-cool-light);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .p-irIndexNewsListItem__date {
    margin: 0 16px 0 0;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.p-irIndexNewsListItem__tagList {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
}
.p-irIndexNewsListItem__new {
  position: absolute;
  top: 16px;
  right: 0;
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2px 4px;
  background-color: #f3f4f5;
  border: 1px solid #b84951;
  border: 1px solid var(--color-rouge);
  border-radius: 3px;
  color: #b84951;
  color: var(--color-rouge);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .p-irIndexNewsListItem__new {
    top: 26px
  }
}
.p-irIndexNewsListItem__body {
}
.p-irIndexNewsListItem__title {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-irIndexNewsListItem__title {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-irIndexNewsListItem__title a {
  color: #4d4d4d;
  color: var(--color-default);
  -webkit-text-decoration: none;
  text-decoration: none;
}
.p-irIndexNewsListItem__title a:hover {
  opacity: 0.75;
  opacity: var(--opacity-default);
  transition: opacity 0.3s ease;
}

.p-irIndexNewsTabButtons {
  list-style-type: none;
  display: flex;
  gaP: 16px;
}

@media (min-width: 768px) {

  .p-irIndexNewsTabButtons {
    display: block;
    margin-bottom: 80px
  }
}

.p-irIndexNewsTabButtons__item {
  margin-bottom: 10px;
}

.p-irIndexNewsTabButtons__item:last-child {
  margin-bottom: 0;
}

.p-irIndexNewsTabButtons__link {
  padding: 8px 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
}

@media (min-width: 768px) {

  .p-irIndexNewsTabButtons__link {
    padding: 8px 0;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

.p-irIndexNewsTabButtons__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

.p-irIndexNewsTabButtons__link.is-active {
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.p-irIndexNewsTabButtonsChild {
  display: none;
  list-style-type: none;
  padding: 0 0 0 12px;
  margin-top: 10px;
}
@media (min-width: 768px) {
  .p-irIndexNewsTabButtonsChild {
    display: block
  }
}
.p-irIndexNewsTabButtonsChild__item {
  margin-bottom: 10px;
}
.p-irIndexNewsTabButtonsChild__item:last-child {
  margin-bottom: 0;
}
.p-irIndexNewsTabButtonsChild__link {
  padding: 8px 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (min-width: 768px) {
  .p-irIndexNewsTabButtonsChild__link {
    padding: 8px 0;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.p-irIndexNewsTabButtonsChild__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-irIndexNewsTabButtonsChild__link.is-active {
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.p-topNewsTabButton {
  display: flex;
  gap: 16px;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .p-topNewsTabButton {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 80px;
    gap: 2px;
  }
}
.p-topNewsTabButton__item {
  padding: 9px 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
  color: #a1a9ab;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.p-topNewsTabButton__item :hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-topNewsTabButton__item {
    padding: 16px 0;
    font-size: 14px;
  }
}
.p-irIndexNewsTabContent__item {
  display: none;
  opacity: 0;
}

/* タブ表示 */
.p-topNewsTabButton__item.is-active {
  color: #005bac;
  color: var(--color-blue);
  border-bottom: 1px solid #005bac;
  border-bottom: 1px solid var(--color-blue);
}
.p-irIndexNewsTabContent__item.is-active {
  display: block;
  opacity: 1;
  animation: tabFadeIn 0.3s ease-in 0s forwards;
}

@keyframes tabFadeIn {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

/* IR情報 よくあるご質問 */
.p-irFaqButtonArea {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 50px;
}
.p-irFaqButtonArea__button {
  width: 192px;
}
#js-irFaqFullOpenTrigger > .c-button__text .open { display: block; }
#js-irFaqFullOpenTrigger.is-active > .c-button__text .open { display: none; }
#js-irFaqFullOpenTrigger > .c-button__text .close { display: none; }
#js-irFaqFullOpenTrigger.is-active > .c-button__text .close { display: block; }

/* IR資料一覧 */
.p-sectionIrLibrary__title {
  margin-bottom: 20px;
  color: #455459;
  color: var(--color-gray);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-sectionIrLibrary__title {
    margin-bottom: 40px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-sectionIrLibrary .c-inductionLink {
  margin-top: 80px;
}

.p-irLibraryYearList {
  list-style-type: none;
}

.p-irLibraryYearList__item {
  margin-bottom: 16px;
}

.p-irLibraryYearList__item:last-child {
  margin-bottom: 0;
}

.p-irLibraryYearAccordion .c-baseAccordion__title {
  font-size: 1.25rem;
  font-size: var(--font-size-20);
}

@media (min-width: 768px) {

  .p-irLibraryYearAccordion .c-baseAccordion__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}

.p-irLibraryYearAccordion .c-baseAccorion__inner {
  padding: 40px 0 60px;
}

.p-irTabNavigation {
  overflow: hidden;
  padding-top: 80px;
  margin-bottom: 60px;
}

.p-irTabNavigation__list {
  position: relative;
  display: flex;
  gap: 12px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 12px;
  list-style-type: none;
}

@media (min-width: 768px) {

  .p-irTabNavigation__list {
    gap: 24px;
    padding: 0 24px
  }
}

.p-irTabNavigation__list::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: #a9babf;
  background-color: var(--color-gray-medium-light);
}

.p-irTabNavigation__item {
  position: relative;
  opacity: 0.5;
  border: 1px solid #a9babf;
  border: 1px solid var(--color-gray-medium-light);
  box-shadow: 12px 12px 40px 0 rgba(0, 0, 0, 0.16);
  border-radius: 8px 8px 0 0;
}

.p-irTabNavigation__item.is-active {
  opacity: 1;
}

.p-irTabNavigation__item.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 1px;
  background-color: #ffffff;
  background-color: var(--color-white);
}

.p-irTabNavigation__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 72px;
  background: #ffffff;
  background: var(--color-white);
  padding: 17px 15px;
  border-radius: 8px 8px 0 0;
  color: #455459;
  color: var(--color-gray);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1.25rem;
  font-size: var(--font-size-20);
  letter-spacing: 0.1em;
  -webkit-text-decoration: none;
  text-decoration: none;
}

@media (min-width: 768px) {

  .p-irTabNavigation__link {
    min-width: 220px;
    padding: 17px 24px 17px 24px;
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}

.p-irLibraryDocumentList {
  list-style-type: none;
}

@media (min-width: 768px) {

  .p-irLibraryDocumentList {
    display: flex;
    flex-wrap: wrap;
    margin: -24px -12px 0
  }
}

.p-irLibraryDocumentList__item {
  margin-bottom: 24px;
}

@media (min-width: 768px) {

  .p-irLibraryDocumentList__item {
    width: 50%;
    padding: 0 12px;
    margin: 24px 0 0
  }
}

.p-irLibraryDocumentList__item:last-child {
  margin-bottom: 0;
}
.p-irLibraryDocumentBox {
  min-height: 100%;
  padding: 24px 24px 12px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
.p-irLibraryDocumentBox__heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.p-irLibraryDocumentBox__title {
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.p-irLibraryDocumentBox__button {
  width: 110px;
}
@media (min-width: 768px) {
  .p-irLibraryDocumentBox__button {
    width: 155px
  }
}
.p-irLibraryDocumentBox__button .c-button {
  min-width: 100%;
}
.p-irLibraryDocumentBoxList {
  list-style-type: none;
}
.p-irLibraryDocumentBoxList__item {
  padding: 18px 0 18px 12px;
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}
.p-irLibraryDocumentBoxList__item:last-child {
  border-bottom: none;
}
.p-irLibraryDocumentBoxList__link {
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  gap: 16px;
  padding-right: 32px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  -webkit-text-decoration: none;
  text-decoration: none;
}
.p-irLibraryDocumentBoxList__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-irLibraryDocumentBoxList__link.pdf::after, .p-irLibraryDocumentBoxList__link.movie::after, .p-irLibraryDocumentBoxList__link.xls::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  margin-top: -2px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain;
}
.p-irLibraryDocumentBoxList__link.pdf::after {
  width: 20px;
  height: 20px;
  background-image: url("/common/image/ico/ico_pdf_gray.svg");
}
.p-irLibraryDocumentBoxList__link.movie::after {
  width: 21px;
  height: 21px;
  background-image: url("/common/image/ico/ico_video.svg");
}
.p-irLibraryDocumentBoxList__link.xls::after {
  width: 20px;
  height: 20px;
  background-image: url("/common/image/ico/ico_xls_gray.svg");
}
.p-irLibraryDocumentBoxList__date {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}
.p-irLibraryDocumentBoxList__title {

}

.p-irStockNavi {
  margin-bottom: 80px;
  padding: 24px 24px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

.p-irStockNavi__title {
  margin-bottom: 20px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.p-irStockNaviList {
  display: flex;
  flex-wrap: wrap;
  row-gap: 24px;
  margin: 0 -6px;
  list-style-type: none;
}
.p-irStockNaviList__item {
  width: 50%;
  padding: 0 6px;
}
@media (min-width: 1024px) {
  .p-irStockNaviList__item {
    width: 33.33%
  }
  .p-irStockNaviList__item:nth-child(3n-1) {
    width: 33.34%;
  }
}
.p-irStockNaviList__item.is-active .p-irStockNaviList__link {
  color: #005bac;
  color: var(--color-blue);
  border-color: #005bac;
  border-color: var(--color-blue);
}
.p-irStockNaviList__item.is-active .p-irStockNaviList__link::after {
  opacity: 0;
}
.p-irStockNaviList__link {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  min-height: 60px;
  padding: 12px 40px 12px 12px;
  background-color: #ffffff;
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
  color: #455459;
  color: var(--color-gray);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.p-irStockNaviList__link:hover {
  opacity: 0.75;
}
.p-irStockNaviList__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 22px;
  height: 10px;
  transform: translateY(-50%);
  background: url("/common/image/ico/ico_buttonArrowBlack.svg") 0 0 no-repeat;
  background-size: contain;
}

/* サステナビリティ
---------------------------------------------------------- */
.p-heroSustainabilityIndex {
  overflow: hidden;
  background-image: url("/sustainability/image/img_sustainability_kv01.png");
  background-size: cover;
  height: 100%;
  margin-bottom: 60px;
}
@media (min-width: 1024px) {
  .p-heroSustainabilityIndex {
    min-height: 788px;
    margin-bottom: 120px
  }
}
.p-heroSustainabilityIndex__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
.p-heroSustainabilityIndex__content {
  color: #ffffff;
  color: var(--color-white);
  padding: 8.3% 8.3% 17.5% 8.3%;
}
@media (min-width: 1024px) {
  .p-heroSustainabilityIndex__content {
    padding: 9.3% 0 16.5% 0
  }
}
.p-heroSustainabilityIndex__title {
  margin-bottom: 45px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.5), 0 0 1em rgba(0,0,0,0.5), 0 0 0.2em rgba(0,0,0,0.5);
}
@media (min-width: 768px) {
  .p-heroSustainabilityIndex__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-heroSustainabilityIndex__description {
}
.p-heroSustainabilityIndex__text {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 2;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.5), 0 0 1em rgba(0,0,0,0.5), 0 0 0.2em rgba(0,0,0,0.5);
}
@media (min-width: 768px) {
  .p-heroSustainabilityIndex__text {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-heroSustainabilityIndex__text + .p-heroSustainabilityIndex__text {
  margin-top: 2.0em;
}

.p-sectionSustainabilityIndex {
  padding: 80px 16px;
}

.p-sectionSustainabilityIndex--noPadding {
  padding: 0 16px;
}

.p-sectionSustainabilityIndex__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-sectionSustainabilityIndex__title {
  margin-bottom: 45px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-sectionSustainabilityIndex__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-sectionSustainabilityMateriality {
  padding: 60px 16px 0;
}
@media (min-width: 768px) {
  .p-sectionSustainabilityMateriality {
    padding-top: 110px
  }
}
.p-sectionSustainabilityMateriality__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-sustainabilityMainCards {
  display: grid;
  grid-gap: 40px;
  gap: 40px;
  margin-bottom: 48px;
  list-style: none;
}

@media (min-width: 768px) {

  .p-sustainabilityMainCards {
    grid-template-columns: repeat(3, 1fr);
    gap: 0
  }
}

.p-sustainabilityMainCards__item {
  border-top: 1px solid #e1e8eb;
  border-top: 1px solid var(--color-light-blue-gray);
}
.p-sustainabilityMainCard {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 16px 16px 0;
  background-color: rgba(#ffffff, 0.8);
  background-color: rgba(var(--color-white), 0.8);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .p-sustainabilityMainCard {
    padding: 30px 30px 0
  }
}
@media (min-width: 1024px) {
  .p-sustainabilityMainCard {
    padding: 40px 40px 0
  }
}
.p-sustainabilityMainCard::before {
  content: '';
  position: absolute;
  bottom: 0;
  right: 20px;
  width: 36px;
  height: 36px;
  background: url('/common/image/ico/ico_corporateMainCard_arrow.svg') no-repeat left top / 36px;
}
@media (min-width: 768px) {
  .p-sustainabilityMainCard::before {
    right: 30px;
    width: 40px;
    height: 40px;
    background-size: 40px
  }
}
@media (min-width: 1024px) {
  .p-sustainabilityMainCard::before {
    right: 40px;
    width: 60px;
    height: 60px;
    background-size: 60px
  }
}
@media (hover: hover) {
  .p-sustainabilityMainCard:hover {
    opacity: 0.75;
    opacity: var(--opacity-default);
  }
}
.p-sustainabilityMainCard__img {
  position: relative;
}
.p-sustainabilityMainCard__img::before {
  content: '';
  position: absolute;
  top: -16px;
  left: -16px;
  width: 1px;
  height: calc(100% + 16px);
  background-color: #e1e8eb;
  background-color: var(--color-light-blue-gray);
}
@media (min-width: 768px) {
  .p-sustainabilityMainCard__img::before {
    top: -30px;
    left: -30px;
    height: calc(100% + 30px)
  }
}
@media (min-width: 1024px) {
  .p-sustainabilityMainCard__img::before {
    top: -40px;
    left: -40px;
    height: calc(100% + 40px)
  }
}
.p-sustainabilityMainCard__img img {
  width: 100%;
  height: auto;
}
.p-sustainabilityMainCard__title {
  margin-top: 24px;
  margin-right: 64px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .p-sustainabilityMainCard__title {
    margin-top: 36px;
    margin-right: 52px;
    font-size: clamp(0.9375rem, 0rem + 1.9531vw, 1.25rem)
  }
}
@media (min-width: 1024px) {
  .p-sustainabilityMainCard__title {
    margin-top: 36px;
    margin-right: 84px;
    font-size: clamp(0.9375rem, -0.4471rem + 2.1635vw, 1.5rem)
  }
}
.p-sustainabilityMainCard__sub {
  margin-top: 8px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  line-height: 1.5;
  color: #9bb7c2;
  color: var(--color-pale-blue-gray);
}

.p-sustainabilityEvaluation {
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}

.p-sustainabilityEvaluation__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 60px;
  -webkit-text-decoration: none;
  text-decoration: none;
  padding: 28px 16px 16px 30px;
}

@media (min-width: 1024px) {

  .p-sustainabilityEvaluation__inner {
    flex-direction: row;
    padding: 66px 32px 32px 60px
  }
}

.p-sustainabilityEvaluation__logo {
  color: #d8e8eb;
  color: var(--color-soft-aqua);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 2.25rem;
  font-size: var(--font-size-36);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  word-break: keep-all;
  line-height: 1;
}

@media (min-width: 768px) {

  .p-sustainabilityEvaluation__logo {
    font-size: 4.5rem;
    font-size: var(--font-size-72)
  }
}

.p-sustainabilityEvaluation__content {
  position: relative;
  flex: 1;
  width: 100%;
  padding: 0 36px 0 0;
  color: #455459;
  color: var(--color-gray);
}

@media (min-width: 768px) {

  .p-sustainabilityEvaluation__content {
    padding: 0 60px 16px 0
  }
}

@media (min-width: 1024px) {

  .p-sustainabilityEvaluation__content {
    min-width: 430px
  }
}

.p-sustainabilityEvaluation__content::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: url(/common/image/ico/ico_corporateMainCard_arrow.svg) no-repeat left top;
  background-size: contain;
}

@media (min-width: 768px) {

  .p-sustainabilityEvaluation__content::after {
    width: 60px;
    height: 60px
  }
}

.p-sustainabilityEvaluation__title {
  margin-bottom: 20px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

@media (min-width: 768px) {

  .p-sustainabilityEvaluation__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}

.p-sustainabilityEvaluation__description {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-sustainabilityEvaluation__description {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

.p-sustainabilityMateriality {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

@media (min-width: 1024px) {

  .p-sustainabilityMateriality {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between
  }
}

@media (min-width: 1240px) {

  .p-sustainabilityMateriality {
    gap: 100px
  }
}

@media (min-width: 1024px) {

  .p-sustainabilityMateriality__content {
    padding-bottom: 80px
  }
}

.p-sustainabilityMateriality__title {
  margin-bottom: 20px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-sustainabilityMateriality__title {
    margin-bottom: 45px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-sustainabilityMateriality__description {
  margin-bottom: 45px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-sustainabilityMateriality__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-sustainabilityMateriality__button {
  max-width: 247px;
  margin: 0 auto;
}

@media (min-width: 768px) {

  .p-sustainabilityMateriality__button {
    max-width: 320px
  }
}

@media (min-width: 1024px) {

  .p-sustainabilityMateriality__button {
    margin: 0
  }
}

.p-sustainabilityMateriality__figure {
  max-width: 720px;
  margin: 0 auto;
}

@media (min-width: 1024px) {

  .p-sustainabilityMateriality__figure {
    max-width: 50%;
    margin: 0
  }
}

@media (min-width: 1240px) {

  .p-sustainabilityMateriality__figure {
    max-width: 720px
  }
}

.p-sustainabilityMateriality__figure img {
  width: 100%;
  max-width: 100%;
}

/* IR 投資家向け情報
---------------------------------------------------------- */
/* 経営方針 */
.p-irNavigationList {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 60px;
}
@media (min-width: 1024px) {
  .p-irNavigationList {
    margin-bottom: 120px
  }
}
.p-irNavigationListItem {
  position: relative;
}
.p-irNavigationListItem__link {
  display: block;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: #4d4d4d;
  color: var(--color-default);
  border-top: 1px;
  border-right: 0px;
  border-bottom: 0px;
  border-left: 1px;
  border-style: solid;
  border-color: #d8e8eb;
  border-color: var(--color-soft-aqua);
  padding: 10px 10px 30px 10px;
  margin: 0 0 12px 0;
}
@media (min-width: 1024px) {
  .p-irNavigationListItem__link {
    padding: 24px 70px 60px 24px;
    margin: 0 0 24px 0
  }
}
.p-irNavigationListItem__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-irNavigationContent__title {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (min-width: 768px) {
  .p-irNavigationContent__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
@media (min-width: 1024px) {
  .p-irNavigationContent__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24);
    margin: 0 0 8px 0
  }
}
.p-irNavigationContent__titleEnglish {
  color: #9bb7c2;
  color: var(--color-pale-blue-gray);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
}
@media (min-width: 1024px) {
  .p-irNavigationContent__titleEnglish {
    font-size: 0.8125rem;
    font-size: var(--font-size-13)
  }
}
.p-irNavigationContent__text {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  margin: 7px 0 0 0;
  line-height: 1.5;
}
@media (min-width: 1024px) {
  .p-irNavigationContent__text {
    margin: 24px 0 0 0;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-irNavigationContent__arrowButton {
  position: absolute;
  width: 24px;
  height: 24px;
  right: 24px;
  bottom: 9px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent url(/common/image/ico/ico_viewMoreCard_arrow_blue.svg) no-repeat center / 12px 12px;
  border: 1px solid #005bac;
  border: 1px solid var(--color-blue);
  border-radius: 50%;
}
@media (min-width: 1024px) {
  .p-irNavigationContent__arrowButton {
    top: 156px;
    right: 24px;
    width: 36px;
    height: 36px;
    background-size: 15px 15px
  }
}

/* トップメッセージ */
.p-irPolicyMessage {
  color: #4d4d4d;
  color: var(--color-default);
}
.p-irPolicyMessage__title {
  margin-bottom: 60px;
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-irPolicyMessage__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-irPolicyMessage__text {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}
@media (min-width: 768px) {
  .p-irPolicyMessage__text {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-irPolicyMessage__text + .p-irPolicyMessage__text {
  margin-top: 2em;
}
.p-irPolicyMessageSignature {
  margin-top: 45px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
  text-align: right;
}
@media (min-width: 768px) {
  .p-irPolicyMessageSignature {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-irPolicyMessageSignature__name {
  margin-top: 0.5em;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

/* IRカレンダー */
.p-irCalenderSchedule {
  overflow: hidden;
  border-radius: 8px 8px 0 0;
  margin-bottom: 50px;
}
.p-irCalenderSchedule__inner {
  position: relative;
  overflow-x: auto;
  padding-bottom: 20px;
}
@media (min-width: 800px) {
  .p-irCalenderSchedule__inner {
    overflow: hidden
  }
}
.p-irCalenderSchedule__inner::before,
.p-irCalenderSchedule__inner::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  width: 30px;
  height: 100%;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.35)) 0 -34px / 30px 100%;
  background-repeat: repeat-y;
  background-attachment: scroll;
}
@media (min-width: 800px) {
  .p-irCalenderSchedule__inner::before,
  .p-irCalenderSchedule__inner::after {
    display: none
  }
}
.p-irCalenderSchedule__inner::before {
  left: 0;
}
.p-irCalenderSchedule__inner::after {
  right: 0;
  transform: rotate(180deg);
}
.p-irCalenderSchedule__image {
  position: relative;
  width: 800px;
  margin: 0 auto;
}
@media (min-width: 800px) {
  .p-irCalenderSchedule__image {
    width: 100%
  }
}
.p-irCalenderSchedule__image img {
  width: 100%;
}
.p-irCalenderSchedule__inner .simplebar-scrollbar {
  height: 100%;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
}
.p-irCalenderSchedule__inner .simplebar-scrollbar:before {
  display: none;
}
.p-irCalenderSchedule__inner .simplebar-track {
  background: rgba(0, 0, 0, 0.4);
  height: 8px;
}

.p-irCalendarList {
  padding-top: 50px;
  margin-bottom: 80px;
  border-top: 1px solid #a9babf;
  border-top: 1px solid var(--color-gray-medium-light);
}

@media (min-width: 768px) {

  .p-irCalendarList {
    padding-left: 24px
  }
}
.p-irCalendarListItem {
  margin-bottom: 35px;
}
.p-irCalendarListItem:last-child {
  margin-bottom: 0;
}

.p-irCalendarListItem__title {
  margin-bottom: 15px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.125rem;
  font-size: var(--font-size-18);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-irCalendarListItem__title {
    font-size: 1.25rem;
    font-size: var(--font-size-20)
  }
}
.p-irCalendarTime {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-irCalendarTime {
    display: flex;
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
@media (min-width: 768px) {
  .p-irCalendarTime__title {
    min-width: 100px
  }
}
.p-irCalendarTime__content {
  flex: 1;
}
.p-irCalendarOldList {
  margin-bottom: 80px;
}
.p-irCalendarOldList > .p-irCalendarOldListItem {
  margin-bottom: 16px;
}
.p-irCalendarOldList > .p-irCalendarOldListItem:last-child {
  margin-bottom: 0;
}
.p-irCalendarAccordion .c-baseAccordion__title {
  font-size: 1.125rem;
  font-size: var(--font-size-18);
}
@media (min-width: 768px) {
  .p-irCalendarAccordion .c-baseAccordion__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}
.p-irCalendarAccordion .c-baseAccorion__inner {
  padding: 16px;
}
@media (min-width: 768px) {
  .p-irCalendarAccordion .c-baseAccorion__inner {
    padding: 24px
  }
}

/* 決算短信 */
.p-sectionIrDocuments {}

.p-irDocuments {
  margin-bottom: 80px;
}

.p-irDocuments__heading {
  margin-bottom: 50px;
}

@media (min-width: 768px) {

  .p-irDocuments__heading {
    display: flex;
    align-items: center;
    justify-content: space-between
  }
}

.p-irDocuments__title {
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  margin-left: 25px;
}

@media (min-width: 768px) {

  .p-irDocuments__title {
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}

.p-irDocuments__select {
  margin-top: 20px;
  width: 240px;
}

@media (min-width: 768px) {

  .p-irDocuments__select {
    margin: 0
  }
}

.p-irDocuments__body {}

.p-irDocuments__year {
  margin-bottom: 25px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.375rem;
  font-size: var(--font-size-22);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-irDocuments__year {
    font-size: 1.75rem;
    font-size: var(--font-size-28)
  }
}
.p-irDocumentsSelect__field {
  width: 100%;
  height: 48px;
  padding: 5px 40px 5px 16px;
  background: #ffffff url(/common/image/ico/ico_select_arrow.svg) no-repeat center right 16px;
  background-size: 10px 7px;
  border: 1px solid #e1e8eb;
  border: 1px solid var(--color-light-blue-gray);
  border-radius: 4px;
  font-size: 13px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  color: #4d4d4d;
  color: var(--color-default);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.p-irDocumentsList {
  overflow: hidden;
  border-radius: 8px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
  padding: 24px 24px;
  list-style-type: none;
}

.p-irDocumentsList__item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 20px 0 20px 0;
  border-bottom: 1px solid #d4dddf;
  border-bottom: 1px solid var(--color-pale-aqua);
}

.p-irDocumentsList__link {
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  justify-content: flex-start;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
  -webkit-text-decoration: none;
  text-decoration: none;
}

@media (min-width: 768px) {

  .p-irDocumentsList__link {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-irDocumentsList__link:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

.p-irDocumentsList__link::after {
  display: none;
  content: "";
  vertical-align: middle;
  margin-left: 8px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.p-irDocumentsList__date {
  margin-right: 16px;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.p-irDocumentsList__title {
  flex: 1;
}

.p-irDocumentsList__new {
  display: inline-block;
  padding: 2px 4px;
  border: 2px solid #b84951;
  border: 2px solid var(--color-rouge);
  border-radius: 3px;
  color: #b84951;
  color: var(--color-rouge);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 10px;
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1;
  letter-spacing: 0.05em;
}
.p-irDocumentsList__link.c-icon--pdf::after {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("/common/image/ico/ico_pdf.svg");
}
.p-irDocumentsList__link.c-icon--movie::after {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("/common/image/ico/ico_video.svg");
}
.p-irDocumentsList__link.c-icon--xls::after {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("/common/image/ico/ico_xls_gray.svg");
}

/* 成功事例
---------------------------------------------------------- */
.p-sectionCustomersuccessIndex {
  padding: 0 16px 80px;
}
.p-sectionCustomersuccessIndex__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.p-sectionRelatedArticle {
  padding: 80px 16px;
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}

.p-sectionRelatedArticle__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-relatedArticle__title {
  margin-bottom: 30px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 1.5rem;
  font-size: var(--font-size-24);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-relatedArticle__title {
    margin-bottom: 60px;
    font-size: 2.25rem;
    font-size: var(--font-size-36)
  }
}
.p-relatedArticleList {
  list-style-type: none;
}
@media (min-width: 768px) {
  .p-relatedArticleList {
    display: flex;
    flex-wrap: wrap;
    margin: -40px -12px 0
  }
}
@media (min-width: 1024px) {
  .p-relatedArticleList {
    margin: -60px -24px 0
  }
}
.p-relatedArticleList__item {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .p-relatedArticleList__item {
    margin: 40px 0 0;
    width: 50%;
    padding: 0 12px
  }
}
@media (min-width: 1024px) {
  .p-relatedArticleList__item {
    margin: 60px 0 0;
    width: 33.33%;
    padding: 0 24px
  }
  .p-relatedArticleList__item:nth-child(3n-1) {
    width: 33.34%;
  }
}
.p-relatedArticleList__item:last-child {
  margin-bottom: 0;
}

.p-customersuccessList {
  list-style-type: none;
}

@media (min-width: 768px) {

  .p-customersuccessList {
    display: flex;
    flex-wrap: wrap;
    margin: -40px -12px 0
  }
}

@media (min-width: 1024px) {

  .p-customersuccessList {
    margin: -60px -24px 0
  }
}

.p-customersuccessList__item {
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-customersuccessList__item {
    margin: 40px 0 0;
    width: 50%;
    padding: 0 12px
  }
}

@media (min-width: 1024px) {

  .p-customersuccessList__item {
    margin: 60px 0 0;
    width: 33.33%;
    padding: 0 24px
  }
  .p-customersuccessList__item:nth-child(3n-1) {
    width: 33.34%;
  }
}

.p-customersuccessList__item:last-child {
  margin-bottom: 0;
}
.p-customersuccessList + .p-customersuccess-noHitText {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .p-customersuccessList + .p-customersuccess-noHitText {
    margin-top: 80px
  }
}

.p-sectionCustomersuccessEntry {
  /*padding: 0 16px 0;*/
  /*&__inner {*/
  /*  max-width: 1440px;*/
  /*  margin: 0 auto;*/
  /*}*/
}

.p-customersuccessEntry__heading {
  padding: 60px 16px 0;
  margin-bottom: 40px;
}

@media (min-width: 768px) {

  .p-customersuccessEntry__heading {
    max-width: 1232px;
    margin: 0 auto 40px
  }
}

.p-customersuccessEntry__info {
  position: relative;
  padding: 0 16px 60px;
  margin-bottom: 80px;
}

.p-customersuccessEntry__info::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 85%;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}

@media (min-width: 1024px) {

  .p-customersuccessEntry__info::after {
    height: 55%
  }
}

.p-customersuccessEntry__body {
  padding: 0 16px 80px;
}

@media (min-width: 768px) {

  .p-customersuccessEntry__body {
    max-width: 1440px;
    margin: 0 auto
  }
}

@media (min-width: 1024px) {

  .p-customersuccessEntry__body {
    padding-left: 120px
  }
}

.p-customersuccessEntry__body > .c-articleContents,
.p-customersuccessEntry__body > .p-customersuccessPoint,
.p-customersuccessEntry__body > .c-tableOfContents {
  max-width: 840px;
}

.p-customersuccessEntry__body > .c-supportBox {
  max-width: 840px;
  margin: 80px 0 0;
}

@media (min-width: 1024px) {

  .p-customersuccessEntryInfo {
    display: flex;
    justify-content: space-between;
    max-width: 1440px;
    margin: 0 auto
  }
}

.p-customersuccessEntryInfo__view {
  padding-top: 40px;
  margin-bottom: 40px;
}

@media (min-width: 1024px) {

  .p-customersuccessEntryInfo__view {
    flex: 1;
    max-width: 960px;
    padding-left: 120px;
    margin-right: 30px;
    margin-bottom: 0
  }
}

@media (min-width: 1024px) {

  .p-customersuccessEntryInfo__detail {
    flex: 1;
    max-width: 384px
  }
}

.p-customersuccessEntryInfo__image {
  margin-bottom: 30px;
}

@media (min-width: 768px) {

  .p-customersuccessEntryInfo__image {
    margin-bottom: 60px
  }
}

.p-customersuccessEntryInfo__description {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 2;
}

@media (min-width: 768px) {

  .p-customersuccessEntryInfo__description {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}

.p-customersuccessEntryInfoBox {
  max-width: 384px;
  margin: 0 auto;
  padding: 48px 24px;
  background-color: #ffffff;
  background-color: var(--color-white);
}

.p-customersuccessEntryInfoBox__title {
  position: relative;
  margin-bottom: 30px;
  color: #cddbe0;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 1rem;
  font-size: var(--font-size-16);
  line-height: 1.5;
}

.p-customersuccessEntryInfoBox__title::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: calc(100% + 24px);
  height: 1px;
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
}

.p-customersuccessEntryInfoBox__title > span {
  position: relative;
  z-index: 2;
  display: inline-block;
  vertical-align: middle;
  padding-right: 12px;
  background-color: #ffffff;
  background-color: var(--color-white);
}

.p-customersuccessEntryInfoBox__content {
  margin-bottom: 30px;
}

.p-customersuccessEntryInfoBox__content > .p-customersuccessEntryInfoList {
  margin-bottom: 16px;
}

.p-customersuccessEntryInfoBox__content > .p-customersuccessEntryInfoList:last-child {
  margin-bottom: 0;
}

.p-customersuccessEntryInfoBox__button {
  max-width: 280px;
  margin: 0 auto;
}
.p-customersuccessEntryInfoList {
  display: flex;
}
.p-customersuccessEntryInfoList__title {
  position: relative;
  width: 115px;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.p-customersuccessEntryInfoList__title::after {
  content: "：";
  position: absolute;
  top: 0;
  right: 0;
  color: #9bb7c2;
  color: var(--color-pale-blue-gray);
}
.p-customersuccessEntryInfoList__detail {
  flex: 1;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
.p-customersuccessEntryInfoList__detail a {
  color: #005bac;
  color: var(--color-blue);
}
.p-customersuccessEntryInfoList__detail a:hover{
  -webkit-text-decoration: none;
  text-decoration: none;
}

.p-customersuccessPoint {
  padding: 12px;
  margin-bottom: 80px;
  background-color: #ffffff;
  background-color: var(--color-white);
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  border-radius: 8px;
}

.p-customersuccessPoint__item {
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}

.p-customersuccessPoint__item:last-child {
  border: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.p-customersuccessIssue {
  padding: 12px;
  background-color: #d8e8eb;
  background-color: var(--color-soft-aqua);
  color: #4d4d4d;
  color: var(--color-default);
}
@media (min-width: 768px) {
  .p-customersuccessIssue {
    display: flex
  }
}
.p-customersuccessIssue__heading {
  padding: 12px 0 16px 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .p-customersuccessIssue__heading {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 180px;
    padding: 12px 16px 0 8px;
    border-right: 1px solid #a9babf;
    border-right: 1px solid var(--color-gray-medium-light);
    border-bottom: none
  }
}
.p-customersuccessIssue__mainTitle {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.p-customersuccessIssue__subTitle {
  margin-top: 5px;
  font-size: 3rem;
  font-size: var(--font-size-48);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  line-height: 1;
  color: #c0d1d4;
}
.p-customersuccessIssue__body {
  flex: 1;
  padding: 16px 12px 12px;
}
@media (min-width: 768px) {
  .p-customersuccessIssue__body {
    padding: 8px 12px 8px 28px
  }
}
.p-customersuccessResult {
  padding: 12px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  color: #ffffff;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .p-customersuccessResult {
    display: flex
  }
}
.p-customersuccessResult__heading {
  padding: 12px 0 16px 8px;
  border-bottom: 1px solid #a9babf;
  border-bottom: 1px solid var(--color-gray-medium-light);
}
@media (min-width: 768px) {
  .p-customersuccessResult__heading {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 180px;
    padding: 12px 16px 0 8px;
    border-right: 1px solid #a9babf;
    border-right: 1px solid var(--color-gray-medium-light);
    border-bottom: none
  }
}
.p-customersuccessResult__mainTitle {
  font-size: 0.875rem;
  font-size: var(--font-size-14);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
.p-customersuccessResult__subTitle {
  margin-top: 5px;
  font-size: 3rem;
  font-size: var(--font-size-48);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  line-height: 1;
  color: #c0d1d4;
}
.p-customersuccessResult__body {
  flex: 1;
  padding: 16px 12px 12px;
}
@media (min-width: 768px) {
  .p-customersuccessResult__body {
    padding: 8px 12px 8px 28px
  }
}

.p-customersuccessPointList {
  list-style-type: decimal-leading-zero;
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}

@media (min-width: 768px) {

  .p-customersuccessPointList {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

.p-customersuccessPointList__item {
  position: relative;
  margin-left: 25px;
  margin-bottom: 1em;
  padding-left: 8px;
}

.p-customersuccessPointList__item:last-child {
  margin-bottom: 0;
}

.p-customersuccessPointList__item::marker {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

/* お問い合わせ
---------------------------------------------------------- */
.p-inquiryIndexAnchor {
  padding: 0 16px;
  margin-bottom: 80px;
}
@media (min-width: 768px) {
  .p-inquiryIndexAnchor {
    padding: 0;
    margin-bottom: 120px
  }
}

.p-sectionInquiryIndex {
  background-color: #f2f4f5;
  background-color: var(--color-gray-light);
}
.p-sectionInquiryIndexOther {
  padding: 40px 16px 80px;
}
@media (min-width: 768px) {
  .p-sectionInquiryIndexOther {
    padding-top: 120px;
    padding-bottom: 120px
  }
}

/* 404 Not Found
---------------------------------------------------------- */
.p-sectionNotFound {
  padding: 0 16px 80px;
}
.p-sectionNotFound__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.p-notFound__text {
  margin-bottom: 40px;
  color: #4d4d4d;
  color: var(--color-default);
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-notFound__text {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-notFound__button {
  max-width: 247px;
  margin: 60px auto 0;
}
@media (min-width: 768px) {
  .p-notFound__button {
    max-width: 320px
  }
}
.p-notFoundLinks {
  display: flex;
  list-style-type: none;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .p-notFoundLinks {
    margin-bottom: 80px
  }
}
.p-notFoundLinks__item {
  position: relative;
  padding-left: 33px;
  margin-right: 36px;
}
.p-notFoundLinks__item:last-child {
  margin-right: 0;
}
.p-notFoundLinks__item::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #005bac;
  background-color: var(--color-blue);
}
.p-notFoundLinks__item a {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  color: #005bac;
  color: var(--color-blue);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .p-notFoundLinks__item a {
    font-size: 0.9375rem;
    font-size: var(--font-size-15)
  }
}
.p-notFoundLinks__item a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.p-notFoundSearch {
  max-width: 960px;
  margin: 0 auto;
  padding: 16px 16px 25px;
  background-color: #f0f5f5;
  background-color: var(--color-ice-blue);
}
@media (min-width: 768px) {
  .p-notFoundSearch {
    padding: 32px 60px 50px
  }
}
.p-notFoundSearch__title {
  margin-bottom: 15px;
  color: #4d4d4d;
  color: var(--color-default);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  font-size: 1rem;
  font-size: var(--font-size-16);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-notFoundSearch__title {
    font-size: 1.125rem;
    font-size: var(--font-size-18)
  }
}
.p-notFoundSearchField {
  overflow: hidden;
  position: relative;
  display: block;
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
  border-radius: 8px;
}
.p-notFoundSearchField__input {
  width: 100%;
  height: 50px;
  padding: 10px 64px 10px 14px;
  font-size: 16px;
  line-height: 1.5;
  border: none;
  border-radius: 8px;
}
@media (min-width: 768px) {
  .p-notFoundSearchField__input {
    height: 60px;
    padding: 10px 84px 10px 24px
  }
}
.p-notFoundSearchField__button {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
  background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
  background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0 8px 8px 0;
}
@media (min-width: 768px) {
  .p-notFoundSearchField__button {
    width: 60px;
    height: 60px
  }
}
.p-notFoundSearchField__button::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  background: url("/common/image/ico/ico_search_white.svg") 0 0 no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-notFoundSearchField__button::before {
    width: 24px;
    height: 24px
  }
}

.p-sectionSearch {
  padding: 0 16px 0;
}

.p-sectionSearch__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.c-attentionArea {
  max-width: 1040px;
  margin: 80px auto;
  padding: 0 16px;
}
.c-attention {
  border-radius: 6px;
  border: 1px solid #B84951;
  background-color: #fbf6f6;
}
@media (min-width: 1024px) {
  .c-attention {
    display: flex;
    align-items: flex-start;
    padding: 40px 40px 40px 48px
  }
}
.c-attention__title {
  position: relative;
  padding: 10px 0 6px 16px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  line-height: 1;
  color: #B84951;
  border-bottom: 1px solid #B84951;
}
@media (min-width: 1024px) {
  .c-attention__title {
    padding: 0 84px 0 38px;
    font-size: 1rem;
    font-size: var(--font-size-16);
    border: none;
    margin-right: 36px
  }
}
.c-attention__title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 12px;
  margin-top: -6px;
  background-color: #B84951;
}
@media (min-width: 1024px) {
  .c-attention__title::before {
    height: 16px;
    margin-top: -8px
  }
}
@media (min-width: 1024px) {
  .c-attention__title::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 48px;
    height: 1px;
    background-color: #B84951
  }
}
.c-attention__detail {
  padding: 14px 16px 16px;
  font-size: 0.75rem;
  font-size: var(--font-size-12);
}
@media (min-width: 1024px) {
  .c-attention__detail {
    flex: 1;
    padding: 0;
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}
.c-attentionList {
  list-style-type: none;
  color: #B84951;
}
.c-attentionList__item {
  display: flex;
  align-items: flex-start;
  line-height: 1.5;
}
.c-attentionList__date {
  margin-right: 12px;
}
@media (min-width: 1024px) {
  .c-attentionList__date {
    margin-right: 24px
  }
}
.c-attentionList__detail {
  flex: 1;
}
.c-attentionList__detail a {
  color: #B84951;
  -webkit-text-decoration: underline;
  text-decoration: underline;
  transition: all 0.3s ease;
}
.c-attentionList__detail a:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
  opacity: 0.75;
}

.p-topSectionPickUp {
  margin: 0 0 160px;
}

.p-topSectionPickUp__inner {
  max-width: 1256px;
  margin: 0 auto;
}

.p-topSectionPickUp__title {
  position: relative;
  padding-left: 45px;
  margin-left: 16px;
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  font-size: 2rem;
  font-size: var(--font-size-32);
  color: #005bac;
  color: var(--color-blue);
  line-height: 1;
  margin-bottom: 40px;
}

.p-topSectionPickUp__title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 32px;
  background: url("/top/image/ico_top_pickup_arrow.svg") 0 0 no-repeat;
  background-size: contain;
}
.p-topPickUp {
  position: relative;
}
@media (min-width: 1024px) {
  .p-topPickUp {
    display: flex;
    min-height: 375px
  }
}
.p-topPickUp__article {
  padding: 0 16px;
  margin-bottom: 40px;
}
@media (min-width: 1024px) {
  .p-topPickUp__article {
    flex: 1;
    max-width: 520px;
    margin: 0 40px 0 0
  }
}
.p-topPickUp__image {
  position: relative;
}
@media (min-width: 1024px) {
  .p-topPickUp__image {
    width: 600px
  }
}
.p-topPickUpArticle {
  position: relative;
  width: 100%;
  list-style-type: none;
}
.p-topPickUpArticle__item {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 100% !important;
  animation: slideFadeOut 0.4s ease;
}
.p-topPickUpArticle__item.is-active {
  display: block;
  opacity: 1;
  animation: slideFadeIn 1.6s ease;
}
.p-topPickUpArticle__title {
  font-size: 0.8125rem;
  font-size: var(--font-size-13);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
}
@media (min-width: 1024px) {
  .p-topPickUpArticle__title {
    font-size: 1rem;
    font-size: var(--font-size-16)
  }
}
.p-topPickUpArticle__title a {
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
}
.p-topPickUpArticle__title a:hover {
  opacity: 0.75;
}
.p-topPickUpArticle__icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: 15px;
  padding: 6px 12px;
  color: #ffffff;
  color: var(--color-white);
  background-color: #005bac;
  background-color: var(--color-blue);
  border-radius: 4px;
  line-height: 1;
}

.p-topPickUpImage {
  list-style-type: none;
}

.p-topPickUpImage__item {
  border-radius: 8px;
}

.p-topPickUpImage__item a {
  overflow: hidden;
  display: block;
  border-radius: 8px;
  height: 100%;
  transition: all 0.3s ease;
}

.p-topPickUpImage__item a:hover {
  opacity: 0.75;
}

.p-topPickUpImage__item a:hover img {
  transform: scale(1.1);
}

.p-topPickUpImage__item img {
  overflow: hidden;
  border-radius: 8px;
  transition: all 0.3s ease;
  transform: scale(1);
}

#js-topPickUpSlider .splide__track {
  overflow: visible !important;
  padding-bottom: 20px;
}

#js-topPickUpSlider .splide__arrow {
  color: #005bac;
  color: var(--color-blue);
}

#js-topPickUpSlider.splide:not(.is-overflow) .splide__pagination {
  display: flex;
}
#js-topPickUpSlider .splide__list {
  align-items: flex-end;
}
@media (max-width: 1023px) {
  #js-topPickUpSlider .splide__track {
    margin-left: 0 !important;
  }
  #js-topPickUpSlider .splide__list {
    align-items: flex-end;
    padding-right: 80px !important;
  }

  #js-topPickUpSlider .splide__slide img {
    width: 65%;
  }
  #js-topPickUpSlider .splide__slide.is-preActive img {
    width: 100%;
    transition: width 0.2s ease;
  }
  #js-topPickUpSlider .splide__slide.is-active {
    box-shadow: 10px 10px 10px 0px rgba(113, 156, 174, 0.32);
  }
}
@media (min-width: 1024px) {
  #js-topPickUpSlider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-bottom: 0 !important;
  }
  #js-topPickUpSlider .splide__track {
    overflow: visible !important;
    padding-bottom: 0;
  }
  #js-topPickUpSlider .splide__list {
  }
  #js-topPickUpSlider .splide__slide.is-active img {
    box-shadow: 40px 40px 40px 0px rgba(113, 156, 174, 0.32);
  }
  #js-topPickUpSlider .splide__slide {
    width: 288px !important;
    height: 180px;
    transform: translateY(0);
    transition: transform 0.4s linear;
  }
  #js-topPickUpSlider .splide__slide .animate {
    width: 600px;
    transform: scale(0.48);
    transform-origin: top left;
  }
  #js-topPickUpSlider .splide__slide.is-active {
    width: 600px !important;
    height: 375px;
    transform: translateY(-65px);
  }
  #js-topPickUpSlider .splide__slide.is-active .animate {
    transform: scale(1);
    transform-origin: right bottom;
    transition: transform 0.5s ease;
  }
  #js-topPickUpSlider .splide__arrows {
    left: auto;
    right: 0;
    width: 100%;
    gap: 24px;
  }
  #js-topPickUpSlider .splide__pagination {
    flex: 1;
    gap: 8px;
  }
  #js-topPickUpSlider .splide__pagination > li {
    flex: 1;
  }
  #js-topPickUpSlider .splide__pagination__page {
    width: 100%;
  }
}

@keyframes slideFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes slideFadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
#parts {
  padding-bottom: 500px;
}
.p-parts section {
  padding: 0 16px;
}
@media (min-width: 768px) {
  .p-parts section {
    padding: 0 30px
  }
}
.p-parts section + section {
  margin-top: 50px;
}
.p-parts section > * + * {
  margin-top: 20px;
}
.p-parts__title {
  margin-bottom: 30px;
  padding: 20px;
  background-color: #000;
  color: #fff;
  font-size: 20px;
}
.p-parts__sub-title {
  margin-bottom: 30px;
  padding: 10px;
  font-size: 16px;
  border-bottom: 1px solid #000;
}
.p-parts + .p-parts {
  margin-top: 100px;
}
.p-multiPaymentService__paymentList {
  --item-width-pc: 291px;
}.c-applyBoxItem {
   container: c-applyBoxItem / inline-size;
   display: grid;
 }
.c-applyBoxItem__inner {
  display: grid;
  grid-gap: 24px;
  gap: 24px;
}
@media (min-width: 768px) {
  .c-applyBoxItem__inner {
    display: flex;
    align-items: flex-start
  }
}
@container c-applyBoxItem (max-width: 450px) {
  .c-applyBoxItem__inner {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    grid-gap: 24px;
    gap: 24px
  }
}
.c-applyBoxItem__head {
  display: grid;
  grid-template-rows: auto;
  grid-gap: 12px;
  gap: 12px;
}
@media (min-width: 768px) {
  .c-applyBoxItem__head {
    width: 38.64%;
    gap: 20px
  }
}
@container c-applyBoxItem (max-width: 450px) {
  .c-applyBoxItem__head {
    grid-template-rows: subgrid;
    grid-row: span 2;
    width: 100%
  }
}
.c-applyBoxItem__title {
  font-size: var(--font-size-14);
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-applyBoxItem__title {
    font-size: var(--font-size-20)
  }
}
.c-applyBoxItem__title br {
  display: none;
}
@media (min-width: 768px) {
  .c-applyBoxItem__title br {
    display: block
  }
}
.c-applyBoxItem__description {
  font-size: var(--font-size-12);
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: var(--color-white);
}
@media (min-width: 768px) {
  .c-applyBoxItem__description {
    font-size: var(--font-size-14)
  }
}
.c-applyBoxItem__body {
  display: grid;
  align-items: center;
  justify-items: center;
  align-items: center;
  justify-items: center;
  place-items: center;
  grid-gap: 24px;
  gap: 24px;
}
@media (min-width: 768px) {
  .c-applyBoxItem__body {
    flex: 1
  }
}
.c-applyBoxItem__slot {
  width: 100%;
}
.c-applyBoxItem__button {
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .c-applyBoxItem__button {
    max-width: 100%
  }
}
.c-applyBoxItem__button .c-button--md {
  min-width: 200px;
}
@media (min-width: 768px) {
  .c-applyBoxItem__button .c-button--md {
    min-width: 264px
  }
}

/* ==========================================================================//
// ここからPG追記
// ========================================================================== */
/* シンプルリスト */
.c-list-none {
  list-style-type: none;
}
/* アコーディオン内 */
.c-faqAccordion .c-list-none li {
  margin-bottom: 40px;
}
/* 強調box */
.c-articleContents * + .c-borderbox-type1, .c-articleContents * + .c-borderbox-type2 {
  margin-top: 2em;
}
.c-borderbox-type1 {
  position: relative;
  padding: 22px 16px;
  border: 1px solid var(--color-pale-aqua);
  margin-bottom: 40px;
}

.c-borderbox-type2 {
  position: relative;
  padding: 22px 16px;
  border-top: 1px solid var(--color-pale-aqua);
  border-bottom: 1px solid var(--color-pale-aqua);
  margin-bottom: 40px;
}

/* h3マージン処理 */
p + h3.c-heading-type3,div + h3.c-heading-type3, figure + h3.c-heading-type3, table + h3.c-heading-type3 {
  margin-top: 40px;
}

/* h4マージン処理 */
p + h4.c-heading-type3,div + h4.c-heading-type3, figure + h4.c-heading-type3, table + h4.c-heading-type3 {
  margin-top: 40px;
}

/* h5マージン処理 */
p + h5.c-heading-type3,div + h5.c-heading-type3, figure + h5.c-heading-type3, table + h5.c-heading-type3 {
  margin-top: 40px;
}

/* li内noteの処理 */
.c-articleContents li p.c-text + p.c-text--note {
  margin-top: -2.5em;
}

/* ulでのnoteの処理 */
ul.c-text--note {
  list-style-type: none;
}

/* リスト内h4処理 */
h4.c-heading-type3 + ul.c-list-disc ,h4.c-heading-type3 +  ol.c-list-number {
  margin-bottom: 40px;
}

ul.c-list-disc + h4.c-heading-type3 ,ol.c-list-number + h4.c-heading-type3 {
  padding-top: 40px;
}

/* 汎用inline-blockリスト */
ul.c-list-inlineblock {
  list-style-type: none;
  margin-bottom: 1.7em;
}

ul.c-list-inlineblock li {
  display: inline-block;
}

/* インデントブロック */
.c-block-indent {
  margin-left: 1em;
}

/* img枠 */
.c-image img {
  padding: 40px;
  border: 1px solid var(--color-gray-medium-light);
}

/* img枠なし */
.c-image.c-image--noborder img {
  border: none;
}

/* imgpaddingeなし */
.c-image.c-image--nopadding img {
  padding: 0;
}

/* シンプルdl flex */
.c-list-dl {
  padding: 36px 0;
  border-bottom: 1px solid var(--color-light-blue-gray);
}
@media (min-width: 768px){
  .c-list-dl {
    display: flex;
    align-items: flex-start;
  }
}

.c-list-dl dt {
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px){
  .c-list-dl dt {
    width: 30%;
    margin-bottom: 0;
  }
  .c-list-dl dd {
    width: 70%;
  }
}

/* 画像並べる系シンプルflex */
.c-list-flex {
  display: flex;
  list-style-type: none;
  margin-bottom: 2em;
}

.c-list-flex--spacearound {
  justify-content: space-around;
}

/* 文中の強調リンク */
.c-link-inline {
  position: relative;
  display: block;
  margin: 20px 20px 0 0;
  color: var(--color-blue);
  font-size: var(--font-size-13);
  font-weight: var(--font-weight-bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
  -webkit-text-decoration: none;
  text-decoration: none;
}

@media (min-width: 768px) {
  a.c-link-inline::after {
    content: "";
    position: absolute;
    top: 50%;
    /* right: 12px; */
    width: 18px;
    height: 10px;
    margin-top: -5px;
    background: url(/common/image/ico/ico_button_arrow.svg) 0 0 no-repeat;
    background-size: contain;
    margin-left: 10px;
  }

  a.c-link-inline:hover::after {
    transition-duration: 0.1s;
    width: 20px;
    height: 12px;
    top: calc(50% - 2px);
    margin-left: 12px;
  }
}

/* サステナTOP統合報告書 */
.p-sustainabilityReport {
  border: 1px solid #d4dddf;
  border: 1px solid var(--color-pale-aqua);
}

.p-sustainabilityReport__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 60px;
  -webkit-text-decoration: none;
  text-decoration: none;
  padding: 28px 16px 16px 30px;
}

@media (min-width: 1024px) {
  .p-sustainabilityReport__inner {
    flex-direction: row;
    padding: 66px 32px 32px 60px
  }
}

.p-sustainabilityReport__logo {
  color: #d8e8eb;
  color: var(--color-soft-aqua);
  font-family: "Marcellus", serif;
  font-family: var(--font-family-en);
  font-size: 2.25rem;
  font-size: var(--font-size-36);
  font-weight: 400;
  font-weight: var(--font-weight-regular);
  word-break: keep-all;
  line-height: 1;
}

@media (min-width: 768px) {
  .p-sustainabilityReport__logo {
    font-size: 4.5rem;
    font-size: var(--font-size-72)
  }
}

.p-sustainabilityReport__content {
  position: relative;
  flex: 1;
  width: 100%;
  padding: 0 36px 0 0;
  color: #455459;
  color: var(--color-gray);
}

@media (min-width: 768px) {
  .p-sustainabilityReport__content {
    padding: 0 60px 16px 0
  }
}

@media (min-width: 1024px) {
  .p-sustainabilityReport__content {
    min-width: 280px
  }
}

.p-sustainabilityReport__content::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: url(/common/image/ico/ico_corporateMainCard_arrow.svg) no-repeat left top;
  background-size: contain;
}

@media (min-width: 768px) {
  .p-sustainabilityReport__content::after {
    width: 60px;
    height: 60px
  }
}

.p-sustainabilityReport__title {
  margin-bottom: 20px;
  font-size: 1rem;
  font-size: var(--font-size-16);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

@media (min-width: 768px) {
  .p-sustainabilityReport__title {
    font-size: 1.5rem;
    font-size: var(--font-size-24)
  }
}

.p-sustainabilityReport__description {
  font-size: 0.75rem;
  font-size: var(--font-size-12);
  line-height: 1.5;
}

@media (min-width: 768px) {
  .p-sustainabilityReport__description {
    font-size: 0.875rem;
    font-size: var(--font-size-14)
  }
}

/* SSLクーポン　カテゴリディスクリプション */
.c-selectedCouponsTable__caption--note {
  font-size: var(--font-size-12);
  font-weight: var(--font-weight-regular);
  display: block;
}

/* news 注釈用 */
.c-articleContents--news ul.c-list-note {
  color: #9fa0a0;
  color: var(--color-gray-default-half);
  font-size: 0.625rem;
  font-size: var(--font-size-10);
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
  list-style-type: none;
}
.c-articleContents--news ul.c-list-note li {
  padding-left: 0;
  margin-bottom: 1em;
}
.c-articleContents--news ul.c-list-note > li::before {
  content: "";
  display: none;
}
@media (min-width: 768px) {
  .c-articleContents--news ul.c-list-note {
    font-size: 0.75rem;
    font-size: var(--font-size-12)
  }
}

/* news 見出し */
@media (min-width: 768px) {
  .c-articleContents--news h2.c-heading-type3 {
    font-size: 1.2rem;
    font-size: var(--font-size-20);
    margin-top: 1.5em;
    margin-bottom: 1.2em;
  }
}
.c-articleContents--news h2.c-heading-type3 {
  margin-bottom: 1.2em;
  font-size: 1rem;
  font-size: var(--font-size-18);
}


/* アコーディオン調整 */
.c-baseAccordion.c-baseAccordion--gray {
  margin-bottom: 8px;
}

/* IR資料室table　高さ揃え */
.c-irDocumentTable tbody th {
  height: 80px;
}

/* IRカレンダー調整 */
@media (min-width: 768px) {
  .p-irCalendarTime__title {
    min-width: 180px
  }
}

/* tableスクロール調整 */
@media (max-width: 767px) {
  div.c-table-sp {
    overflow-x: scroll;
  }
  div.c-table-sp > table.c-table-type2 {
    width: 768px;
  }
}

/* ボタンならび */
@media (max-width: 767px) {
  ul.c-list-button {
    flex-wrap: wrap;
  }
  ul.c-list-button li {
    margin-bottom: 40px;
  }
}

/* 画像調整 */
@media (max-width: 767px) {
  .c-image.c-image--noborder img, .c-image img{
    padding: 10px;
  }
}

/* SP言語切り替え調整 */
.c-header-menuLanguage {
  margin-bottom: 60px;
}

/* ==========================================================================//
// wovn用
// ========================================================================== */
html[lang=ja] .hide_if_ja {
  display: none !important;
}
html[lang=en] .hide_if_en {
  display: none !important;
}

/* html[lang=en] .c-shadow-header-links__button--service {
  right: 590px;
  width: initial;
} */
html[lang=en] .c-shadow-header-links__button--ir {
  /* right: 312px; */
  width: 165px;
}

/* html[lang=en] .c-shadow-header-links__button--corp {
  right: 568px;
  width: initial;
} */
/* html[lang=en] .c-megaMenu--corp::before {
  right: 588px;
}
html[lang=en] .c-megaMenuService::before {
  right: 620px;
} */
html[lang=en] .c-irMenuList__sub {
  opacity: 0;
}

.c-header-language__link {
  cursor: pointer;
}

html[lang="ja"] .wovn-languages .c-header-language > .c-header-language__item > a[data-value="ja"] {
  color: #ffffff;
  background-color: #4d4d4d;
}
html[lang="en"] .wovn-languages .c-header-language > .c-header-language__item > a[data-value="en"] {
  color: #ffffff;
  background-color: #4d4d4d;
}

@media (min-width: 1359px) {
  html[lang="en"] .c-megaMenu--corp::before {
    right: 558px;
  }
  html[lang="en"] .c-megaMenuService::before {
    right: 580px;
  }
}

.p-irMainLinksList__title {
    margin-left: 25px;
}

.new_business {
  font-size: 10px;
  border: 1px solid var(--color-rouge);
  padding: 6px 12px;
  border-radius: 4px;
  color: var(--color-rouge);
  display: inline-block;
  margin-bottom: 10px;
}

@media (max-width: 1140px) {
  .new_business {
    display: block;
	width: 100px;
	text-align: center;
  }
}