@charset "utf-8";
:root{
    --base-white-color:#ffffff;
    --base-black-color:#333;

    --base-bg-color:#f1efea;

    --primary-color:rgb(34, 114, 148);
    --secondary-color:rgb(216, 218, 67);
    --tertiary-color:#ffff00;
    --quaternary-color:#ff0095;

    --container-size:1366px;

    --header-area-height:auto;
    --footer-area-height:auto;
  }

  html{
    scroll-behavior: smooth;
  }

  body{
    background-color: var(--base-bg-color);
    color: var(--base-black-color);
    letter-spacing: .05em;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-size: 14px;
    font-size: clamp(14px, 1.6vw, 16px);
    min-height: 0vw;
  }

  a{
    color: var(--base-black-color);
  }

  ul{
    padding-inline-start: 1em;
  }
  li{
    margin-bottom: 0.5em;
  }

  h1,h2,h3,h4,h5,h6{
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    font-weight: 900;
  }
  h1{
      font-size: 32px;
      font-size: clamp(32px, 5.625vw, 45px);
      min-height: 0vw;
      font-weight: 900;
  }
  h2{
      font-size: 20px;
      font-size: clamp(20px, 3vw, 24px);
      min-height: 0vw;
      font-weight: 900;
  }
  h3{
      font-size: 18px;
      font-size: clamp(16px, 2.5vw, 18px);
      min-height: 0vw;
  }
  h4{
      font-size: 16px;
      font-size: clamp(16px, 2.5vw, 20px);
      min-height: 0vw;
  }
  p{
    line-height: 2em;
    margin-bottom: 0.5em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
  }
  address{
    font-style: normal;
  }
  hr{
    border: 5px solid var(--base-black-color);
  }
  dt{
    font-size: 18px;
    font-size: clamp(16px, 2.5vw, 18px);
    min-height: 0vw;
    margin-bottom: 0.5em;
  }
  dd{
    margin-bottom: 1.5em;
  }
  summary {
    display: block;
    list-style: none;
  }
  
  summary::-webkit-details-marker {
    display:none;
  }
  .container-full{
    width: 100%;
    margin: 0 auto;
    padding: 3vh 5vw;
  }
  table{
    border-collapse: collapse;
    width: 100%;
    td{
      padding: 2em;
      border: 1px solid var(--base-black-color);
    }
  }