@font-face {
  font-family: "MyHannari";
  src: url("fonts/Hannari.eot"); /* IE9 Compat Modes */
  src: url("fonts/Hannari.eot?#iefix") format("embedded-opentype"),
    /* IE6-IE8 */ url("fonts/Hannari.woff") format("woff"),
    /* Modern Browsers */ url("fonts/Hannari.otf") format("opentype"); /* Safari, Android, iOS */
  /*
    * “ほのか明朝” licensed under the IPA Font License Agreement v1.0
    * http://font.gloomy.jp/honoka-mincho-dl.html（”ほのか明朝”配布元のURL）
    * http://ipafont.ipa.go.jp/（IPAフォントのURL）
    * http://ipafont.ipa.go.jp/ipa_font_license_v1.html（IPAフォントライセンスv1.0のURL）
*/
}
* {
  font-weight: lighter;
}
body {
  font-family: "MyHannari", serif;
  background-color: #f8f8f8;
}
section {
  margin: 1rem;
}
dd,
p {
  line-height: 1.2;
}

/* すべてのボタン要素と、フォーカス可能な要素の枠線をリセット */
button:focus,
.hamburger:focus,
a:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* 診療時間 */
.reception_time {
  position: fixed; /* absoluteではなくfixedに変更 */
  top: 105px;
  right: -40px; /* 右側に隠すための位置。幅に合わせて調整してください */
  z-index: 100;
  text-align: center;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  background-color: white;
  border-radius: 50px 0 0 50px;
  box-shadow: 0 0 68px rgba(9, 53, 94, 0.2);
  transition: right 0.6s ease-out; /* rightプロパティの変化を滑らかにする */
}
.reception_time_2 {
  text-align: center;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  border: solid 1px #e8e8e8;
  background-color: white;
  box-shadow: 20px rgba(9, 53, 94, 0.2);
}
/* ボタンのスタイル */
.button_icon_txt2 {
  display: flex;
  gap: 8px;
  align-items: center;
  max-width: 15rem;
  height: 2rem;
  padding: 4px;
  font-family: sans-serif;
  font-size: 0.8rem;
  color: #fff;
  text-align: center;
  justify-content: center;
  overflow-wrap: anywhere; /* 改行位置について */
  background-color: #219ebc;
  border-radius: 1rem; /* (buttonの高さ / 2) の値 */
}
.button_icon_txt2:hover {
  text-decoration: none;
  color: #fff;
}
@media (any-hover: hover) {
  .button_icon_txt2 {
    transition: background-color 0.2s;
  }
  .button_icon_txt2:hover {
    background-color: #1a7d96;
  }
}
/* スクロール時に適用するスタイル（表示された状態） */
.reception_time.scrolled {
  right: -520px; /* スクロールしたら元の位置に戻す */
}
.reception_time i,
.reception_time_2 i {
  color: #219ebc;
}
.reception_time_inner {
  display: flex;
  padding: 36px 60px 36px 4px;
  transition: all 0.4s ease-out;
}
.reception_time_txt {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px 36px 4px 24px;
  margin-right: 36px;
  border-right: solid 2px #ddd;
  writing-mode: vertical-rl;
  white-space: nowrap;
  font-size: 1rem;
}
.reception_time_txt i {
  margin-left: 5px;
}
.reception_time_table th:first-child {
  padding: 12px 8px;
}
.reception_time_table th {
  padding: 12px 0;
  border-bottom: solid 1px #e8e8e8;
  vertical-align: middle;
}
.reception_time_table th:not(:first-child) {
  width: 44px;
}
.reception_time_time {
  margin-top: 8px;
}
