.elementor-16571 .elementor-element.elementor-element-52116b8a{--display:flex;--min-height:500px;--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:0px;--padding-left:0px;--padding-right:0px;}.elementor-16571 .elementor-element.elementor-element-52116b8a:not(.elementor-motion-effects-element-type-background), .elementor-16571 .elementor-element.elementor-element-52116b8a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://myicl.jp/wp-content/uploads/2025/10/品川近視クリニック.jpg");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-16571 .elementor-element.elementor-element-7eb9f407{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16571 .elementor-element.elementor-element-759f304c{--spacer-size:50px;}.elementor-16571 .elementor-element.elementor-element-5fb9c23d{--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;--gap:4px 4px;--row-gap:4px;--column-gap:4px;--margin-top:0%;--margin-bottom:0%;--margin-left:-1%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16571 .elementor-element.elementor-element-7713ee73{column-gap:0px;text-align:left;font-size:15px;}.elementor-16571 .elementor-element.elementor-element-7713ee73 p{margin-block-end:0px;}.elementor-16571 .elementor-element.elementor-element-7a8201d6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-1becd28 .elementor-heading-title{font-size:1.5rem;}.elementor-16571 .elementor-element.elementor-element-69138580 > .elementor-widget-container{margin:-1px 0px 0px 5px;}.elementor-16571 .elementor-element.elementor-element-69138580{column-gap:0px;text-align:left;}.elementor-16571 .elementor-element.elementor-element-46680366{--display:flex;}.elementor-16571 .elementor-element.elementor-element-1cfaeae3{--spacer-size:10px;}.elementor-16571 .elementor-element.elementor-element-6535ff0e{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0rem;--margin-bottom:0rem;--margin-left:8rem;--margin-right:0rem;}.elementor-16571 .elementor-element.elementor-element-6535ff0e:not(.elementor-motion-effects-element-type-background), .elementor-16571 .elementor-element.elementor-element-6535ff0e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor5 );}.elementor-16571 .elementor-element.elementor-element-35553960{--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;}.elementor-16571 .elementor-element.elementor-element-72f078c4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-72f078c4 .elementor-heading-title{font-size:20px;}.elementor-16571 .elementor-element.elementor-element-7492d86{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;}.elementor-16571 .elementor-element.elementor-element-7492d86.e-con{--align-self:flex-start;}.elementor-16571 .elementor-element.elementor-element-53bb224b{--display:flex;--margin-top:0%;--margin-bottom:0%;--margin-left:-2%;--margin-right:0%;}.elementor-16571 .elementor-element.elementor-element-6282c5c0{font-weight:800;}.elementor-16571 .elementor-element.elementor-element-650bba99 p{margin-block-end:0px;}.elementor-16571 .elementor-element.elementor-element-284a8f5b > .elementor-widget-container{margin:0vw 0vw 0vw 0vw;}.elementor-16571 .elementor-element.elementor-element-60dcd112{--display:flex;--padding-top:0rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:05rem;}.elementor-16571 .elementor-element.elementor-element-77f04cc2{width:100%;max-width:100%;}.elementor-16571 .elementor-element.elementor-element-611b0523 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-611b0523 .elementor-heading-title{font-size:20px;}.elementor-16571 .elementor-element.elementor-element-13693a99{width:var( --container-widget-width, 62% );max-width:62%;--container-widget-width:62%;--container-widget-flex-grow:0;}.elementor-16571 .elementor-element.elementor-element-422fe890{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;}.elementor-16571 .elementor-element.elementor-element-31f21c54 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-31f21c54 .elementor-heading-title{font-size:20px;}.elementor-16571 .elementor-element.elementor-element-6588962c{--display:flex;}.elementor-16571 .elementor-element.elementor-element-3753492e{--display:flex;}.elementor-16571 .elementor-element.elementor-element-6aacb12b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-6aacb12b .elementor-heading-title{font-size:20px;}.elementor-16571 .elementor-element.elementor-element-78080ade{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16571 .elementor-element.elementor-element-15502fad > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-15502fad .elementor-heading-title{font-size:20px;}.elementor-16571 .elementor-element.elementor-element-41914eb3{--display:flex;}.elementor-16571 .elementor-element.elementor-element-598c47e4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-598c47e4 .elementor-heading-title{font-size:20px;}.elementor-16571 .elementor-element.elementor-element-6d15fc23{--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;}.elementor-16571 .elementor-element.elementor-element-181aa28b{--n-tabs-direction:column;--n-tabs-heading-direction:row;--n-tabs-heading-width:initial;--n-tabs-title-flex-basis:content;--n-tabs-title-flex-shrink:0;--n-tabs-heading-justify-content:flex-start;--n-tabs-title-width:initial;--n-tabs-title-height:initial;--n-tabs-title-align-items:center;--n-tabs-title-flex-grow:0;--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-gap:0px;--n-tabs-title-font-size:1rem;--n-tabs-title-color:#070614;}.elementor-16571 .elementor-element.elementor-element-181aa28b.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#7C8081;}.elementor-16571 .elementor-element.elementor-element-181aa28b.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-16571 .elementor-element.elementor-element-181aa28b.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#7C8081;}.elementor-16571 .elementor-element.elementor-element-519e3f67{--display:flex;}.elementor-16571 .elementor-element.elementor-element-7e0b7a00 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-16571 .elementor-element.elementor-element-7e0b7a00.elementor-element{--align-self:center;}.elementor-16571 .elementor-element.elementor-element-7e0b7a00{column-gap:0px;text-align:left;}.elementor-16571 .elementor-element.elementor-element-7e0b7a00 p{margin-block-end:0px;}.elementor-16571 .elementor-element.elementor-element-2e3214da.elementor-element{--align-self:center;}.elementor-16571 .elementor-element.elementor-element-69598b57{--spacer-size:100px;}.elementor-16571 .elementor-element.elementor-element-24eb0eda{--display:flex;}@media(max-width:1024px){.elementor-16571 .elementor-element.elementor-element-52116b8a:not(.elementor-motion-effects-element-type-background), .elementor-16571 .elementor-element.elementor-element-52116b8a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-size:contain;}.elementor-16571 .elementor-element.elementor-element-7713ee73 p{margin-block-end:0px;}.elementor-16571 .elementor-element.elementor-element-6535ff0e{--margin-top:0rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;}.elementor-16571 .elementor-element.elementor-element-13693a99{--container-widget-width:95%;--container-widget-flex-grow:0;width:var( --container-widget-width, 95% );max-width:95%;}.elementor-16571 .elementor-element.elementor-element-181aa28b{--n-tabs-title-padding-top:15px;--n-tabs-title-padding-right:15px;--n-tabs-title-padding-bottom:15px;--n-tabs-title-padding-left:15px;--n-tabs-title-font-size:1rem;}}@media(max-width:767px){.elementor-16571 .elementor-element.elementor-element-52116b8a:not(.elementor-motion-effects-element-type-background), .elementor-16571 .elementor-element.elementor-element-52116b8a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://myicl.jp/wp-content/uploads/2025/11/品川近視クリニック.jpg");background-size:contain;}.elementor-16571 .elementor-element.elementor-element-52116b8a{--min-height:300px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-16571 .elementor-element.elementor-element-5fb9c23d{--margin-top:0px;--margin-bottom:0px;--margin-left:4px;--margin-right:0px;}.elementor-16571 .elementor-element.elementor-element-7a8201d6 > .elementor-widget-container{margin:0px 0px 0px 05px;}.elementor-16571 .elementor-element.elementor-element-7a8201d6{font-size:10px;}.elementor-16571 .elementor-element.elementor-element-69138580{font-size:16px;}.elementor-16571 .elementor-element.elementor-element-6535ff0e{--margin-top:0rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;}.elementor-16571 .elementor-element.elementor-element-35553960{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16571 .elementor-element.elementor-element-7492d86{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16571 .elementor-element.elementor-element-53bb224b{--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-16571 .elementor-element.elementor-element-60dcd112{--padding-top:0rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:0rem;}.elementor-16571 .elementor-element.elementor-element-181aa28b{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-gap:0px;--n-tabs-gap:0px;--n-tabs-title-font-size:10px;}.elementor-16571 .elementor-element.elementor-element-7e0b7a00{font-size:16px;}}@media(min-width:768px){.elementor-16571 .elementor-element.elementor-element-52116b8a{--width:1600px;}.elementor-16571 .elementor-element.elementor-element-6535ff0e{--content-width:1600px;}.elementor-16571 .elementor-element.elementor-element-53bb224b{--width:65%;}.elementor-16571 .elementor-element.elementor-element-60dcd112{--width:33%;}.elementor-16571 .elementor-element.elementor-element-3753492e{--width:1140px;}.elementor-16571 .elementor-element.elementor-element-6d15fc23{--width:1040px;}}/* Start custom CSS for container, class: .elementor-element-52116b8a *//* ページ全体の横スクロール防止 */
body, html {
  overflow-x: hidden;  /* 横スクロール禁止 */
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7a8201d6 */.badge-wrapper {
  display: flex;
  flex-wrap: wrap; /* 折り返し可能にする */
  gap: 8px;        /* バッジ同士の間隔 */
}

.badge-wrapper a {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 5px;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
  line-height: 1.5;   /* ← 被らないように余裕を持たせる */
  white-space: normal; /* ← 長文は折り返す */
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-13693a99 *//* ------------------------------
   基本テーブルスタイル
------------------------------ */
.clinic-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #000; /* 外枠を太めに */
  font-size: 16px !important;
}

.clinic-info-table th,
.clinic-info-table td {
  padding: 6px;
  border: 2px solid #000; /* 枠線の太さを統一 */
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background-color: #fff; /* td の背景色は白に統一 */
}

/* ヘッダー行 */
.clinic-info-table th {
  background-color: #e8f2f9;
}

.clinic-info-table th h3 {
  font-size: 16px !important; /* h3の文字サイズを上書き */
  margin: 0; /* h3の上下マージンをリセット */
}

/* URLリンク */
.clinic-info-table td a {
  color: #0073aa;
  text-decoration: none;
}

.clinic-info-table td a:hover {
  text-decoration: underline;
}

/* ------------------------------
   営業時間テーブル（ネスト用）
------------------------------ */
.clinic-info-table .clinic-hours {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.clinic-info-table .clinic-hours th,
.clinic-info-table .clinic-hours td {
  border: 1px solid #ccc;
  padding: 2px 4px;
  text-align: center;
}

.clinic-info-table .clinic-hours th {
  background-color: #f0f0f0;
  font-weight: bold;
}

.clinic-info-table .clinic-hours td {
  background-color: #fff;
}

/* 営業時間の注釈 */
.clinic-info-table .clinic-hours-note {
  font-size: 13px;
  color: #555;
  margin: 0;
}

/* ------------------------------
   スマホ表示（768px以下）
------------------------------ */
@media screen and (max-width: 768px) {
  .clinic-info-table {
    font-size: 11px;
    overflow-x: hidden; /* 横スクロール禁止 */
  }

  .clinic-info-table th,
  .clinic-info-table td {
    padding: 4px 6px;
  }

  .clinic-info-table .clinic-hours th,
  .clinic-info-table .clinic-hours td {
    padding: 2px 4px;
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4317dc24 */.doctor-list {
  display: flex;
  flex-direction: column;
  max-width: 900px; /* 横幅制限 */
  width: 100%; /* レスポンシブ対応 */
}

.doctor-item {
  display: flex;
  align-items: flex-start;
  background-color: #f9f9f9;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  gap: 1.5rem;
}

.doctor-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.doctor-photo img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 0.8rem;
}

.doctor-name {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.doctor-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.doctor-qualification-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-qualification {
  font-size: 1rem;
  color: #555;
  margin-bottom: 1rem;
}

.doctor-career-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-career {
  font-size: 0.95rem;
  color: #555;
}

@media (max-width: 768px) {
  .doctor-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .doctor-photo {
    width: auto;
  }

  .doctor-info {
    align-items: center;
  }

  .doctor-career {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-50017487 *//* 全体（PC 基準） */
.price-table {
  width: 80%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  font-size: 16px; /* PCでも小さめ */
}

.price-table th,
.price-table td {
  padding: 8px 12px; /* パディングも少し小さめに */
  border: 2px solid #000000;
  text-align: left;
  line-height: 1.4; /* 行間をやや詰める */
}

.price-table th {
  background-color: #e6f0fa;
  font-weight: bold;
}

.price-table td.price {
  text-align: right;
}

.price-item-name {
  background-color: #e8f2f9;
}

.price-item-name h3 {
  font-size: 16px;
}

.price-item-price {
  background-color: #ffffff;
  text-align: right;
  color: #444;
  font-size: 16px;
}

/* スマホ表示用（768px以下） */
@media screen and (max-width: 768px) {
  .price-table {
    font-size: 16px; /* フォントを小さく */
    display: table;   /* 横スクロールさせない */
    width: 100%;      /* 幅を100%に固定 */
    table-layout: fixed; /* セル幅固定で折り返し */
    overflow-x: hidden;  /* 横スクロール禁止 */
    white-space: normal; /* 折り返し可能に */
  }

  .price-table th,
  .price-table td {
    padding: 4px 6px; /* パディング縮小 */
    word-break: break-word; /* 長い文字は折り返す */
  }

  .price-item-name,
  .price-item-price {
    font-size: 16px; /* 小さめフォント */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-13693a99 *//* ------------------------------
   基本テーブルスタイル
------------------------------ */
.clinic-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #000; /* 外枠を太めに */
  font-size: 16px !important;
}

.clinic-info-table th,
.clinic-info-table td {
  padding: 6px;
  border: 2px solid #000; /* 枠線の太さを統一 */
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background-color: #fff; /* td の背景色は白に統一 */
}

/* ヘッダー行 */
.clinic-info-table th {
  background-color: #e8f2f9;
}

.clinic-info-table th h3 {
  font-size: 16px !important; /* h3の文字サイズを上書き */
  margin: 0; /* h3の上下マージンをリセット */
}

/* URLリンク */
.clinic-info-table td a {
  color: #0073aa;
  text-decoration: none;
}

.clinic-info-table td a:hover {
  text-decoration: underline;
}

/* ------------------------------
   営業時間テーブル（ネスト用）
------------------------------ */
.clinic-info-table .clinic-hours {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.clinic-info-table .clinic-hours th,
.clinic-info-table .clinic-hours td {
  border: 1px solid #ccc;
  padding: 2px 4px;
  text-align: center;
}

.clinic-info-table .clinic-hours th {
  background-color: #f0f0f0;
  font-weight: bold;
}

.clinic-info-table .clinic-hours td {
  background-color: #fff;
}

/* 営業時間の注釈 */
.clinic-info-table .clinic-hours-note {
  font-size: 13px;
  color: #555;
  margin: 0;
}

/* ------------------------------
   スマホ表示（768px以下）
------------------------------ */
@media screen and (max-width: 768px) {
  .clinic-info-table {
    font-size: 11px;
    overflow-x: hidden; /* 横スクロール禁止 */
  }

  .clinic-info-table th,
  .clinic-info-table td {
    padding: 4px 6px;
  }

  .clinic-info-table .clinic-hours th,
  .clinic-info-table .clinic-hours td {
    padding: 2px 4px;
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4317dc24 */.doctor-list {
  display: flex;
  flex-direction: column;
  max-width: 900px; /* 横幅制限 */
  width: 100%; /* レスポンシブ対応 */
}

.doctor-item {
  display: flex;
  align-items: flex-start;
  background-color: #f9f9f9;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  gap: 1.5rem;
}

.doctor-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.doctor-photo img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 0.8rem;
}

.doctor-name {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.doctor-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.doctor-qualification-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-qualification {
  font-size: 1rem;
  color: #555;
  margin-bottom: 1rem;
}

.doctor-career-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-career {
  font-size: 0.95rem;
  color: #555;
}

@media (max-width: 768px) {
  .doctor-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .doctor-photo {
    width: auto;
  }

  .doctor-info {
    align-items: center;
  }

  .doctor-career {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-50017487 *//* 全体（PC 基準） */
.price-table {
  width: 80%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  font-size: 16px; /* PCでも小さめ */
}

.price-table th,
.price-table td {
  padding: 8px 12px; /* パディングも少し小さめに */
  border: 2px solid #000000;
  text-align: left;
  line-height: 1.4; /* 行間をやや詰める */
}

.price-table th {
  background-color: #e6f0fa;
  font-weight: bold;
}

.price-table td.price {
  text-align: right;
}

.price-item-name {
  background-color: #e8f2f9;
}

.price-item-name h3 {
  font-size: 16px;
}

.price-item-price {
  background-color: #ffffff;
  text-align: right;
  color: #444;
  font-size: 16px;
}

/* スマホ表示用（768px以下） */
@media screen and (max-width: 768px) {
  .price-table {
    font-size: 16px; /* フォントを小さく */
    display: table;   /* 横スクロールさせない */
    width: 100%;      /* 幅を100%に固定 */
    table-layout: fixed; /* セル幅固定で折り返し */
    overflow-x: hidden;  /* 横スクロール禁止 */
    white-space: normal; /* 折り返し可能に */
  }

  .price-table th,
  .price-table td {
    padding: 4px 6px; /* パディング縮小 */
    word-break: break-word; /* 長い文字は折り返す */
  }

  .price-item-name,
  .price-item-price {
    font-size: 16px; /* 小さめフォント */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-13693a99 *//* ------------------------------
   基本テーブルスタイル
------------------------------ */
.clinic-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #000; /* 外枠を太めに */
  font-size: 16px !important;
}

.clinic-info-table th,
.clinic-info-table td {
  padding: 6px;
  border: 2px solid #000; /* 枠線の太さを統一 */
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background-color: #fff; /* td の背景色は白に統一 */
}

/* ヘッダー行 */
.clinic-info-table th {
  background-color: #e8f2f9;
}

.clinic-info-table th h3 {
  font-size: 16px !important; /* h3の文字サイズを上書き */
  margin: 0; /* h3の上下マージンをリセット */
}

/* URLリンク */
.clinic-info-table td a {
  color: #0073aa;
  text-decoration: none;
}

.clinic-info-table td a:hover {
  text-decoration: underline;
}

/* ------------------------------
   営業時間テーブル（ネスト用）
------------------------------ */
.clinic-info-table .clinic-hours {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.clinic-info-table .clinic-hours th,
.clinic-info-table .clinic-hours td {
  border: 1px solid #ccc;
  padding: 2px 4px;
  text-align: center;
}

.clinic-info-table .clinic-hours th {
  background-color: #f0f0f0;
  font-weight: bold;
}

.clinic-info-table .clinic-hours td {
  background-color: #fff;
}

/* 営業時間の注釈 */
.clinic-info-table .clinic-hours-note {
  font-size: 13px;
  color: #555;
  margin: 0;
}

/* ------------------------------
   スマホ表示（768px以下）
------------------------------ */
@media screen and (max-width: 768px) {
  .clinic-info-table {
    font-size: 11px;
    overflow-x: hidden; /* 横スクロール禁止 */
  }

  .clinic-info-table th,
  .clinic-info-table td {
    padding: 4px 6px;
  }

  .clinic-info-table .clinic-hours th,
  .clinic-info-table .clinic-hours td {
    padding: 2px 4px;
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4317dc24 */.doctor-list {
  display: flex;
  flex-direction: column;
  max-width: 900px; /* 横幅制限 */
  width: 100%; /* レスポンシブ対応 */
}

.doctor-item {
  display: flex;
  align-items: flex-start;
  background-color: #f9f9f9;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  gap: 1.5rem;
}

.doctor-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.doctor-photo img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 0.8rem;
}

.doctor-name {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.doctor-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.doctor-qualification-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-qualification {
  font-size: 1rem;
  color: #555;
  margin-bottom: 1rem;
}

.doctor-career-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-career {
  font-size: 0.95rem;
  color: #555;
}

@media (max-width: 768px) {
  .doctor-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .doctor-photo {
    width: auto;
  }

  .doctor-info {
    align-items: center;
  }

  .doctor-career {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-50017487 *//* 全体（PC 基準） */
.price-table {
  width: 80%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  font-size: 16px; /* PCでも小さめ */
}

.price-table th,
.price-table td {
  padding: 8px 12px; /* パディングも少し小さめに */
  border: 2px solid #000000;
  text-align: left;
  line-height: 1.4; /* 行間をやや詰める */
}

.price-table th {
  background-color: #e6f0fa;
  font-weight: bold;
}

.price-table td.price {
  text-align: right;
}

.price-item-name {
  background-color: #e8f2f9;
}

.price-item-name h3 {
  font-size: 16px;
}

.price-item-price {
  background-color: #ffffff;
  text-align: right;
  color: #444;
  font-size: 16px;
}

/* スマホ表示用（768px以下） */
@media screen and (max-width: 768px) {
  .price-table {
    font-size: 16px; /* フォントを小さく */
    display: table;   /* 横スクロールさせない */
    width: 100%;      /* 幅を100%に固定 */
    table-layout: fixed; /* セル幅固定で折り返し */
    overflow-x: hidden;  /* 横スクロール禁止 */
    white-space: normal; /* 折り返し可能に */
  }

  .price-table th,
  .price-table td {
    padding: 4px 6px; /* パディング縮小 */
    word-break: break-word; /* 長い文字は折り返す */
  }

  .price-item-name,
  .price-item-price {
    font-size: 16px; /* 小さめフォント */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-13693a99 *//* ------------------------------
   基本テーブルスタイル
------------------------------ */
.clinic-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #000; /* 外枠を太めに */
  font-size: 16px !important;
}

.clinic-info-table th,
.clinic-info-table td {
  padding: 6px;
  border: 2px solid #000; /* 枠線の太さを統一 */
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background-color: #fff; /* td の背景色は白に統一 */
}

/* ヘッダー行 */
.clinic-info-table th {
  background-color: #e8f2f9;
}

.clinic-info-table th h3 {
  font-size: 16px !important; /* h3の文字サイズを上書き */
  margin: 0; /* h3の上下マージンをリセット */
}

/* URLリンク */
.clinic-info-table td a {
  color: #0073aa;
  text-decoration: none;
}

.clinic-info-table td a:hover {
  text-decoration: underline;
}

/* ------------------------------
   営業時間テーブル（ネスト用）
------------------------------ */
.clinic-info-table .clinic-hours {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.clinic-info-table .clinic-hours th,
.clinic-info-table .clinic-hours td {
  border: 1px solid #ccc;
  padding: 2px 4px;
  text-align: center;
}

.clinic-info-table .clinic-hours th {
  background-color: #f0f0f0;
  font-weight: bold;
}

.clinic-info-table .clinic-hours td {
  background-color: #fff;
}

/* 営業時間の注釈 */
.clinic-info-table .clinic-hours-note {
  font-size: 13px;
  color: #555;
  margin: 0;
}

/* ------------------------------
   スマホ表示（768px以下）
------------------------------ */
@media screen and (max-width: 768px) {
  .clinic-info-table {
    font-size: 11px;
    overflow-x: hidden; /* 横スクロール禁止 */
  }

  .clinic-info-table th,
  .clinic-info-table td {
    padding: 4px 6px;
  }

  .clinic-info-table .clinic-hours th,
  .clinic-info-table .clinic-hours td {
    padding: 2px 4px;
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4317dc24 */.doctor-list {
  display: flex;
  flex-direction: column;
  max-width: 900px; /* 横幅制限 */
  width: 100%; /* レスポンシブ対応 */
}

.doctor-item {
  display: flex;
  align-items: flex-start;
  background-color: #f9f9f9;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  gap: 1.5rem;
}

.doctor-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.doctor-photo img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 0.8rem;
}

.doctor-name {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.doctor-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.doctor-qualification-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-qualification {
  font-size: 1rem;
  color: #555;
  margin-bottom: 1rem;
}

.doctor-career-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-career {
  font-size: 0.95rem;
  color: #555;
}

@media (max-width: 768px) {
  .doctor-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .doctor-photo {
    width: auto;
  }

  .doctor-info {
    align-items: center;
  }

  .doctor-career {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-50017487 *//* 全体（PC 基準） */
.price-table {
  width: 80%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  font-size: 16px; /* PCでも小さめ */
}

.price-table th,
.price-table td {
  padding: 8px 12px; /* パディングも少し小さめに */
  border: 2px solid #000000;
  text-align: left;
  line-height: 1.4; /* 行間をやや詰める */
}

.price-table th {
  background-color: #e6f0fa;
  font-weight: bold;
}

.price-table td.price {
  text-align: right;
}

.price-item-name {
  background-color: #e8f2f9;
}

.price-item-name h3 {
  font-size: 16px;
}

.price-item-price {
  background-color: #ffffff;
  text-align: right;
  color: #444;
  font-size: 16px;
}

/* スマホ表示用（768px以下） */
@media screen and (max-width: 768px) {
  .price-table {
    font-size: 16px; /* フォントを小さく */
    display: table;   /* 横スクロールさせない */
    width: 100%;      /* 幅を100%に固定 */
    table-layout: fixed; /* セル幅固定で折り返し */
    overflow-x: hidden;  /* 横スクロール禁止 */
    white-space: normal; /* 折り返し可能に */
  }

  .price-table th,
  .price-table td {
    padding: 4px 6px; /* パディング縮小 */
    word-break: break-word; /* 長い文字は折り返す */
  }

  .price-item-name,
  .price-item-price {
    font-size: 16px; /* 小さめフォント */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-13693a99 *//* ------------------------------
   基本テーブルスタイル
------------------------------ */
.clinic-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #000; /* 外枠を太めに */
  font-size: 16px !important;
}

.clinic-info-table th,
.clinic-info-table td {
  padding: 6px;
  border: 2px solid #000; /* 枠線の太さを統一 */
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background-color: #fff; /* td の背景色は白に統一 */
}

/* ヘッダー行 */
.clinic-info-table th {
  background-color: #e8f2f9;
}

.clinic-info-table th h3 {
  font-size: 16px !important; /* h3の文字サイズを上書き */
  margin: 0; /* h3の上下マージンをリセット */
}

/* URLリンク */
.clinic-info-table td a {
  color: #0073aa;
  text-decoration: none;
}

.clinic-info-table td a:hover {
  text-decoration: underline;
}

/* ------------------------------
   営業時間テーブル（ネスト用）
------------------------------ */
.clinic-info-table .clinic-hours {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.clinic-info-table .clinic-hours th,
.clinic-info-table .clinic-hours td {
  border: 1px solid #ccc;
  padding: 2px 4px;
  text-align: center;
}

.clinic-info-table .clinic-hours th {
  background-color: #f0f0f0;
  font-weight: bold;
}

.clinic-info-table .clinic-hours td {
  background-color: #fff;
}

/* 営業時間の注釈 */
.clinic-info-table .clinic-hours-note {
  font-size: 13px;
  color: #555;
  margin: 0;
}

/* ------------------------------
   スマホ表示（768px以下）
------------------------------ */
@media screen and (max-width: 768px) {
  .clinic-info-table {
    font-size: 11px;
    overflow-x: hidden; /* 横スクロール禁止 */
  }

  .clinic-info-table th,
  .clinic-info-table td {
    padding: 4px 6px;
  }

  .clinic-info-table .clinic-hours th,
  .clinic-info-table .clinic-hours td {
    padding: 2px 4px;
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4317dc24 */.doctor-list {
  display: flex;
  flex-direction: column;
  max-width: 900px; /* 横幅制限 */
  width: 100%; /* レスポンシブ対応 */
}

.doctor-item {
  display: flex;
  align-items: flex-start;
  background-color: #f9f9f9;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  gap: 1.5rem;
}

.doctor-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.doctor-photo img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 0.8rem;
}

.doctor-name {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.doctor-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.doctor-qualification-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-qualification {
  font-size: 1rem;
  color: #555;
  margin-bottom: 1rem;
}

.doctor-career-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-career {
  font-size: 0.95rem;
  color: #555;
}

@media (max-width: 768px) {
  .doctor-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .doctor-photo {
    width: auto;
  }

  .doctor-info {
    align-items: center;
  }

  .doctor-career {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-50017487 *//* 全体（PC 基準） */
.price-table {
  width: 80%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  font-size: 16px; /* PCでも小さめ */
}

.price-table th,
.price-table td {
  padding: 8px 12px; /* パディングも少し小さめに */
  border: 2px solid #000000;
  text-align: left;
  line-height: 1.4; /* 行間をやや詰める */
}

.price-table th {
  background-color: #e6f0fa;
  font-weight: bold;
}

.price-table td.price {
  text-align: right;
}

.price-item-name {
  background-color: #e8f2f9;
}

.price-item-name h3 {
  font-size: 16px;
}

.price-item-price {
  background-color: #ffffff;
  text-align: right;
  color: #444;
  font-size: 16px;
}

/* スマホ表示用（768px以下） */
@media screen and (max-width: 768px) {
  .price-table {
    font-size: 16px; /* フォントを小さく */
    display: table;   /* 横スクロールさせない */
    width: 100%;      /* 幅を100%に固定 */
    table-layout: fixed; /* セル幅固定で折り返し */
    overflow-x: hidden;  /* 横スクロール禁止 */
    white-space: normal; /* 折り返し可能に */
  }

  .price-table th,
  .price-table td {
    padding: 4px 6px; /* パディング縮小 */
    word-break: break-word; /* 長い文字は折り返す */
  }

  .price-item-name,
  .price-item-price {
    font-size: 16px; /* 小さめフォント */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-13693a99 *//* ------------------------------
   基本テーブルスタイル
------------------------------ */
.clinic-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #000; /* 外枠を太めに */
  font-size: 16px !important;
}

.clinic-info-table th,
.clinic-info-table td {
  padding: 6px;
  border: 2px solid #000; /* 枠線の太さを統一 */
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background-color: #fff; /* td の背景色は白に統一 */
}

/* ヘッダー行 */
.clinic-info-table th {
  background-color: #e8f2f9;
}

.clinic-info-table th h3 {
  font-size: 16px !important; /* h3の文字サイズを上書き */
  margin: 0; /* h3の上下マージンをリセット */
}

/* URLリンク */
.clinic-info-table td a {
  color: #0073aa;
  text-decoration: none;
}

.clinic-info-table td a:hover {
  text-decoration: underline;
}

/* ------------------------------
   営業時間テーブル（ネスト用）
------------------------------ */
.clinic-info-table .clinic-hours {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.clinic-info-table .clinic-hours th,
.clinic-info-table .clinic-hours td {
  border: 1px solid #ccc;
  padding: 2px 4px;
  text-align: center;
}

.clinic-info-table .clinic-hours th {
  background-color: #f0f0f0;
  font-weight: bold;
}

.clinic-info-table .clinic-hours td {
  background-color: #fff;
}

/* 営業時間の注釈 */
.clinic-info-table .clinic-hours-note {
  font-size: 13px;
  color: #555;
  margin: 0;
}

/* ------------------------------
   スマホ表示（768px以下）
------------------------------ */
@media screen and (max-width: 768px) {
  .clinic-info-table {
    font-size: 11px;
    overflow-x: hidden; /* 横スクロール禁止 */
  }

  .clinic-info-table th,
  .clinic-info-table td {
    padding: 4px 6px;
  }

  .clinic-info-table .clinic-hours th,
  .clinic-info-table .clinic-hours td {
    padding: 2px 4px;
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4317dc24 */.doctor-list {
  display: flex;
  flex-direction: column;
  max-width: 900px; /* 横幅制限 */
  width: 100%; /* レスポンシブ対応 */
}

.doctor-item {
  display: flex;
  align-items: flex-start;
  background-color: #f9f9f9;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  gap: 1.5rem;
}

.doctor-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.doctor-photo img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 0.8rem;
}

.doctor-name {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.doctor-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.doctor-qualification-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-qualification {
  font-size: 1rem;
  color: #555;
  margin-bottom: 1rem;
}

.doctor-career-title {
  font-size: 1.1rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 0.4rem;
}

.doctor-career {
  font-size: 0.95rem;
  color: #555;
}

@media (max-width: 768px) {
  .doctor-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .doctor-photo {
    width: auto;
  }

  .doctor-info {
    align-items: center;
  }

  .doctor-career {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-50017487 *//* 全体（PC 基準） */
.price-table {
  width: 80%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  font-size: 16px; /* PCでも小さめ */
}

.price-table th,
.price-table td {
  padding: 8px 12px; /* パディングも少し小さめに */
  border: 2px solid #000000;
  text-align: left;
  line-height: 1.4; /* 行間をやや詰める */
}

.price-table th {
  background-color: #e6f0fa;
  font-weight: bold;
}

.price-table td.price {
  text-align: right;
}

.price-item-name {
  background-color: #e8f2f9;
}

.price-item-name h3 {
  font-size: 16px;
}

.price-item-price {
  background-color: #ffffff;
  text-align: right;
  color: #444;
  font-size: 16px;
}

/* スマホ表示用（768px以下） */
@media screen and (max-width: 768px) {
  .price-table {
    font-size: 16px; /* フォントを小さく */
    display: table;   /* 横スクロールさせない */
    width: 100%;      /* 幅を100%に固定 */
    table-layout: fixed; /* セル幅固定で折り返し */
    overflow-x: hidden;  /* 横スクロール禁止 */
    white-space: normal; /* 折り返し可能に */
  }

  .price-table th,
  .price-table td {
    padding: 4px 6px; /* パディング縮小 */
    word-break: break-word; /* 長い文字は折り返す */
  }

  .price-item-name,
  .price-item-price {
    font-size: 16px; /* 小さめフォント */
  }
}/* End custom CSS */
/* Start custom CSS for nested-tabs, class: .elementor-element-181aa28b */@media screen and (max-width: 767px) {
  .e-n-tabs-heading {
    display: flex !important;
  }

  .e-n-tabs-heading > * {
    flex: 1 1 auto !important;  /* 自動で均等に伸ばす */
    max-width: 33% !important;  /* 3分割より少し大きくする場合は33%などに変更 */
    padding: 12px 0 !important; /* パディングを広くして見やすく */
    box-sizing: border-box;
  }
}/* End custom CSS */