@charset "UTF-8";
/* //////////////////////////////////////////////////

Title         : news_template_v2.css

Created       : 2024-10-25

////////////////////////////////////////////////// */

/* パンくず */
#breadcrumbs {
  margin: 0 auto;
}
#breadcrumbs ol {
  padding: 0;
}
@media screen and (max-width: 767px) {
  #breadcrumbs {
    width: calc(710 *(100vw / 750));
    padding-bottom: calc(40 *(100vw / 750));
  }
}
@media screen and (min-width: 768px) {
  #breadcrumbs {
    width: min(95%, 1200px);
    margin-top: 5rem;
    padding: 0 50px;
  }
}

.p-news {
  --container-width: 100%; /* コンテンツ幅 */
  --container-padding: 0px; /* 左右の余白 */

  --color-text-primary: #000;
  --color-text-secondary: #fff;

  --color-text-red: #fe0002;
  --color-text-gray: #808080;

  width: min(100%, var(--container-width, 100%) + (var(--container-padding, 0px) * 2));
  padding: 0 var(--container-padding, 0px);
  margin: 0 auto;
  font-size: var(--text-base);
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: normal;
  word-break: break-all;
}
/* News Header */
.p-news__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.p-news__header-category {
  color: var(--color-news-category, #808080);
}
.p-news__header-title {
}
.p-news__header-publishedAt {
  color: var(--color-news-publishedAt, #595757);
}
.p-news__header-inner > * + * {
  margin-top: 2em;
}
.p-news__header-thumbnail {
  width: 100%;
  margin: 0 auto;
}
.p-news__header-thumbnail.--md {
  width: 85%;
}
.p-news__main-heading {
  font-size: var(--text-lg);
}
.p-news__main-lead {
  font-size: var(--text-base);
}
/* News Body */
.p-news__body {
  text-align: center;
}
:is(.p-news__body, .p-news__section) > .--md {
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
:is(.p-news__body, .p-news__section) > .--sm {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
:is(.p-news__body, .p-news__section) > .--xxs {
  width: 30%;
  margin-left: auto;
  margin-right: auto;
}
.p-news__body .p-news__section-heading {
  font-size: var(--text-lg);
  text-align: center;
  font-weight: 600;
}
/* 見出し（黒背景） */
.p-news__body .p-news__section-heading[data-type="fill"] {
  color: var(--color-text-secondary);
  background-color: var(--color-text-primary);
}
.p-news__body .p-news__image-wrap {
  display: grid;
  gap: 14px;
}
/* 縦並び（SP/PC共通） */
.p-news__body .p-news__image-wrap[data-type="is-vertical"] {
  grid-template-columns: 100%;
}
/* 横並び（SP/PC共通） */
.p-news__body .p-news__image-wrap[data-type="is-horizontal"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
/* YouTube埋め込み */
.p-news__body .p-news__image-wrap [data-type="youtube"] iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: var(--ratio, 16 / 9)
}
.p-news__body .p-news__image-wrap figcaption {
  margin-top: 0.5em;
}
.p-news__section {
  padding: 3em 0;
}
.p-news__section > * + * {
  margin-top: 2em;
}
.p-news__button {
  display: grid;
  place-items: center;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  transition: opacity var(--transition-default, 0.3s ease);
}
.p-news__button[data-type="fill"] {
  color: var(--color-text-secondary);
  background-color: var(--color-text-primary);
}
.p-news__button[data-type="outline"] {
  color: var(--color-text-primary);
  border: 1px solid currentColor;
}
/* Utility */
.p-news .u-text-base {
  font-size: var(--text-base);
}
.p-news .u-text-lg {
  font-size: var(--text-lg);
}
.p-news .u-text-left {
  text-align: left;
}
.p-news .u-text-center {
  text-align: center;
}
.p-news .u-text-regular {
  font-weight: 400;
}
.p-news .u-text-bold {
  font-weight: 600;
}
.p-news .u-text-red {
  color: var(--color-text-red);
}
.p-news .u-text-underline {
  text-decoration: underline;
}
.p-news .u-text-link {
  display: inline;
  text-decoration: underline;
  transition: opacity var(--transition-default, 0.3s ease);
}
/* Footer Link */
.p-news__footer-list-link {
  text-align: right;
  font-weight: 500;
  letter-spacing: 0.08em;
}
.p-news__footer-list-link a {
  display: inline-block;
}
/* --- for small viewport --- */
@media screen and (max-width: 767px) {
  .p-news {
    --container-padding: calc(15 *(100vw / 375));
    --text-base: calc(14 *(100vw / 375));
    --text-lg: calc(18 *(100vw / 375));

    padding-top: calc(40 *(100vw / 375));
    padding-bottom: calc(20 *(100vw / 375));
  }
  /* News Header */
  .p-news__header {
    row-gap: calc(10 *(100vw / 375));
    font-size: calc(11 *(100vw / 375));
  }
  .p-news__header-title {
    font-size: calc(20 *(100vw / 375));
  }
  /* News Body */
  .p-news__body {
    margin-bottom: calc(40 *(100vw / 375));
  }
  .p-news__body .p-news__section-heading {
    padding: calc(5 *(100vw / 375)) calc(10 *(100vw / 375));
  }
  /* SP縦並び / PC横並び */
  .p-news__body .p-news__image-wrap[data-type="is-responsive-horizontal"] {
    grid-template-columns: 100%;
  }
  .p-news__button {
    min-width: calc(210 *(100vw / 375));
    min-height: calc(33 *(100vw / 375));
    padding: calc(5 *(100vw / 375)) calc(10 *(100vw / 375));
  }
  /* Footer Link */
  .p-news__footer-list-link {
    font-size: calc(11 *(100vw / 375));
  }
}
/* --- for large viewport --- */
@media screen and (min-width: 768px) {
  .p-news {
    --container-width: 800px;
    --container-padding: 2rem;
    --text-base: 1.4rem;
    --text-lg: 1.8rem;
    
    padding-top: 6rem;
    padding-bottom: 10rem;
  }
  /* News Header */
  .p-news__header {
    row-gap: 1rem;
    font-size: 1.1rem;
  }
  .p-news__header-title {
    font-size: 2.2rem;
  }
  /* News Body */
  .p-news__body {
    margin-bottom: 11rem;
  }
  .p-news__body .p-news__section-heading {
    padding: 0.5rem 1rem;
  }
  /* SP縦並び / PC横並び */
  .p-news__body .p-news__image-wrap[data-type="is-responsive-horizontal"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .p-news__button {
    min-width: 21rem;
    min-height: 3.3rem;
    padding: .5rem 1rem;
  }
  /* Footer Link */
  .p-news__footer-list-link {
    font-size: 1.4rem;
  }
}
/* for hoverable device */
@media (hover: hover) {
  .p-news__button:hover,
  .p-news .u-text-link:hover {
    opacity: var(--hover-opacity, 0.7);
  }
}
