@charset "UTF-8";

main .contents {
  padding-block: 116px 110px;
  background: white;

  @media (width <= 768px) {
    padding-block: 16.1vw 15.1vw;
  }

  /* ==== .u-inner ==== */
  .u-inner {
    @media (width <= 768px) {
      padding-inline: calc((100 / 750) * 40 * 1vw);
    }
  }

  /* =====================
    policy-contents
  ===================== */
  .policy-contents {
    display: block grid;
    gap: 60px;

    @media (width <= 768px) {
      gap: 7vw;
    }

    /* ==== article ==== */
    & article {
      display: block grid;
      gap: 56px;

      @media (width <= 768px) {
        gap: 9.7vw;
        font-size: calc((100 / 750) * 48 * 1vw);
      }
    }

    /* ==== section ==== */
    & section {
      display: block grid;
      gap: 24px;

      @media (width <= 768px) {
        gap: calc((100 / 750) * 38.9 * 1vw);
      }
    }

    /* ==== h2 ==== */
    & h2 {
      padding-block-end: 10px;
      margin-block: calc((1em - 1lh) / 2);
      margin-block-end: -1px;
      font-size: 23px;
      font-weight: 500;
      border-block-end: 1px solid var(--secondary);

      @media (width <= 768px) {
        padding-block-end: calc((100 / 750) * 20 * 1vw);
        font-size: calc((100 / 750) * 34 * 1vw);
      }
    }

    /* ==== h3 ==== */
    & h3 {
      margin-block: calc((1em - 1lh) / 2);
      font-size: 20px;
      font-weight: 500;

      @media (width <= 768px) {
        font-size: calc((100 / 750) * 32 * 1vw);
      }
    }

    /* ==== p ==== */
    & p {
      margin-block: calc((1em - 1lh) / 2);

      @media (width <= 768px) {
        font-size: calc((100 / 750) * 26 * 1vw);
        line-height: 1.9;
      }
    }

    /* ==== ol ==== */
    & ol {
      display: block grid;
      gap: 13px;
      margin-block: calc((1em - 1lh) / 2);
      translate: 0 -6px;

      & li {
        margin-block: calc((1em - 1lh) / 2);
      }

      @media (width <= 768px) {
        gap: 3.2vw;
        font-size: calc((100 / 750) * 26 * 1vw);
        line-height: 1.9;
        translate: 0 -1vw;
      }
    }

    /* ==== table ==== */
    & table {
      max-inline-size: 1060px;
      margin-block: 17px calc((1em - 1lh) / 2);
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      

      @media (width <= 768px) {
        margin-block: calc((100 / 750) * 13 * 1vw) calc((100 / 750) * 12 * 1vw);
      }

      & caption {
        margin-block-end: 16px;
        font-size: 20px;
        font-weight: 500;
        text-align: left;

        @media (width <= 768px) {
          margin-block-end: calc((100 / 750) * 25 * 1vw);
          font-size: calc((100 / 750) * 32 * 1vw);
        }
      }

      & :where(th, td) {
        padding-block: 15.3px;
        padding-inline: 46px;
        border: 1px solid #999;

        @media (width <= 768px) {
          padding-block: 3vw;
          font-size: calc((100 / 750) * 24 * 1vw);
          vertical-align: middle;
        }
      }

      & th {
        inline-size: 240px;
        padding-block: 14.6px;
        background: #e5f5ff;
        font-weight: 500;
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        

        @media (width <= 768px) {
          inline-size: calc((100 / 750) * 173 * 1vw);
          padding-inline: 0;
          text-align: center;
        }
      }

      & td {
        @media (width <= 768px) {
          padding-inline: calc((100 / 750) * 48 * 1vw);

          & a {
            color: var(--primary);
            text-decoration: underline;
          }
        }
      }

      & tr:nth-child(2) th {
        @media (width <= 768px) {
          padding-block: calc((100 / 750) * 77 * 1vw);
        }
      }
    }
  }
}
