/* 記事のページ（posts/[slug].astro）だけで読む。旧 import.css から旧の記事の作りに使うルールだけを PurgeCSS で抜き、.news-box の中に限ったもの（2026/10/25） */
.news-box *, .news-box ::before, .news-box ::after { -webkit-box-sizing: border-box;
  box-sizing: border-box }
.news-box * { font-size: inherit;
  line-height: inherit;
  letter-spacing: 0;
  font-weight: normal }
.news-box ::before, .news-box ::after { display: inline-block;
  text-decoration: inherit;
  vertical-align: inherit }
.news-box html { font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100% }
.news-box a { background-color: transparent }
.news-box a:active, .news-box a:hover { outline: 0 }
.news-box img { border: 0;
  vertical-align: bottom;
  max-width: 100% }
.news-box *:not(input):not(select):not(button):not(textarea):not(label):focus { outline: none }
.news-box li { list-style-type: none }
.news-box div, .news-box dl, .news-box dt, .news-box dd, .news-box ul, .news-box li, .news-box h4, .news-box h6, .news-box p { margin: 0;
  padding: 0 }
.news-box div, .news-box dl, .news-box dt, .news-box dd, .news-box ul, .news-box li, .news-box p { text-align: inherit }
.news-box h4, .news-box h6 { line-height: normal;
  font-weight: normal }
.news-box .button02 { width: 100%;
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  color: #333;
  border: 1px solid #FFD836;
  background: #FFD836;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.1em;
  line-height: 1.4;
  padding: 13px 15px;
  border-radius: 100px;
  -webkit-transition: .3s;
  transition: .3s;
  max-width: 343px;
  margin: 30px 0 }
.news-box .button02:hover { color: #000;
  background: #fff }
@media only screen and (max-width: 768px) { .news-box .button02 { padding: 8px 15px;
    margin: 20px 0 } }
.news-box .button02 { border-color: #B2B2B2;
  background: #B2B2B2;
  color: #fff }
.news-box .button02:hover { color: #B2B2B2 }
.news-box .mr10 { margin-right: 10px !important }
.news-box .mb15 { margin-bottom: 15px !important }
.news-box .mb30 { margin-bottom: 30px !important }
.news-box .mt60 { margin-top: 60px !important }
.news-box .mb95 { margin-bottom: 95px !important }
.news-box .center-text { text-align: center !important }
@media only screen and (max-width: 768px) { .news-box .mr5-tb { margin-right: 5px !important } }
.news-box .container { margin-right: auto;
  margin-left: auto;
  padding-left: 10px;
  padding-right: 10px;
  width: 1100px }
.news-box .container:before, .news-box .container:after { content: " ";
  display: table }
.news-box .container:after { clear: both }
@media only screen and (max-width: 768px) { .news-box .container { padding-left: 20px;
    padding-right: 20px } }
@media only screen and (max-width: 480px) { .news-box .container { padding-left: 20px;
    padding-right: 20px } }
@media only screen and (max-width: 768px) { .news-box .container { width: auto } }
@media only screen and (max-width: 480px) { .news-box .container { width: auto } }
@media only screen and (max-width: 768px) { .news-box .float > [class^="mr"], .news-box .float > [class*=" mr"] { margin-right: 0 !important } }
@media only screen and (max-width: 768px) { .news-box .float > [class*=" ml"] { margin-left: 0 !important } }
@media only screen and (min-width: 769px) { .news-box .float > [class^="mb"], .news-box .float > [class*=" mb"] { margin-bottom: 0 !important } }
.news-box .float:before, .news-box .float:after { content: " ";
  display: table }
.news-box .float:after { clear: both }
@media only screen and (max-width: 480px) { .news-box .float > [class^="mr"], .news-box .float > [class*=" mr"] { margin-right: 0 !important } }
@media only screen and (max-width: 480px) { .news-box .float > [class*=" ml"] { margin-left: 0 !important } }
@media only screen and (min-width: 769px) { .news-box .float > [class^="mb"], .news-box .float > [class*=" mb"] { margin-bottom: 0 !important } }
.news-box p, .news-box a, .news-box dt, .news-box dd, .news-box li { line-height: 2 }
.news-box a { text-decoration: underline;
  color: #009FD9 }
.news-box a:hover { text-decoration: none }
.news-box a:hover { color: #009FD9 }
.news-box h4 { position: relative;
  padding-left: 39px;
  line-height: 1.5;
  font-size: 24px;
  font-weight: bold }
.news-box h4:before { content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 29px;
  height: 24px;
  background: url(/pv/theme/pool_volunteer/media/img/h4.png) no-repeat center/contain }
@media only screen and (max-width: 768px) { .news-box h4 { font-size: 18px;
    padding-left: 30px } }
@media only screen and (max-width: 768px) { .news-box h4:before { width: 18px;
    height: 18px } }
.news-box .news-detail .news-detail-txt { margin: 15px 0 30px;
  line-height: 2 }
.news-box .news-detail > *:empty { display: table-cell;
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0;
  border: none;
  background: none }
.news-box .news-detail > *:empty:before, .news-box .news-detail > *:empty:after { display: none }
@-webkit-keyframes slideInEffect{
  0% {
    left: -100%
  }
  100% {
    left: 100%
  }
}
@keyframes slideInEffect{
  0% {
    left: -100%
  }
  100% {
    left: 100%
  }
}
@-webkit-keyframes slideIn{
  0% {
    opacity: 0
  }
  58% {
    opacity: 0
  }
  60% {
    opacity: 1
  }
  100% {
    opacity: 1
  }
}
@keyframes slideIn{
  0% {
    opacity: 0
  }
  58% {
    opacity: 0
  }
  60% {
    opacity: 1
  }
  100% {
    opacity: 1
  }
}
.news-box .news-list { border-top: 1px solid #e8e8e8 }
.news-box .news-list > li { border-bottom: 1px solid #e8e8e8;
  padding: 17px 0 }
.news-box .news-list time { letter-spacing: 0;
  line-height: 1.2;
  margin-right: 20px;
  color: #333;
  font-style: italic;
  font-size: 18px;
  font-weight: 600;
  font-family: "Barlow", sans-serif }
.news-box .news-list .tag { display: inline-block;
  background: #1d84db;
  line-height: 1;
  min-width: 60px;
  text-align: center;
  padding: 6px 16px;
  border-radius: 2em;
  color: #fff;
  font-size: 14px;
  font-weight: bold }
.news-box .news-list .tag.-news { background: #1db6db }
.news-box .news-list .tag.-report { background: #3ac690 }
.news-box .news-list a { margin-top: 5px;
  display: block;
  color: #000;
  font-weight: 500 }
.news-box .inner-container { max-width: 600px;
  margin: auto }
.news-box h4 { letter-spacing: 0.1em }
.news-box .news-list time { font-family: "Barlow", sans-serif;
  font-style: unset;
  color: #818181 }
.news-box .news-list span { width: 95px;
  height: 20px;
  border-radius: 10px;
  line-height: 8px;
  font-family: "Barlow", sans-serif;
  font-size: 13px }
.news-box .news-list a { text-decoration: none }
.news-box .news-list a:hover { text-decoration: underline }
.news-box .top-bdr { -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: none }
.news-box .sns-box { -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 25px 0 40px 0 }
.news-box .sns-box li { margin-right: 10px }
.news-box .sns-box li a { font-weight: bold;
  font-size: 12px;
  display: block;
  padding: 0 10px;
  height: 20px;
  background: #1877F2;
  line-height: 20px;
  color: #fff;
  text-decoration: none;
  border-radius: 3px }
.news-box h6 { font-weight: bold;
  font-size: 28px;
  border-top: 1px solid #E8E8E8;
  border-bottom: 1px solid #E8E8E8;
  padding: 30px 0;
  line-height: 1.7 }
/* 旧の記事に無い部品（PortableText の画像・埋め込み・表・中央寄せ） */
.news-box .news-detail figure { margin: 0 auto 2em; text-align: center; }
.news-box .news-detail > figure.emdash-image, .news-box .news-detail > figure.emdash-embed { margin-left: auto; margin-right: auto; }
.news-box .news-detail img { max-width: 100%; height: auto; margin-left: auto; margin-right: auto; }
.news-box .news-detail iframe { max-width: 100%; }
.news-box .news-detail .has-text-align-center { text-align: center; }
.news-box .news-detail table { width: 100%; border-collapse: collapse; margin-bottom: 2em; }
.news-box .news-detail th, .news-box .news-detail td { border: 1px solid #d0d0d0; padding: 8px 12px; text-align: left; }
.news-box .news-detail ul { margin-bottom: 1.4em; padding-left: 1.6em; }
.news-box .news-detail ul > li { list-style-type: disc; }
/* 記事ページ：カテゴリの印の文字を天地中央に（.news-list span の高さ20pxに余白6pxが重なり下へずれていた。/news/ のタブも .tag なので .news-detail に絞る） */
.news-box .news-detail .news-list .tag { display: flex; align-items: center; justify-content: center; height: 20px; padding: 0 16px; line-height: 1; }
/* 記事本文：太字を効かせる（frame.css・post.css の * { font-weight: normal } が strong を打ち消していた） */
.news-box .news-detail strong, .news-box .news-detail b { font-weight: bold; }
