/* =========================================================
   NEWS 中ページ (news.html) 専用スタイル
   ・元は coupon のコピーだったが、クーポンと切り離して独立化(news_page / nw_*)。
   ・レイアウト/タイトル/レスポンシブは common.css の中ページ共通(coupon/access)を
     news 用に複製したもの。相違点は上部パディング 160→80 と、黒バー(cp_bar)非搭載。
   ・白背景・ヘッダー色・footer 等の共通は引き続き common.css / style.css。
   ========================================================= */

.news_page{
  display:flex;
  align-items:flex-start;
  width:100%;
  padding:80px calc(var(--navw,480px) + 40px) 80px 0;
}

.nw_title{
  flex:0 0 480px;
  padding:232px 0 0 104px;
  display:flex;
  flex-direction:column-reverse;
  align-items:flex-start;
  align-self:flex-start;
  position:sticky;
  top:160px;
}
.nw_title_en{
  margin:0;
  font-family:'Anton',sans-serif;
  font-weight:400;
  font-size:80px;
  letter-spacing:.1em;
  line-height:1;
  color:#000;
  text-transform:uppercase;
}
.nw_title_jp{
  margin:0 0 16px;
  font-family:'Zen Kaku Gothic New',sans-serif;
  font-weight:700;
  font-size:24px;
  letter-spacing:.1em;
  line-height:1;
  color:#000;
}

.nw_list{
  flex:0 0 840px;
  margin-inline:auto;
  min-width:0;
}

.nw_item{
  margin-bottom:80px;
}
.nw_item:last-child{margin-bottom:0;}
.nw_item[id]{scroll-margin-top:120px;}

.nw_img{
  display:block;
  width:448px;
  max-width:100%;
  height:auto;
  margin:64px auto 0;
}
.nw_table{
  width:100%;
  margin:64px 0 0;
}
.nw_row{
  display:flex;
  align-items:center;
  border-bottom:1px solid #000;
  min-height:88px;
  padding:24px 0;
}
.nw_row:last-child{
  border-bottom:none;
}
.nw_row dt{
  width:144px;
  flex-shrink:0;
  text-align:center;
  font-family:'Zen Kaku Gothic New',sans-serif;
  font-weight:700;
  font-size:16px;
  letter-spacing:0;
  color:var(--c-about-label);/* ore=オレンジ(トップABOUT dtと同じトークン。default/whiは黒) */
}
.nw_row dd{
  padding-left:40px;
  font-family:'Zen Kaku Gothic New',sans-serif;
  font-weight:700;
  font-size:16px;
  letter-spacing:0;
  color:#000;
}

@media (max-width:1800px){
  .news_page{
    align-items:flex-start;
    padding:80px calc(var(--navw) + 40px) 80px 40px;
  }
  .nw_title{
    flex:0 0 auto;
    padding:0;
    margin-right:40px;
    margin-bottom:40vh;
    align-items:flex-start;
    top:calc(50vh - 60px);
  }
  .nw_list{
    flex:1 1 0;
    min-width:0;
    width:auto;
    max-width:none;
    margin:0;
  }
}
@media (max-width:1024px){
  .news_page{
    flex-direction:column;
    align-items:center;
    padding:160px 40px 80px;
  }
  .nw_title{
    flex:0 0 auto;
    width:100%;
    margin:0;
    padding:0;
    text-align:left;
    position:static;
    align-self:auto;
    align-items:flex-start;
  }
  .nw_list{
    flex:0 0 auto;
    width:100%;
    max-width:none;
    margin:0;
  }
}
@media (max-width:768px){
  .news_page{
    padding:160px 16px 80px;
  }
  .nw_row{
    flex-direction:column;
    align-items:stretch;
    padding:16px 0;
  }
  .nw_row dt{
    width:auto;
    text-align:left;
  }
  .nw_row dd{
    padding-left:0;
    margin-top:16px;
    text-align:right;
  }
  .nw_row dd.nw_msg{
    text-align:left;
  }
}
