.elementor-2573 .elementor-element.elementor-element-48b58cf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-2573 .elementor-element.elementor-element-7c0fbd7 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-2573 .elementor-element.elementor-element-7c0fbd7 .elementor-heading-title{font-size:42px;font-weight:600;}.elementor-2573 .elementor-element.elementor-element-73da403 > .elementor-widget-container{padding:2px 0px 0px 0px;}.elementor-2573 .elementor-element.elementor-element-73da403 .elementor-heading-title{font-size:18px;font-weight:500;}.elementor-2573 .elementor-element.elementor-element-8af53e7{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-2573 .elementor-element.elementor-element-8af53e7 > .elementor-widget-container{margin:80px 0px 0px 0px;}.elementor-2573 .elementor-element.elementor-element-8af53e7 .elementor-divider-separator{width:100%;}.elementor-2573 .elementor-element.elementor-element-8af53e7 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-2573 .elementor-element.elementor-element-02eb251{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-2573 .elementor-element.elementor-element-02eb251.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-2573 .elementor-element.elementor-element-02eb251{--width:101.829%;}}@media(max-width:1024px){.elementor-2573 .elementor-element.elementor-element-48b58cf{--padding-top:40px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-2573 .elementor-element.elementor-element-8af53e7 > .elementor-widget-container{margin:40px 0px 0px 0px;}}@media(max-width:767px){.elementor-2573 .elementor-element.elementor-element-48b58cf{--padding-top:40px;--padding-bottom:10px;--padding-left:15px;--padding-right:15px;}.elementor-2573 .elementor-element.elementor-element-7c0fbd7 .elementor-heading-title{font-size:26px;}.elementor-2573 .elementor-element.elementor-element-73da403 > .elementor-widget-container{padding:5px 0px 0px 0px;}.elementor-2573 .elementor-element.elementor-element-73da403 .elementor-heading-title{font-size:14px;}.elementor-2573 .elementor-element.elementor-element-8af53e7 > .elementor-widget-container{margin:40px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-cc5e5d1 */.table-wrapper {
  padding: 20px;
  font-family: "Noto Serif JP", serif;
  font-size: 14px;
  color: #333;
  max-width: 1200px;   /* 表の幅の上限 */
  margin: 0 auto;
}

.table-wrapper h2 {
  font-size: 28px;
  margin-bottom: 20px;
  font-weight: bold;
}

.table-wrapper h3 {
  font-size: 16px;
  margin: 30px 0 10px;
  font-weight: bold;
}

.table-wrapper .note {
  font-size: 13px;
  color: #666;
  margin-left: 10px;
}

.table-scroll {
  overflow-x: auto;  /* 常に横スクロール可能 */
  margin-bottom: 20px;
}

.table-scroll table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;   /* 列幅固定 */
  min-width: 1000px;     /* 最低幅を広めに確保 */
}

.table-scroll th,
.table-scroll td {
  border: 1px solid #999;
  padding: 8px 15px;     
  text-align: left;
  white-space: nowrap;   /* 常に折り返さずスクロール */
  font-weight: 500;
}

.table-scroll th {
  background: #f2f2f2;
  font-weight: 700;
}

/* タブレット: 481px〜1024px */
@media (min-width: 481px) and (max-width: 1024px) {
  .table-wrapper h2 {
    font-size: 22px;
  }
  .table-scroll table {
    min-width: 900px;
  }
  .table-scroll th,
  .table-scroll td {
    padding: 6px 12px;
  }
}

/* スマホ: 〜480px */
@media (max-width: 480px) {
  .table-wrapper {
    font-size: 13px;
    padding: 10px;
  }
  .table-wrapper h2 {
    font-size: 16px;
  }
  .table-wrapper h2 span.date {
    display: block;
    font-size: 14px;
    margin-top: 4px;
  }
  .table-scroll table {
    min-width: 800px;     /* スマホでもスクロールできるように確保 */
    table-layout: fixed;
  }
  .table-scroll th,
  .table-scroll td {
    padding: 4px 10px;  
    white-space: nowrap;   /* 折り返さずスクロール */
  }
}/* End custom CSS */