@charset "UTF-8";
body, *, :before, :after {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "ＭＳ Ｐゴシック", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.el_font_roboto {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

figure {
  margin: 0;
}

@media (min-width: 831px) {
  .bl_Breadcrumb {
    margin-bottom: 30px;
  }
  .bl_privacy_ttl_wrapper {
    /* ===== 背景ベース + ノイズ ===== */
    background-color: #e6e6e6;
    background-image: linear-gradient(rgba(230, 230, 230, 0.8117647059), rgba(230, 230, 230, 0.8117647059)), url(../images/new_top/noise.png);
    background-repeat: repeat;
    background-size: 100px auto;
    position: relative;
    /* 格子背景 */
  }
  .bl_privacy_ttl_wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
    background-image: linear-gradient(to right, rgba(170, 170, 170, 0.25) 1px, transparent 1px), linear-gradient(to bottom, rgba(170, 170, 170, 0.25) 1px, transparent 1px);
    background-size: 16px 16px;
    opacity: 0.8;
  }
  .bl_privacy_ttl_wrapper > * {
    position: relative;
    z-index: 2;
  }
  .dmd_privacy_ttl {
    font-size: clamp(76px, 11vw, 142px);
    font-weight: bold;
    margin: clamp(40px, 7vw, 85px) 0 0.1875rem clamp(40px, 6vw, 80px);
    display: inline-block;
    color: #030303;
  }
  .dmd_privacy_ruby {
    font-size: clamp(16px, 1.5vw, 20px);
    margin-left: clamp(4px, 0.8vw, 10px);
    display: inline-block;
    font-weight: 700;
    color: #030303;
  }
  .bl_privacy_contents_wrapper {
    background: #eceeee;
    padding: 0 0 90px;
  }
  .bl_privacy_contents_box {
    background: #fff;
    padding: 40px 100px 50px;
    width: clamp(50rem, 95vw, 87.5rem);
    margin: 0 auto;
  }
  .bl_privacy_contents_box .wp-block-heading {
    padding-bottom: 16px;
    margin: 30px 0 20px;
    border-bottom: 1px solid #b4b5b5;
    font-size: 20px;
    font-weight: bold;
    color: #030303;
  }
  .bl_privacy_contents_box p {
    font-size: 16px;
    line-height: 1.8125;
    color: #030303;
  }
}
@media (max-width: 830px) {
  dd {
    margin: 0;
  }
  .bl_privacy_ttl_wrapper {
    padding-top: 2.4096385542vw;
    /* ===== 背景ベース + ノイズ ===== */
    background-color: #e6e6e6;
    background-image: linear-gradient(rgba(230, 230, 230, 0.8117647059), rgba(230, 230, 230, 0.8117647059)), url(../images/new_top/noise.png);
    background-repeat: repeat;
    background-size: 100px auto;
    position: relative;
    /* 格子背景 */
  }
  .bl_privacy_ttl_wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
    background-image: linear-gradient(to right, rgba(170, 170, 170, 0.25) 1px, transparent 1px), linear-gradient(to bottom, rgba(170, 170, 170, 0.25) 1px, transparent 1px);
    background-size: 16px 16px;
    opacity: 0.8;
  }
  .bl_privacy_ttl_wrapper > * {
    position: relative;
    z-index: 2;
  }
  .dmd_privacy_ttl {
    font-size: 12.0481927711vw;
    font-weight: bold;
    margin: 8.4337349398vw 0 1.2048192771vw 4.8192771084vw;
    display: inline-block;
    color: #030303;
    line-height: 1;
  }
  .dmd_privacy_ruby {
    font-size: 3.8554216867vw;
    display: inline-block;
    margin-left: 1.2048192771vw;
    color: #030303;
    font-weight: 700;
  }
  .bl_privacy_contents_wrapper {
    background: #eceeee;
    padding: 1.2048192771vw 0 12.0481927711vw;
  }
  .bl_privacy_contents_box {
    width: 90.3614457831vw;
    margin: 0 auto;
    background: #fff;
    padding: 2.4096385542vw 2.4096385542vw 3.6144578313vw;
  }
  .bl_privacy_contents_box p {
    font-size: 3.6144578313vw;
    line-height: 1.6;
    color: #030303;
  }
  .wp-block-heading {
    padding-bottom: 1.2048192771vw;
    margin: 7.2289156627vw 0 3.6144578313vw;
    border-bottom: 1px solid #b4b5b5;
    font-size: 4.3373493976vw;
    font-weight: bold;
    color: #030303;
  }
}
