/* ===================== NEWS SECTION (light) ===================== */
.newssec{
  --ink:#15110f;
  position:relative;
  background:#f7f5f1;
  color:var(--ink);
  padding:clamp(4.5rem,11vh,8rem) 0 clamp(3.5rem,7vh,5rem);
  overflow:hidden;
}
.newssec__inner{
  max-width:1320px;margin:0 auto;
  padding:0 clamp(1.4rem,5vw,5rem);
}
.newssec__head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:2rem;flex-wrap:wrap;
  margin-bottom:clamp(2.4rem,5vh,3.6rem);
}
.newssec__eyebrow{
  display:flex;align-items:center;gap:.8rem;
  font-family:"Oswald",sans-serif;
  font-size:.72rem;letter-spacing:.34em;color:var(--red);
  margin-bottom:1rem;
}
.newssec__eyebrow::before{content:"";width:34px;height:1px;background:var(--red)}
.newssec__title{
  font-family:"Anton","Oswald",sans-serif;font-weight:400;
  text-transform:uppercase;line-height:.9;letter-spacing:.01em;
  font-size:clamp(2.8rem,7vw,5.4rem);
  margin:0 0 1.2rem;color:var(--ink);
}
.newssec__title em{font-style:normal;color:var(--red)}
.newssec__desc{
  font-family:"Noto Sans JP",sans-serif;font-weight:300;
  font-size:clamp(.8rem,1.05vw,.92rem);line-height:1.9;letter-spacing:.05em;
  color:rgba(20,17,15,.66);margin:0;
}
.newssec__all{
  display:inline-flex;align-items:center;gap:2.2rem;justify-content:space-between;
  min-width:280px;padding:1rem 1.6rem;
  border:1px solid rgba(20,17,15,.35);
  font-family:"Oswald",sans-serif;font-size:.8rem;letter-spacing:.2em;
  color:var(--ink);text-decoration:none;
  transition:background .35s,color .35s,border-color .35s;
}
.newssec__all svg{transition:transform .35s cubic-bezier(.2,.7,.3,1)}
.newssec__all:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.newssec__all:hover svg{transform:translateX(8px)}

/* list */
.newssec__list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(20,17,15,.14)}
.nrow{border-bottom:1px solid rgba(20,17,15,.14)}
.nrow__link{
  display:grid;
  grid-template-columns:auto 1px auto 1fr auto;
  align-items:center;
  gap:clamp(1rem,2.4vw,2.2rem);
  padding:clamp(1.4rem,2.6vh,1.9rem) .4rem;
  text-decoration:none;color:var(--ink);
  transition:background .3s;
}
.nrow__link:hover{background:rgba(20,17,15,.03)}
.nrow__date{
  font-family:"Oswald",sans-serif;font-size:.92rem;letter-spacing:.1em;
  color:rgba(20,17,15,.85);white-space:nowrap;
}
.nrow__sep{width:1px;height:30px;background:rgba(20,17,15,.18)}
.nrow__cat{
  font-family:"Oswald",sans-serif;font-size:.66rem;letter-spacing:.18em;
  color:var(--red);
  border:1px solid rgba(196,0,0,.55);
  padding:.34em .9em;white-space:nowrap;text-align:center;min-width:84px;
}
.nrow__body{min-width:0}
.nrow__title{
  font-family:"Noto Sans JP",sans-serif;font-weight:700;
  font-size:clamp(.95rem,1.35vw,1.18rem);letter-spacing:.04em;
  color:var(--ink);margin:0;
  transition:color .3s;
}
.nrow__desc{
  font-family:"Noto Sans JP",sans-serif;font-weight:300;
  font-size:.8rem;line-height:1.7;letter-spacing:.03em;
  color:rgba(20,17,15,.55);margin:.45rem 0 0;
}
.nrow__arrow{
  color:rgba(20,17,15,.6);display:flex;
  transition:transform .35s cubic-bezier(.2,.7,.3,1),color .3s;
}
.nrow__link:hover .nrow__title{color:var(--red)}
.nrow__link:hover .nrow__arrow{transform:translateX(8px);color:var(--red)}

/* scroll cue */
.newssec__scroll{
  margin-top:clamp(2.5rem,6vh,4rem);
  display:flex;flex-direction:column;align-items:center;gap:.8rem;
}
.newssec__scroll i{
  position:relative;width:1px;height:50px;background:rgba(20,17,15,.2);overflow:hidden;
}
.newssec__scroll i::after{
  content:"";position:absolute;left:0;top:0;width:100%;height:40%;background:var(--ink);
  animation:newsScroll 2s cubic-bezier(.6,0,.2,1) infinite;
}
@keyframes newsScroll{0%{transform:translateY(-100%)}60%,100%{transform:translateY(250%)}}
.newssec__scroll span{
  font-family:"Oswald",sans-serif;font-size:.6rem;letter-spacing:.34em;
  color:rgba(20,17,15,.5);
}

/* ===================== RESPONSIVE ===================== */
@media(max-width:760px){
  .newssec__all{min-width:0;width:100%;margin-top:.5rem}
  .nrow__link{
    grid-template-columns:auto auto 1fr auto;
    grid-template-areas:
      "date cat body arrow";
    gap:.9rem 1rem;
  }
  .nrow__sep{display:none}
  .nrow__date{grid-area:date}
  .nrow__cat{grid-area:cat;min-width:0}
  .nrow__body{grid-area:body}
  .nrow__arrow{grid-area:arrow}
  .nrow__desc{display:none}
}
@media(max-width:520px){
  .nrow__link{
    grid-template-columns:auto 1fr auto;
    grid-template-areas:
      "date cat arrow"
      "body body body";
    row-gap:.6rem;
  }
}
@media(prefers-reduced-motion:reduce){
  .newssec__scroll i::after{animation:none}
}
