#content {

  .article-opinion,
  .article-topics {
    .sp-br {
      @media (width > 800px) {
        display: none;
      }
    }
    .wrapper {
      position: relative;
      padding: 1px 0 90px;
      background: #fff;
      > * {
        max-width: 600px;
      }
      h2 {
        padding-bottom: 23px;
        border-bottom: 1px solid #4E4E4E;
        font-size: 26px;
        font-family: var(--font-yugothic-e);
        line-height: 1.8;
        @media (width < 960px) {
          padding-bottom: 18px;
          font-size: 19px;
        }
        + p {
          margin-top: 28px;
          @media (width < 960px) {
            margin-top: 19px;
          }
        }
      }
      p {
        font-size: 15px;
        letter-spacing: 0.08em;
        font-feature-settings: 'palt';
        font-family: var(--font-yugothic);
        @media (width < 960px) {
          font-size: 14px;
        }
        + p {
          margin-top: 30px;
          @media (width < 960px) {
            margin-top: 28px;
          }
        }
        + p:has(img) {
          margin-top: 40px;
          @media (width < 960px) {
            margin-top: 20px;
          }
        }
        + h2 {
          margin-top: 70px;
          @media (width < 960px) {
            margin-top: 50px;
          }
        }
      }
      p:has(img) {
        + p {
          margin-top: 40px;
          @media (width < 960px) {
            margin-top: 20px;
          }
        }
        + h2 {
          margin-top: 40px;
          @media (width < 960px) {
            margin-top: 50px;
          }
        }
      }
    }
  }
  #opinion {
    padding: 73px clamp(25px, calc(29.4118vw - 257.35px), 65px) 65px;
    @media (width < 960px) {
      padding: 39px 15px 38px;
    }
    .opinion-ttl {
      font-size: 26.86px;
      @media (width < 960px) {
        font-size: 23.66px;
      }
    }
  }
  .opinion {
    #page-head h1{
      filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.15));
      position: relative;
      z-index: 1;
      @media (width <= 800px) {
        filter: none;
      }
    }
  }
  .article-opinion {
    margin-bottom: 0;
    padding: 0;
    background: #EFEFEF;
    .article-header {
      display: flex;
      gap: 34px;
      height: 474px;
      justify-content: space-between;
      @media (width > 1300px){
        gap: 35px;
      }
      @media (width <= 1096px){
        height: 437px;
      }
      h1 {
        margin: 0;
        font-size: 32px;
        font-family: var(--font-yugothic-e);
        line-height: 1.8;
        @media (width <= 1096px) {
          font-size: 28px;
        }
      }
      h4 {
        margin-top: -3px;
        font-size: 18px;
        font-family: var(--font-yugothic-e);
        line-height: 1.8;
        span {
          font-size: 16px;
          font-family: var(--font-yugothic);
          letter-spacing: 0.05em;
        }
      }
      .yushikisha-profile  {
        > p {
          font-family: var(--font-yugothic);
        }
        > span {
          font-size: 13px;
          font-family: var(--font-yugothic-e);
          line-height: 2.4;
        }
        &.is-multiple {
          >span {
            font-size: 18px;
            display: block;
            @media (width < 960px) {
              margin-bottom: -10px;
              font-size: 15px;
            }
          }
          h4 {
            margin-top: 11px;
            font-size: 12px;
            span {
              font-size: 12px;
              font-family: var(--font-yugothic-e);
            }
          }
        }
      }
      p {
        margin: 12px 0 0;
        font-size: 11px;
        line-height: 1.8;
        text-align: left;
      }
      .text-contents {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        max-width: 625px;
        padding: 54px 0 0 72px;
        @media (width <= 1096px) {
          padding: 38px 0 0 55px;
        }
      }
      .img-contents {
        width: clamp(273px, calc(189.41vw - 2189.35px), 595px);
        flex-shrink: 0;
        @media (width <= 1096px) {
          width: 220px;
        }
        img {
          height: 100%;
          object-fit: cover;
        }
      }
    }
    .article-main {
      margin: 63px clamp(25px, calc(29.4118vw - 257.35px), 65px) 0 0;
      @media (width < 960px) {
        margin: 17px 15px 0;
      }
      &::before{
        content: '';
        display: block;
        width: 100%;
        height: 100px;
        background: #fff;
        clip-path: polygon(0 0, calc(100% - 100px) 0%, 100% 100%, 0% 100%);
        @media (width < 960px) {
          height: 35px;
          clip-path: polygon(0 0, calc(100% - 35px) 0%, 100% 102%, 0% 102%);
        }
      }
      .wrapper {
        clip-path: polygon(0% -1%, 100% 0, 100% calc(100% - 100px), calc(100% - 100px) 100%, 0 100%);
        @media (width < 960px) {
          padding: 26px 25px 60px;
        }
        > * {
          margin-left: auto;
          margin-right: auto;
          margin-bottom: 0;
          position: relative;
          left: clamp(12.5px, calc(14.7059vw - 128.68px), 32.5px);
          @media (width < 960px) {
            left: initial;
          }
        }
        > :first-child {
          margin-top: -21px;
          @media (width < 960px) {
            margin-top: -26px;
          }
        }
      }
    }
  }
  .seikatsuchishin2026-article-topics {
    background: linear-gradient(180deg, #DDE9F2 0%, #BBE9E6 58.99%);
  }
  .article-topics {
    max-width: 1000px;
    margin: 50px auto 70px;
    padding: 0 50px;
    background: inherit;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 150px), calc(100% - 150px) 100%, 0 100%);
    @media (width <= 1182px) {
      margin-top: clamp(34px, calc(7.2072vw - 35.19px), 50px);
      padding: 0 clamp(34px, calc(7.2072vw - 35.19px), 50px);
    }
    @media (width < 960px) {
      margin: 15px auto 30px;
      padding: 0 15px;
      clip-path: polygon(0 0, 100% 0, 100% calc(100% - 50px), calc(100% - 50px) 100%, 0 100%);
    }
    .article-main {
      background: #fff;
      padding: 50px;
      @media (width <= 1182px) {
        padding: clamp(36px, calc(6.3063vw - 24.54px), 50px);
      }
      @media (width < 960px) {
        padding: 25px;
      }
      .category {
        margin-top: -24px !important;
        font-size: 12px;
        text-align: center;
      }
    }
    .wrapper {
      padding: 1px 0 69px;
      @media (width < 960px) {
        padding: 1px 0 75px;
      }
      > * {
        margin: 0 auto;
      }
      .article-header {
        display: flex;
        justify-content: space-between;
        gap: 50px;
        max-width: unset;
        padding-bottom: 50px;
        @media (width <= 1182px) {
          gap: 30px;
        }
        @media (width < 960px) {
          padding-bottom: 26px;
          flex-direction: column;
          gap: 23px;
        }
        h1 {
          margin: 0;
          font-size: 32px;
          font-family: var(--font-yugothic-e);
          line-height: 1.8;
          @media (width <= 1182px) {
            font-size: 25px;
          }
          @media (width < 960px) {
            width: 100%;
            margin-top: -3px;
            font-size: 21px;
            letter-spacing: 0.08em;
          }
        }
        .text-contents {
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          @media (width < 960px) {
            gap: 16px;
          }
        }
        .article-meta {
          p {
            margin-bottom: -1px;
            font-size: 12px;
            letter-spacing: 0.05em;
          }
          h4 {
            font-size: 18px;
            font-family: var(--font-yugothic-e);
            @media (width < 960px) {
              font-size: 15px;
            }
          }
        }
        .img-contents {
          width: 316px;
          @media (width <= 1182px) {
            width: 260px;
          }
          @media (width < 960px) {
            width: 100%;
          }
          img {
            aspect-ratio: 1 / 1;
            object-fit: cover;
          }
        }
      }
      hr {
        width: calc(100% + 100px);
        margin: 0 0 44px -50px;
        max-width: unset;
        background: #E9E9E9;
        @media (width <= 1182px) {
          width: calc(100% + 2 * clamp(36px, calc(6.3063vw - 24.54px), 50px));
          margin-left: calc(-1 * clamp(36px, calc(6.3063vw - 24.54px), 50px));
          margin-bottom: 48px;
        }
        @media (width < 960px) {
          width: calc(100% + 50px);
          margin-left: -25px;
          margin-bottom: 50px;
        }
      }
      p {
        a {
          color: #0073FF;
          letter-spacing: 0.08em;
        }
        + h2 {
          margin-top: 59px;

          @media (width < 960px) {
            margin-top: 50px;
          }
        }
        + p {
          margin-top: 61px;

          @media (width < 960px) {
            margin-top: 50px;
          }
        }
        + p:has(a) {
          margin-top: 30px;

          @media (width < 960px) {
            margin-top: 28px;
          }
        }
      }
      h2 {
        @media (width <= 1182px) {
          font-size: 20px;
        }
        @media (width < 960px) {
          font-size: 19px;
        }
      }
    }
  }
  #topics {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 50px 50px;
    @media (width <= 1182px) {
      padding: 0 clamp(34px, calc(7.2072vw - 35.19px), 50px) 50px;
    }
    @media (width < 960px) {
      padding: 0 15px 15px;
    }
    .topics-ttl {
      display: none;
    }
  }
}

@media (width < 960px) {
  #content {
    .article-opinion {
      .article-header {
        flex-direction: column;
        height: auto;
        gap: 0;
        .text-contents {
          display: contents;
        }
        h1 {
          order: 1;
          width: 100%;
          padding: 21px 25px 0;
          font-size: 21px;
        }
        .img-contents {
          order: 2;
          width: 100%;
          margin-top: 20px;
          padding: 0 25px;
          img {
            width: 100%;
            height: auto;
            object-fit: cover;
          }
        }
        .yushikisha-profile {
          order: 3;
          padding: 25px 25px 0;
          h4 {
            margin-top: 0;
            font-size: 15px;
          }
          span {
            font-size: 11px;
            letter-spacing: 0.08em;
          }
          > span {
            font-size: 12px;
            display: block;
            line-height: 2.1;
          }
          p {
            font-size: 10.7px;
            margin: 9px 0 0;
          }
        }
      }
      .article-main {
        .wrapper {
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 35px 100%, 0% calc(100% - 35px));
        }
      }
    }
  }
}