/* =================================================
   unique layout
================================================= */
/* -------------------------------------
   article
------------------------------------- */
#article {
  /* -------------------------------------
     section
  ------------------------------------- */
}
#article section {
  /* -------------------------------------
     list
  */
  /* -------------------------------------
     detail
  */
  /* -------------------------------------
     archive
  */
}
#article section.list .inner.section_inner .content {
  position: relative;
  z-index: 1;
}
#article section.list .inner.section_inner .content a,
#article section.list .inner.section_inner .content a:link {
  position: relative;
  z-index: 1;
}
#article section.list .inner.section_inner .content figure {
  aspect-ratio: 3/2;
  overflow: hidden;
}
#article section.list .inner.section_inner .content h3 {
  grid-row: 1;
  grid-column: 1;
}
#article section.list .inner.section_inner .content h3 span {
  font-size: 1.4rem;
}
#article section.list .inner.section_inner .content h3 span.date {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  font-family: "Jost", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 300;
  align-items: center;
  letter-spacing: 0.05em;
  line-height: 1;
}
#article section.list .inner.section_inner .content h3 span.txt {
  letter-spacing: 0.1em;
  color: hsl(0, 0%, 0%);
  padding: 0 5.3333333333vw 0 0;
  margin: 2.6666666667vw 0 0;
  position: relative;
  z-index: 1;
}
#article section.list .inner.section_inner .content h3 span.txt:before, #article section.list .inner.section_inner .content h3 span.txt:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
}
#article section.list .inner.section_inner .content h3 span.txt:after {
  width: 0.6rem;
  height: 0.6rem;
  border-top: 1px solid hsl(0, 0%, 40%);
  border-right: 1px solid hsl(0, 0%, 40%);
  z-index: 9;
  right: 5.3333333333vw;
  transform-origin: center center;
  transform: translateY(-50%) rotate(45deg);
}
#article section.list .inner.section_inner .content h3 span.txt::after {
  right: 0;
}
#article section.list .inner.section_inner .content h4 {
  grid-row: 1;
  grid-column: 1;
  justify-self: end;
}
#article section.list .inner.section_inner .content h4 span {
  white-space: nowrap;
  vertical-align: middle;
  letter-spacing: 0.05em;
  text-align: center;
  font-size: 0.9rem;
  line-height: 1;
}
#article section.list .inner.section_inner .content h4 span a,
#article section.list .inner.section_inner .content h4 span a:link {
  padding: 0.4vw 2.6666666667vw;
  border: 1px solid hsl(0, 0%, 0%);
}
#article section.list .inner.section_inner .content .item {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 2.6666666667vw;
  width: 92vw;
  margin: 0 auto 4vw;
}
#article section.list .inner.section_inner .content .item .float_l {
  width: 36vw;
}
#article section.list .inner.section_inner .content .item .float_r {
  display: grid;
}
#article section.list .inner.section_inner .content .item.new .date::before {
  flex-shrink: 0;
  content: "New";
  display: inline-block;
  font-family: "Jost", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 300;
  letter-spacing: 0.025em;
  text-align: center;
  color: hsl(0, 0%, 100%);
  font-size: 1.2rem;
  line-height: 1;
  width: max-content;
  height: max-content;
  padding: 0.1em 0.2em;
  margin: 0 1.0666666667vw 0 0;
  background: #898989;
  transform: translateY(-0.2666666667vw);
}
#article section.detail .inner.section_inner .content {
  /* -------------------------------------
     content_1
  */
  /* -------------------------------------
     content_2
  */
}
#article section.detail .inner.section_inner .content.content_1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 84vw;
  margin: 8vw auto 0;
  position: relative;
  z-index: 1;
}
#article section.detail .inner.section_inner .content.content_1 h2.h2_2 {
  width: 100%;
  margin: 2.6666666667vw 0 0;
}
#article section.detail .inner.section_inner .content.content_1 h3.h3_4 {
  display: inline-block;
  width: auto;
  margin: 0 0 0 2.6666666667vw;
  /*
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  */
}
#article section.detail .inner.section_inner .content.content_1 h3.h3_4 span {
  vertical-align: middle;
  letter-spacing: 0.05em;
  text-align: center;
  font-size: 0.9rem;
  line-height: 1;
}
#article section.detail .inner.section_inner .content.content_1 h3.h3_4 span a,
#article section.detail .inner.section_inner .content.content_1 h3.h3_4 span a:link {
  padding: 0.4vw 4vw;
  border: 1px solid hsl(0, 0%, 60%);
}
#article section.detail .inner.section_inner .content.content_1 p.date {
  display: flex;
  align-items: center;
  font-family: "Jost", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 300;
  align-items: center;
  letter-spacing: 0.05em;
  line-height: 1;
  margin: 0;
}
#article section.detail .inner.section_inner .content.content_1.new .date::before {
  flex-shrink: 0;
  content: "NEW";
  display: block;
  font-family: "Jost", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 300;
  letter-spacing: 0.05em;
  text-align: center;
  color: hsl(0, 0%, 100%);
  font-size: 1rem;
  line-height: 1;
  padding: 0.6666666667vw;
  margin: 0 2vw 0 0;
  background: #898989;
}
#article section.detail .inner.section_inner .content.content_2 {
  width: 84vw;
  margin: 4vw auto 0;
}
#article section.archive {
  margin: 0 auto 10.6666666667vw;
}
#article section.archive .inner .content.new, #article section.archive .inner .content.poster, #article section.archive .inner .content.date {
  width: 84vw;
  margin: 5.3333333333vw auto 0;
  /* -------------------------------------
      item
  */
}
#article section.archive .inner .content.new h3, #article section.archive .inner .content.poster h3, #article section.archive .inner .content.date h3 {
  display: flex;
  align-items: baseline;
  width: 100%;
  padding: 0 0 1.3333333333vw;
  margin: 0 0 2.6666666667vw;
  border-bottom: 1px solid hsl(0, 0%, 80%);
}
#article section.archive .inner .content.new h3 span.txt, #article section.archive .inner .content.poster h3 span.txt, #article section.archive .inner .content.date h3 span.txt {
  font-family: "Jost", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 300;
  font-size: 1.6rem;
}
#article section.archive .inner .content.new h3 span.txt_2, #article section.archive .inner .content.poster h3 span.txt_2, #article section.archive .inner .content.date h3 span.txt_2 {
  font-size: 1rem;
  margin: 0 0 0 2.6666666667vw;
}
#article section.archive .inner .content.new h4 span, #article section.archive .inner .content.poster h4 span, #article section.archive .inner .content.date h4 span {
  font-size: 1.2rem;
  color: hsl(0, 0%, 0%);
}
#article section.archive .inner .content.new .item, #article section.archive .inner .content.poster .item, #article section.archive .inner .content.date .item {
  width: 100%;
  padding: 0 0 2vw;
  margin: 0 auto 2.6666666667vw;
  border-bottom: 1px solid hsl(0, 0%, 80%);
}
#article section.archive .inner .content.new .link, #article section.archive .inner .content.poster .link, #article section.archive .inner .content.date .link {
  margin: 5.3333333333vw 0;
}
#article section.archive .inner .content.new .link span, #article section.archive .inner .content.poster .link span, #article section.archive .inner .content.date .link span {
  font-family: "Jost", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 300;
  letter-spacing: 0.075em;
  color: hsl(0, 0%, 100%);
  font-size: 1.2rem;
  background: #7D7F80;
  border: none;
  position: relative;
}
#article section.archive .inner .content.new .link span::before, #article section.archive .inner .content.new .link span:after, #article section.archive .inner .content.poster .link span::before, #article section.archive .inner .content.poster .link span:after, #article section.archive .inner .content.date .link span::before, #article section.archive .inner .content.date .link span:after {
  display: none;
}

@media screen and (min-width: 768px) {
  /* -------------------------------------
          animation
  */
  @keyframes motion-btn-link {
    0% {
      height: 0%;
    }
    100% {
      height: 100%;
    }
  }
  /* =================================================
     unique layout
  ================================================= */
  /* -------------------------------------
     article
  ------------------------------------- */
  #article {
    /* -------------------------------------
       section
    ------------------------------------- */
  }
  #article section {
    /* -------------------------------------
       list
    */
    /* -------------------------------------
       detail
    */
    /* -------------------------------------
       archive
    */
  }
  #article section.list .inner.section_inner .content.content_1 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
    margin: 0 auto;
  }
  #article section.list .inner.section_inner .content.content_1 h3 span {
    font-size: 1.2rem;
  }
  #article section.list .inner.section_inner .content.content_1 h3 span.txt {
    padding: 0;
    margin: 12px 0 0;
  }
  #article section.list .inner.section_inner .content.content_1 h3 span.txt::after {
    display: none;
  }
  #article section.list .inner.section_inner .content.content_1 h4 span {
    font-size: 1rem;
  }
  #article section.list .inner.section_inner .content.content_1 h4 span a,
  #article section.list .inner.section_inner .content.content_1 h4 span a:link {
    padding: 3.2px 16px;
  }
  #article section.list .inner.section_inner .content.content_1 .item {
    display: block;
    width: 100%;
    margin: 0;
    position: relative;
    z-index: 1;
  }
  #article section.list .inner.section_inner .content.content_1 .item .float_l,
  #article section.list .inner.section_inner .content.content_1 .item .float_r {
    width: 100%;
  }
  #article section.list .inner.section_inner .content.content_1 .item .float_r {
    margin: 16px 0 0;
  }
  #article section.list .inner.section_inner .content.content_1 .item.new .date:before {
    margin: 0 8px 0 0;
    transform: translateY(-1px);
    top: -229.3333333333px;
  }
  #article section.detail .inner.section_inner .content {
    /* -------------------------------------
       content_1
    */
    /* -------------------------------------
        content_2
    */
  }
  #article section.detail .inner.section_inner .content.content_1 {
    width: 100%;
    margin: 32px auto 0;
  }
  #article section.detail .inner.section_inner .content.content_1 h2.h2_2 {
    margin: 16px 0 0;
  }
  #article section.detail .inner.section_inner .content.content_1 h3.h3_4 {
    margin: 0 0 0 16px;
  }
  #article section.detail .inner.section_inner .content.content_1 h3.h3_4 span {
    font-size: 1rem;
  }
  #article section.detail .inner.section_inner .content.content_1 h3.h3_4 span a,
  #article section.detail .inner.section_inner .content.content_1 h3.h3_4 span a:link {
    padding: 3.2px 16px;
  }
  #article section.detail .inner.section_inner .content.content_1 p.date {
    font-size: 1.2rem;
  }
  #article section.detail .inner.section_inner .content.content_1.new .date:before {
    font-size: 1.2rem;
    padding: 4px;
    margin: 0 16px 0 0;
  }
  #article section.detail .inner.section_inner .content.content_2 {
    width: 100%;
    margin: 48px auto 0;
  }
  #article section.archive {
    margin: 0 auto 64px;
  }
  #article section.archive .inner {
    grid-template-columns: 1fr 320px 40px 320px 40px 320px 1fr;
  }
  #article section.archive .inner .content.new, #article section.archive .inner .content.poster, #article section.archive .inner .content.date {
    width: 100%;
    margin: 32px auto 0;
    /* -------------------------------------
        item
    */
  }
  #article section.archive .inner .content.new h3, #article section.archive .inner .content.poster h3, #article section.archive .inner .content.date h3 {
    padding: 0 0 2px;
    margin: 0 0 14px;
  }
  #article section.archive .inner .content.new h3 span.txt, #article section.archive .inner .content.poster h3 span.txt, #article section.archive .inner .content.date h3 span.txt {
    font-size: 2.1rem;
  }
  #article section.archive .inner .content.new h3 span.txt_2, #article section.archive .inner .content.poster h3 span.txt_2, #article section.archive .inner .content.date h3 span.txt_2 {
    font-size: 1.4rem;
    margin: 0 0 0 16px;
  }
  #article section.archive .inner .content.new h4 span, #article section.archive .inner .content.poster h4 span, #article section.archive .inner .content.date h4 span {
    font-size: 1.4rem;
  }
  #article section.archive .inner .content.new .item, #article section.archive .inner .content.poster .item, #article section.archive .inner .content.date .item {
    padding: 0 0 14px;
    margin: 0 auto 14px;
  }
  #article section.archive .inner .content.new .link, #article section.archive .inner .content.poster .link, #article section.archive .inner .content.date .link {
    width: 160px;
    margin: 24px 0 32px;
    position: relative;
  }
  #article section.archive .inner .content.new .link span, #article section.archive .inner .content.poster .link span, #article section.archive .inner .content.date .link span {
    color: hsl(0, 0%, 0%);
    font-size: 1.4rem;
    width: 160px;
    height: 36px;
    background: none;
    cursor: pointer;
  }
  #article section.archive .inner .content.new .link span::after, #article section.archive .inner .content.poster .link span::after, #article section.archive .inner .content.date .link span::after {
    content: "";
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid hsl(0, 0%, 20%);
    position: absolute;
    z-index: -2;
    bottom: 1px;
    left: 0;
  }
  #article section.archive .inner .content.new .link::after, #article section.archive .inner .content.poster .link::after, #article section.archive .inner .content.date .link::after {
    content: "";
    display: block;
    width: 100%;
    height: 0%;
    background: #7D7F80;
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  #article section.archive .inner .content.new .link:hover span, #article section.archive .inner .content.poster .link:hover span, #article section.archive .inner .content.date .link:hover span {
    color: hsl(0, 0%, 100%);
  }
  #article section.archive .inner .content.new .link:hover span::after, #article section.archive .inner .content.poster .link:hover span::after, #article section.archive .inner .content.date .link:hover span::after {
    opacity: 0;
  }
  #article section.archive .inner .content.new .link:hover::after, #article section.archive .inner .content.poster .link:hover::after, #article section.archive .inner .content.date .link:hover::after {
    animation-fill-mode: forwards;
    animation-name: motion-btn-link;
    animation-delay: 0s;
    animation-duration: 0.4s;
    animation-timing-function: ease-out;
  }
  #article section.archive .inner .content.new {
    grid-column: 2;
  }
  #article section.archive .inner .content.poster {
    grid-column: 4;
  }
  #article section.archive .inner .content.date {
    grid-column: 6;
  }
}/*# sourceMappingURL=blog.css.map */