/* add notice_COVID19*/
.page_notice,
#cat_notice .notice_COVID19{
	text-align: center;
}
.page_notice-block,
#cat_notice .notice_COVID19 a{
	display: block;
	position: relative;
	padding: 14px 20px 10px;
	text-align: center;
	border: 4px solid #D32F2F;
	border-left: 60px solid #D32F2F;
	border-radius: 10px;
	text-align: left;
}
.page_notice-block::before,
#cat_notice .notice_COVID19 a::before{
	content: '!';
	position: absolute;
	top: 50%;
	left: -42px;
	display: inline-block;
	width: 30px;
	height: 30px;
	color: #D32F2F;
	background: #FFF;
	border-radius: 50%;
	text-align: center;
	font-size: 30px;
	line-height: 1.1;
	font-weight: bold;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
#cat_notice .notice_COVID19-important{
	display: block;
	color:#D32F2F;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
}
#cat_notice .notice_COVID19-important span{
	display: block;
	color:#004f80;
	font-size: 22px;
}
.page_notice-block-text,
#cat_notice .notice_COVID19-text{
	padding: 4px 0 0;
}
.page_notice-block-text li,
#cat_notice .notice_COVID19-text li{
	font-size: 18px;
	line-height: 1.6;
}
#cat_notice .notice_COVID19-text li br{
	display:none;
}
@media screen and (max-width: 890px) {
	#cat_notice .notice_COVID19-text li br{
		display:block;
	}
}
@media screen and (max-width: 767px) {
	.page_notice,.page_notice-block,
	#cat_notice .notice_COVID19,
	#cat_notice .notice_COVID19 a{
		width: 100%;
	}
	.page_notice-block,
	#cat_notice .notice_COVID19 a{
		padding: 10px 8px 5px;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		border: 2px solid #D32F2F;
		border-left: 20px solid #D32F2F;
	}
	.page_notice-block::before,
	#cat_notice .notice_COVID19 a::before{
		left: -16px;
	    width: 14px;
	    height: 14px;
		font-size: 14px;
	    line-height: 1.1;
	}
	.page_notice-block-text li,
	#cat_notice .notice_COVID19-important,
	#cat_notice ul.notice_COVID19-text li{
		font-size: 12px;
	}
	.page_notice-block-text li,
	#cat_notice .notice_COVID19-important span{
		font-size: 14px;
	}
}
/* headお知らせ */
.head_info{
	position: relative;
	width: 100%;
	padding: 4px;
	background: #D32F2F;
	text-align: center;
	z-index:6;
}
.head_info a,
.head_info-COVID19{
	display: block;
	background: #fff;
	padding: 10px;
}
.head_info-important{
	display: inline-block;
	margin-left: -20px;
	width: auto;
	font-weight: bold;
	color: #D32F2F;
	padding-bottom: 6px;
	font-size: 14px;
}
.head_info-important::before{
	content: '!';
	display: inline-block;
	margin-right: 4px;
	width: 18px;
	height: 18px;
	font-size: 14px;
	color: #fff;
	background: #D32F2F;
	border-radius: 50%;
	text-align: center;
	line-height: 1.5;
}
.head_info-important span{
	display: inline-block;
	padding-left: 10px;
	font-size: 18px;
	color: #004f80;
	vertical-align: middle;
}
.head_info-text{
	font-size: 18px;
}
.head_info-text br{
	display: none;
}

button.close_head_info {
	position: absolute;
	top: 6px;
	right: 10px;
	width: 36px;
	height: 36px
}
button.close_head_info::before,button.close_head_info::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px;
	height: 36px;
	background: #D32F2F;
}
button.close_head_info::before {
	transform: translate(-50%, -50%) rotate(45deg)
}

button.close_head_info::after {
	transform: translate(-50%, -50%) rotate(-45deg)
}

.doctors_in .t_style01 td{
	font-family: "MFW-HiraginoUDSansFStdN-W6", sans-serif;
	vertical-align: top!important;
}
.t-specialty{
	font-family:'MFW-HiraginoUDSansFStdN-W3',sans-serif;
	display: inline-block;
	border-radius: 4px;
	color: #4b4b4b;
}
.brackets-sp {
	position: relative;
	display: inline-block;
	padding: 4px 10px;
	width: auto;
	background-color: #f4fafd;
	text-align: center;
	z-index: -1;
}
.brackets-sp::before,
.brackets-sp::after {
	content: '';
	position: absolute;
	top: 4px;  
	width: 4px;
	height: calc(100% - 8px);
	border-top: solid 1px #8f8f8f;
	border-bottom: solid 1px #8f8f8f; 
}
.brackets-sp::before {
	left: 4px;
	border-left: solid 2px #8f8f8f;
}
.brackets-sp::after {
	right: 4px;
	border-right: solid 2px #8f8f8f;
}
.doctors_in .t_style01.t_pc_schedule{
	border-collapse:separate;
	white-space: nowrap;
	table-layout: unset;
}
.doctors_in.col_ttl_fix .t_style01 thead th:first-child,
.doctors_in.col_ttl_fix .t_style01 tbody th{
	position: sticky;
	left: 0;
	border-left: 1px solid #DDD;
}
@media screen and (max-width: 820px) {
	.head_info-important span{
		font-size: 16px;
	}
	.head_info-text{
		font-size: 14px;
	}
	.head_info-text br{
		display: block;
	}
}
@media screen and (max-width: 820px) {
	.head_info-COVID19{
		padding: 12px 0 8px;
	}
	.head_info-important{
		padding-bottom: 2px;
		font-size: 13px;	
	}
	.head_info-important::before{
		margin-right: 4px;
		width: 14px;
		height: 14px;
		font-size: 12px;
		line-height: 1.3;
	}
	.head_info-important span{
		display: block;
		padding-left: 0;
		font-size: 14px;
		line-height: 1.6;
	}
	button.close_head_info {
		position: absolute;
		top: 4px;
		right: 6px;
		width: 30px;
		height: 30px;
	}
	button.close_head_info::before,button.close_head_info::after {
		height: 30px;
	}
}

/* home_diseases_search */
/* ----------------------------------------------------- */
.home_diseases_search_new li{
	margin-top: 2px;
}
.home_diseases_search_new li:first-child{
	margin-top: 0;
}
/**** PC ****/
@media print, screen and (min-width: 768px) {
	.home_diseases_search_new {
		margin: 30px 30px 0;
	}
	.home_diseases_search_new li{
		display: flex;
		align-items: center;
	}
	.home_diseases_search_new-text {
		display: inline-block;
		vertical-align: text-bottom;
	}
	a.home_diseases_search_new-text{
		cursor: pointer;
	}
}

/**** SP ****/
@media screen and (max-width: 767px) {
	.home_diseases_search_new {
		margin: 20px 16px 0;
	}
	.home_diseases_search_new-text {
		display: block;
		margin-top: 5px;
	}
}

.pages_contents h3.smart_checkin_title{
	display: inline-block;
	margin-top: 0;
	padding: 0 0 4px 16px;
	border-bottom: none;
	border-left: 10px solid #004F80;
}

.smart_checkin_title .att01{
	font-size: 17px;
}

.pages_contents .smart_checkin_movie{
	margin-top: 25px!important;
}

.med_video{
	width: 100%;
	aspect-ratio: 16 / 9;
	border:1px solid #222;
	line-height: 0;
}

.thum_list{
	display: flex;
	flex-wrap: wrap;
	gap: 40px 20px;
	counter-reset: thum_list_number 0;   
}

.thum_list_item{
	display: flex;
	flex-direction: column;
	width: calc((100% - 40px) / 3);
}

.thum_list_item_title{
	position: relative;
}

.pages_contents .thum_list_item h4{
	margin-top: 0;
	padding-right: 10px;
}

.pages_contents .thum_list_item .thum_list_item_num + h4{
	padding-left: 70px;
}

.pages_contents .thum_list_item .thum_list_item_num{
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	background-color: #00517e;
}

.pages_contents .thum_list_item .thum_list_item_num::before{
	counter-increment: thum_list_number 1;
	content: counter(thum_list_number) " ";
	font-family: 'ヒラギノUD角ゴF W6 JIS2004', 'Hiragino UD Sans F W6 JIS2004', sans-serif;
	font-size: 22px;
	color: #fff;
	font-weight: 900;
}

.thum_list_item_image{
	width: 100%;
	aspect-ratio: 4/ 3;
}

.thum_list_item_note{
	margin-top: 8px;
	line-height: 1.6;
	font-size: 18px;
}

.thum_list_item_note_sub{
	position: relative;
	margin-top: 16px;
	display: flex;
	align-items: center;
	padding: 10px;
	background-color: #f7f7f7;
	border-radius: 10px;
}

.thum_list_item_note_sub::before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #f7f7f7;
}

.thum_list_item_note_sub img{
	width: 60px;
}

.thum_list_item_note_sub img + span{
	width: calc(100% - 60px);
}

.thum_list_item_note_sub span{
	padding-left: 10px;
	font-size: 14px;
}

.smart_checkin_campaign_link{
	position: relative;
	display: block;
	margin-top: 30px;
	line-height: 1.4;
	background-color: #004776;
	border-radius: 20px;
	padding: 20px;
	padding-right: 50px;
}

.smart_checkin_campaign_link::after{
	content: '';
	width: 20px;
	height: 20px;
	border: 0;
	border-top: solid 4px #fff;
	border-right: solid 4px #fff;
	transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 30px;
}

.smart_checkin_campaign_link small{
	display: block;
	font-size: 20px;
	color: #fff;
}

.smart_checkin_campaign_link span{
	font-family: 'ヒラギノUD角ゴF W6 JIS2004', 'Hiragino UD Sans F W6 JIS2004', sans-serif;
	font-size: 36px;
	color: #fff;
}

.contents_body .smart_checkin_campaign_link_sub{
	font-family: 'ヒラギノUD角ゴF W6 JIS2004', 'Hiragino UD Sans F W6 JIS2004', sans-serif;
	margin-top: 4px;
	font-size: 20px;
	line-height: 1.6;
	color: #fff;
}

.smart_checkin_campaign_link_sub small{
	display: block;
	padding-left: 10px;
	color: #fff;
	font-size: 14px;
}

.smart_checkin .check_list li{
	position: relative;
	padding-left: 28px;
	font-size: 20px;
}

.smart_checkin .check_list li::before{
	content: '';
	display: block;
	position: absolute;
	top: 42%;
	left: 6px;
	width: 16px;
	height: 9px;
	border-left: 4px solid #00517e;
	border-bottom: 4px solid #00517e;
	transform: rotate(-45deg) translateY(-50%);
}

.nav_icon_new{
	display: inline-block;
	padding: 2px 6px 1px 5px;
	margin-right: 4px;
	background-color: #E72510;
	color: #fff;
	border-radius: 4px;
	vertical-align: middle;
}

.nav_icon_new.small,
.link_list01 .nav_icon_new{
	font-size: 11px;
}

.h2_ex{
	font-size: 18px;
}

a.h2_ex{
	text-decoration: underline!important;
}

.h2_ex .nav_icon_new{
	font-size: 12px;
}

.map_icons{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	max-width: 980px;
	width: 100%;
	margin-left: auto;
}

.map_icons li{
	display: flex;
	width: calc((100% - 50px) / 6);
	align-items: center;
	gap: 4px;
	font-size: 14px;
	line-height: 1;
}

.map_icons li.wide{
	width: calc(((100% - 30px) / 4));
}

.map_icons .icons{
	display: flex;
	gap: 2px;
}

.map_icons .icon{
	width: 24px;
	height: 24px;
}

.map_icons .icon[src$="icon-04.png"],
.map_icons .icon[src$="icon-0524.png"]{
	width: 48px;
}

.fix_floor_dep{
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 999;
}

.fix_floor_dep button{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: #004f80;
	color: #fff;
	transition: .4s;
}

@media print, screen and (max-width: 768px) {
	.thum_list_item{
		width: 100%;
	}
	.pages_contents .thum_list_item h4{
		margin: 0;
	}
	.pages_contents .thum_list_item .thum_list_item_num{
		height: 44px;
	}

	.smart_checkin_campaign_link small{
		font-size: 14px;
	}
	
	.smart_checkin_campaign_link span{
		font-size: 20px;
	}
	
	.contents_body .smart_checkin_campaign_link_sub{
		font-size: 14px;
	}
	
	.smart_checkin_campaign_link_sub small{
		font-size: 11px;
	}
	
	.smart_checkin .check_list li{
		padding-left: 20px;
		font-size: 14px;
	}
	
	.smart_checkin .check_list li::before{
		top: 12px;
		left: 4px;
		width: 12px;
		height: 6px;
		border-left: 2px solid #00517e;
		border-bottom: 2px solid #00517e;
	}
	.h2_ex{
		display: inline-block;
		width: 100%;
		font-size: 14px;
	}
	.nav_icon_new{
		line-height: 1.4;
	}

	.map_icons{
		gap: 5px 8px;
	}

	.map_icons li{
		width: calc((100% - 24px) / 4);
		font-size: 12px;
	}
	
	.map_icons li.wide{
		width: calc(50% - 4px);
	}

	.map_icons .icon{
		width: 20px;
		height: 20px;
	}

	.map_icons .icon[src$="icon-04.png"],
	.map_icons .icon[src$="icon-0524.png"]{
		width: 40px;
	}
}

@media (hover: hover) {
	.fix_floor_dep button:hover{
		transform: scale(1.25);
	}
	.smart_checkin_campaign_link:hover{
		text-decoration: unset;
		opacity: .75;
	}
	button.close_head_info:hover{
		opacity: 0.6;
	}
	.head_info a:hover{
		text-decoration: none;
		background: #D32F2F;
	}
	.head_info a:hover .head_info-important{
		color: #fff;
	}
	.head_info a:hover .head_info-important::before{
		color: #D32F2F;
		background: #fff;
	}
	#cat_notice .notice_COVID19 a:hover{
		opacity: 0.7;
		text-decoration: none;
	}
}

.flatpickr_style input{max-width: 134px;font-size:14px;padding-right:30px;}
.flatpickr_style{
	position: relative;
	display: inline-block;
}
.flatpickr_style::after{
	content: "";
	position: absolute;
	top: calc(50% - 6px);
	right: 14px;
	display: block;
	width: 11px;
	height: 11px;
	background-image: url("/img/common/icon_calender.svg");
	background-repeat: no-repeat;
}
.flatpickr_style input::-webkit-input-placeholder {color:#000}
.flatpickr_style input::-moz-placeholder {color:#000}
.flatpickr-day.nextMonthDay {visibility: hidden;}


/* input */
.page_search{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

input.page_search_input[type="text"]{
    position: relative;
    width: calc(100% - 156px)!important;
    height: auto!important;
    padding: 10px!important;
    border: 1px solid #CCC;
    border-radius: 5px;
    font-size: 18px;
}

input.page_search_input[type="text"]::placeholder{
    color: #ccc!important;
}
input.page_search_input[type="text"]:focus,
input.page_search_input[type="text"]::placeholder {
    border-color: #CCC!important;
}
input.page_search_input[type="text"],
input.page_search_input[type="text"]:focus,
.autoComplete_wrapper > input:hover{
    color: #535353!important;
}

.autoComplete_wrapper > ul > li{
    font-size: 18px!important;
}

@media screen and (max-width: 767px) {
    .page_search_form,
    .autoComplete_wrapper,
    .input.page_search_input[type="text"]{
        width: 100%!important;
    }
    .page_search_form{
        text-align: center;
    }
    .page_search_form button {
        position: static;
        width: calc(100% - 20px);
        margin-top: 4px;
        padding: 12px .5em 13px;
        transition: .3s;
        color: #FFF;
        background: #004F80;
        border-radius: 8px;
    }
    .page_search_form button::before {
        content: '';
        display: inline-block;
        position: relative;
        top: 2px;
        width: 16px;
        height: 16px;
        margin: 0 .5em 0 0;
        background: url(../img/common/icon_white_search.svg) no-repeat;
    }
    .page_search_form button::after{
        content: '検索';
    }
}