@charset "UTF-8";

.main-area {
  padding-top: 48px;
}

.main-area.top .topics__Pagelist img,
.main-area.top img {
  width: 100%;
  height: 100%;
}

.main-area.top .topics__Pagelist .topics__Pagelist-ttl {
  margin-bottom: 6rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: 3.5rem;
  text-align: center;
  color: var(--color-font-default);
  font-family: var(--font-en);
  font-weight: var(--fw-regular);
}

.main-area.top .topics__Pagelist .topics__Pagelist-inner {
  margin: 0 auto 7.2rem;
  max-width: 1200px;
  padding: 0 4rem;
}


@media screen and (max-width: 767px) {
  .main-area {
    margin-bottom: 59px;
    padding: calc(0 * (100vw / 750)) calc(30* 100vw / 750) 0;
  }

  .main-area.top .topics__Pagelist-ttl {
    color: var(--color-font-default);
    font-family: var(--font-orpheus);
    font-weight: var(--fw-regular);
  }

  .main-area.top .topics__Pagelist .panel-footer .page.active a,
  .main-area.top .panel-footer .page.active a {
    font-family: var(--font-ja) !important;
    font-weight: 300;
    color: var(--color-font-default);
    width: calc(84*(100vw / 750));
    height: calc(84*(100vw / 750));
    line-height: calc(63 * (100vw / 750));
    font-size: calc(25 * (100vw / 750));
    letter-spacing: 0.08em;
  }
}


/* =========================================================
pagination レイアウト調整
=========================================================*/
.main-area.top .topics__Pagelist .panel-footer .page {
  font-family: var(--font-effra);
  font-weight: var(--fontweight-medium);
}

.main-area.top .topics__Pagelist .panel-footer .page a,
.main-area.top .block-news .panel-footer .page a {
  border-radius: 0;
  border: 1px solid var(--color-gray-200);
  color: var(--color-primary);
  font-size: 1.8rem;
}

.main-area.top .topics__Pagelist .panel-footer .page.active a,
.main-area.top .block-news .panel-footer .page.active a {
  color: var(--color-white);
  background: var(--color-primary);
}

.panel-footer .prev .txt,
.panel-footer .next .txt {
  font-family: var(--font-effra);
}

/* =========================================================
NEWS LIST レイアウト調整
=========================================================*/

.main-area.top.news-detail .block-inner {
  width: 89.333%;
}

.main-area.top .topics__Pagelist-group .list-group-item .ttl {
  font-family: var(--font-ja) !important;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  color: #251e1c;
  font-family: inherit;
  font-weight: 600;
  line-height: 1.5556;
  margin: 1.4rem 0;
}

.main-area.top .topics__Pagelist-group .list-group-item .date {
  font-family: var(--font-ja) !important;
  font-size: 11px;
  letter-spacing: 0.05em;
  font-family: inherit;
}



/* ===============================================### 
250131_hamazaki 追加
###=============================================== */
/* タブ */
.topics__Pagelist .tab_area {
  text-align: center;
  margin: 0 auto 4.6rem;
  width: 58rem;
  display: flex;
  gap: 3rem 3.4rem;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.topics__Pagelist input[type="radio"] {
  display: none;
}

.topics__Pagelist .tab_area label {
  line-height: 1.5;
  margin: 0;
  font-size: 14px;
  letter-spacing: 0.025em;
  font-weight: 500;
  cursor: pointer;
  transition: 0.2s opacity ease;
  width: 6.8rem;
}

.topics__Pagelist .feature-Wrap div.feature-list.tab_panel {
  display: none;
}

/* ラベルの共通スタイル */
.topics__Pagelist .tab_area label {
  border-bottom: 1px solid transparent;
  white-space: nowrap;
}

.topics__Pagelist .tab_area label {
  font-weight: 400;
}

/* checked時のスタイルをまとめて指定 */
#tab1:checked~.tab_area .tab1_label span,
#tab2:checked~.tab_area .tab2_label span,
#tab3:checked~.tab_area .tab3_label span,
#tab4:checked~.tab_area .tab4_label span,
#tab5:checked~.tab_area .tab5_label span,
#tab6:checked~.tab_area .tab6_label span,
#tab7:checked~.tab_area .tab7_label span,
#tab8:checked~.tab_area .tab8_label span,
#tab9:checked~.tab_area .tab9_label span,
#tab10:checked~.tab_area .tab10_label span,
#tab11:checked~.tab_area .tab11_label span,
#tab12:checked~.tab_area .tab12_label span {
  border-bottom: 1px currentColor solid;
  width: max-content;
  margin: 0 auto;
  display: block;
}

.main-area.top .topics__Pagelist .topics__Pagelist-Pagelist {
  display: block;
  margin-bottom: 5rem;
}

/* パネルの共通スタイル */
.topics__Pagelist .panel_area>div,
/* 直接の子要素に適用 */
.topics__Pagelist .news_panel_area>div {
  /* 直接の子要素に適用 */
  display: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 5rem 4rem;
  margin-bottom: 5rem;
}

/* checked時のパネル表示 */
#tab1:checked~.panel_area #panel1,
#tab1:checked~.news_panel_area #panel1,
#tab2:checked~.panel_area #panel2,
#tab2:checked~.news_panel_area #panel2,
#tab3:checked~.panel_area #panel3,
#tab3:checked~.news_panel_area #panel3,
#tab4:checked~.panel_area #panel4,
#tab4:checked~.news_panel_area #panel4,
#tab5:checked~.panel_area #panel5,
#tab5:checked~.news_panel_area #panel5,
#tab6:checked~.panel_area #panel6,
#tab6:checked~.news_panel_area #panel6,
#tab7:checked~.panel_area #panel7,
#tab7:checked~.news_panel_area #panel7,
#tab8:checked~.panel_area #panel8,
#tab8:checked~.news_panel_area #panel8,
#tab9:checked~.panel_area #panel9,
#tab9:checked~.news_panel_area #panel9,
#tab10:checked~.panel_area #panel10,
#tab10:checked~.news_panel_area #panel10,
#tab11:checked~.panel_area #panel11,
#tab11:checked~.news_panel_area #panel11,
#tab12:checked~.panel_area #panel12,
#tab12:checked~.news_panel_area #panel12 {
  display: grid;
  /* display:gridを共通化 */
}

@media screen and (max-width: 767px) {
  .topics__Pagelist .tab_area {
    margin: 0 0 calc(30* (100vw /375));
    width: auto;
    overflow-x: scroll;
    overflow-y: hidden;
    display: flex;
    scrollbar-width: none;
    gap: 0;
    flex-direction: row;
    flex-wrap: nowrap;
    /* justify-content: flex-start; */
    justify-content: center;
  }

  .topics__Pagelist .tab_area label {
    margin: 0 17px;
    font-size: 14px;
    letter-spacing: 0.025em;
    font-weight: 500;
    cursor: pointer;
    transition: 0.2s opacity ease;
    font-weight: 400;
  }
}

@media screen and (max-width: 767px) {
  .main-area.top .topics__Pagelist .topics__Pagelist-inner {
    margin: 0 auto;
    padding: 0;
    max-width: auto;
  }

  .topics__Pagelist .panel_area>div,
  .topics__Pagelist .news_panel_area>div {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(100 * (100vw / 750)) calc(20 * (100vw / 750));
    margin-bottom: calc(100*(100vw / 750));
  }
}

@media screen and (max-width: 767px) {
  .main-area.top .topics__Pagelist-group .news_panel_area .list-group-item .txt {
    margin-left: calc(20 * (100vw / 750));
  }

  .main-area.top .topics__Pagelist-group .news_panel_area .list-group-item .ttl {
    font-size: calc(24 * (100vw / 750));
    margin: calc(20 * (100vw / 750)) 0;
  }
}

/* ===============================================
* TOPICS FETURE *
=============================================== */
.main-area.topics-feature .topics__Pagelist .topics__Pagelist-Pagelist {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 5rem 4rem;
  margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {

  .main-area.topics-feature.top .topics__Pagelist-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: calc(30 * (100vw / 750)) calc(10 * (100vw / 750));
    margin-bottom: calc(50 * (100vw / 750));
  }
}