.w-default {
  width: 100%;
  position: relative;
  background: #b0cfd2, #fff;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  isolation: isolate;
  width: 100%;
  overflow-x: hidden; /* 横はみ出しを強制カット */
  line-height: normal;
  letter-spacing: normal;
}
.page {
  align-self: stretch;
  display: flex;
  align-items: center;
  max-width: 100%;
  z-index: 0;
}
.container {
  width: 1380px;
  align-items: flex-start;
  max-width: 100%;
  text-align: left;
  font-size: 30px;
  color: var(--color-black);
  font-family: var(--font-inter);
}
.container,
.container2,
.header {
  display: flex;
  flex-direction: column;
}
.header {
  align-self: stretch;
  align-items: center;
  background-image: url(./public/header@3x.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  min-height: 300px;
}
.container2 {
  width: 1200px;
  overflow: auto;
  align-items: flex-start;
  padding: 48px var(--padding-0) 160px;
  box-sizing: border-box;
}
.h2,
.heading-1 {
  align-self: stretch;
}
.heading-1 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.h2 {
  margin: 0;
  position: relative;
  font-size: inherit;
  font-weight: 700;
  font-family: inherit;
}
.container3,
.main {
  display: flex;
  flex-direction: column;
  max-width: 100%;
}
.main {
  align-self: stretch;
  background-color: var(--color-white);
  align-items: center;
  padding: var(--padding-16) var(--padding-30) var(--padding-16)
    var(--padding-20);
  box-sizing: border-box;
  text-align: center;
  font-size: var(--fs-18_7);
}
.container3 {
  width: 1210px;
  align-items: flex-start;
}
.container4 {
  align-self: stretch;
  row-gap: var(--gap-20);
  max-width: 100%;
}
.container4,
.list-item-link,
.sidebar {
  display: flex;
  align-items: flex-start;
}
.sidebar {
  width: 314px;
  flex-direction: column;
  padding: var(--padding-0) var(--padding-10);
  box-sizing: border-box;
  gap: 10px;
  text-align: left;
  font-size: var(--fs-14);
  color: var(--color-white);
  font-family: var(--font-inter);
}
.list-item-link {
  align-self: stretch;
  background-color: var(--color-lightblue-200);
  border: var(--border-1);
  overflow: hidden;
  padding: var(--padding-15) 35px;
  text-decoration: none;
  color: inherit;
  box-sizing: border-box;
}
.div {
  position: relative;
  font-weight: 300;
}
.table-body-row-data {
  align-self: stretch;
  text-align: center;
  font-size: var(--fs-16);
  color: var(--color-mediumseagreen);
}
.body-row-data,
.table,
.table-body-row-data {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.table {
  width: 271.5px;
  padding: var(--padding-20) var(--padding-2);
  box-sizing: border-box;
  color: var(--color-white);
}
.body-row-data {
  align-self: stretch;
  border-radius: var(--br-5);
  background-color: var(--color-darkgray);
  border: 2px solid var(--color-white);
  padding: var(--padding-0) var(--padding-1);
  position: relative;
  isolation: isolate;
}
.overlayshadow {
  width: 100%;
  height: 100%;
  position: absolute;
  margin: 0 !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-shadow: 0 0 0 2px var(--color-darkgray);
  border-radius: var(--br-5);
  background-color: var(--color-gray);
  z-index: 0;
}
.row-data,
.table-body {
  display: flex;
  flex-direction: column;
}
.table-body {
  align-self: stretch;
  align-items: center;
  padding: var(--padding-0) var(--padding-0) 40px;
  gap: 6px;
  z-index: 1;
}
.row-data {
  align-items: flex-start;
  padding: var(--padding-5);
}
.container5,
.row-data {
  align-self: stretch;
}
.container5,
.container6,
.row-data2 {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.container6 {
  align-self: stretch;
  padding: var(--padding-3) var(--padding-0) var(--padding-1);
  font-size: var(--fs-13_3);
}
.row-data2 {
  width: 251.5px;
  font-size: var(--fs-18_7);
}
.background {
  background-color: var(--color-mediumseagreen);
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.container7 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--padding-72) var(--padding-0) var(--padding-0);
}
.jpg-icon {
  width: 174px;
  height: 173px;
  position: relative;
  object-fit: cover;
}
.container8 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--padding-48) var(--padding-0) var(--padding-0);
}
.jpg-icon2 {
  width: 170px;
  height: 227px;
  position: relative;
  object-fit: cover;
}
.jpg-icon3 {
  width: 174px;
  height: 177px;
  object-fit: cover;
}
.gif-icon,
.jpg-icon3,
.strong {
  position: relative;
}
.gif-icon {
  width: 238px;
  height: 207px;
  object-fit: cover;
}
.container-parent,
.content {
  flex-direction: column;
  box-sizing: border-box;
  max-width: 100%;
}
.content {
  width: 895px;
  display: flex;
  align-items: flex-start;
  padding: var(--padding-0) var(--padding-0) var(--padding-1) var(--padding-10);
  gap: 32px;
}
.container-parent {
  width: var(--width-885);
  padding: var(--padding-0) var(--padding-0) 16px;
  gap: var(--gap-3);
  text-align: left;
  font-size: 10.7px;
}
.background4,
.container-parent,
.container13 {
  display: flex;
  align-items: flex-start;
}
.container13 {
  width: var(--width-885);
  flex-direction: column;
  padding: var(--padding-5_5) var(--padding-27) var(--padding-2_5);
  box-sizing: border-box;
  max-width: 100%;
}
.background4 {
  width: 235px;
  background-color: var(--color-lightblue-100);
}
.information-area {
  padding: var(--padding-0) var(--padding-2) 20px;
  box-sizing: border-box;
}
.information-area,
.symptoms-holder,
.table-body-row-data-wrapper {
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}
.symptoms-holder {
  flex-direction: column;
  gap: 12px;
}
.table-body-row-data-wrapper {
  padding: var(--padding-0) 41px;
  box-sizing: border-box;
  text-align: center;
  font-size: var(--fs-16);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.table-body-row-data2 {
  width: 798px;
  padding: var(--padding-2) var(--padding-1) 40px;
  box-sizing: border-box;
  max-width: 100%;
}
.body-row-data2,
.container14,
.container15,
.table-body-row-data2,
.table2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.container14 {
  align-self: stretch;
  font-size: var(--fs-36);
  color: var(--color-limegreen);
}
.body-row-data2,
.container15,
.table2 {
  padding: var(--padding-1);
}
.table2 {
  width: 799.8px;
  box-sizing: border-box;
  flex-shrink: 0;
}
.body-row-data2,
.container15 {
  align-self: stretch;
}
.container15 {
  align-items: center;
  padding: 8.5px var(--padding-0) 9px;
}
.h1 {
  margin: 0;
  position: relative;
  font-size: inherit;
  font-weight: 600;
  font-family: inherit;
  text-shadow: var(--text-shadow-1);
}
.container19 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--padding-24) var(--padding-0) var(--padding-0);
}
.div7 {
  position: relative;
  font-weight: 500;
}

/* ヒーロー紹介文（緑見出し＋本文）— 中央揃え */
.hero-intro {
  align-items: center !important;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}

.hero-intro .table-body-row-data2 {
  align-items: center !important;
  text-align: center;
  width: 100%;
  max-width: 798px;
}

.hero-intro .container14 {
  align-items: center !important;
  align-self: center;
  width: 100%;
  text-align: center;
}

.hero-intro .h1 {
  display: block;
  width: 100%;
  text-align: center;
}

.hero-intro__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding-top: 16px;
  box-sizing: border-box;
}

.hero-intro__body .div7 {
  width: 100%;
  margin: 0;
  text-align: center;
  line-height: 1.65;
  font-size: var(--fs-16);
  font-weight: 500;
}

/* セクションバー見出し（緑枠帯・中央揃え・太字） */
.section-bar {
  display: flex;
  flex-direction: column;
  align-items: center !important;
  justify-content: center;
  align-self: stretch;
  width: 100%;
  max-width: var(--width-881);
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  box-sizing: border-box;
  padding: 12px 16px;
  gap: 4px;
}

.section-bar--lime {
  background-color: var(--color-whitesmoke);
  border-top: 3px solid var(--color-limegreen);
  border-bottom: 3px solid var(--color-limegreen);
}

.section-bar--forest {
  background-color: var(--color-honeydew);
  border-top: 3px solid var(--color-forestgreen);
  border-bottom: 3px solid var(--color-forestgreen);
}

.section-bar__title {
  margin: 0;
  padding: 5px 10px;
  width: 100%;
  max-width: 100%;
  text-align: center;
  font-family: var(--font-inter), Inter, "Hiragino Sans", Meiryo, sans-serif;
  font-size: var(--fs-18_7);
  font-weight: 700;
  line-height: 1.45;
  color: var(--color-black);
  box-sizing: border-box;
}

.section-bar .heading-2,
.section-bar .heading-28,
.section-bar .heading-29 {
  padding: 5px 10px !important;
  width: 100%;
  align-items: center;
  align-self: center;
  text-align: center;
}

.table-body-row-data3.section-bar,
.table-body-row-data5.section-bar,
.table-body-row-data11.section-bar {
  align-items: center !important;
}

.timeslot {
  align-items: center;
  gap: 0;
  max-width: 100%;
  width: 100%;
  text-align: center;
  font-size: var(--fs-18_7);
  color: var(--color-black);
  font-family: var(--font-inter);
}

/* お悩みチェックリスト */
.cases-checklist {
  width: 100%;
  max-width: 796px;
  margin: 0 auto;
  padding: var(--padding-0) !important;
  align-self: center;
  list-style: none;
}

.cases-checklist.table-body-row-data4 {
  align-items: stretch;
  box-shadow: var(--shadow-drop);
}

.cases-checklist .background5 {
  align-items: flex-start;
  height: auto;
  min-height: var(--height-36);
  width: 100%;
  padding: var(--padding-4) var(--padding-5);
  box-sizing: border-box;
}

.cases-checklist .div13,
.cases-checklist .div14,
.cases-checklist .div15,
.cases-checklist .div16,
.cases-checklist .div17 {
  width: auto;
  height: auto;
  flex: 1;
  min-width: 0;
  text-align: left;
  line-height: var(--lh-32);
  font-size: var(--fs-16);
  font-weight: 400;
}

/* お悩みセクション下部メッセージ */
.cases-message {
  width: 100%;
  max-width: var(--width-881);
  margin: 0 auto;
  padding: 18px 15px 22px;
  text-align: center;
  border-bottom: 3px solid var(--color-limegreen);
  box-sizing: border-box;
  align-items: center !important;
}

.cases-message__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 869.8px;
  margin: 0 auto;
  gap: 0;
}

.cases-message__lead,
.cases-message__emphasis {
  margin: 0;
  padding: 6px 8px;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  line-height: 1.55;
}

.cases-message__lead {
  font-size: var(--fs-18_7);
  font-weight: 500;
  color: var(--color-dimgray);
}

.cases-message__emphasis {
  font-size: 18.6px;
  font-weight: 700;
  color: var(--color-dimgray);
  text-shadow: var(--text-shadow-2);
}
.heading-2,
.table-body-row-data3,
.timeslot {
  display: flex;
  flex-direction: column;
}
.table-body-row-data3 {
  width: var(--width-881);
  background-color: var(--color-whitesmoke);
  border-top: 3px solid var(--color-limegreen);
  border-bottom: var(--border-12);
  box-sizing: border-box;
  align-items: flex-start;
  padding: var(--padding-6) var(--padding-7);
  gap: var(--gap-3);
  max-width: 100%;
}
.heading-2 {
  align-self: stretch;
  align-items: center;
  padding: var(--padding-5_5) var(--padding-0) var(--padding-2_5);
}
.table-body-row-data-container,
.table-body-row-data4 {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  max-width: 100%;
}
.table-body-row-data-container {
  padding: var(--padding-0) 42px;
  text-align: left;
  font-size: var(--fs-16);
}
.table-body-row-data4 {
  width: 796px;
  background-color: var(--color-seashell);
  flex-direction: column;
  padding: var(--padding-20);
  position: relative;
  isolation: isolate;
}
.overlayshadow2 {
  width: 100%;
  height: 100%;
  position: absolute;
  margin: 0 !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-shadow: var(--shadow-drop);
  background-color: var(--color-gray);
  z-index: 0;
  flex-shrink: 0;
}
.background5 {
  align-self: stretch;
  height: var(--height-36);
  background: var(--gradient-1);
  display: flex;
  align-items: flex-start;
  z-index: 1;
  flex-shrink: 0;
}
.checkgif-icon {
  height: var(--height-25);
  width: var(--width-25);
  position: relative;
  object-fit: cover;
}
.wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-4) var(--padding-0) var(--padding-0);
}
.div13,
.div14,
.div15,
.div16,
.div17 {
  width: 336px;
  height: var(--height-32);
  position: relative;
  line-height: var(--lh-32);
  display: inline-block;
}
.div14,
.div15,
.div16,
.div17 {
  width: 560px;
}
.div15,
.div16,
.div17 {
  width: 398px;
}
.div16,
.div17 {
  width: 337px;
}
.div17 {
  width: 416px;
}
.container25,
.table3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.container25 {
  padding: var(--padding-0) var(--padding-15) var(--padding-0) var(--padding-0);
  text-align: center;
  font-size: var(--fs-18_7);
  color: var(--color-dimgray);
  font-family: var(--font-inter);
}
.table3 {
  width: 869.8px;
  padding: var(--padding-1);
  box-sizing: border-box;
}
.div18 {
  position: relative;
  text-shadow: var(--text-shadow-2);
}
.container28 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 18.6px;
}
.availability,
.quick-access {
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}
.quick-access {
  padding: var(--padding-0) var(--padding-2) var(--padding-8);
  box-sizing: border-box;
}
.availability {
  flex-direction: column;
  gap: 0;
}

/* 当院の特徴 */
.features {
  width: 100%;
  align-items: center !important;
  gap: 0 !important;
}

.features .section-bar {
  width: 100%;
  max-width: var(--width-881);
}

.features__card {
  width: 100%;
  max-width: 796px;
  margin: 0 auto;
  padding: 22px 20px 16px;
  background-color: var(--color-ivory);
  box-shadow: var(--shadow-drop);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.feature-block {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 0 20px;
  box-sizing: border-box;
}

.feature-block:last-child {
  padding-bottom: 0;
}

.feature-block__head {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px 10px;
  width: 100%;
  max-width: 752px;
  margin: 0 auto 18px;
  padding: 0 8px 8px;
  border-bottom: 3px solid var(--color-limegreen);
  box-sizing: border-box;
  color: var(--color-black);
  text-align: center;
}

.feature-block__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  padding: 5px 8px;
  border-radius: var(--br-5);
  background-color: var(--color-limegreen);
  color: var(--color-white);
  font-size: var(--fs-18_7);
  font-weight: 700;
  line-height: 1;
  flex-shrink: 0;
}

.feature-block__title {
  font-size: var(--fs-18_7);
  font-weight: 700;
  line-height: 1.4;
  color: var(--color-black);
}

.feature-block__badge {
  width: 100%;
  font-size: var(--fs-18_7);
  font-weight: 700;
  line-height: 1.4;
  color: var(--color-tomato);
  text-align: center;
}

.feature-block__body {
  width: 100%;
  max-width: 752px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.feature-block__body p {
  margin: 0;
  padding: 10px 12px 0;
  width: 100%;
  font-size: var(--fs-16);
  font-weight: 400;
  line-height: 1.65;
  color: var(--color-black);
  text-align: center;
  box-sizing: border-box;
}

@media screen and (min-width: 751px) {
  .feature-block__body p {
    text-align: left;
    padding-left: 4px;
    padding-right: 4px;
  }
}
.table-body-row-data-frame,
.table-body-row-data5 {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  max-width: 100%;
}
.table-body-row-data5 {
  width: var(--width-881);
  background-color: var(--color-honeydew);
  border-top: 3px solid var(--color-forestgreen);
  border-bottom: 3px solid var(--color-forestgreen);
  flex-direction: column;
  padding: var(--padding-6) var(--padding-7);
}
.table-body-row-data-frame {
  padding: var(--padding-0) 42px;
  text-align: left;
  font-size: var(--fs-16);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.table-body-row-data6 {
  width: 796px;
  background-color: var(--color-ivory);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 46px var(--padding-20) var(--padding-20);
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  max-width: 100%;
}
.heading-24,
.table-body-row-data7 {
  flex-shrink: 0;
  box-sizing: border-box;
}
.table-body-row-data7 {
  width: 752px;
  border-bottom: var(--border-12);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-7) var(--padding-7) var(--padding-6);
  z-index: 1;
  text-align: center;
  color: var(--color-white);
}
.heading-24 {
  align-self: stretch;
  height: var(--height-36);
  padding: 3.5px 191px;
  gap: 2.2px;
}
.background10,
.heading-24,
.wrapper4 {
  display: flex;
  align-items: flex-start;
}
.background10 {
  border-radius: var(--br-5);
  background-color: var(--color-limegreen);
  justify-content: center;
  padding: var(--padding-5);
}
.wrapper4 {
  flex-direction: column;
  padding: var(--padding-2) var(--padding-0) var(--padding-0);
  font-size: var(--fs-18_7);
  color: var(--color-black);
}
.b4 {
  width: 211px;
  height: 23px;
  position: relative;
  display: inline-block;
}
.feature-parking {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-5) var(--padding-0) var(--padding-0);
  color: var(--color-tomato);
}
.b5 {
  width: 112px;
  height: var(--height-19);
  position: relative;
  display: inline-block;
}
.container34,
.container35,
.container36,
.container37 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-shrink: 0;
}
.container34 {
  padding: 14px var(--padding-0) var(--padding-0);
  z-index: 2;
}
.container35,
.container36,
.container37 {
  z-index: 3;
}
.container36,
.container37 {
  z-index: 4;
}
.container37 {
  padding: var(--padding-0) var(--padding-0) 14px;
  z-index: 5;
}
.heading-25,
.table-body-row-data8 {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
}
.table-body-row-data8 {
  width: 752px;
  border-bottom: var(--border-12);
  flex-direction: column;
  padding: var(--padding-7) var(--padding-7) var(--padding-6);
  z-index: 6;
  flex-shrink: 0;
  text-align: center;
  color: var(--color-white);
}
.heading-25 {
  align-self: stretch;
  height: var(--height-36);
  padding: 3.5px 171px 3.5px 173px;
  gap: 8.2px;
}
.b6 {
  width: 356px;
  height: 23px;
  position: relative;
  display: inline-block;
}
.container38 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 14px var(--padding-0);
  z-index: 7;
  flex-shrink: 0;
}
.table-body-row-data9 {
  width: 752px;
  border-bottom: var(--border-12);
  flex-direction: column;
  padding: var(--padding-7) var(--padding-7) var(--padding-6);
  z-index: 8;
  flex-shrink: 0;
  text-align: center;
  color: var(--color-white);
}
.heading-26,
.table-body-row-data9,
.wrapper6 {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  max-width: 100%;
}
.heading-26 {
  align-self: stretch;
  height: var(--height-36);
  padding: 3.5px 182px;
  gap: 0.8px;
}
.wrapper6 {
  flex-direction: column;
  padding: var(--padding-2) var(--padding-0) var(--padding-0);
  font-size: var(--fs-18_7);
  color: var(--color-black);
}
.b7 {
  width: 340px;
  height: 23px;
  position: relative;
  display: inline-block;
}
.container39 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 14px var(--padding-0) var(--padding-0);
  z-index: 9;
  flex-shrink: 0;
}
.whowfcja {
  align-self: stretch;
  position: relative;
}
.container40,
.content-inner {
  display: flex;
  align-items: flex-start;
}
.container40 {
  align-self: stretch;
  flex-direction: column;
  padding: var(--padding-0) var(--padding-0) var(--padding-48);
  z-index: 10;
  flex-shrink: 0;
}
.content-inner {
  padding: var(--padding-0) var(--padding-1);
  box-sizing: border-box;
  max-width: 100%;
}
.instructions,
.instructions-parent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 22px;
  max-width: 100%;
}
.instructions {
  gap: 18px;
}
.heading-28 {
  align-self: stretch;
  align-items: center;
  padding: var(--padding-5_5) 349px var(--padding-2_5) 368px;
}
.heading-28,
.row-data3,
.table-body2 {
  display: flex;
  flex-direction: column;
}
.table-body2 {
  width: 883px;
  align-items: flex-start;
  padding: var(--padding-1);
  box-sizing: border-box;
  gap: var(--gap-3);
  max-width: 100%;
  text-align: center;
  font-size: var(--fs-16);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.row-data3 {
  align-self: stretch;
  border-radius: var(--br-5);
  background-color: var(--color-seashell);
  align-items: center;
  padding: 16px 12px 10px;
  position: relative;
  isolation: isolate;
}
.overlayshadow4 {
  width: 100%;
  height: 100%;
  position: absolute;
  margin: 0 !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-shadow: var(--shadow-drop-1);
  border-radius: var(--br-5);
  background-color: var(--color-gray);
  z-index: 0;
  flex-shrink: 0;
}
.div33 {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}
.row-data4 {
  align-self: stretch;
  border-radius: var(--br-5);
  background-color: var(--color-seashell);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-5);
  position: relative;
  isolation: isolate;
}
.container-icon {
  width: 871px;
  height: auto;
  position: relative;
  object-fit: contain;
  z-index: 1;
  flex-shrink: 0;
}
.table-body-row-data11 {
  width: var(--width-881);
  background-color: var(--color-whitesmoke);
  border-top: 3px solid var(--color-limegreen);
  border-bottom: var(--border-12);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--padding-6) var(--padding-7);
  max-width: 100%;
}
.heading-29 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--padding-5_5) 377px var(--padding-2_5) 414px;
}
.operation {
  display: flex;
  padding: var(--padding-0) 43px;
}

/* 料金表 */
.pricing {
  width: 100%;
  justify-content: center;
  align-items: center;
  padding: 0 !important;
  box-sizing: border-box;
}

.pricing__wrap {
  width: 100%;
  max-width: 801px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--gap-1);
  padding: 0;
  box-sizing: border-box;
  background-color: var(--color-white);
  border-radius: var(--br-5);
  box-shadow: var(--shadow-drop-1);
  overflow: hidden;
}

.price-table {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-size: var(--fs-16);
  color: var(--color-black);
  font-family: var(--font-inter), Inter, sans-serif;
}

.price-table__head {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 18px 12px;
  background-color: var(--color-darkseagreen);
  color: var(--color-darkslategray-200);
  font-size: var(--fs-16);
  font-weight: 700;
  text-align: center;
  line-height: 1.35;
  box-sizing: border-box;
}

.price-table__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  width: 100%;
}

.price-table__cell {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 10px;
  background-color: var(--color-beige);
  border: var(--border-2);
  border-left: var(--border-13);
  text-align: center;
  line-height: 1.4;
  box-sizing: border-box;
}

.price-table__cell--label {
  font-weight: 700;
}

.price-table__cell--price {
  font-weight: 400;
  border-right: var(--border-11);
}

.instructions-parent {
  align-items: center;
}

.instructions-parent .pricing {
  align-self: center;
  width: 100%;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.instructions-parent .pricing .section-bar {
  margin-bottom: 0;
}

.instructions-parent .pricing .pricing__wrap {
  margin-top: var(--gap-1);
}
.container41,
.operation,
.table-body-row-data12 {
  align-items: flex-start;
  box-sizing: border-box;
  max-width: 100%;
}
.table-body-row-data12 {
  width: 796px;
  border-radius: var(--br-5);
  background-color: var(--color-white);
  display: flex;
  flex-direction: column;
  padding: 29px var(--padding-5) var(--padding-5);
  position: relative;
  isolation: isolate;
}
.container41 {
  align-self: stretch;
  padding: var(--padding-0) var(--padding-0) var(--padding-24);
  z-index: 1;
  flex-shrink: 0;
  text-align: center;
  font-size: var(--fs-13_3);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.body,
.container41,
.row-data5,
.table4 {
  display: flex;
  flex-direction: column;
}
.table4 {
  width: 800.9px;
  align-items: flex-start;
  padding: var(--padding-1);
  box-sizing: border-box;
  max-width: 102%;
  flex-shrink: 0;
}
.body,
.row-data5 {
  align-self: stretch;
}
.body {
  align-items: flex-start;
  gap: var(--gap-1);
  max-width: 100%;
}
.row-data5 {
  background-color: var(--color-darkseagreen);
  align-items: center;
  padding: var(--padding-20);
  font-size: var(--fs-16);
  color: var(--color-darkslategray-200);
}
.data,
.row {
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}
.row {
  align-self: stretch;
  justify-content: center;
  gap: var(--gap-1);
}
.data {
  width: 561.8px;
  background-color: var(--color-beige);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  box-sizing: border-box;
  padding: var(--padding-20) var(--padding-19) var(--padding-19)
    var(--padding-20);
}
.container42,
.data,
.data2 {
  flex-direction: column;
}
.container42 {
  align-self: stretch;
  display: flex;
  align-items: center;
  padding: var(--padding-3) var(--padding-0) var(--padding-1);
}
.data2 {
  width: 236.1px;
  background-color: var(--color-beige);
  border-right: var(--border-11);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  box-sizing: border-box;
  padding: var(--padding-20) var(--padding-20) var(--padding-19);
  font-size: var(--fs-16);
}
.data2,
.data3,
.data4 {
  display: flex;
  align-items: flex-start;
}
.data3 {
  width: 561.8px;
  background-color: var(--color-beige);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  box-sizing: border-box;
  flex-direction: column;
  padding: 44px var(--padding-19) var(--padding-19) var(--padding-20);
  max-width: 100%;
}
.data4 {
  width: 236.1px;
  border-right: var(--border-11);
  padding: 44px var(--padding-20) var(--padding-19);
  font-size: var(--fs-16);
}
.data4,
.data5,
.data6 {
  background-color: var(--color-beige);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  box-sizing: border-box;
  flex-direction: column;
}
.data5 {
  width: 561.8px;
  display: flex;
  align-items: flex-start;
  padding: var(--padding-20) var(--padding-19) 43px var(--padding-20);
  max-width: 100%;
}
.data6 {
  width: 236.1px;
  border-right: var(--border-11);
  padding: var(--padding-32) var(--padding-20) 31px;
  font-size: var(--fs-16);
}
.data6,
.data8,
.row4,
.table5 {
  display: flex;
  align-items: flex-start;
}
.row4 {
  align-self: stretch;
  justify-content: center;
  gap: var(--gap-1);
  max-width: 100%;
  font-size: var(--fs-16);
}
.data8,
.table5 {
  flex-direction: column;
  box-sizing: border-box;
}
.data8 {
  width: 236.1px;
  background-color: var(--color-beige);
  border-right: var(--border-11);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  padding: var(--padding-20) var(--padding-20) var(--padding-19);
}
.table5 {
  width: 800.9px;
  padding: var(--padding-1);
  max-width: 102%;
  z-index: 2;
  flex-shrink: 0;
  text-align: center;
  font-size: var(--fs-16);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.data9,
.row-data6 {
  display: flex;
  align-items: center;
}
.row-data6 {
  align-self: stretch;
  background-color: var(--color-darkseagreen);
  flex-direction: column;
  padding: 27.2px var(--padding-20);
  color: var(--color-darkslategray-200);
}
.data9 {
  width: 531px;
  background-color: var(--color-beige);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  padding: 27.3px var(--padding-20) var(--padding-27) var(--padding-21);
  max-width: 100%;
}
.data10,
.data11,
.data9 {
  box-sizing: border-box;
  flex-direction: column;
}
.data10 {
  width: 266.8px;
  background-color: var(--color-beige);
  border-right: var(--border-11);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  display: flex;
  align-items: center;
  padding: 27.3px var(--padding-21) var(--padding-27);
}
.data11 {
  width: 531px;
  padding: 27.4px var(--padding-19) var(--padding-27) var(--padding-20);
  max-width: 100%;
}
.data11,
.data12,
.data13 {
  background-color: var(--color-beige);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  display: flex;
  align-items: flex-start;
}
.data12 {
  width: 266.8px;
  border-right: var(--border-11);
  box-sizing: border-box;
  flex-direction: column;
  padding: 27.4px var(--padding-20) var(--padding-27);
}
.data13 {
  width: 531px;
  padding: 54.1px var(--padding-19) var(--padding-30) var(--padding-20);
  max-width: 100%;
}
.data13,
.data14,
.frame-parent {
  flex-direction: column;
  box-sizing: border-box;
}
.data14 {
  width: 266.8px;
  background-color: var(--color-beige);
  border-right: var(--border-11);
  border-bottom: var(--border-2);
  border-left: var(--border-13);
  display: flex;
  align-items: flex-start;
  padding: 54.1px var(--padding-20) var(--padding-30);
}
.frame-parent {
  padding: var(--padding-0) var(--padding-0) var(--padding-16);
  gap: 18px;
  text-align: center;
  font-size: var(--fs-18_7);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.frame-parent,
.table-body-row-data-wrapper2,
.time-table {
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}
.table-body-row-data-wrapper2 {
  padding: var(--padding-0) var(--padding-2);
  box-sizing: border-box;
}
.time-table {
  flex-direction: column;
  font-size: var(--fs-16);
}
.container54 {
  flex-direction: column;
  padding: var(--padding-1) var(--padding-0) var(--padding-5);
  box-sizing: border-box;
  gap: var(--gap-1);
}
.container54,
.table-body-row,
.table-body-row-wrapper {
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}
.table-body-row-wrapper {
  height: 284px;
  padding: var(--padding-0) var(--padding-1);
  box-sizing: border-box;
}
.table-body-row {
  justify-content: center;
  gap: var(--gap-1);
}
.data15 {
  width: 392.6px;
  flex-direction: column;
  padding: var(--padding-1);
  box-sizing: border-box;
  max-width: 100%;
}
.body3,
.data15,
.row8,
.table6 {
  display: flex;
  align-items: flex-start;
}
.table6 {
  width: 340.8px;
  background-color: var(--color-saddlebrown);
  flex-direction: column;
  padding: var(--padding-1);
  box-sizing: border-box;
}
.body3,
.row8 {
  align-self: stretch;
  gap: var(--gap-1);
}
.body3 {
  flex-direction: column;
}
.row8 {
  background-color: var(--color-moccasin);
}
.data16,
.data17,
.data22 {
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}
.data16 {
  width: 73.3px;
  padding: 16.7px var(--padding-5);
}
.data17,
.data22 {
  width: var(--width-34_8);
  padding: var(--padding-28_7) var(--padding-5);
}
.data22 {
  width: var(--width-42_3);
}
.row9 {
  align-self: stretch;
  display: flex;
  align-items: flex-start;
  gap: var(--gap-1);
}
.data24,
.data25,
.data30 {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
.data24 {
  width: 73.3px;
  background-color: var(--color-lemonchiffon);
  align-items: center;
  padding: 16.7px var(--padding-5);
}
.data25,
.data30 {
  background-color: var(--color-lightyellow);
  padding: var(--padding-28_7) var(--padding-5);
}
.data25 {
  width: var(--width-34_8);
  align-items: center;
}
.data30 {
  width: var(--width-42_3);
}
.data30,
.data32,
.data33 {
  align-items: center;
}
.data32 {
  width: 73.3px;
  background-color: var(--color-lemonchiffon);
  display: flex;
  flex-direction: column;
  padding: 33.6px var(--padding-5);
  box-sizing: border-box;
}
.data33 {
  width: var(--width-34_8);
  background-color: var(--color-lightyellow);
  padding: var(--padding-45_6) var(--padding-5);
}
.data33,
.data38,
.data40,
.table7 {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
.data38 {
  width: var(--width-42_3);
  background-color: var(--color-lightyellow);
  align-items: center;
  padding: 21.6px var(--padding-5);
}
.data40,
.table7 {
  align-items: flex-start;
}
.data40 {
  width: 489.4px;
  padding: 32.5px var(--padding-1);
  max-width: 100%;
  text-align: left;
}
.table7 {
  width: 403.8px;
  padding: 44px 31px;
}
.horizontalborder {
  align-self: stretch;
  border-bottom: 1px dashed var(--color-black);
  display: flex;
  align-items: center;
  justify-content: center !important; /* 横方向のど真ん中に配置 */
  width: 100%; /* 点線を端までしっかり引くため */
  row-gap: var(--gap-20);
  white-space: nowrap !important;
}
.div65 {
  position: relative;
  line-height: var(--lh-32);
}
.b19,
.background13 {
  width: var(--width-48);
}
.background13 {
  height: var(--height-24);
  background-color: var(--color-white);
  display: flex;
  align-items: flex-start;
  color: var(--color-tomato);
}
.b19 {
  margin-top: -4px;
  height: var(--height-32);
  position: relative;
  line-height: var(--lh-32);
  display: inline-block;
  flex-shrink: 0;
}
.horizontalborder2 {
  color: var(--color-tomato);
  margin :auto;
  
}
.horizontalborder2,
.horizontalborder3 {
  align-self: stretch;
  border-bottom: 1px dashed var(--color-black);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.b22 {
  width: 383px;
  height: var(--height-19);
  position: relative;
  display: inline-block;
  text-align: left;
}
.extra-notices {
  display: flex;
  flex-direction: column;
  gap: 5px;
  text-align: left;
}
.container55,
.extra-notices,
.table-body-row2 {
  align-items: flex-start;
  max-width: 100%;
}
.container55 {
  width: var(--width-885);
  display: flex;
  flex-direction: column;
}
.table-body-row2 {
  width: 883px;
  display: grid;
  justify-content: center;
  padding: 14px var(--padding-0) 40px;
  box-sizing: border-box;
  gap: 29px;
  grid-template-columns: repeat(3, minmax(199px, 1fr));
}
.data-table-body-row-da {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.container-icon2,
.container-icon4 {
  width: 265.7px;
  height: auto;
  object-fit: cover;
}
/* フッター（元サイト Locofy 指定の字体・サイズを再現） */
.footer {
  align-self: stretch;
  background-color: var(--color-lightblue-200);
  padding: 1px 15px 25px;
  text-align: center;
  font-family: var(--font-inter), Inter, "Hiragino Sans", "Hiragino Kaku Gothic ProN",
    Meiryo, sans-serif;
  font-size: var(--fs-24);
  font-weight: 400;
  line-height: normal;
  color: var(--color-darkslategray-100);
  box-sizing: border-box;
}

.footer__inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-1);
  padding: var(--padding-0) var(--padding-8) var(--padding-1) var(--padding-0);
  box-sizing: border-box;
}

.footer__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: var(--padding-1);
  box-sizing: border-box;
}

.footer__logo {
  width: 313px;
  max-width: 100%;
  height: 44px;
  object-fit: cover;
  display: block;
}

.footer__tagline {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: var(--fs-18_7);
  font-weight: 400;
  line-height: normal;
  letter-spacing: normal;
}

.footer__tagline > b {
  color: var(--color-firebrick);
  font-weight: 700;
}

.footer__tagline .span {
  color: var(--color-black);
  font-weight: 400;
}

.footer__tagline .b28 {
  color: var(--color-tomato);
  font-weight: 700;
}

.footer__clinic {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: 700;
  line-height: normal;
  color: var(--color-darkslategray-100);
  font-family: inherit;
}

.footer__clinic--name {
  margin: 0;
}

.footer__phone-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 5.5px 16px 5px;
  border: 1px solid var(--color-darkcyan);
  background-color: transparent;
  color: var(--color-darkcyan);
  font-size: var(--fs-13_3);
  font-weight: 800;
  line-height: normal;
  text-decoration: none;
  text-align: center;
  box-sizing: border-box;
}

.footer__phone-line {
  display: block;
  font-size: inherit;
  font-weight: inherit;
  line-height: normal;
}

.footer__phone-line--num {
  margin-top: 2px;
  font-size: 11.7px;
  font-weight: 800;
}

.footer__note {
  margin: 0;
  padding: 0 8px;
  font-size: var(--fs-16);
  font-weight: 400;
  line-height: normal;
  color: var(--color-black);
}

.footer__note b {
  color: var(--color-tomato);
  font-weight: 700;
}

.footer__nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: var(--padding-1);
  box-sizing: border-box;
}

.footer__nav-row {
  margin: 0;
  padding: var(--padding-5) var(--padding-0) var(--padding-3);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0;
  font-size: 10.5px;
  font-weight: 400;
  line-height: normal;
  color: var(--color-blue);
}

.footer__nav a {
  color: var(--color-blue);
  text-decoration: underline;
  font-weight: 600;
  font-size: inherit;
  line-height: normal;
}

.footer__sep {
  color: var(--color-black);
  font-weight: 700;
  font-size: inherit;
  text-decoration: none;
}

.footer__copy {
  margin: 0;
  padding: 4.5px var(--padding-0) var(--padding-4);
  width: 100%;
  max-width: 1187.6px;
  font-family: "Times New Roman", Times, "Yu Mincho", "MS PMincho", serif;
  font-size: 15.1px;
  font-weight: 400;
  line-height: normal;
  color: var(--color-black);
  box-sizing: border-box;
}

.footer__copy span {
  font-weight: 600;
}

.footer__copy b {
  font-weight: 700;
  font-family: inherit;
}

/* 本文・サイドバー等で引き続き使用 */
.span {
  color: var(--color-black);
}
.b28 {
  color: var(--color-tomato);
}
.who {
  margin: 0;
  position: relative;
  font-size: inherit;
  font-weight: 700;
  font-family: inherit;
}
.background14 {
  background-color: var(--color-darkcyan);
}
.background14,
.background16,
.container66 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.background16 {
  background-color: var(--color-darkcyan);
  font-size: 11.7px;
}
.number-area-blank {
  position: relative;
  font-weight: 800;
}
.span2 {
  text-decoration: underline;
  font-weight: 600;
}
.span6 {
  text-decoration: underline;
  font-weight: 600;
  color: var(--color-blue);
}
.span8 {
  font-weight: 600;
}
.backgroundborder {
  width: 100%;
  margin: 0 !important;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--color-white);
  border-top: var(--border-1);
  border-bottom: var(--border-1);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  z-index: 1;
  text-align: center;
  font-size: var(--fs-18_7);
  color: var(--color-black);
  font-family: var(--font-inter);
}
.menu {
  width: 475px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 400px;
}
.container70 {
  align-self: stretch;
  height: 94px;
  display: flex;
  align-items: flex-end;
  padding: var(--padding-0) 82px var(--padding-5);
  box-sizing: border-box;
}
.site-branding {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: var(--padding-0) var(--padding-0) var(--padding-3);
}
.link-1685759154084391400png {
  width: 86px;
  height: 86px;
  position: relative;
  object-fit: cover;
}
/* .b32 {
  height: 23px;
  width: 224px;
  top:-40px;
  position: relative;
  display: inline-block;
} */
.navmargin {
  height: 94px;
  width: 712.5px;
  align-items: flex-start;
  padding: var(--padding-10) var(--padding-0) var(--padding-0);
  text-align: right;
  font-size: var(--fs-14);
}

/* ハンバーガー・モバイルレイアウトは mobile.css を参照 */
.item,
.list,
.navmargin {
  box-sizing: border-box;
  display: flex;
}
.list {
  width: 713.5px;
  align-items: flex-start;
  padding: var(--padding-0) var(--padding-0) var(--padding-0) 78px;
}
.item {
  border: var(--border-1);
  flex-direction: column;
  align-items: center;
  padding: var(--padding-27) var(--padding-0) var(--padding-0);
  gap: var(--gap-28);
  min-width: 119.05px;
}
.link {
  position: relative;
  letter-spacing: var(--ls-0_84);
  line-height: var(--lh-24);
}
.horizontalborder4 {
  align-self: stretch;
  height: var(--height-3);
  position: relative;
  border-bottom: var(--border-3);
  box-sizing: border-box;
  opacity: var(--opacity-0);
}
.item2 {
  border: var(--border-1);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--padding-27) var(--padding-0) var(--padding-0);
  gap: var(--gap-28);
  margin-left: -1px;
  position: relative;
}
.horizontalborder5,
.horizontalborder6,
.horizontalborder8 {
  width: 117.1px;
  height: var(--height-3);
  position: relative;
  border-bottom: var(--border-3);
  box-sizing: border-box;
  opacity: var(--opacity-0);
}
.horizontalborder6,
.horizontalborder8 {
  width: 87.4px;
}
.horizontalborder8 {
  width: 131.9px;
}
.container71,
.margin {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 200px;
}
.margin {
  width: 237.5px;
  justify-content: center;
  padding: var(--padding-8) var(--padding-0);
  box-sizing: border-box;
}
.container71 {
  align-self: stretch;
}
.container72 {
  align-self: stretch;
  /* padding: var(--padding-0) 23px; */
}
.body-row-data5,
.container72,
.table8 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.table8 {
  width: 191.4px;
  padding: var(--padding-1);
  box-sizing: border-box;
}
.body-row-data5 {
  align-self: stretch;
  padding: var(--padding-2) var(--padding-1);
}
.background17,
.link7 {
  align-self: stretch;
  border-radius: var(--br-3);
}
.background17 {
  display: none;
}
.link7 {
  cursor: pointer;
  border: 0;
  padding: var(--padding-10) var(--padding-0);
  background-color: transparent;
  background: #b0cfd2, #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.phone-number-area {
  position: relative;
  font-size: var(--fs-18_7);
  font-family: var(--font-inter);
  color: var(--color-white);
  text-align: center;
}

@media screen and (max-width: 1200px) {
  .container4 {
    flex-wrap: wrap;
  }
  .content,
  .sidebar {
    flex: 1;
  }
  .container-parent {
    padding-bottom: 12px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 1050px) {
  .h2 {
    font-size: var(--fs-24);
  }
  .content {
    height: auto;
    gap: 24px;
    min-width: 100%;
  }
  .information-area {
    padding-bottom: 16px;
    box-sizing: border-box;
  }
  .h1 {
    font-size: 29px;
  }
  .table-body-row-data-container,
  .table-body-row-data-frame {
    padding-left: var(--padding-21);
    padding-right: var(--padding-21);
    box-sizing: border-box;
  }
  .heading-26 {
    height: auto;
    flex-wrap: wrap;
  }
  .heading-28,
  .heading-29 {
    padding-left: 184px;
    padding-right: 174px;
    box-sizing: border-box;
  }
  .heading-29 {
    padding-left: 207px;
    padding-right: 188px;
  }
  .operation {
    padding-left: var(--padding-21);
    padding-right: var(--padding-21);
    box-sizing: border-box;
  }
  .row,
  .row4 {
    flex-wrap: wrap;
  }
  .data13,
  .data14 {
    flex: 1;
  }
  .table-body-row-wrapper {
    height: auto;
  }
  .table-body-row {
    flex-wrap: wrap;
  }
  .data15,
  .data40 {
    flex: 1;
  }
}
@media screen and (max-width: 450px) {
  .h2 {
    font-size: 18px;
  }
  .content {
    gap: 17px;
  }
  .information-area {
    padding-bottom: var(--padding-20);
    box-sizing: border-box;
  }
  .h1 {
    font-size: var(--fs-22);
  }
  .timeslot {
    gap: 19px;
  }
  .availability {
    gap: 16px;
  }
  .heading-24,
  .heading-25,
  .heading-26 {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .instructions-parent {
    gap: var(--gap-28);
  }
  .instructions {
    gap: 18px;
  }
  .heading-28 {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .row-data4 {
    padding: var(--padding-5);
    box-sizing: border-box;
  }
  .heading-29 {
    padding-left: var(--padding-20);
    padding-right: var(--padding-20);
    box-sizing: border-box;
  }
  .frame-parent {
    gap: 15px;
  }
  .horizontalborder,
  .row8,
  .row9 {
    flex-wrap: wrap;
  }
  .table-body-row2 {
    grid-template-columns: minmax(199px, 1fr);
  }
  .who {
    font-size: var(--fs-19);
  }


@media screen and (max-width: 768px) {
  .pc-only{
    display: none !important;
  }
}

@media screen and (min-width: 769px) {
  .sp-only{
    display: none !important;
  }
}

/* =========================================
   PCメニューのホバーアクション（画面幅769px以上）
   ========================================= */
@media screen and (min-width: 769px) {
  
  /* 1. メニューの枠（箱）の設定 */
  .list .item, 
  .list .item2 {
    cursor: pointer;
    /* 色の変化を0.3秒かけてフワッとさせる */
    transition: all 0.3s ease; 
    /* 普段は透明な下線を引いておく（ガタつき防止） */
    border-bottom: 5px solid transparent !important; 
  }

  /* 2. マウスが乗った時の文字色（紫っぽく変化） */
  .list .item:hover .link,
  .list .item2:hover .link {
    color: #3b2a75 !important; /* 画像の文字色に近い紫・紺色 */
    transition: color 0.3s ease;
  }

  /* 3. マウスが乗った時の下線（水色のバーが出現） */
  .list .item:hover,
  .list .item2:hover {
    border-bottom: 5px solid #a1c8c7 !important; /* 画像に近い水色バー */
  }

  /* 4. Locofyが作った元々の細い線を非表示にする（二重線防止） */
  .list .item:hover div[class^="horizontalborder"],
  .list .item2:hover div[class^="horizontalborder"] {
    opacity: 0 !important;
  }
}

}

/* --- スマホ画面でタイトル文字が上に飛んで消えるのを防ぐ --- */
/* @media screen and (max-width: 768px) {
  .b32 {
    position: static !important;
  }
} */
@media screen and (max-width: 768px) {
  .table-body-row2 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
  }

  .table-body-row2 img {
    margin: 0 auto 20px !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

/* --- 院長紹介ギャラリー画像の設定 --- */

/* PC画面：高さを250pxでビシッと揃えて綺麗に見せる */
.dir-gallery-img {
  height: 250px;
  object-fit: cover;
}

/* スマホ画面（768px以下）：見切れないように本来の比率で全体を表示する */
@media screen and (max-width: 768px) {
  .dir-gallery-img {
    height: auto !important; 
  }
}

/* --- 院長紹介 ギャラリー指定 --- */

/* PC画面：強制的に横3列に固定 */
.dir-gallery-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px;
  margin-top: 40px;
  width: 100%;
}

.dir-gallery-img {
  width: 100%;
  height: 250px;
  object-fit: cover;
}

/* スマホ画面（768px以下）：縦1列に切り替え＆見切れ防止 */
@media screen and (max-width: 768px) {
  .dir-gallery-container {
    grid-template-columns: 1fr !important;
  }
  .dir-gallery-img {
    height: auto !important;
  }
}

/* =========================================
   PCメニューのホバーアクション（画面幅769px以上）
   ========================================= */
@media screen and (min-width: 769px) {
  
  /* 1. メニューの枠（箱）の設定 */
  .list .item, 
  .list .item2 {
    cursor: pointer;
    /* 色の変化を0.3秒かけてフワッとさせる */
    transition: all 0.3s ease; 
    /* 普段は透明な下線を引いておく（ガタつき防止） */
    border-bottom: 5px solid transparent !important; 
  }

  /* 2. マウスが乗った時の文字色（紫っぽく変化） */
  .list .item:hover .link,
  .list .item2:hover .link {
    color: #3b2a75 !important; /* 画像の文字色に近い紫・紺色 */
    transition: color 0.3s ease;
  }

  /* 3. マウスが乗った時の下線（水色のバーが出現） */
  .list .item:hover,
  .list .item2:hover {
    border-bottom: 5px solid #a1c8c7 !important; /* 画像に近い水色バー */
  }

  /* 4. Locofyが作った元々の細い線を非表示にする（二重線防止） */
  .list .item:hover div[class^="horizontalborder"],
  .list .item2:hover div[class^="horizontalborder"] {
    opacity: 0 !important;
  }
}


/* --- ロゴ横のテキスト調整（先生の要望反映） --- */

/* PC版の基本設定と、過去の23px固定の解除 */
/* PC版の基本設定と、過去の固定値の解除 */
.b32 {
  height: auto !important;
  width: auto !important;
  white-space: nowrap !important;
  line-height: 1.4 !important;
  font-weight: bold !important;
  top: -60px !important; /* ←追加: 2行になって伸びた分、さらに上に引っ張り上げる */
  vertical-align: middle !important; /* まずはロゴの高さの中央付近に揃える */
  transform: translateY(-15px) !important; /* 強制的に上下を動かす魔法（-で上へ） */
}
/* 上段の肩書き */
.logo-sub {
  font-size: 14px;
}

/* 下段の院名 */
.logo-main {
  font-size: 20px;
}

/* --- スマホ画面（768px以下）の時の自動縮小 --- */
@media screen and (max-width: 768px) {
  .logo-sub {
    font-size: 11px; /* スマホでは少し小さくして一行に収める */
  }
  .logo-main {
    font-size: 15px; /* スマホの画面幅に合わせて縮小 */
  }
}

