@charset "UTF-8";
/* ============================================== */
/*                    共通設定                    */
/* ============================================== */
:root {
  /* 色 */
  --textColor: #050f1a;
  --mainBlue: #092987;
  --subBlue: #5369ab;
  --mainRed: #e5004c;
  --accentRed: #e60012;
  --bgblue: #e6eaf3;
  --bgblue02: #f3f4f9;
  /* グラデ */
  --mainGradient: linear-gradient(to right, #567eb4 0%, #004190 100%);
  /* フォント */
  --ff_notoSans: "Noto Sans JP", serif;
  --ff_notoSerif: "Noto Serif JP", serif;
  --ff_oswald: "Oswald", sans-serif;
  /* 幅・高さ */
  --headerHeight: 60px;
  --baseMargin: 90px;
}
html,
body {
  min-width: 1028px;
}
body {
  position: relative;
  z-index: 0;
}
main {
  font-size: 1.8rem !important;
  line-height: 1.75;
  font-family: var(--ff_notoSans) !important;
  overflow-x: hidden;
  word-break: break-all;
}
body:has(.ham.open),
body:has(.modal_open) {
  overflow: hidden;
}
figure,
img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}
a {
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
}
a[href*="tel"] {
  pointer-events: none;
}
textarea {
  resize: none;
}
.inner {
  width: 100%;
  max-width: 1028px;
  min-width: 1028px;
  padding: 0 24px;
  margin: 0 auto;
}
.flex {
  display: flex;
}
.pc_cont {
  display: block !important;
}
.sp_cont {
  display: none !important;
}
/* ============================================== */
/*            スクロールアニメーション            */
/* ============================================== */
.scrollin {
  visibility: hidden;
  opacity: 0;
  transition: 1.2s;
}
.scrollin.bottom {
  transform: translateY(30px);
}
.scrollin.left {
  transform: translateX(-30px);
}
.scrollin.right {
  transform: translateX(30px);
}
.scrollin.active,
.scrollin.bottom.active,
.scrollin.left.active,
.scrollin.right.active {
  visibility: visible;
  opacity: 1;
  transform: translate(0, 0);
}
/* ============================================== */
/* ヘッダー下アンカーリンク */
/* ============================================== */
.anc_area {
  position: fixed;
  z-index: 5;
  top: 0;
  width: 100%;
  background: var(--mainBlue);
  padding: 15px 0;
  transition: transform 0.25s;
}
.anc_area.is_top,
.ham.is_top,
body:has(.header[style*="transform: translate(0px, 0px)"]) .ham {
  transform: translateY(var(--headerHeight));
}
.anc_area::before {
  position: absolute;
  z-index: 4;
  inset: calc(var(--headerHeight) * -1) auto auto 0;
  content: "";
  width: 100%;
  height: var(--headerHeight);
  background: #fff;
}
.anc_area ul {
  display: flex;
  justify-content: flex-end;
  column-gap: 15px;
}
.anc_area ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 120px;
  min-height: 30px;
  column-gap: 0.2em;
  background: #fff;
  font-size: 13px;
  font-weight: 500;
  border-radius: 5px;
  border: 1px solid var(--mainBlue);
}
.anc_area ul li a::after {
  content: "＞";
  display: block;
  color: var(--mainBlue);
}
/* ============================================== */
/*              ハンバーガーメニュー              */
/* ============================================== */
.ham {
  position: fixed;
  z-index: 10;
  inset: 0 0 auto auto;
  width: 55px;
  height: auto;
  aspect-ratio: 1;
  background: var(--mainBlue);
  transition: 0.3s;
  cursor: pointer;
  display: none;
}
.ham span,
.ham::before,
.ham::after {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0;
  display: block;
  width: 20px;
  height: 1px;
  background: #fff;
  transition: 0.3s;
}

.ham::before,
.ham::after {
  content: "";
}
.ham::before {
  top: calc(50% - 9px);
}
.ham::after {
  top: calc(50% + 9px);
}

.ham.open span {
  opacity: 0;
}
.ham.open::before {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.ham.open::after {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* -----------------------------------------------------------
common_parts
----------------------------------------------------------- */
/* テキスト類 */
.cap,
figure figcaption {
  font-size: 12px;
  line-height: 1.5;
  font-feature-settings: "halt";
}
p .cap {
  display: block;
}
figure .ml_img {
  margin-left: 6rem;
}
.fc_blue {
  color: var(--mainBlue);
}
.fc_red {
  color: var(--mainRed) !important;
}
.underline {
  text-decoration: underline;
}
/* 余白 */
.mb0 {
  margin-bottom: 0 !important;
}
.mb_l {
  margin-bottom: var(--baseMargin);
}
.mb_m {
  margin-bottom: 4rem;
}
.mt1em {
  margin-top: 1em;
}
/* ボタン */
.btn {
  width: fit-content;
  margin: calc(var(--baseMargin) / 2) auto 0;
}
.btn a {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 0.4em;
  background: #fff;
  color: var(--mainBlue);
  font-size: 2rem !important;
  font-weight: 700;
  min-width: 400px;
  min-height: 75px;
  border: 1px solid var(--mainBlue);
  border-radius: 8px;
  filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.2));
  overflow: hidden;
}
.btn a[href$=".pdf"]::after {
  content: "";
  display: block;
  width: 1em;
  height: auto;
  aspect-ratio: 1;
  -webkit-mask: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_ico_pdf.svg) no-repeat center / contain;
  mask: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_ico_pdf.svg) no-repeat center / contain;
  background: var(--mainBlue);
  transition: 0.3s;
}
.btn a::before {
  position: absolute;
  z-index: -1;
  inset: -1px auto 0 0;
  margin: auto;
  content: "";
  width: 100%;
  height: calc(100% + 1px);
  background: var(--mainBlue);
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.3s;
}
.btn a:hover {
  opacity: 1;
  color: #fff;
}
.btn a:hover::before {
  clip-path: inset(0);
}
.btn a[href$=".pdf"]:hover::after {
  background: #fff;
}
/* アクセシビリティボタン */
.a11y.sp_cont {
  align-items: center;
  justify-content: center;
  column-gap: 0.2em;
  max-width: 225px;
  min-height: 32px;
  color: #595757;
  font-size: 1.2rem !important;
  text-align: center;
  margin: 18px auto 0;
  border-radius: 2em;
  border: 1px solid currentColor;
}
.a11y.sp_cont::before {
  content: "";
  display: block;
  width: 17px;
  height: auto;
  aspect-ratio: 15 / 12;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_ico_a11y.svg) no-repeat center / contain;
}
.scroll_sp .a11y.sp_cont::before {
  width: 16px;
  aspect-ratio: 1;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_ico_a11y_scroll.svg) no-repeat center / contain;
}
/* -----------------------------------------------------------
KV
----------------------------------------------------------- */
.kv {
  aspect-ratio: 1600 / 640;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_kv_bg.png) no-repeat center / cover;
  padding-top: var(--headerHeight);
}
.kv_ttl {
  padding: 25px 25% 0 0;
}
.kv_ttl * {
  width: fit-content;
}
.kv_ttl p:not(.bg_deco) {
  margin: 0 0 0.2em;
  width: 89%;
}
.kv_ttl p img {
  width: 100%;
}
.kv_ttl h1 {
  color: var(--mainBlue);
  font-weight: 700;
  font-size: 5rem !important;
  line-height: 1.3;
  margin: 0 0 0.35em;
  filter: drop-shadow(0 0 4px #fff) drop-shadow(0 0 6px #fff) drop-shadow(0 0 6px #fff);
}
.kv_ttl .bg_deco {
  font-size: 2rem;
  font-weight: 500;
  filter: drop-shadow(0 0 2px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 6px #fff);
}
.kv .inner {
  position: relative;
  z-index: 0;
  height: 100%;
}
.kv .inner > p {
  position: absolute;
  z-index: 1;
  inset: auto 0 -20px auto;
  margin: auto;
  max-width: 220px;
}
/* .kv_txt */
.kv_txt {
  background: var(--bgblue);
  font-size: 20px;
  line-height: 1.6;
  padding: 1.2em 0;
}
.kv_txt p:first-of-type {
  font-weight: 700;
  margin: 0 0 0.7em;
}
/* アニメーションディレイ */
.fv.two {
  transition-delay: 0.3s;
}
.fv.three {
  transition-delay: 0.55s;
}
/* -----------------------------------------------------------
=== セクション共通 ===
----------------------------------------------------------- */
main > section:not(.kv_area),
.sec_disclaimer {
  padding: var(--baseMargin) 0 calc(var(--baseMargin) * 2);
}
/* 見出し - h2 */
section .type_h2 {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 0.5em;
  font-family: var(--ff_oswald);
  font-weight: 500;
  color: var(--mainBlue);
  margin: 0 auto 2em;
}
section .type_h2 span {
  line-height: 1;
}
section .type_h2 span:nth-of-type(1) {
  font-size: 4.5rem;
}
section .type_h2 span:nth-of-type(2) {
  font-size: 9rem;
}
section .type_h2::before,
section .type_h2::after {
  position: absolute;
  z-index: 0;
  inset: -100% auto;
  margin: auto;
  content: "";
  width: calc(50% - 7em);
  height: 1px;
  background: var(--mainBlue);
}
section .type_h2::before {
  right: 0;
}
section .type_h2::after {
  left: 0;
}
section h2 {
  font-weight: 700;
  font-size: 4.5rem !important;
  line-height: 1.4;
  margin: 0 0 1em;
  font-feature-settings: "halt";
}
/* 見出し - h3 */
section > h3,
section .type_h3 {
  position: relative;
  z-index: 0;
  font-weight: 700;
  font-size: 3.6rem !important;
  margin: 3em 0 0.9em;
  padding-top: 0.7em;
  font-feature-settings: "halt";
}
section > h3::before,
section > h3::after,
section .type_h3::before,
section .type_h3::after {
  position: absolute;
  inset: 0 auto auto 0;
  content: "";
  height: 6px;
}
section > h3::before,
section .type_h3::before {
  z-index: 0;
  width: 100px;
  background: var(--mainRed);
}
section > h3::after,
section .type_h3::after {
  z-index: 1;
  width: 70px;
  background: var(--mainBlue);
}
section > h3 + p,
section .type_h3 + p {
  line-height: 1.77 !important;
  margin: 0 0 calc(var(--baseMargin) / 9 * 5);
}
/* 見出し - h4 */
section > h4,
section .type_h4 {
  font-size: 2.4rem !important;
  font-weight: 700;
  color: var(--mainBlue);
  text-align: center;
  border-top: 1px solid var(--mainBlue);
  border-bottom: 1px solid var(--mainBlue);
  margin: 0 auto 1.25em;
  padding: 0.13em 0;
  max-width: 570px;
}
/* 見出し - ttl_cont */
section .ttl_cont ul {
  margin: 0 0 calc(var(--baseMargin) / 9 * 8);
}
section .ttl_cont ul li {
  position: relative;
  z-index: 0;
  padding: 0 0 0 1em;
  font-size: 2rem;
  line-height: 1.6;
}
section .ttl_cont ul li::before {
  position: absolute;
  z-index: 0;
  inset: 0.45em auto auto 0;
  margin: auto;
  content: "";
  width: 0.8em;
  height: auto;
  aspect-ratio: 1;
  background: var(--mainBlue);
}
section .ttl_cont ul li span,
section > h3 + p span:not(.cap),
section .type_h3 + p span,
.ac > div > p:nth-child(1) span {
  font-weight: 700;
  color: var(--mainBlue);
}
/* 見出し - box_head */
.box_head {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50px;
  color: #fff;
  font-size: 2rem !important;
  font-weight: 700;
  background: var(--mainGradient);
  padding: 0.5em 1em;
  margin-bottom: 0;
}
.box_head.large {
  position: relative;
  z-index: 0;
  font-size: 4.5rem !important;
  min-height: 140px;
  padding-bottom: calc(0.5em + 5px);
}
.box_head.large::before {
  position: absolute;
  z-index: 1;
  inset: auto 0 0;
  margin: auto;
  content: "";
  width: 100%;
  height: 10px;
  background: var(--mainGradient);
  mix-blend-mode: multiply;
}
.box_head:has(+ .bg_area) {
  border-radius: 10px 10px 0 0;
}
.box_head.large + .bg_area {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.box_head.large + .bg_area > p:first-child {
  font-size: 2rem;
  line-height: 1.8 !important;
}
/* 画像 */
section figure figcaption {
  margin: 1.2em 0 0;
}
/* アコーディオン */
.ac {
  margin: 0 0 6rem;
}
.ac .ac_head {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 75px;
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem !important;
  background: var(--mainBlue);
  border-radius: 8px;
  margin-bottom: 0;
  padding: 0 2.5em;
  filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.2));
  cursor: pointer;
  max-width: 100%;
}
.ac .ac_head::before,
.ac .ac_head::after {
  position: absolute;
  z-index: 0;
  inset: 0 2rem 0 auto;
  margin: auto;
  content: "";
  width: 30px;
  height: 1px;
  background: #fff;
  transition: 0.3s;
}
.ac .ac_head::after {
  transform: rotate(90deg);
}
.ac.ac_open .ac_head::after {
  transform: rotate(180deg);
}

.ac > div {
  padding-top: 4rem;
  display: none;
}
.ac > div > p:nth-child(1) {
  max-width: 860px;
  margin: 0 auto calc(var(--baseMargin) / 2);
}
.ac > div > ol,
.ac > div > .cap {
  max-width: 860px;
  margin-inline: auto;
}
.ac > div > :first-child,
.bg_area > :first-child {
  margin-top: 0 !important;
}
.ac > div > :last-child,
.bg_area > :last-child {
  margin-bottom: 0 !important;
}
.bg_area:has(.video_cont) {
  padding-bottom: var(--baseMargin);
}
.ac > div > p {
  line-height: 1.75 !important;
}
.ac > div > ol {
  margin: 0.5em auto;
}
body {
  counter-reset: ol_count 0;
}
.ac > div > ol > li {
  position: relative;
  z-index: 0;
  padding-left: 1.2em;
  line-height: 1.75;
}
.ac > div > ol > li::before,
.ac > div > ol > li::after {
  position: absolute;
  inset: 0 auto auto 0;
  display: block;
  height: auto;
  aspect-ratio: 1;
}
.ac > div > ol > li::before {
  z-index: 0;
  counter-increment: ol_count 1;
  content: counter(ol_count);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1em;
  font-size: 0.8em;
  font-weight: 700;
  color: var(--mainBlue);
  transform: translate(0.15em, 0.2em);
}
.ac > div > ol > li::after {
  z-index: -1;
  content: "";
  width: 1.1em;
  border: 1px solid var(--mainBlue);
  border-radius: 50%;
  transform: translate(-0.05em, 0.4em);
}
.ac > div > ol > li span {
  font-weight: 700;
  color: var(--mainBlue);
}
/* アコーディオン - 紫 */
.ac.ppl .ac_head,
.ac_wrapper > .ac:nth-of-type(2n) .ac_head {
  background: var(--subBlue);
}
/* アコーディオン - 白 */
.ac.wht {
  max-width: 860px;
  margin-inline: auto;
  margin-bottom: 4rem;
}
.ac.wht .ac_head {
  min-height: 45px;
  background: #fff;
  color: var(--mainBlue);
  font-size: 1.8rem !important;
  border-radius: 5px;
  border: 1px solid var(--mainBlue);
  filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.25));
}
.ac.wht .ac_head::before,
.ac.wht .ac_head::after {
  width: 20px;
  background: var(--mainBlue);
}
.ac.wht .ac_head::after {
  transform: rotate(90deg);
}
.ac.wht.ac_open .ac_head::after {
  transform: rotate(180deg);
}
.ac.wht .ac_head + div {
  padding-top: 1.5rem;
}
/* 背景色 */
.bg_area {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 10px;
  padding: 45px 60px;
}
.bg_area.blue {
  background: var(--bgblue02);
}
.ac > div .bg_area {
  border-radius: 0;
}
.bg_area h4 {
  max-width: 100%;
}

/* -----------------------------------------------------------
本商品の魅力
----------------------------------------------------------- */
.sec_points {
  padding-top: calc(var(--baseMargin) * 1.33) !important;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_pts_bg.png) no-repeat center bottom / 100% auto, var(--mainBlue);
}
.sec_points .bg_area {
  padding-top: calc(var(--baseMargin) * 0.88) !important;
}
.sec_points .bg_area h2 {
  text-align: center;
  margin-bottom: 1.65em;
}
.sec_points .bg_area ul {
  display: flex;
  justify-content: space-between;
  margin: 0 0 calc((var(--baseMargin) / 9 * 4));
}
.sec_points .bg_area ul li {
  position: relative;
  z-index: 0;
  border: 1px solid var(--mainBlue);
  width: 32%;
  max-width: 270px;
  padding: 40px 0 0;
}
.sec_points .bg_area ul li > p:not(:has(a)) {
  padding-inline: 2.3rem;
}
.sec_points .bg_area ul li .type_h2 {
  position: absolute;
  z-index: 0;
  inset: -1.5em 0 auto;
  margin: auto;
  width: fit-content;
  background: #f2f4f9;
  padding: 0 0.4em;
}
.sec_points .bg_area ul li .type_h2 span:nth-of-type(1) {
  font-size: 2.4rem;
}
.sec_points .bg_area ul li .type_h2 span:nth-of-type(2) {
  font-size: 5.5rem;
}
.sec_points .bg_area ul li .type_h2::before,
.sec_points .bg_area ul li .type_h2::after {
  display: none;
}
.sec_points .bg_area ul li picture {
  display: block;
  width: 50%;
  max-width: 120px;
  margin: 0 auto 2rem;
}
.sec_points .bg_area ul li picture + p {
  font-size: 1.6rem;
  font-weight: 500;
  min-height: calc(4em * 1.5);
  margin: 0 0 1rem;
}
.sec_points .bg_area ul li .cap {
  margin: 0 0 2.5rem;
  min-height: calc(4em * 1.5);
}
.sec_points .bg_area ul li .cap + p a {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 0.2em;
  min-height: 4rem;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  background: var(--mainGradient);
}
.sec_points .bg_area ul li .cap + p a::after {
  content: "";
  width: 2.1rem;
  height: auto;
  aspect-ratio: 1;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_ico_arrow01.svg) no-repeat center / contain;
}
/* Youtube動画 */
h3:has(+ .video_wrapper) {
  margin-top: var(--baseMargin);
  padding-top: 0;
  text-align: center;
}
h3:has(+ .video_wrapper)::before,
h3:has(+ .video_wrapper)::after {
  display: none;
}
.video_wrapper {
  max-width: 750px;
  margin: 0 auto calc(var(--baseMargin) * 0.8);
}
.video_cont {
  position: relative;
  z-index: 0;
  padding-bottom: 56.25%; /* 75:43比率 */
  height: 0;
  overflow: hidden;
  margin: 0 auto;
}
.video_cont iframe {
  position: absolute;
  z-index: 0;
  inset: 0 auto auto 0;
  width: 100%;
  height: 100%;
}
/* Coming Soon */
.video_wrapper.disabled {
  position: relative;
  z-index: 0;
}
.video_wrapper.disabled::before {
  position: absolute;
  z-index: 1;
  inset: 0;
  margin: auto;
  content: "Coming Soon";
  font-size: 2.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #dcdddd;
}
/* -----------------------------------------------------------
POINT01
----------------------------------------------------------- */
.sec_p1 {
  position: relative;
  z-index: 0;
}
.sec_p1::before {
  position: absolute;
  z-index: 0;
  inset: calc(-7.48vw + 1.5px) 0 auto;
  margin: auto;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1600 / 120;
  background: #fff;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

/* -----------------------------------------------------------
POINT02
----------------------------------------------------------- */
.sec_p2 {
  position: relative;
  z-index: 0;
  background: var(--bgblue02);
}
.sec_p2::before {
  position: absolute;
  z-index: 0;
  inset: calc(-7.48vw + 1.5px) 0 auto;
  margin: auto;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1600 / 120;
  background: var(--bgblue02);
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.sec_p2 .bg_wht {
  background: #fff;
  margin: var(--baseMargin) auto 0;
  padding: var(--baseMargin) 0;
}
.sec_p2 .bg_wht .inner {
  max-width: 908px;
  min-width: 908px;
}
.sec_p2 .bg_wht h3 {
  color: var(--mainBlue);
  font-weight: 700;
  font-size: 3.6rem !important;
  text-align: center;
  line-height: 1.4;
  margin: 0 auto calc(var(--baseMargin) / 2);
}
.sec_p2 .bg_wht ul:not(.slick-dots) {
  margin: 0 auto 2rem;
}
.sec_p2 .bg_wht ul li p:not(.a11y) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: 1.3em;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_p2_slider_ttl_bg.png) no-repeat left center / 100% auto;
  min-height: 10rem;
  border-radius: 5px;
  color: #fff;
  margin: 0 0 4.5rem;
  padding: 0 2em;
}
.sec_p2 .bg_wht ul li p span {
  line-height: 1;
}
.sec_p2 .bg_wht ul li p span:nth-of-type(1) {
  font-size: 3rem;
}
.sec_p2 .bg_wht ul li p span:nth-of-type(2) {
  font-size: 4.5rem;
  font-weight: 700;
}
/* slick */
.slick-arrow {
  width: 4rem !important;
  height: auto !important;
  aspect-ratio: 1;
  top: 57% !important;
}
.slick-arrow::before {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem !important;
  width: 100%;
  height: 100%;
  background: var(--mainBlue);
  opacity: 0.5 !important;
  border-radius: 5px;
  transition: 0.3s;
}
.slick-arrow:hover::before {
  opacity: 1 !important;
}
.slick-prev::before {
  content: "◀" !important;
  padding-right: 0.1em;
}
.slick-next::before {
  content: "▶" !important;
  padding-left: 0.1em;
}
.slick-prev {
  left: -50px !important;
}
.slick-next {
  right: -50px !important;
}
/* modal */
.modal_trigger {
  color: #0000ff !important;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
  transition: 0.3s;
}
.modal_trigger:hover {
  opacity: 0.6;
}
/* modal_cont */
.modal_cont {
  position: fixed;
  z-index: 20;
  inset: 0;
  margin: auto;
  width: 90%;
  max-width: 855px;
  height: fit-content;
  background: rgba(255, 255, 255, 0.95);
  padding: 35px 60px;
  filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.2));
}
.modal_cont > span {
  position: absolute;
  z-index: 1;
  inset: 0 0 auto auto;
  width: 30px;
  height: auto;
  aspect-ratio: 1;
  display: block;
  background: #595757;
  opacity: 0.95;
  cursor: pointer;
}
.modal_cont > span::before,
.modal_cont > span::after {
  position: absolute;
  z-index: 0;
  inset: -100%;
  margin: auto;
  content: "";
  width: 20px;
  height: 1px;
  background: #fff;
}
.modal_cont > span::before {
  transform: rotate(-45deg);
}
.modal_cont > span::after {
  transform: rotate(45deg);
}
.modal_cont p {
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--mainBlue);
  margin: 0 0 0.5em;
}
.modal_cont ul li {
  position: relative;
  z-index: 0;
  font-size: 16px;
  line-height: 1.75;
  padding-left: 1em;
}
.modal_cont ul li::before {
  position: absolute;
  z-index: 0;
  inset: 0 auto auto 0;
  content: "・";
  display: block;
}
/* modal_bg */
.modal_bg {
  position: fixed;
  z-index: 19;
  width: 100vw;
  height: 100vh;
  background: #9fa0a0;
  mix-blend-mode: multiply;
}
/* モーダル開閉 */
.modal_cont,
.modal_bg {
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.modal_cont.modal_open,
.modal_open + .modal_bg {
  opacity: 1;
  visibility: visible;
}
/* -----------------------------------------------------------
POINT03
----------------------------------------------------------- */
.sec_p3 {
  position: relative;
  z-index: 0;
  padding-bottom: var(--baseMargin) !important;
}
.sec_p3::before {
  position: absolute;
  z-index: 0;
  inset: calc(-7.48vw + 1.5px) 0 auto;
  margin: auto;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1600 / 120;
  background: #fff;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
/* token_list */
.sec_p3 .token_list {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 2rem;
}
.sec_p3 .token_list li {
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
  width: 32%;
  background: #fff;
  border-radius: 5px;
  padding: 0.6em;
  line-height: 1.4;
}
/* box */
figure + .box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #7f7f7f;
  margin-bottom: 1.2rem;
  padding: 0.5rem 1rem 0.5rem 2rem;
}
figure + .box p:not(:has(img)) {
  width: calc(100% - 130px - 5%);
}
figure + .box p:has(img) {
  width: 130px;
}
/* -----------------------------------------------------------
お申込みについて
----------------------------------------------------------- */
main > section.sec_p4 {
  padding: 0;
}
/* お申込みについて */
.sec_p4 .sec_apply {
  --andgleBase: calc(100vw * 120 / 1600);
  position: relative;
  z-index: 0;
  background: url(https://sbisec.akamaized.net/sbisec/images/static/2025/lp_st_private_equity251015_p4_bg.png) no-repeat center bottom -3vw / max(100%, calc(1475px + 3vw)) auto;
  padding: calc(var(--baseMargin) * 2) 0;
  clip-path: polygon(0 var(--andgleBase), 100% 0%, 100% calc(100% - var(--andgleBase)), 0% 100%);
}
section table {
  --thWidth: 255px;
}
section table tr th,
section table tr td {
  font-size: 1.4rem;
  line-height: 1.85;
  padding: 0.85em 1.6em;
  background: #fff;
  border-bottom: 1px solid #9fa0a0;
}
section table tr:last-of-type th,
section table tr:last-of-type td {
  border-bottom: none;
}
section table tr th {
  width: var(--thWidth);
  background: #ced4e7;
}
section table tr td {
  width: calc(100% - var(--thWidth));
}
/* 3行対応 */
.sec_disclaimer section table {
  --tdWidth: 140px;
}
.sec_disclaimer section table tr th[rowspan="12"] {
  border-bottom: none;
}
.sec_disclaimer section table tr td:not([colspan]):nth-of-type(1) {
  width: var(--tdWidth);
  padding-inline: 1.4em;
  border-right: 1px solid #9fa0a0;
  font-feature-settings: "halt";
}
.sec_disclaimer section table tr td:not([colspan]):nth-of-type(2) {
  width: calc(100% - var(--thWidth) - var(--tdWidth));
}

/* お申込みテーブル */
.sec_p4 .sec_apply table {
  /* --thWidth: 190px; */
  --thWidth: 185px;
  margin: calc(var(--baseMargin) / 9 * 6) 0 0;
}
.sec_p4 .sec_apply table tr:first-of-type th {
  background: #9fa0a0;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  padding: 0.5em 1em;
}
.sec_p4 .sec_apply table tr th,
.sec_p4 .sec_apply table tr td {
  background: #fff;
  border: 1px solid #9fa0a0;
}

/* 募集要項 */
.sec_details {
  position: relative;
  z-index: 0;
  padding: var(--baseMargin) 0 calc(var(--baseMargin) * 2);
  background: var(--bgblue02);
}
.sec_details::before {
  position: absolute;
  z-index: 0;
  inset: calc(-7.48vw + 1.5px) 0 auto;
  margin: auto;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1600 / 120;
  background: var(--bgblue02);
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.sec_details .type_h3 {
  margin-top: 0;
}
/* -----------------------------------------------------------
よくある質問
----------------------------------------------------------- */
.sec_p5 {
  position: relative;
  z-index: 0;
  padding-bottom: calc(var(--baseMargin) * 1.5);
}
.sec_p5::before {
  position: absolute;
  z-index: 0;
  inset: calc(-7.48vw + 1.5px) 0 auto;
  margin: auto;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1600 / 120;
  background: #fff;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.sec_p5 .inner > section:not(:last-of-type) {
  margin-bottom: var(--baseMargin);
}
.sec_p5 .ttl_cont .type_h2 {
  margin-bottom: 1.5em;
}
.sec_p5 .ttl_cont h2 {
  font-size: 2.4rem !important;
  text-align: center;
}
.sec_p5 section > h3 {
  padding-top: 0;
  text-align: center;
  margin: 2em auto 1.5em;
}
.sec_p5 section > h3::before,
.sec_p5 section > h3::after {
  display: none;
}

/* -----------------------------------------------------------
ディスクレーマー
----------------------------------------------------------- */
.sec_disclaimer {
  position: relative;
  z-index: 0;
  background: #f2f2f2;
  padding-bottom: calc(var(--baseMargin) / 9 * 12);
}
.sec_disclaimer::before {
  position: absolute;
  z-index: 0;
  inset: calc(-7.48vw + 1.5px) 0 auto;
  margin: auto;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1600 / 120;
  background: #f2f2f2;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.sec_disclaimer section > h2:not(.ac_head) {
  margin-top: var(--baseMargin);
}
.sec_disclaimer .bg_area p,
.sec_disclaimer .bg_area li {
  font-size: 1.4rem !important;
  line-height: 1.85 !important;
}
.sec_disclaimer .bg_area li span {
  display: block;
  font-weight: 700;
}
.sec_disclaimer .bg_area .disc_ttl {
  font-size: 1.8rem !important;
  font-weight: 700;
  color: var(--mainBlue);
  margin: 1.5em 0 0.75em;
}
.sec_disclaimer .bg_area .disc_sub_ttl {
  font-weight: 700;
  margin: 1em 0 0.2em;
}
.sec_disclaimer ol {
  counter-reset: num;
}
.sec_disclaimer ol > li,
.sec_disclaimer ul > li {
  position: relative;
  z-index: 0;
}
.sec_disclaimer ol > li {
  padding-left: 1.3em;
}
.sec_disclaimer ul > li {
  padding-left: 1.1em;
}
.sec_disclaimer ol > li::before,
.sec_disclaimer ul > li::before {
  position: absolute;
  z-index: 0;
  inset: 0 auto auto 0;
  font-weight: 700;
  display: block;
}
.sec_disclaimer ol > li::before {
  counter-increment: num 1;
  content: counter(num) ".";
}
.sec_disclaimer ul > li::before {
  content: "・";
}
/* スクロール */
.scroll_wrapper + .cap,
.scroll_wrapper + .a11y + .cap {
  margin-top: 1.2em;
}
.sec_disclaimer .scroll_wrapper {
  height: 80vh;
  min-height: 400px;
  overflow: auto;
}
.sec_disclaimer .scroll_wrapper .scroll_cont {
  height: 100%;
}
.sec_disclaimer .scroll_wrapper + .cap {
  margin-top: 1em;
}
/* bg_area */
.sec_disclaimer .bg_area {
  padding: 35px 30px;
}
.sec_disclaimer .bg_area.has_bd {
  border-radius: 0;
  border: 1px solid #111b25;
}
/* -----------------------------------------------------------
aside
----------------------------------------------------------- */
aside {
  padding: 5.5rem 0;
}
aside .flex {
  justify-content: space-between;
}
aside .flex > div {
  width: fit-content;
}
aside .flex > div:nth-of-type(1) {
  max-width: 390px;
}
aside .flex > div:nth-of-type(2) {
  max-width: 270px;
}
aside .flex > div:nth-of-type(3) {
  max-width: 300px;
}
aside .flex > div > p:nth-of-type(1) {
  position: relative;
  z-index: 0;
  font-size: 1.4rem !important;
  padding-left: 1.1em;
  min-height: calc(2.5em * 1.75);
  margin: 0 0 0.6em;
}
aside .flex > div > p:nth-of-type(1)::before {
  position: absolute;
  z-index: 0;
  inset: 0 auto auto 0;
  content: "■";
  display: block;
}
aside .flex .logo {
  width: 250px;
  height: auto;
  margin: 0 0 0.5em;
}
aside .flex dl {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  font-size: 1.1rem;
}
aside .flex dl dt {
  position: relative;
  z-index: 0;
  width: 5.5rem;
  font-weight: 400;
}
aside .flex dl dt::before {
  position: absolute;
  z-index: 0;
  inset: 0 0.2em auto auto;
  content: ":";
  display: block;
}
aside .flex dl dd {
  width: calc(100% - 5rem);
}
