@charset "UTF-8";

/*///  保育について  ///*/
.care_gole{
  flex-direction: column;
  @media (min-width: 768px) {
    flex-direction: row;
  }
  dl{
    text-align: center;
    margin: 1em;
    width: 100%;
    max-width: 300px;
    > span{
      color: var(--color-secondary);
      border-bottom: 2px solid var(--color-secondary);
    }
    dt{
      font-size: 1.2em;
      font-weight: bold;
      color: #A3703A;
      span{
        background:linear-gradient(transparent 60%, var(--color-yellow) 60%) ;
      }
    }
    dd{
      img{
        border-radius: 50%;
        background: #fff;
        object-fit: contain;
      }
    }
  }
}
.attempt{
  margin: var(--gap-xl) 0;
  .attempt_menu{
    gap: var(--gap-medium);
    padding: var(--gap-medium);
    li{
      width: calc(100% / 6);
      max-width: 120px;
    }
  }
  .attempt_content{
    border-radius: 0 var(--border-radius-large) var(--border-radius-large) var(--border-radius-large);
    margin: 4em 1em 6em;
    padding: 1em;
    color: #fff;
    h3{
      border-radius: var(--border-radius-large) var(--border-radius-large) 0 0;
      width: 10em;
      margin: -3.5em -.85em .5em;
      padding: .5em;
      img{
        vertical-align: middle;
        margin: 0 .5em 0 0;
      }
    }
    &:nth-child(even){
      .attempt_content_wrap{
        @media (min-width: 768px) {
          flex-flow: row-reverse;
        }
      }  
    }
    .attempt_content_wrap{
      @media (min-width: 768px) {
        display: flex;
        align-items: center;
        gap: var(--gap-medium);
      }
      .attempt_image{
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        @media (min-width: 768px) {
          width: 50%;
        }
        img{
          border-radius: var(--border-radius);
          aspect-ratio: 4/3;
          object-fit: cover;
        }
      }
      dl{
        width: 100%;
        @media (min-width: 768px) {
          width: 50%;
        }
        dt{
          display: inline-block;
          width: 100%;
          font-size: 1.2em;
          font-weight: bold;
          background: #fff;
          border-radius: 0 3em 3em 0;
          margin: var(--gap-small) 0;
          padding: var(--gap-small) var(--gap-large) var(--gap-small) var(--gap-medium);
          @media (min-width: 768px) {
            width: auto;
          }
  
        }
        dd{
          p{
            color: #fff;
            line-height: 1.75em;
          }
        }
      }
    }
  }
}
/*///  園について  ///*/
.features-grid{
  text-align: center;
  gap: var(--gap-xl);
  flex-flow: column;
  @media (min-width:768px){
    flex-flow: row;
  }
  .feature-item{
    max-width: 300px;
    position: relative;
    @media (min-width: 768px) {
      width: 30%;
    }
    .feature-icon{
      position: absolute;
      top: 0;
      left: 0;
      border-radius: var(--border-radius-large) 0 var(--border-radius-large) 0;
    }
    .feature-image{
      border-radius: var(--border-radius-large);
      overflow: hidden;
    }
  }
}
  .features-grid {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap-medium);
    margin-bottom: var(--gap-xl);
    
    @media (min-width: 768px) {
      flex-wrap: nowrap;
    }
    
    .feature-item {
      flex: 1 0 100%;
      position: relative;
      @media (min-width: 768px) {
        flex: 1;
      }
      
      .feature-icon {
        display: inline-block;
        padding: .5em 1em .5em 1em;
        background:#FBE2CA;
        color: #8B4513;
        font-size: 18px;
        text-align: center;
        font-weight: bold;
        border-radius: var(--border-radius) 0 var(--border-radius)  0;
        position: absolute;
        top: 0;
        left: 0;
        &.point1::before,
        &.point2::before,
        &.point3::before{
          content: "";
          display: inline-block;
          width: 1.75em;
          height: 1.75em;
          background: #000;
          vertical-align: middle;
          margin: 0 .5em 0 0;
        }
        &.point1::before{
          content: "";
          background: url(../img/point_icon_1.svg) center no-repeat;
          background-size: contain;
        }
        &.point2::before{
          content: "";
          background: url(../img/point_icon_2.svg) center no-repeat;
          background-size: contain;
        }
        &.point3::before{
          content: "";
          background: url(../img/point_icon_3.svg) center no-repeat;
          background-size: contain;
        }
        
      }
      
      .feature-image {
        margin-bottom: var(--gap-small);
        
        img {
          border-radius: var(--border-radius);
          width: 100%;
        }
      }
    }
  }

.nursery_facilitys_photo{
  .nursery_facilitys_photo_image{
    /* &.splide__track{
      overflow: visible;
      margin: 10%;
    } */
    .splide__slide{
      /* opacity: 0;
      visibility: hidden; */
      overflow: hidden;
      border-radius: var(--border-radius-large);
      transition: 1s;
      transform-origin: center center;
      img{
        width: 100%;
        height: auto;
        aspect-ratio: 4/3;
        object-fit: cover;
      }
      &::after{
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        transition: 1s;
        background: rgba(0, 0, 0, 0.5);
      }
      &.is-active{
        opacity: 1;
        visibility: visible;
        z-index: 1;
        &::after{
          content: "";
          display: none;
        }
      }
      &.is-prev,
      &.is-next{
        opacity: 1;
        visibility: visible;
        transition: 1s;
        scale: 1;
      }
      dl{
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        color: #fff;
        padding: .5em 1em;
        line-height: 1;
        dt{
          margin-bottom: .2em;
          font-weight: bold;
        }
        dd{
          font-size: .8em;
        }
      }
    }
  }
}

.secrity_content{
  flex-wrap: wrap;
  gap: var(--gap-large);
  align-items: flex-start!important;
  margin: var(--gap-large) 0;
  dl{
    width: 100%;
    color: #19B071;
    @media (min-width: 768px) {
      width: 40%;
    }
    .secrity_photo{
      img{
        aspect-ratio: 16/9;
        width: 100%;
        height: auto;
        background: #f5f5f5;
        border-radius: var(--border-radius);
        object-fit: cover;
      }
    }
    dt{
      font-weight: bold;
      font-size: 1.2em;
      &::before{
        content: "";
        display: inline-block;
        width: 1em;
        height: 1em;
        background: url(../img/secrity_icon.svg) center center no-repeat;
        background-size: contain;
      }
    }
  }
}
/*///  入園のご案内  ///*/
.admission{
  .inner > div.flexbox{
    gap: var(--gap-large);
    flex-flow: column;
    align-items: center;

    @media (min-width: 768px) {
      flex-flow: row;
      align-items: flex-start;
    }
  }
  .gerden{
    width: 90%;
    background: transparent;
    text-align: center;
    @media (min-width: 768px) {
      width: 50%;
    }
    .gerden_photo{
      margin: 0 0 1em;
      img{
        border-radius: var(--border-radius);
        background: #f5f5f5;
        object-fit: cover;
        aspect-ratio: 16/9;
      }
    }
    &.higashihie{
      table{background: #DEF0FD;}
    }
    &.imajuku{
      table{background: #D9EECD;}
    }
    table{
      width: 100%;
      margin: .5em 0;
      border-spacing: 0;
      color: #A3703A;
      text-align: left;
      tr:nth-child(even){
        background: rgba(255, 255, 255, 0.5);
      }
      th{
        width: 25%;
        padding: .5em 1em;
        position: relative;
        &::after{
          content: ":";
          margin: 0 10% 0 auto;
          position: absolute;
          top: 50%;
          right: 0;
          translate:0 -50%;
        }
      }
      td{
        padding: .5em 1em;
      }
    }
  }
  .slot{
    border: 2px solid #f7921e;
    border-radius: var(--border-radius);
    overflow: hidden;
    margin: var(--gap-large) 0;
    dt{
      background: #f7921e;
      color: #fff;
      font-size: 1.5em;
      font-weight: bold;
      text-align: center;
      padding: .5em;
    }
    dd{
      padding: 1em;
      gap: var(--gap-large);
      flex-flow: column;
      align-items: center;

      @media (min-width: 768px) {
        flex-flow: row;
        align-items: flex-start;
      }
    }
  }
}
.file_dl{
  gap: var(--gap-medium);
  flex-wrap: wrap;
  dl{
    border-radius: var(--border-radius);
    overflow: hidden;
    text-align: center;
    display: flex;
    flex-flow: column;
    min-width: 160px;
    dt{
      order: 2;
      background: var(--color-primary);
      color: #fff;
      font-size: .8em;
      font-weight: bold;
      padding: .25em 1em;
    }
    dd{
      order: 1;
      background: #f5f5f5;
      padding: 1em .5em;
      img{
        aspect-ratio: 1/1;
      }
    }
  }
}
.admission_flow{
  .flow_steps{
      gap: var(--gap-large);
      flex-flow: column;
      align-items: center;
      @media (min-width: 768px) {
        flex-flow: row;
        &.reverse{
          div{
            order: 1;
          }
          .flox_img{
            order: 2;
          }
        }
      }
    > div{
      flex: 1;
      order: 2;
      h3{
        color: var(--color-pink);
        border-bottom: 2px solid var(--color-pink);
        padding: .5em;
        font-size: 1.5em;
        font-weight: bold;
      }
    }
    .flow_img{
      order: 1;
      min-width: 300px;
      max-width: 400px;
    }
  }
  .arrow_toright{
    display: none;
    @media (min-width: 768px) {
      display: block;
      margin-bottom: -10%;
      margin-left: calc(50vw - 200px);
    }
    &.reverse{
      img{
        @media (min-width: 768px) {
          transform: scale(-1, 1);
        }
      }
    }
  }
  .contactbtn{
    text-align: center;
    margin: var(--gap-large) 0;
    a{
      width: auto;
    }
  }
}
/*///  園の生活  ///*/
.life_daily{
  .daily{
    @media (min-width: 768px){
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: var(--gap-large);
      padding-bottom: 150px;
    }
    > div{
      text-align: center;
      position: relative;
      @media (min-width: 768px){
        width: 50%;
        display: flex;
        justify-content: space-between;
        gap: var(--gap-large);
        margin-right: -20px;
        &:nth-child(even){
          translate: 0 calc(50% + 16px);
          border-color: #F2A358;
          margin-right: 0;
          margin-left: -20px;
        }
      }
      .daily_clock{
        @media (min-width: 768px){
            order: 2;
            translate: 50% 0;
            display: flex;
            align-items: center;
          }
        img{
          width: 140px;
          aspect-ratio: 1/1;
          object-fit: contain;
        }
      }
      .daily_data{
        flex: 1;
        @media (min-width: 768px){
          order: 1;
          background: #FFEEAA;
          border: 4px solid #FFDC50;
          border-radius: var(--border-radius);
        }
        &::after{
          content: "";
          display: block;
          width: 50vw;
          max-width: 600px;
          height: 4px;
          background:#FFDC50;
          position: absolute;
          top: calc(50% - 1px);
          left: 0;
          z-index: -1;
        }
        .daily_photo{
          padding: var(--gap-medium);
          img{
            width: 100%;
            aspect-ratio: 16/9;
            border-radius: var(--border-radius);
            object-fit: cover;
          }
        }
        .daily_illust{
          width: 100%;
          max-width: 80px;
          position: absolute;
          left: auto;
          bottom: 0;
          margin: 0 0 0 -3%;
          @media (min-width: 768px){
          margin: 0 0 -3% -3%;
          }
          img{
            width: 100%;
            aspect-ratio: 1/1;
          }
        }
      }
      h3{
        color: #A3703A;
        padding: .5em;
        margin: var(--gap-small);
      }
      &:nth-child(odd){
        background: #FFEEAA;
        @media (min-width: 768px){background: transparent;}
        h3{
          border-bottom: 2px solid #FFDC50;
        }
      }
      &:nth-child(even){
        background: #FBE0C7;
        @media (min-width: 768px){background: transparent;}
        .daily_clock{
          @media (min-width: 768px){
            order: 1;
            translate: -50% 0;
          }
        }
        .daily_data{
          @media (min-width: 768px){
            order: 2;
            background: #FBE0C7;
            border: 4px solid #F2A358;
            border-radius: var(--border-radius);
          }
        &::after{
          background:#F2A358;
          left: auto;
          right: 0;
        }
          h3{
            border-bottom: 2px solid #F2A358;
          }
        }
      }
    }
  }
}
.life_years{
  ul.flexbox{
    gap: var(--gap-medium); 
    margin: var(--gap-large) auto;
    align-items: stretch;
    flex-wrap: wrap;
    &:nth-child(even){
    li.seasons{
      rotate: -5deg;
      height: 100%;
      text-align: center;
      color: #fff;
      @media (min-width: 768px) {
        order: 4;
        rotate: 5deg;
      }
    }
    }
    &:nth-child(odd){
    li.seasons{
      rotate: -5deg;
      img{
        position: static;
      }
    }
    }
   
    li{
      background: #fff;
      border-radius: var(--border-radius);
      display: flex;
      align-items: stretch;
      position: relative;
      width: 45%;
      min-height: 5em;
      @media (min-width: 768px) {
        width: calc((100% / 4) - var(--gap-medium));
      }
      &.seasons{
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        img{
          position: static;
        }
      }
      .month{
        width: 33%;
        color: #fff;
        background: #333;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: var(--border-radius) 0 0 var(--border-radius);
        .first-letter{
          font-size: 1.5em;
        }
      }
      p{
        flex: 1;
        display: flex;
        align-items: center;
        padding: .5em;
      }
      img{
        position: absolute;
        right: -5%;
        bottom: -10%;
        width: 35%;
      }
    }
    &.spring_event{
      li.seasons, .month{
        background: #FE8BAA;
      }
    }
    &.summer_event{
      li.seasons, .month{
        background: #86C960;
      }
    }
    &.autumn_event{
      li.seasons, .month{
        background: #F46636;
      }
    }
    &.winter_event{
      li.seasons, .month{
        background: #67BBF7;
      }
    }
  }
  .nursery_event{
    .splide__slide{
      border-radius: var(--border-radius);
      overflow: hidden;
      p{
        position: absolute;
        bottom: 0;
        width: 100%;
        padding: .25em;
        text-align: center;
        color: #fff;
        &.spring{background: #FE8BAA;}
        &.summer{background: #86C960;}
        &.autumn{background: #F46636;}
        &.winter{background: #67BBF7;}
      }
    }
  }
}
/*///  よくあるご質問  ///*/
.faq_content{
  margin: var(--gap-large) auto;
  background: #FDEFE2;
  border-radius: 2.5em;
  padding: var(--gap-medium);
  color: #A3703A;
  dt{
    font-weight: bold;
    display: flex;
    align-items: center;
    cursor: pointer;
    &::before{
      content: "Q";
      align-self: flex-start;
      width: 1em;
      height: 1em;
      aspect-ratio: 1/1;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 100%;
      margin-right: .5em;
      padding: .5em;
      background: var(--color-primary);
      color: #fff;
    }
    &::after{
      content: "+";
      width: 1em;
      height: 1em;
      display: flex;
      align-items: center;
      margin-left: auto;
      padding: .5em;
    }
    &.active{
      &::after{
        content: "-";
      }
      + dd{
        padding: 1em 0;
      }
    }
  }
  dd{
    display: flex;
    margin: 0;
    padding: 0;
    height: 0;
    overflow: hidden;
    transition: height 0.3s ease-out;
    &::before{
      content: "A";
      align-self: flex-start;
      width: 1em;
      height: 1em;
      aspect-ratio: 1/1;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 100%;
      margin-right: .5em;
      padding: .5em;
      background: var(--color-pink);
      color: #fff;
    }
  }
}
/*///  お問い合わせ  ///*/
.contact_form{
  border: 4px solid var(--color-secondary);
  border-radius: var(--border-radius);
  box-shadow: .5em .5em 0 var(--color-secondary);
  padding: var(--gap-medium);
  h3{
    color: var(--color-secondary);
    font-weight: bold;
    padding: var(--gap-medium);
    margin: var(--gap-medium);
    border-bottom: 1px solid var(--color-secondary);
  }
  dl{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-flow: column;
    flex-wrap: wrap;
    margin: 0 var(--gap-medium);
    max-width: 1000px;
    @media (min-width: 768px) {
      flex-flow: row;
      flex-wrap: wrap;
      align-items: stretch;
      margin: 0 auto;
    }
    dt{
      color: #333;
      font-weight: bold;
      padding: .5em 0 0;
      @media (min-width: 768px) {
        border-bottom: 1px solid var(--color-secondary);
        width: 30%;
        padding: .5em;
      }
    }
    dd{
      width: 100%;
      border-bottom: 1px solid var(--color-secondary);
      padding: 0 0 .5em;
      @media (min-width: 768px) {
        width: 70%;
        padding: .5em;
      }
      &.policy{
        border: 0;
        text-align: center;
      }
    }
  }
  input:not([type="checkbox"]):not([type="submit"]),
  textarea,
  select{
    border: 0;
    padding: .25em;
    background: #EBF6E5;
    width: 100%;
    font-size: 1.2em;
    color: #333;
    border-radius: 4px;
  }
  select{
    text-align: center;
      @media (min-width: 768px) {
        width: 50%;
        text-align: left;
      }
  }
  .contact_submit_btn{
    text-align: center;
    margin:var(--gap-medium);
    .arrow_btn{
      background: var(--color-secondary);
      border: 0;
      font-size: 1.2em;
      padding: .5em 3em;
    }
  }
}

/*///  採用情報  ///*/
.jobpoint{
  gap: var(--gap-large);
  flex-wrap: wrap;
  li{
    width: calc((100% / 2) - var(--gap-large) );
    height: auto;
    aspect-ratio: 1 / 1;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-weight: bold;
    font-size: clamp(12px, 3em, 16px);
    color: #fff;
    @media (min-width: 768px) {
      width: calc((100% / 4) - var(--gap-large) );
    }
    &:nth-child(odd){
      background: url(../img/jobpoint_bga.png) center no-repeat;
      background-size: contain;
    }
    &:nth-child(even){
      background: url(../img/jobpoint_bgb.png) center no-repeat;
      background-size: contain;
    }
  }
}
.recruit_voice_wrap{
  .recruit_voice_content{
    gap: var(--gap-medium);
    flex-flow: column;
      @media (min-width: 768px) {
        flex-flow: row;
      }
    .recruit_voice_photo{
      background: #fff;
      width: 180px;
      height: 180px;
      border-radius: 100%;
      overflow: hidden;
    }
    .recruit_voice_comment{
      width: 100%;
      @media (min-width: 768px) {
        width: 70%;
      }
      .recruit_btn{
        text-align: center;
        margin: 1em;
      }
    }
    &:nth-child(even){
      @media (min-width: 768px) {
        flex-flow: row-reverse;
      }
    }
  }
}
.job_description{
  .job_description_tab{
    flex-wrap: wrap;
    gap: var(--gap-small);
    margin: 1em;
    @media (min-width: 768px) {
      margin: 0;
    }
    li{
      width: 40%;
      border-radius: var(--border-radius);
      padding: .5em;
      text-align: center;
      opacity: .5;
      @media (min-width: 768px) {
        border-radius: var(--border-radius) var(--border-radius) 0 0;
        width: calc((100% / 5) - var(--gap-small));
      }
      &.active{
        opacity: 1;
      }
      a{
        display: block;
        width: 100%;
        height: auto;
        padding: .5em;
        color: #fff;
        font-weight: bold;
      }
      &:nth-child(1){background: #F2A358;}
      &:nth-child(2){background: #FF97A8;}
      &:nth-child(3){background: #86C960;}
      &:nth-child(4){background: #67C7ED;}
      &:nth-child(5){background: #DB9F83;}
    }
  }
  .job_description_content{
    background: #FDEFE2;
    padding: var(--gap-large);
    h3{
      background: #F7CB9C;
      padding: .5em;
      color: #A3703A;
    }
    .jobdata{
      width: 100%;
      color: #A3703A;
      border-collapse:collapse;
      tr{
        border-top: 1px solid #F7CB9C;
        &:last-child{
          border-bottom: 1px solid #F7CB9C;
        }
      }
      th{
        background: #FAE4CD;
        padding: 1em;
        display: block;
        text-align: left;
        @media (min-width: 768px) {
          display: table-cell;
        }
      }
      td{
        padding: 1em;
        display: block;
        @media (min-width: 768px) {
          display: table-cell;
        }
      }
    }
  }
}
.job_entry{
  .entry_form{
    border: 4px solid var(--color-tertiary);
    border-radius: var(--border-radius);
    box-shadow: .5em .5em 0 var(--color-tertiary);
    margin: var(--gap-xl) 0;
    padding: var(--gap-medium);
    h3{
      color: var(--color-tertiary);
      font-weight: bold;
      padding: var(--gap-medium);
      margin: var(--gap-medium);
      border-bottom: 1px solid var(--color-tertiary);
    }
    dl{
      display: flex;
      align-items: flex-start;
      justify-content: center;
      flex-flow: column;
      flex-wrap: wrap;
      margin: 0 var(--gap-medium);
      max-width: 1000px;
      @media (min-width: 768px) {
        flex-flow: row;
        flex-wrap: wrap;
        align-items: stretch;
        margin: 0 auto;
      }
      dt{
        color: #333;
        font-weight: bold;
        padding: .5em 0 0;
        @media (min-width: 768px) {
          border-bottom: 1px solid var(--color-tertiary);
          width: 30%;
          padding: .5em;
        }
      }
      dd{
        width: 100%;
        border-bottom: 1px solid var(--color-tertiary);
        padding: 0 0 .5em;
        @media (min-width: 768px) {
          width: 70%;
          padding: .5em;
        }
        &.policy{
          border: 0;
          text-align: center;
        }
      }
    }
    input:not([type="checkbox"]):not([type="submit"]):not([type="radio"]),
    textarea,
    select{
      border: 0;
      padding: .25em;
      background: #DEF0FE;
      width: 100%;
      font-size: 1.2em;
      color: #333;
      border-radius: 4px;
      &.age{
        width: 5em;
      }
    }
    select{
      text-align: center;
        @media (min-width: 768px) {
          width: 50%;
          text-align: left;
        }
    }
    input[type="radio"]{
      width: 1.5em;
      height: 1.5em;
      border: 0;
      background: #DEF0FE;
    }
    .contact_submit_btn{
      text-align: center;
      margin:var(--gap-medium);
      .arrow_btn{
        background: var(--color-tertiary);
        border: 0;
        font-size: 1.2em;
        padding: .5em 3em;
      }
    }
  }
}

/*///  先生の声  ///*/
.voice_data{
  .voice_photo1{
    border-radius: var(--border-radius-large);
    overflow: hidden;
    @media (min-width: 768px) {
      width: 45%;
      float: right;
      margin:0 1em var(--gap-large);
    }
    img{
      width: 100%;
      height: auto;
      aspect-ratio: 16/9;
      object-fit: cover;
    }
  }
  h2{
    margin: 0 0 1em;
  }
  .teacher_comment{
    max-width: 500px;
  }
}
.voice_container{
  clear: both;
  padding-bottom: var(--gap-xl);
  .voice_wrap{
    gap: var(--gap-large);
    flex-direction: column-reverse;
    @media (min-width: 768px) {
      max-width: 800px;
      flex-direction: row-reverse;
    }
    &:nth-child(even){
      @media (min-width: 768px) {
        margin-left: auto;
        flex-direction: row;
      }
    }
    dl{
      color: #A3703A;
      @media (min-width: 768px) {width: calc(100% - 200px - var(--gap-large));}
      dt{
        font-size: 1.2em;
        font-weight: bold;
        margin:0 0 .5em;
      }
    }
    .voice_photo{
      border-radius: 100%;
      width: 200px;
      height: 200px;
      overflow: hidden;
      background: #eee;
    }
  }
}
.voice_btns{
  ul{
    flex-direction: column;
    gap: 1em;
    @media (min-width: 768px) {
      flex-direction: row;
    }
    li{
      text-align: center;
      a{
        width: auto;
      }
    }
  }
}

.privacy{
  p{
    color: var(--color-text);
    margin-bottom: var(--gap-large);
  }
  dl{
    max-width: 800px;
    margin: var(--gap-large) auto;
    dt{
      font-weight: bold;
      margin: .5em 0;
      padding: .5em 0;
      border-bottom: 1px solid #999;
    }
  }

}