/* =========================================
   ヘッダー マスク
   ========================================= */
.header_mask {
  background-image: linear-gradient(
    105deg,
    rgba(255, 248, 242, 0.60) 0%,
    rgba(255, 245, 238, 0.30) 38%,
    rgba(255, 255, 255, 0.03) 62%,
    rgba(255, 255, 255, 0) 100%
  ) !important;
}

/* =========================================
   本文エリア（#main）水彩風背景 ─ オレンジ系・白多め
   ========================================= */
#main {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: #ffffff !important;
  background-image: none !important;
}

/* 水彩レイヤー 1 */
#main::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  mix-blend-mode: normal;
  animation: main-watercolor-a 25s linear infinite;
  background-image:
    /* 右上：オレンジ（小さめ） */
    radial-gradient(circle at 92% 6%, rgba(255, 175, 110, 0.40) 0%, rgba(255, 175, 110, 0.10) 22%, transparent 36%),
    /* 左下：アンバー（小さめ） */
    radial-gradient(circle at 5% 90%, rgba(255, 200, 130, 0.35) 0%, rgba(255, 200, 130, 0.08) 20%, transparent 34%),
    /* 右下：コーラル（小さめ） */
    radial-gradient(circle at 90% 92%, rgba(255, 155, 120, 0.32) 0%, rgba(255, 155, 120, 0.07) 18%, transparent 32%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

/* 水彩レイヤー 2 */
#main::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  mix-blend-mode: normal;
  animation: main-watercolor-b 24s linear infinite;
  background-image:
    /* 左上：ピーチ（小さめ） */
    radial-gradient(circle at 6% 8%, rgba(255, 190, 140, 0.38) 0%, rgba(255, 190, 140, 0.09) 20%, transparent 34%),
    /* 右中：テラコッタ（小さめ） */
    radial-gradient(circle at 94% 48%, rgba(240, 150, 100, 0.34) 0%, rgba(240, 150, 100, 0.08) 18%, transparent 32%),
    /* 下中央：クリームオレンジ（小さめ） */
    radial-gradient(circle at 50% 96%, rgba(255, 215, 165, 0.28) 0%, rgba(255, 215, 165, 0.06) 16%, transparent 30%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

@keyframes main-watercolor-a {
  0%, 100% { opacity: 0.85; }
  50%       { opacity: 0.35; }
}

@keyframes main-watercolor-b {
  0%, 100% { opacity: 0.35; }
  50%       { opacity: 0.85; }
}

/* コンテンツを前面に */
#main > .container {
  position: relative;
  z-index: 1;
}

#main [data-pk-block] {
  background: transparent !important;
}

#main .rp-wide-background-table50,
#main .rp-wide-background-table33,
#main table[style*="background-color: #ffffff"],
#main table[style*="background-color:#ffffff"],
#main table[style*="background-color: #f8f6f7"],
#main table[style*="background-color:#f8f6f7"] {
  background-color: transparent !important;
}

#main .rp-wide-background[style*="linear-gradient"] {
  background: transparent !important;
}

#main .rp-wide-background:not([style*="background-image"]) .rp-wide-background-inner {
  background-color: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}