/* 画像横並び表示 */
.is-flex .paragraph-content p:has(img) {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  width: 100%;
}

.is-flex .paragraph-content .field__item:has(figure) {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
	max-width: 100%;
}

/* デフォルト（3枚以上）*/
.is-flex .paragraph-content p:has(img) img{
  width: 100%;
  max-width: 300px;
  object-fit: cover;
}

/* 4枚以上の時 */
.is-flex .paragraph-content p:has(img + img + img + img) img,
.is-flex .paragraph-content .field__item:has(figure + figure + figure + figure) figure img {
  max-width: 280px;
}

/* 2枚の時 */
.is-flex .paragraph-content p:has(img):not(:has(img + img + img)) img {
  max-width: 500px;
}

@media (max-width: 768px) {
  .is-flex .paragraph-content p:has(img),
    .is-flex .paragraph-content .field__item:has(img) {
    flex-wrap: wrap;
  }
  
  .is-flex .paragraph-content .field__item:has(figure) {
  	flex-wrap: wrap;
  }
}

/* テキストノードがある場合はstart・wrapなし */
.is-flex .paragraph-content p:has(img):has(strong),
.is-flex .paragraph-content p:has(img):has(span),
.is-flex .paragraph-content p:has(img):has(a),
.is-flex .paragraph-content .field__item:has(img):has(strong),
.is-flex .paragraph-content .field__item:has(img):has(span),
.is-flex .paragraph-content .field__item:has(img):has(a) {
  justify-content: flex-start;
  flex-wrap: nowrap;
}

/* テキストと画像混在時は768px以下でwrap */
@media (max-width: 768px) {
  .is-flex .paragraph-content p:has(img):has(strong),
  .is-flex .paragraph-content p:has(img):has(span),
  .is-flex .paragraph-content p:has(img):has(a),
  .is-flex .paragraph-content .field__item:has(img):has(strong),
  .is-flex .paragraph-content .field__item:has(img):has(span),
  .is-flex .paragraph-content .field__item:has(img):has(a) {
    flex-wrap: wrap;
  }
}

/* figure img設定 */
.is-flex .paragraph-content .field__item:has(figcaption) {
  text-align: center;
}

/* iframe 設定 */
.paragraph-content .field__item p:has(iframe) {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}


/* リストスタイル適用 */
.news-layout-wrapper menu,
.news-layout-wrapper ol,
.news-layout-wrapper ul,
.columns-layout-wrapper menu,
.columns-layout-wrapper ol,
.columns-layout-wrapper ul,
.cases-layout-wrapper menu,
.cases-layout-wrapper ol,
.cases-layout-wrapper ul {
    list-style: revert;
    margin: 0 40px 0;
}

.news-layout-wrapper li,
.columns-layout-wrapper li,
.cases-layout-wrapper li {
  margin-bottom: 1rem;
}

/* aタグ表示調整 */
.news-layout-wrapper .news-main-wrapper a,
.columns-layout-wrapper .columns-main-wrapper a,
.cases-layout-wrapper .cases-main-wrapper a {
	color: #0187CE;
	word-break: break-all;
	text-decoration: underline;
}

.cases-layout-wrapper .cases-main-wrapper .intro-service a {
	text-decoration: none;
}

.news-layout-wrapper .news-main-wrapper a:hover,
.columns-layout-wrapper .columns-main-wrapper a:hover,
.cases-layout-wrapper .cases-main-wrapper a:hover {
	text-decoration: none;
}

/* テーブルデザイン */
.field__item:has(table) {
  width: 100%;
  overflow-x: visible;
  padding-bottom: 20px;
}

.table {
  width: 100%;
  border-collapse: collapse;
}

.table thead,
.table tbody tr th {
  background-color: #F4F4F4;
}

.table th,
.table td {
  padding: 20px;
  border: solid 1px #C8C8C8;
}

.table th {
  white-space: nowrap;
}

/* スクロールバーの常時表示 */
/*.table::-webkit-scrollbar {*/
/*  height: 6px;*/
/*}*/

/*.table::-webkit-scrollbar-track {*/
/*  background: #C8C8C8;*/
/*}*/

/*.table::-webkit-scrollbar-thumb {*/
/*  background: #F1F1F1;*/
/*  border-radius: 3px;*/
/*}*/

/* SP時のみスクロール */
@media (max-width: 768px) {
  .field__item:has(table) {
    overflow-x: scroll;
  }

  .table {
    width: max-content;
    min-width: 100%;
  }
}

@media (min-width: 769px) and (max-width: 1240px) {
  .field__item:has(table) {
    overflow-x: hidden;
  }
  .table {
    width: 100%;
  }
}

