@charset "utf-8";
/* heading margin bottom */
/*.ds-heading--md{margin-bottom:16px;}
.ds-heading--sm{margin-bottom:16px;}
.ds-heading--xs{margin-bottom:16px;}
.ds-heading--xxs{margin-bottom:12px;}
@media (min-width: 768px){
.ds-heading--md{margin-bottom:24px;}
.ds-heading--sm{margin-bottom:24px;}
.ds-heading--xs{margin-bottom:24px;}
.ds-heading--xxs{margin-bottom:16px;}
}
*/
/* 外枠（幅制御のみ） */
.com-colset {
  --col-gap: clamp(24px, 2.5vw, 32px);
  box-sizing: border-box;
  margin-inline: auto;
  max-width: 1096px;
}

/* 行（ここにガター） */
.com-colset .ds-column__container {
  display: flex;
  flex-wrap: wrap;
  gap: var(--col-gap);
  align-items: flex-start;
  grid-template-columns: initial;
}

/* AEM標準の margin-left を無効化（右側は触らない） */
.com-colset [class*="ds-column--col"] .ds-column__item,
.com-colset .ds-column__container[class*="ds-column--col"] .ds-column__item {
  min-width: 0;
  flex-shrink: 1;
  box-sizing: border-box;
}

/* PC比率（gapを差し引き） */
@media (min-width: 768px) {
  /* 70:30 */
  .com-colset.layout-pc70-30 .ds-column__container > .ds-column__item:first-child { flex: 0 0 calc(70% - (var(--col-gap)/2)); max-width: calc(70% - (var(--col-gap)/2)); }
  .com-colset.layout-pc70-30 .ds-column__container > .ds-column__item:last-child  { flex: 0 0 calc(30% - (var(--col-gap)/2)); max-width: calc(30% - (var(--col-gap)/2)); }

  /* 30:70 */
  .com-colset.layout-pc30-70 .ds-column__container > .ds-column__item:first-child { flex: 0 0 calc(30% - (var(--col-gap)/2)); max-width: calc(30% - (var(--col-gap)/2)); }
  .com-colset.layout-pc30-70 .ds-column__container > .ds-column__item:last-child  { flex: 0 0 calc(70% - (var(--col-gap)/2)); max-width: calc(70% - (var(--col-gap)/2)); }

  /* 80:20 */
  .com-colset.layout-pc80-20 .ds-column__container > .ds-column__item:first-child { flex: 0 0 calc(80% - (var(--col-gap)/2)); max-width: calc(80% - (var(--col-gap)/2)); }
  .com-colset.layout-pc80-20 .ds-column__container > .ds-column__item:last-child  { flex: 0 0 calc(20% - (var(--col-gap)/2)); max-width: calc(20% - (var(--col-gap)/2)); }

  /* 20:80 */
  .com-colset.layout-pc20-80 .ds-column__container > .ds-column__item:first-child { flex: 0 0 calc(20% - (var(--col-gap)/2)); max-width: calc(20% - (var(--col-gap)/2)); }
  .com-colset.layout-pc20-80 .ds-column__container > .ds-column__item:last-child  { flex: 0 0 calc(80% - (var(--col-gap)/2)); max-width: calc(80% - (var(--col-gap)/2)); }
}

/* SP（縦積み／中央寄せ／2カラム維持） */
@media (max-width: 767px) {
  .com-colset .ds-column__container { flex-direction: column; row-gap: 16px; } /* SPガター=16px想定 */

  /* 上段70%中央寄せ（PC2/SP1） */
  .com-colset.layout-sp70-center .ds-column__container > .ds-column__item:first-child { width: 70%; margin-inline: auto; }
  .com-colset.layout-sp70-center .ds-column__container > .ds-column__item:last-child  { width: 100%; }

  /* SPでも2カラム維持（50/50） */
  .com-colset.layout-sp2 .ds-column__container { flex-direction: row; flex-wrap: wrap; column-gap: var(--col-gap); row-gap: var(--col-gap); }
  .com-colset.layout-sp2 .ds-column__container > .ds-column__item { flex: 0 0 calc(50% - (var(--col-gap)/2)); max-width: calc(50% - (var(--col-gap)/2)); }
}

/* 交互反転（PC時） */
.com-colset.reverse .ds-column__container { flex-direction: row-reverse; }

/* リンクボタンスタイル上書き */
.ds-button__trigger {
  border-radius: 24px;
  line-height: 1.3;
}

/* heading */
.ds-heading{
	margin-bottom:0px;
}
.ds-heading--lg,.ds-heading__container--lg {
	margin-top: 32px;
	margin-bottom: 16px;
}
.ds-heading--md,.ds-heading__container--md {
	margin-top: 24px
}
.ds-heading--sm,.ds-heading__container--sm {
	margin-top: 24px
}
.ds-heading--xs,.ds-heading__container--xs {
	margin-top: 16px
}
.ds-heading--xxs,.ds-heading__container--xxs {
	margin-top: 8px
}
@media (min-width: 768px) {
	.ds-heading--lg,.ds-heading__container--lg {
		margin-top: 48px
	}
	.ds-heading--md,.ds-heading__container--md {
		margin-top: 40px
	}
	.ds-heading--sm,.ds-heading__container--sm {
		margin-top: 32px
	}
	.ds-heading--xs,.ds-heading__container--xs {
		margin-top: 24px
	}
	.ds-heading--xxs,.ds-heading__container--xxs {
		margin-top: 16px
	}
}