@charset "utf-8";

.page-header{ margin: 1.5em calc(1vw + 1em) .5em; background: var(--primary); border-radius: var(--vk-size-radius-lg); font-size: .8em;}
.page-header-inner.container{ margin-top: .5em; padding: 1.5em calc((2vw + 2em) - (1vw + 1em));}
.page-header-inner.container:before{ display: none;}
.site-body-container.container{ max-width: none;}
@media (min-width: 576px){ .site-body-container.container{ padding-left: calc(1vw + 1em); padding-right: calc(1vw + 1em);}}
.main-section--base--on{ padding-top: 3em;}
h1.entry-title{ text-align: center;}
.entry-header{ font-size: .8em;}
.has-fixed-layout{ table-layout: fixed;}
.wp-block-table.table-container{
	overflow: auto;
	max-width: 100%;
	height: 50em;
	max-height: 85vh;
	border: 1px solid var(--border-hr);
	border-left: none;
}
.wp-block-table.table-container.table-night{ height: auto; max-height: none;}
.wp-block-table.table-container table{
	border-collapse: separate;
	border-spacing: 0;
}
.wp-block-table.table-container tr:last-child td{ border-bottom: none;}
.wp-block-table.table-container td > a{ text-decoration: none;}
.wp-block-table.table-container td > a:hover{ text-decoration: underline;}
.wp-block-table.table-container td:nth-child(2),
.wp-block-table.table-container td:nth-child(4){ text-align: left;}
.wp-block-table.table-container td, .wp-block-table.table-container th{
	border-left: 1px solid var(--border-hr);
	line-height: 1.4;
	background: white;
	box-sizing: border-box;
	white-space: nowrap;
	text-align: center;
}
.sml1{ font-size: .85em;}
.sml1 th, .sml1 td{ padding: .1em .35em}

.wp-block-table.table-container thead tr th{
	position: sticky;
	top: 0;
	z-index: 10;
	height: 2em;
}
.wp-block-table.table-container.table-gairai thead tr th{ background: #ffe98a;}
.wp-block-table.table-container.table-zaitaku thead tr th{ background: #cdecca;}
.wp-block-table.table-container.table-etc thead tr th{ background: #fcd6d0;}
.wp-block-table.table-container.table-night thead tr th{ background: var(--bg); height: 2em;}
.wp-block-table.table-container thead th.col-1,
.wp-block-table.table-container thead th.col-2{ height: 6em}
.wp-block-table.table-container thead tr:nth-child(2) th{ top: 2em;}
.wp-block-table.table-container.table-gairai thead tr:nth-child(3) th{ top: 4em;}
.wp-block-table.table-container.table-gairai thead tr:nth-child(4) th{ top: calc(6em + 3px);}

.wp-block-table.table-container.table-zaitaku thead tr:nth-child(2) th{ height: 3em;}
.wp-block-table.table-container.table-zaitaku thead tr:nth-child(3) th{ top: 5em; height: 3em;}
.wp-block-table.table-container.table-etc thead tr:nth-child(3) th{ top: 4em; height: 4em;}

/*for Edge*/
_:lang(x)+_:-internal-autofill-previewed::-ms-clear, .wp-block-table.table-container thead tr:nth-child(4) th{ top: calc(6em + 4px);}

.wp-block-table.table-container :is(th.col-2, td.col-2){ border-right: solid 2px var(--border-hr);}
.col-1, .col-2{ position: sticky; z-index: 5;}
.col-1{ left: 0; width: 7em; min-width: 7em; max-width: 7em;}
.col-2{ left: 7em; width: 24em}
.wp-block-table.table-container thead th.col-1,
.wp-block-table.table-container thead th.col-2{ z-index: 20;}
.wp-block-table.table-container thead tr:nth-child(1) th{ background: var(--primary); color: white;}

@media (min-width:1320px){
	.scroll-hint-icon-wrap.is-active.is-night{ display: none;}
	.wp-block-table.table-night :is(th.col-2, td.col-2){ border-right-width: 1px;}
	.wp-block-table.table-container.table-night{ border-right: solid 1px var(--border-hr);}
	.wp-block-table.table-container.table-night :is(th.col-2, td.col-2){ border-right: none;}
}

.table-outer {
  position: relative; /* アイコン配置の基準 */
}
.scroll-hint-icon-wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
  pointer-events: none; /* アイコンが邪魔でスクロールできないのを防ぐ */
  transition: opacity 0.5s ease; /* 消える時のアニメーション */
  opacity: 0;
  display: none;
}
/* is-activeクラスがある時だけ表示 */
.scroll-hint-icon-wrap.is-active {
  display: block;
  opacity: 1;
}
/* アイコンのデザイン（墨田区サイト風） */
.scroll-hint-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--black-a050);
  color: white;
  font-size: .75em;
  line-height: 1.5;
  padding: 1em;
  border-radius: .15rem;
  max-width: 11em;
  box-sizing: border-box;
}
/* 指のアイコン（疑似要素で簡易的に作成） */
.scroll-hint-icon::before {
  content: ''; 
  font-size: 30px;
  width: 30px;
  height: 30px;
  background: url("img/ic_google_swipe.svg") no-repeat 50% 50%;
  margin-bottom: 5px;
  animation: scroll-move 1.5s infinite;
}
@keyframes scroll-move {
  0% { transform: translateX(-10px); }
  50% { transform: translateX(10px); }
  100% { transform: translateX(-10px); }
}

/* SP ------------------------------------------------*/
.pharmacy_list_sp{
	margin-bottom: 1em;
	display: block;
	padding: 1em;
	border-radius: .5em;
	border: solid 2px var(--primary-a025);
}
.pharmacy_list_sp.sp-zaitaku{ border-color: #cdecca;}
.pharmacy_list_sp.sp-etc{ border-color: #fcd6d0;}
.pharmacy_list_sp.sp-night{ border-color: var(--light);}
.pharmacy_list_sp h2{ margin-bottom: .5em;}
.pharmacy_list_sp h2 a{ color: var(--primary);}
.pharmacy_list_sp h2+p,
.pharmacy_list_sp figure{ margin-bottom: .25em;}
.pharmacy_list_sp h2+p+h3+figure{ margin-bottom: 1em;}
.pharmacy_list_sp h3{ margin: 0 0 .35em;}
