@charset "utf-8";

/* =========================
   OUR BUSINESS PAGE
========================= */

.business-page {
  background: #fff;
  overflow: clip;
  margin-top: -32px;
}

/* ハンバーガーメニューの色を白に */
.business-page .hamburger-line {
  background: #fff;
}

/* h1タイトル（デスクトップはそのまま） */
.business-page .c-pageTitle span {
  display: inline;
}

/* =========================
   Hero
========================= */
.bp-hero {
  position: relative;
  overflow: hidden;
}

/* 背景画像（全体に敷く） */
.bp-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/common/page-mv-bg.webp") no-repeat;
  background-position: left bottom;
  background-size: cover;
  pointer-events: none;
}

/* 上部：タイトルエリア */
.bp-hero-top {
  position: relative;
  z-index: 1;
  padding: calc(var(--header-h) + 70px) 0 0;
}

/* 下部：キャッチコピーエリア */
.bp-hero-bottom {
  position: relative;
  z-index: 1;
  padding: clamp(100px, calc(100px + (100vw - 768px) * 200 / 832), 300px) 0 0;
  text-align: center;
}

.bp-hero-catch {
  position: relative;
  font-family: "Ubuntu", system-ui, sans-serif;
  font-size: clamp(40px, calc(40px + (100vw - 540px) * 70 / 1380), 110px);
  font-weight: 400;
  color: #007DCC;
  letter-spacing: 0.15em;
  margin: 0 0 20px;
  line-height: 1;
}

.bp-hero-catch::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 64%;
  transform: translate(-50%, -50%);
  width: 70%;
  height: 30px;
  background: url("../img/common/line-1.png") no-repeat center / 100% auto;
  pointer-events: none;
  z-index: -1;
}

.bp-hero-lead {
  font-family: "Shippori Antique", serif;
  font-size: clamp(16px, calc(16px + (100vw - 540px) * 24 / 1380), 40px);
  font-weight: 400;
  color: #007DCC;
  letter-spacing: 0.2em;
  margin: 0;
  line-height: 2;
}

/* =========================
   Section Common
========================= */
.bp-section {
  position: relative;
  padding: 120px 0;
}

/* AIOセクション 青い霧の背景 */
.bp-section--aio::before {
  content: "";
  position: absolute;
  top: -100px;
  right: -50px;
  width: 800px;
  height: 600px;
  background: url("../img/common/background_blue_fog.png") no-repeat center / contain;
  pointer-events: none;
  z-index: 0;
}

/* ITステーションセクション 青い霧の背景 */
.bp-section--it::before {
  content: "";
  position: absolute;
  bottom: 150px;
  left: 10%;
  width: 800px;
  height: 600px;
  background: url("../img/common/background_blue_fog.png") no-repeat center / contain;
  pointer-events: none;
  z-index: 0;
}

/* IPFSセクション 青い霧の背景 */
.bp-section--ipfs::before {
  content: "";
  position: absolute;
  top: -250px;
  right: 0;
  width: 800px;
  height: 600px;
  background: url("../img/common/background_blue_fog.png") no-repeat center / contain;
  pointer-events: none;
  z-index: 0;
}

.bp-section--ipfs .bp-section-content {
  transform: translateY(50px);
}

.bp-section-inner {
  position: relative;
  z-index: 1;
}

/* Section Head */
.bp-section-head {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 50px;
}

.bp-section-line {
  width: 45px;
  height: 1px;
  background: var(--accent);
  flex: 0 0 auto;
}

.bp-section-name {
  margin: 0;
  font-size: clamp(1.25rem, 2.5vw, 1.5rem);
  font-weight: 400;
  color: var(--accent);
  letter-spacing: 0.08em;
  line-height: 1;
}

.bp-section-name .tasa {
  font-size: clamp(1.5rem, 3vw, 1.875rem);
}

/* Section Body */
.bp-section-body {
  display: grid;
  grid-template-columns: clamp(350px, 32vw, 610px) 1fr;
  gap: 80px;
  align-items: center;
}

.bp-section-body--reverse {
  direction: rtl;
}

.bp-section-body--reverse>* {
  direction: ltr;
}

/* Section Content */
.bp-section-content {
  max-width: 100%;
  margin: 0 auto;
  width: fit-content;
}

.bp-section-catch {
  display: flex;
  align-items: center;
  gap: 16px;
  font-family: "Shippori Antique", serif;
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 400;
  color: #007DCC;
  letter-spacing: 0.2em;
  line-height: 2;
  margin: 0 0 24px;
}

.bp-quote {
  width: 33px;
  height: 33px;
  flex-shrink: 0;
}

.bp-quote--open {
  align-self: flex-start;
}

.bp-quote--close {
  align-self: flex-end;
}


.bp-section-lead {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 1.5vw, 1.5rem);
  /* 24px at max */
  font-weight: 400;
  line-height: 2.5;
  letter-spacing: 0;
  color: var(--text);
  max-width: 100%;
  margin: 0 0 40px;
}

/* CTA Button Wrapper */
.bp-section-cta-wrap {
  display: flex;
  justify-content: center;
  margin-top: 60px;
}

/* =========================
   Visual - Logo (AIO)
========================= */
.bp-section-visual--logo {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0;
}

.bp-aio-logo {
  width: clamp(350px, 32vw, 610px);
  height: auto;
  aspect-ratio: 610 / 563;
  filter: drop-shadow(1.5px 3px 7.5px rgba(0, 0, 0, 0.25));
}

/* =========================
   Visual - Dual Images
========================= */
.bp-section-visual--dual {
  position: relative;
  height: clamp(300px, 40vw, 500px);
}

.bp-dual-img {
  position: absolute;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.bp-dual-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 1枚目: 左下 */
.bp-dual-img--1 {
  width: clamp(200px, 55%, 380px);
  height: clamp(180px, 70%, 350px);
  left: 0;
  bottom: 0;
  transform: skewY(-3deg);
  z-index: 1;
}

.bp-dual-img--1 img {
  transform: skewY(3deg) scale(1.1);
}

/* 2枚目: 右上 */
.bp-dual-img--2 {
  width: clamp(180px, 50%, 340px);
  height: clamp(160px, 60%, 300px);
  right: 0;
  top: 0;
  transform: skewY(-3deg);
  z-index: 2;
}

.bp-dual-img--2 img {
  transform: skewY(3deg) scale(1.1);
}

/* 障がい者支援活動セクション用（角度なし） */
.bp-section--support .bp-dual-img--1,
.bp-section--support .bp-dual-img--2 {
  transform: none;
  border-radius: 45px;
  box-shadow: 1.5px 3px 7.5px 3px #00000040;
  width: auto;
  height: auto;
}

.bp-section--support .bp-dual-img--1 {
  left: auto;
  right: 30%;
  top: 80px;
  bottom: auto;
}

.bp-section--support .bp-dual-img--2 {
  right: 0;
  top: 0;
}

.bp-section--support .bp-dual-img--1 img {
  transform: none;
  border-radius: 45px;
  width: clamp(250px, 27vw, 508px);
  aspect-ratio: 508 / 470;
}

.bp-section--support .bp-dual-img--2 img {
  transform: none;
  border-radius: 45px;
  width: clamp(190px, 20vw, 377px);
  aspect-ratio: 377 / 470;
}

/* 障がい者支援活動セクション コンテンツ幅 */
/* 教育活動セクション */
.bp-section--education {
  padding-bottom: 170px;
}

.bp-section--education .bp-section-content {
  transform: translateY(50px);
}

.bp-section--support .bp-section-content {
  max-width: 760px;
  justify-self: end;
}

.bp-section--support {
  padding-bottom: 400px;
}

/* 障がい者支援活動セクション 背景ライン */
.bp-section--support .c-bgLine.group-line--1 {
  bottom: 25%;
}

.bp-section--support .c-bgLine.group-line--2 {
  bottom: 17%;
}

/* 障がい者支援活動セクション 青い霧の背景 */
.bp-section--support::before {
  content: "";
  position: absolute;
  bottom: -25px;
  right: -150px;
  width: 800px;
  height: 600px;
  background: url("../img/common/background_blue_fog.png") no-repeat center / contain;
  pointer-events: none;
  z-index: 0;
}

/* =========================
   Visual - Single Image
========================= */
.bp-section-visual--single-start {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.bp-section-visual--single-end {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.bp-single-img {
  width: clamp(350px, 32vw, 610px);
  height: auto;
  aspect-ratio: 610 / 564;
  border-radius: 45px;
  box-shadow: 1.5px 3px 7.5px 3px #00000040;
}

/* =========================
   Visual - Triple Images (IT Station)
========================= */
.bp-section-visual--triple {
  position: relative;
  width: 100%;
  height: clamp(400px, 45vw, 580px);
  margin-top: 60px;
  margin-bottom: 100px;
}

.bp-triple-img {
  position: absolute;
}

.bp-triple-img img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 65px;
  box-shadow: 1.5px 3px 7.5px 3px #00000040;
}

/* 1枚目: 左側 (610x564) */
.bp-triple-img--1 {
  left: 0;
  bottom: -30px;
  z-index: 1;
}

.bp-triple-img--1 img {
  width: min(34vw, 610px);
  aspect-ratio: 610 / 564;
}

/* 2枚目: 中央上 (472x530) - 3枚目より手前 */
.bp-triple-img--2 {
  left: 50%;
  top: -30px;
  transform: translateX(-30%);
  z-index: 3;
}

.bp-triple-img--2 img {
  width: min(calc(34vw * 0.774), 472px);
  aspect-ratio: 472 / 530;
}

/* 3枚目: 右側 (610x564) - 2枚目の後ろ */
.bp-triple-img--3 {
  right: 0;
  bottom: -110px;
  z-index: 2;
}

.bp-triple-img--3 img {
  width: min(34vw, 610px);
  aspect-ratio: 610 / 564;
}


/* =========================
   Responsive
========================= */
@media(min-width:1380px) {
  .bp-section-content {
    width: fit-content;
    margin: 0 auto;
  }
}

@media (max-width: 1280px) {
  .bp-section-body {
    grid-template-columns: minmax(400px, 500px) 1fr;
    gap: 40px;
  }

  .bp-section--support .bp-section-content {
    max-width: 100%;
  }
}

@media (max-width: 1024px) {
  .bp-section {
    padding: 80px 0;
  }

  .bp-section-head {
    margin-bottom: 60px;
  }

  .bp-section-cta-wrap {
    margin-top: 50px;
  }

  .bp-section-body {
    display: flex;
    flex-direction: column;
    gap: 50px;
  }

  .bp-section-body--reverse {
    direction: ltr;
  }

  /* h2 → h3 → p → 画像 → CTA の順番にする */
  .bp-section-content {
    order: 1;
    width: 100%;
    max-width: 100%;
  }

  .bp-section-visual--logo,
  .bp-section-visual--single-start,
  .bp-section-visual--single-end,
  .bp-section-visual--triple,
  .bp-section-visual--dual {
    order: 2;
  }

  .bp-section-visual--dual {
    height: clamp(280px, 50vw, 400px);
    max-width: 600px;
    margin: 0 auto;
  }

  /* IPFS・Education の transform を解除 */
  .bp-section--ipfs .bp-section-content,
  .bp-section--education .bp-section-content {
    transform: none;
  }

  /* 障がい者支援活動 画像（1024px以下） */
  .bp-section--support .bp-section-visual--dual {
    position: relative;
    height: 380px;
    max-width: none;
    width: 100%;
    margin: 0 0 40px 0;
  }

  .bp-section--support .bp-dual-img--1,
  .bp-section--support .bp-dual-img--2 {
    position: absolute;
    width: auto;
    height: auto;
    overflow: visible;
  }

  .bp-section--support .bp-dual-img--1 {
    left: calc(50% - 260px);
    top: 80px;
    bottom: auto;
    right: auto;
    z-index: 2;
  }

  .bp-section--support .bp-dual-img--1 img {
    width: 350px;
    height: auto;
    display: block;
  }

  .bp-section--support .bp-dual-img--2 {
    right: calc(50% - 260px);
    top: 0;
    left: auto;
    bottom: auto;
  }

  .bp-section--support .bp-dual-img--2 img {
    width: 280px;
    height: auto;
    display: block;
  }

  /* 障がい者支援活動（1024px以下） */
  .bp-section--support {
    padding-bottom: 300px;
  }

  .bp-section--support .c-bgLine.group-line--1 {
    top: auto;
    bottom: 20%;
  }

  .bp-section--support .c-bgLine.group-line--2 {
    top: auto;
    bottom: 16%;
  }
}

@media (max-width: 768px) {
  .business-page {
    margin-top: -46px;
  }

  .bp-hero-top {
    padding: calc(var(--header-h) + 40px) 0 100px;
  }

  /* Hero h1 改行とセンタリング（モバイルのみ） */
  .business-page .c-pageTitle {
    text-align: center;
    font-size: clamp(40px, calc(40px + (100vw - 540px) * 40 / 1380), 80px);
    line-height: 1.1;
  }

  .business-page .c-pageTitle span {
    display: block;
  }

  /* Hero */
  .bp-hero::before {
    background-size: cover;
    background-position: center top;
  }

  .bp-hero::after {
    height: 200px;
  }

  .bp-hero-catch {
    letter-spacing: 0.1em;
  }

  .bp-hero-catch::after {
    width: 100%;
    height: 20px;
  }

  .bp-hero-lead {
    letter-spacing: 0.1em;
  }

  .bp-hero-bottom {
    padding: clamp(100px, calc(100px + (100vw - 768px) * 200 / 832), 300px) 0 50px;
  }

  .bp-section {
    padding: 60px 0;
  }

  .bp-section--aio {
    padding-bottom: 100px;
  }

  .bp-section-head {
    margin-bottom: 60px;
  }

  .bp-section-cta-wrap {
    margin-top: 40px;
  }

  .bp-section-catch::before {
    display: none;
  }

  .bp-section-visual--dual {
    height: clamp(250px, 60vw, 350px);
  }

  .bp-dual-img--1 {
    width: 60%;
    height: 70%;
  }

  .bp-dual-img--2 {
    width: 55%;
    height: 60%;
  }

  /* 障がい者支援活動 画像（768px） */
  .bp-section--support .bp-section-visual--dual {
    height: 300px;
  }

  .bp-section--support .bp-dual-img--1 {
    left: calc(50% - 210px);
    top: 70px;
  }

  .bp-section--support .bp-dual-img--1 img {
    width: 280px;
  }

  .bp-section--support .bp-dual-img--2 {
    right: calc(50% - 210px);
    top: 0;
  }

  .bp-section--support .bp-dual-img--2 img {
    width: 220px;
  }

  /* ITステーション セクション内の順番変更 */
  .bp-section--it .bp-section-inner {
    display: flex;
    flex-direction: column;
  }

  .bp-section--it .bp-section-head {
    order: 1;
  }

  .bp-section--it .bp-section-content {
    order: 2;
  }

  .bp-section--it .bp-section-visual--triple {
    order: 3;
    position: relative;
    height: 650px;
    margin-top: 40px;
    margin-bottom: 40px;
    align-self: center;
    width: 100%;
  }

  .bp-section--it .bp-section-cta-wrap {
    order: 4;
    margin-top: 40px;
  }

  /* 1枚目: 上部中央 */
  .bp-section--it .bp-triple-img--1 {
    left: calc(50% - 175px);
    right: auto;
    top: 0;
    bottom: auto;
    transform: none;
    z-index: 3;
  }

  .bp-section--it .bp-triple-img--1 img {
    width: 350px;
    border-radius: 45px;
  }

  /* 2枚目: 下部左寄り・手前 */
  .bp-section--it .bp-triple-img--2 {
    left: calc(50% - 200px);
    right: auto;
    top: auto;
    bottom: 60px;
    transform: none;
    z-index: 2;
  }

  .bp-section--it .bp-triple-img--2 img {
    width: 190px;
    border-radius: 20px;
  }

  /* 3枚目: 下部右寄り・奥・少し下 */
  .bp-section--it .bp-triple-img--3 {
    left: auto;
    right: calc(50% - 200px);
    top: auto;
    bottom: -30px;
    transform: none;
    z-index: 1;
  }

  .bp-section--it .bp-triple-img--3 img {
    width: 235px;
    border-radius: 20px;
  }

  /* 障がい者支援活動 ブルーライン（768px以下） */
  .bp-section--support .c-bgLine.group-line--1 {
    top: auto;
    bottom: 18%;
  }

  .bp-section--support .c-bgLine.group-line--2 {
    top: auto;
    bottom: 13%;
  }

  /* 障がい者支援活動 ブルーフォグ（768px以下） */
  .bp-section--support::before {
    bottom: -80px;
    right: -100px;
  }

  /* 障がい者支援活動 フッターとの距離（768px以下） */
  .bp-section--support {
    padding-bottom: 300px;
  }
}

@media (max-width: 540px) {

  /* Hero */
  .bp-hero-bottom {
    padding: 40px 0 30px;
  }

  .bp-hero-top {
    padding: calc(var(--header-h) + 20px) 0 100px;
  }

  .bp-hero-catch {
    letter-spacing: 0.08em;
    margin-bottom: 16px;
  }

  .bp-hero-catch::after {
    height: 15px;
  }

  .bp-hero-lead {
    letter-spacing: 0.08em;
  }

  .bp-section {
    padding: 50px 0;
  }

  /* h2サイズを維持 */
  .business-page .c-secTitle-text {
    font-size: 1.8rem;
  }

  .bp-section-head {
    margin-bottom: 55px;
  }

  .bp-section-cta-wrap {
    margin-top: 35px;
  }

  .bp-section-visual--dual {
    height: 280px;
  }

  /* ITステーション 540px */
  .bp-section--it .bp-section-visual--triple {
    height: 650px;
  }

  .bp-section--it .bp-triple-img--1 {
    left: calc(50% - 175px);
  }

  .bp-section--it .bp-triple-img--1 img {
    width: 350px;
  }

  .bp-section--it .bp-triple-img--2 {
    left: calc(50% - 210px);
    bottom: 45px;
  }

  .bp-section--it .bp-triple-img--2 img {
    width: 205px;
  }

  .bp-section--it .bp-triple-img--3 {
    right: calc(50% - 213px);
    bottom: -45px;
  }

  .bp-section--it .bp-triple-img--3 img {
    width: 250px;
  }

  /* 障がい者支援活動 画像（540px） */
  .bp-section--support .bp-section-visual--dual {
    height: 260px;
  }

  .bp-section--support .bp-dual-img--1 {
    left: calc(50% - 160px);
    top: 60px;
  }

  .bp-section--support .bp-dual-img--1 img {
    width: 220px;
  }

  .bp-section--support .bp-dual-img--2 {
    right: calc(50% - 160px);
    top: 0;
  }

  .bp-section--support .bp-dual-img--2 img {
    width: 180px;
  }

  /* 障がい者支援活動 フッターとの距離（540px以下） */
  .bp-section--support {
    padding-bottom: 280px;
  }

  /* 障がい者支援活動 ブルーライン（540px以下） */
  .bp-section--support .c-bgLine.group-line--1 {
    top: auto;
    bottom: 8%;
  }

  .bp-section--support .c-bgLine.group-line--2 {
    top: auto;
    bottom: 5%;
  }

  /* 障がい者支援活動 ブルーフォグ（540px以下） */
  .bp-section--support::before {
    bottom: -120px;
    right: -100px;
    width: 500px;
    height: 400px;
  }

  /* AIOサーバー ブルーフォグ非表示（540px以下） */
  .bp-section--aio::before {
    display: none;
  }

  /* IPFSサーバー構築事業 ブルーフォグ非表示（540px以下） */
  .bp-section--ipfs::before {
    display: none;
  }

  /* IPFSサーバー構築事業 ブルーライン非表示（540px以下） */
  .bp-section--ipfs .c-bgLine {
    display: none;
  }

  /* ITステーション ブルーライン非表示（540px以下） */
  .bp-section--it .c-bgLine {
    display: none;
  }

  /* ITステーション ブルーフォグ（540px以下）- pタグ開始位置の少し左 */
  .bp-section--it::before {
    bottom: 800px;
    left: -50px;
    right: auto;
    width: 400px;
    height: 300px;
  }
}

/* 480px〜375px: 画像を流動的にスケール */
@media (max-width: 480px) {

  /* 単体画像（AIO, Education, IPFS） */
  .bp-aio-logo,
  .bp-single-img {
    width: 72vw;
    max-width: 350px;
  }

  /* ITステーション */
  .bp-section--it .bp-section-visual--triple {
    height: clamp(450px, 130vw, 650px);
  }

  .bp-section--it .bp-triple-img--1 {
    left: calc(50% - 36vw);
  }

  .bp-section--it .bp-triple-img--1 img {
    width: 72vw;
    max-width: 350px;
  }

  .bp-section--it .bp-triple-img--2 {
    left: calc(50% - 44vw);
    bottom: clamp(30px, 10vw, 45px);
  }

  .bp-section--it .bp-triple-img--2 img {
    width: 42vw;
    max-width: 205px;
  }

  .bp-section--it .bp-triple-img--3 {
    right: calc(50% - 44vw);
    bottom: clamp(-60px, -10vw, -45px);
  }

  .bp-section--it .bp-triple-img--3 img {
    width: 52vw;
    max-width: 250px;
  }
}

@media (max-width: 375px) {

  /* Hero */

  .bp-hero-catch {
    letter-spacing: 0.05em;
    margin-bottom: 12px;
  }

  .bp-hero-catch::after {
    height: 12px;
  }

  .bp-hero-lead {
    letter-spacing: 0.05em;
  }

  /* Section Common */
  .bp-section {
    padding: 50px 0;
  }

  .bp-section-head {
    margin-bottom: 50px;
  }

  /* h2サイズを元に戻す */
  .business-page .c-secTitle-text {
    font-size: 1.25rem;
  }

  .bp-section-catch {
    font-size: 1rem;
    letter-spacing: 0.1em;
    line-height: 1.8;
    gap: 8px;
  }

  .bp-quote {
    width: 20px;
    height: 20px;
  }

  .bp-section-lead {
    font-size: 0.875rem;
    line-height: 2;
  }

  /* CTA */
  .bp-section-cta-wrap {
    margin-top: 30px;
  }

  /* AIO Logo */
  .bp-section-visual--logo {
    justify-content: center;
  }

  .bp-aio-logo {
    width: 100%;
    max-width: 280px;
  }

  /* Single Image */
  .bp-single-img {
    width: 100%;
    max-width: 280px;
    border-radius: 24px;
  }

  .bp-section-visual--single-start,
  .bp-section-visual--single-end {
    justify-content: center;
  }

  /* Triple Images (IT Station) */
  .bp-section--it .bp-section-visual--triple {
    height: 500px;
    margin-top: 30px;
    margin-bottom: 20px;
  }

  /* 1枚目: 上部中央・大きく */
  .bp-section--it .bp-triple-img--1 {
    left: calc(50% - 130px);
    transform: none;
    top: 0;
    bottom: auto;
  }

  .bp-section--it .bp-triple-img--1 img {
    width: 260px;
  }

  /* 2枚目: 1枚目の左下に重なる */
  .bp-section--it .bp-triple-img--2 {
    left: calc(50% - 150px);
    right: auto;
    top: auto;
    bottom: 60px;
    transform: none;
    z-index: 3;
  }

  .bp-section--it .bp-triple-img--2 img {
    width: 155px;
    border-radius: 24px;
  }

  /* 3枚目: 1枚目の右下に重なる（2枚目より大きく） */
  .bp-section--it .bp-triple-img--3 {
    left: auto;
    right: calc(50% - 165px);
    top: auto;
    bottom: 0;
  }

  .bp-section--it .bp-triple-img--3 img {
    width: 185px;
    border-radius: 24px;
  }

  /* Dual Images (Support) */
  .bp-section--support .bp-section-visual--dual {
    position: relative;
    height: 220px;
    margin-top: -20px;
    margin-bottom: 20px;
  }

  .bp-section--support .bp-dual-img--1,
  .bp-section--support .bp-dual-img--2 {
    position: absolute;
    width: auto;
    height: auto;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
  }

  .bp-section--support .bp-dual-img--1 {
    left: 10%;
    bottom: 0;
    z-index: 2;
  }

  .bp-section--support .bp-dual-img--1 img {
    width: 160px;
    border-radius: 35px;
    box-shadow: 1.5px 3px 7.5px 3px #00000040;
  }

  .bp-section--support .bp-dual-img--2 {
    right: 10%;
    top: 0;
  }

  .bp-section--support .bp-dual-img--2 img {
    width: 140px;
    border-radius: 35px;
    box-shadow: 1.5px 3px 7.5px 3px #00000040;
  }

  /* Education/Support Section Adjustments */
  .bp-section--education {
    padding-bottom: 80px;
  }


  .bp-section--support {
    padding-bottom: 200px;
    margin-bottom: 60px;
  }

  .bp-section--support .bp-section-content {
    max-width: 100%;
  }

  /* 障がい者支援活動 背景ライン・フォグ（375px以下） */
  .bp-section--support .c-bgLine.group-line--1 {
    top: auto;
    bottom: 60px;
  }

  .bp-section--support .c-bgLine.group-line--2 {
    top: auto;
    bottom: 30px;
  }

  .bp-section--support::before {
    bottom: -20px;
    right: -20%;
    left: auto;
    height: 200px;
    width: 100%;
  }
}