/*-------------------------------------
common
-------------------------------------*/
:root {
  --_base-font-family: 'TsukuARdGothicStd-M', var(--font-family);
  --_base-font-family-bold: 'TsukuARdGothicStd-B', var(--font-family);
  --_en-script-font: 'Thesignature', var(--font-family);

  --_color-text: #434343;

  --color-caution: #ff1f54;
  --color-caution-bg: #ffebf0;
  --color-link: #698cc8;
	--color-link-bg: #adc7f236;

  --color-support: #FFFAF4;

  --color-border: #ddd;

  --easing-a: cubic-bezier(.77, 0, .18, 1);
  --easing-b: cubic-bezier(.165, .84, .44, 1);

  --shadow-static:
    0.6px 0.6px 0.6px rgba(0, 0, 0, 0.02),
    1.3px 1.3px 1.3px rgba(0, 0, 0, 0.028),
    2.5px 2.5px 2.5px rgba(0, 0, 0, 0.035),
    4.5px 4.5px 4.5px rgba(0, 0, 0, 0.042),
    8.4px 8.4px 8.4px rgba(0, 0, 0, 0.05),
    20px 20px 20px rgba(0, 0, 0, 0.07);
  --shadow-hover:
    1.1px 1.1px 2.2px rgba(0, 0, 0, 0.02),
    2.7px 2.7px 5.3px rgba(0, 0, 0, 0.014),
    5px 5px 10px rgba(0, 0, 0, 0.012),
    8.9px 8.9px 17.9px rgba(0, 0, 0, 0.01),
    16.7px 16.7px 33.4px rgba(0, 0, 0, 0.008),
    40px 40px 80px rgba(0, 0, 0, 0.006);

  --radius-s: 4px;
  --radius-m: 8px;
  --radius-l: 16px;

  /* スクロールバーの幅を除いたWindow幅からコンテンツの最大幅を引いた数値 */
	--wcalc-window-side-width: calc((100vw - var(--scrollbar-width) - 1440px) / 2);

	--round-out-corner-LT: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M40%2C0L0%2C0l0%2C40c0-2.032%2C0-20.274%2C0.731-25.376C1.858%2C6.754%2C6.459%2C2.116%2C13.332%2C0.902C18.435%2C0%2C39%2C0%2C40%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-out-corner-RT: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M40%2C40V0L0%2C0c2.032%2C0%2C20.274%2C0%2C25.376%2C0.731c7.87%2C1.127%2C12.508%2C5.728%2C13.722%2C12.602C40%2C18.435%2C40%2C39%2C40%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-out-corner-LB: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M0%2C0l0%2C40h40c-2.032%2C0-20.274%2C0-25.376-0.731c-7.87-1.127-12.508-5.728-13.722-12.602C0%2C21.565%2C0%2C1%2C0%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-out-corner-RB: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M0%2C40h40V0c0%2C2.032%2C0%2C20.274-0.731%2C25.376c-1.127%2C7.87-5.728%2C12.508-12.602%2C13.722C21.565%2C40%2C1%2C40%2C0%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-in-corner-LT: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M0%2C40V0l40%2C0c0%2C2.032%2C0%2C20.274-0.731%2C25.376c-1.127%2C7.87-5.728%2C12.508-12.602%2C13.722C21.565%2C40%2C1%2C40%2C0%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-in-corner-RT: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M0%2C0h40v40c-2.032%2C0-20.274%2C0-25.376-0.731c-7.87-1.127-12.508-5.728-13.722-12.602C0%2C21.565%2C0%2C1%2C0%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-in-corner-LB: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M40%2C40H0L0%2C0c2.032%2C0%2C20.274%2C0%2C25.376%2C0.731c7.87%2C1.127%2C12.508%2C5.728%2C13.722%2C12.602C40%2C18.435%2C40%2C39%2C40%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--round-in-corner-RB: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M40%2C0v40H0c0-2.032%2C0-20.274%2C0.731-25.376C1.858%2C6.754%2C6.459%2C2.116%2C13.332%2C0.902C18.435%2C0%2C39%2C0%2C40%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}
@media only screen and (max-width: 639px) {
  :root {
    --_base-font-size-px: 15px;
  }
}

body {
  color: var(--_color-text);
  font-family: var(--_base-font-family);
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, strong, th, dt {
  font-family: var(--_base-font-family-bold);
}
address {
  font-style: normal;
}
img {
  pointer-events: none;
  -webkit-user-drag:none;
  -khtml-user-drag:none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
}

*::-moz-selection {
	background-color: rgba(0,0,0,0.1);
	color: var(--_color-text);
}
*::selection {
	background-color: rgba(0,0,0,0.1);
	color: var(--_color-text);
}

.round-box-RB::before {
  position: absolute;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0;
  left: -8px;
  background-image: var(--round-out-corner-RB);
}


/*-------------------------------------
animation
-------------------------------------*/
.shadow-animation {
  box-shadow: var(--shadow-static);
  transition: box-shadow 0.3s cubic-bezier(.77,0,.18,1);
}
.shadow-animation:hover {
  box-shadow: var(--shadow-hover);
}

.js-animation-txt {
  opacity: 0;
}
.js-animation-txt.is-active {
  opacity: 1;
}



/*-------------------------------------
layout
-------------------------------------*/
/* セクション仕切り線 */
section.section-divider::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background-image: linear-gradient(45deg, #EF849D, #758EC4 50%);
  top: 0;
  left: 0;
}



/*-------------------------------------
snow monkey layout
-------------------------------------*/
/* 投稿者の表示を削除 */
.c-meta__item--author {
  display: none !important;
}



/*-------------------------------------
snow monkey blocks
-------------------------------------*/
/* 異なる幅のsmb-sectionが連続してもmargin-topを0にする */
.smb-section+.smb-section {
  margin-top: 0;
}

/* 別窓外部リンクボタンにアイコンを表示 */
.smb-btn__link[target] {
  position: relative;
}
.smb-btn[target]::after {
  position: absolute;
  top: 50%;
  right: 16px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2010%2010%22%3E%3Cpath%20d%3D%22M0%2010V3h1v6h5V7h1v3H0Zm3-3V4H1V3h2V0h7v7H3Zm6-1V1H4v5h5Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
  -webkit-transition: all 0.6s var(--easing);
  transition: all 0.6s var(--easing);
}

/* スマホサイズ時にsmb-boxのpaddingを半減 */
@media (max-width: 639px) {
  .smb-box {
    padding: .9rem;
    padding: calc(var(--_space, 1.8rem)*.5);
  }
}

/* スマホサイズ時にsmb-containerのpaddingを削除 */
@media (max-width: 639px) {
  .smb-container {
    padding-right: 0;
    padding-left: 0;
  }
}

/* ゴーストボタン時のスタイルを変更 */
.smb-btn-wrapper.is-style-ghost .smb-btn {
  border-width: 2px;
  transition: .3s var(--easing-a);
}
.smb-btn-wrapper.is-style-ghost .smb-btn:hover {
  background-color: var(--accent-color) !important;
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .smb-btn:active, .smb-btn:focus, .smb-btn:hover {
    filter: initial;
  }
}

/* メディアとテキストブロック用 画像準備中表示 */
.preparation-img .smb-media-text__figure {
  position: relative;
}
.preparation-img .smb-media-text__figure::after {
  position: absolute;
  content: "画像準備中";
  font-size: 20px;
  font-weight: bold;
  top: 50%;
  left: 50%;
  transform: var(--absolute-center);
  -webkit-transform: var(--absolute-center);
  -ms-transform: var(--absolute-center);
}
.preparation-img .smb-media-text__figure img {
  background-color: #efefef;
}




/*-------------------------------------
header
-------------------------------------*/
.header-info__hospital {
  text-align: right;
}
.header-info__hospital--address {
  --_font-size-level: -2;
  font-size: var(--_font-size);
}
.header-info__hospital--tel {
  --_font-size-level: 3;
  font-size: var(--_font-size);
}
.header-info__hospital--tel a {
  text-decoration: none;
}
.c-tel-icon::before {
  content: "";
  display: inline-block;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xml%3Aspace%3D%22preserve%22%20style%3D%22enable-background%3Anew%200%200%20512%20512%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20d%3D%22M14%20217.2C5%20192.8-1.6%20167.8.4%20141.3%201.6%20125%207.7%20111%2019.7%2099.6%2032.7%2087.3%2045%2074.4%2057.8%2062c16.6-16.4%2037.5-16.3%2054.2%200%2010.3%2010.1%2020.5%2020.4%2030.7%2030.7%209.9%209.9%2019.9%2019.8%2029.7%2029.7%2017.4%2017.6%2017.5%2038.1.1%2055.5-12.5%2012.5-24.8%2025.1-37.5%2037.3-3.3%203.2-3.6%205.9-1.9%2010%208.3%2020%2020.4%2037.7%2033.9%2054.4%2027.2%2033.5%2058%2063.2%2094.7%2086.2%207.9%204.9%2016.5%208.5%2024.7%2013%204.3%202.3%207.1%201.6%2010.5-2%2012.4-12.8%2025.1-25.4%2037.7-37.9%2016.6-16.4%2037.4-16.5%2054.1%200%2020.4%2020.2%2040.7%2040.4%2060.8%2060.8%2016.9%2017.1%2016.8%2037.9-.2%2055.1-11.5%2011.6-23.7%2022.7-34.5%2034.8-15.8%2017.7-35.8%2023.5-58.4%2022.2-33.1-1.8-63.5-12.8-92.9-27-65.3-31.7-121-75.7-167.7-131.2-34.6-41.2-63.1-85.9-81.8-136.4zm498%2037.2C512%20114.2%20397.8%200%20257.6%200v48.4c113.5%200%20206%2092.4%20206%20206H512zm-139.3%200h48.4c0-90.1-73.4-163.5-163.5-163.5v48.4c30.8%200%2059.7%2012%2081.4%2033.7%2021.7%2021.7%2033.7%2050.6%2033.7%2081.4z%22%20style%3D%22fill%3A%23F18200%22%2F%3E%3C%2Fsvg%3E');
  width: 1em;
  height: 1em;
  vertical-align: baseline;
  background-size: contain;
  margin-right: calc(var(--_space)*.25);
}



/*-------------------------------------
drawer
-------------------------------------*/
.c-drawer.c-drawer--fixed {
  background: #fff;
}
.c-drawer__inner {
  box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14),
  0 3px 14px 2px rgba(0,0,0,0.12),
  0 5px 5px -3px rgba(0,0,0,0.2);
}
#menu-drawer-nav.c-drawer__menu {
  text-align: center;
  font-size: 14px;
}
#menu-drawer-nav.c-drawer__menu a {
  padding-top: calc(var(--_space)*.25);
  padding-bottom: calc(var(--_space)*.25);
  color: var(--_color-text);
}
#menu-drawer-nav.c-drawer__menu li {
  transition: 0.25s ease-out;
  outline: none;
  overflow: hidden;
  font-family: var(--_base-font-family-bold);
}
#menu-drawer-nav>li {
  border-bottom: 1px solid var(--accent-color);
  margin-top: 0;
  font-weight: bold;
}
.drawer-reserve {
  background-color: var(--accent-color);
}
.drawer-reserve a {
  color: #fff !important;
}
.drawer-logo {
	background: #fff !important;
	padding-top: 0;
	padding-bottom: calc(var(--_space)*.25);
}
.drawer-logo a {
  background-image: url("../img/logo.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  height: 118px;
  width: auto;
  text-indent: -1000%;
  white-space: nowrap;
  margin: auto;
  padding: 0;
  pointer-events: none;
}
#menu-drawer-nav .c-drawer__submenu>li {
  border-top: 1px dashed var(--accent-color);
}
#menu-drawer-nav .c-drawer .c-ic-angle-right:before {
  border-color: var(--accent-color);
}
#menu-drawer-nav .c-drawer__submenu .c-drawer__subitem {
  background: #fff !important;
  color: var(--accent-color) !important;
}
.c-drawer .c-ic-angle-right:before {
  border-color: var(--accent-color);
}
/* #menu-drawer-nav .current_page_item {
  background-color: var(--lightest-accent-color);
} */
#menu-drawer-nav>li {
  border-bottom: 1px solid var(--accent-color);
}
.drawer-reservation {
  margin-top: var(--_space);
}



/*-------------------------------------
footer
-------------------------------------*/
.l-footer {
  border-top: none;
}
.c-copyright--inverse {
  background-color: var(--accent-color);
  color: #fff;
}
.sp-footer-reserve-btn {
  padding: calc(var(--_space) * .125);
}
.sp-footer-reserve-btn a {
  font-size: .875em;
  background-color: var(--accent-color);
  font-weight: bold;
  color: #fff !important;
  border-radius: var(--radius-s);
  border: none;
  transition: transform ease-in 0.1s, box-shadow ease-in 0.25s;
}
.sp-footer-reserve-btn a>svg {
  height: 1em;
  width: auto;
}