@charset "UTF-8";


/*
 *コメ印
 */
.kome:before{
	content:"※";
	display:block;
	float:left;
	margin-left:-1.2em;
	width:1em;
	height:1em;
	font-family:inherit monospace;
}
.kome {
	padding-left:1.2em;
}


/*
 *サイドウィジェット：リンク
 */
.ichihara-side-link-wrap{
	background:#fff;
	border-radius: 0.2em;
	position:relative;
	box-shadow:0 0 2px rgba(0,0,0,0.3);
}
.ichihara-side-link-wrap:before{
	content:"";
	position:absolute;
	background:#2094d2;
	border-radius:100%;
	height:0.7em;
	width:0.7em;
	top:50%;
	left:0.4em;
	margin-top:-0.35em;
	z-index:1;
}
.ichihara-side-link-wrap:after{
	content:"";
	position:absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.2em 0 0.2em 0.3em;
	border-color: transparent transparent transparent #fff;
	top:50%;
	left:0.65em;
	margin-top:-0.2em;
	z-index:1;
}
.ichihara-side-link-wrap:not(:last-of-type){
	margin-bottom:0.4em;
}
.ichihara-side-link-wrap a{
	padding:1em 0.5em 1em 1.6em;
	display:block;
	text-decoration:none;
	 background:#014099;
	color:#fff;
	border-radius: 0.2em;
	font-size:90%;
	text-shadow:0 1px 1px rgba(0,0,0,0.3);
}
.ichihara-side-link-wrap a:hover{
	opacity:0.8;
}


/*
 *予約システム：運用開始前
 */
.before-start{
	position:relative;
	background:#fff;
	box-shadow:0 0 2px rgba(0,0,0,0.3);
}
.before-start:before{
	content:"";
	position:absolute;
	background:rgba(0,166,173,0.85);
	border-radius:0.2em;
	width:calc(100% - 0.4em);
	height:calc(100% - 0.4em);
	top:0.2em;
	left:0.2em;
	z-index:1;
}
.before-start .start-message{
	position:absolute;
	z-index:1;
	width:100%;
	height:100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction:column;
	text-shadow:0 1px 1px rgba(0,0,0,0.3);
}
.before-start .start-message span:first-of-type{
	font-size:116%;
	color:#fff;
	font-weight:bold;
}
.before-start .start-message span:last-of-type{
	padding:0.5em;
	margin-top:0.5em;
	width:calc(100% - 2em);
	background:rgba(255,150,0,0.8);
	border-radius:30em;
	box-shadow:0 0 2px rgba(0,0,0,0.3);
	color:#fff;
	text-align:center;
}
.before-start a{
	pointer-events:none;
}
.before-start .yoyaku-banner{
	opacity:1;
}



/*
 *ウィジェット
 *Instagram
 */
.widget-insta{
	background:#fff;
}
.widget-insta a{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: stretch;
	align-content: stretch;
	align-items: stretch;
	text-decoration:none;
	box-shadow:0 0 2px rgba(0,0,0,0.3);
}
.widget-insta a:hover{
	box-shadow:0 0 2px rgba(234,51,106,0.4);
}
.widget-insta a .name-wrap.on{
	display:none;
}
.widget-insta a:hover .name-wrap.on{
	display:flex;
}
.widget-insta a:hover .name-wrap.off{
	display:none;
}
.widget-insta .logo{
	display: flex;
	align-items: center;
	justify-content: center;
}
.widget-insta .logo img,
.widget-insta .clinic img{
	width:100%;
	height:auto;
}
.pc .widget-insta .logo{
	height:30px;
	width:30px;
	margin:15px;
}
.sp .widget-insta .logo{
	height:40px;
	width:40px;
	margin:20px;
}
.widget-insta .name-wrap{
	padding-right:15px;
	width:calc(100% - 75px);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction:column;
}
.pc .widget-insta .name-wrap{
	padding-right:15px;
	width:calc(100% - 75px);
}
.sp .widget-insta .name-wrap{
	padding-right:20px;
	width:calc(100% - 100px);
}
.widget-insta .name-wrap .clinic{
	line-height:initial;
	text-align:center;
}
.pc .widget-insta .name-wrap .clinic{
	margin-bottom:2px;
}
.sp .widget-insta .name-wrap .clinic{
	margin-bottom:6px;
}
.sp .widget-insta .name-wrap .clinic img{
	width:85%;
}
.widget-insta .name-wrap .insta{
	padding-right:1.2em;
	line-height:initial;
	text-align:center;
}
.pc .widget-insta .name-wrap .insta img{
	width:50%;
}
.sp .widget-insta .name-wrap .insta img{
	width:35%;
}



/*
 *ごあいさつ
 */
body.aisatsu .aisatsu-container{
	margin:1em 0 !important;
}
body.aisatsu .aisatsu-container .aisatsu-inner {
	background-color: #fff; /* 背景色 */
	background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%), /* 点線1の色 */
			linear-gradient(180deg, #ddd 1px, transparent 1px); /* 点線2の色と太さ */
	background-size: 6px 100%, /* 点線1のサイズ */
			100% 3em; /* 点線2のサイズ */
	line-height: 3em; /* 文字の高さ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
body.aisatsu .aisatsu-container .aisatsu-inner p{
	margin:0;
}
body.aisatsu .inchou-name{
	text-align:right;
}
body.aisatsu .inchou-name p{
	padding-right:1em;
}
body.aisatsu .inchou-name p span{
	letter-spacing:0.15em;
	font-size:123.1%;
}


/*
 *医師紹介
 */
dl.ichihara-profile{
	padding:0;
	margin:0 0 5em 0;
}
.ishi dl.ichihara-profile:last-of-type{
	margin-bottom:0;
}
dl.ichihara-profile > dt{
	padding:0 0 0 2.6em;
	margin:2em 0;
	font-size:131%;
	letter-spacing:0.15em;
	font-weight:bold;
}
dl.ichihara-profile > dd{
	padding:0;
	margin:0;
}
dl.ichihara-profile dd dl.profile{
	padding:0;
	margin:1.5em 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: stretch;
	align-content: stretch;
	align-items: stretch;
}
dl.ichihara-profile dd dl.profile dt{
	padding:0;
	margin:0;
	width:3.5em;
}
dl.ichihara-profile dd dl.profile dd{
	padding:0;
	margin:0;
	width:calc(100% - 3.5em);
}
dl.ichihara-profile dd dl.profile dd table{
	padding:0;
	margin:-0.5em 0 0 0;
	width:100%;
}
dl.ichihara-profile dd dl.profile dd table th{
	padding:0.7em 0;
	margin:0;
	width:4em;
	font-weight:normal;
	border:none;
	vertical-align:top;
}
dl.ichihara-profile dd dl.profile dd table td{
	padding:0.7em 0;
	margin:0;
	border:none;
}
dl.ichihara-profile dd dl.profile dd table tr:not(:last-of-type) th,
dl.ichihara-profile dd dl.profile dd table tr:not(:last-of-type) td{
	border-bottom:dashed 1px #ddd;
}
dl.ichihara-profile dd dl.profile dd ul{
	margin:0;
}



/*
 *診療案内
 */
.annai-sentence-list{
	margin:1.5em 0;
}
.annai-sentence-list > div{
	padding: 0 0 0 2em;
	position:relative;
}
.annai-sentence-list > div:before{
	content: '';
	position:absolute;
	width: 8px;
	height: 4px;
	border-left: 2px solid #54a601;
	border-bottom: 2px solid #54a601;
	transform: rotate(-45deg);
	top:0.5em;
	left:0.6em;
}
.annai-sentence-list > div:not(:last-of-type){
	padding-bottom:1em;
	margin-bottom:1em;
	border-bottom:dashed 1px #ddd;
}
.annai-sentence-list > div p{
	margin:0;
}
.annai-sentence-list > div p:not(:last-of-type){
	margin-bottom:0.5em;
}

.illust-sentence-container{
	margin:1em 0;
}
.pc .illust-sentence-wrap{
	margin:0 0 20px 20px;
 	float:right;
}
.sp .illust-sentence-wrap{
	margin:0 0 15px 0;
	text-align:center;
}
.illust-sentence-wrap img{
	width:150px;
	vertical-align:bottom;
}




/*
 *ダイアル
 */
.pc .dial-adjust{
	text-decoration:none;
	pointer-events:none;
	color:inherit;	
}


/*
 *ウィジェット
 *予約バナー
 */
.pc ul#home-widget-list li#custom_html-3{
	display:none;
}
.sp.home ul#side-second-widget-list li#custom_html-2{
	display:none;
}
.yoyaku-banner{
	background:#fff;
}
.yoyaku-banner a:hover{
	opacity:0.8;
}
.yoyaku-banner a{
	padding:1em 0.5em;
	display:block;
	background:#014099;
	text-decoration:none;
	text-align:center;
	color:inherit;
	border-radius:0.2em;
	box-shadow:0 0 3px rgba(0,0,0,0.2);
	position:relative;
}
.yoyaku-banner a:before{
	content:"";
	position:absolute;
	background:url("../2025/05/yoyaku-icon.png") no-repeat top right;
	background-size:contain;
	transform:rotate(-30deg);
}
.yoyaku-banner.pc a:before{
	height:54px;
	width:54px;
	top:4px;
	right:0;
}
.yoyaku-banner.sp a:before{
	height:60px;
	width:60px;
	top:3px;
	right:0;
}
.yoyaku-banner a dl{
	padding:0;
	margin:0;
}
.yoyaku-banner a dl dt{
	padding:0;
	margin:0 0 0.75em;
}
.yoyaku-banner a dl dt span{
	font-weight:bold;
	font-size:116%;
	color:#fff;
	text-shadow:0 1px 1px rgba(0,0,0,0.3);
}
.yoyaku-banner a dl dd{
	padding:0;
	margin:0;
}
.yoyaku-banner a dl dd p{
	padding:0.5em;
	margin:0;
	border-radius:30em;
	font-size:90%;
	background:#2094d2;
	color:#fff;
	box-shadow:0 0 3px rgba(0,0,0,0.2);
}





/*
 *ページトップ
 *診療科目｜TEL｜MAP
 */
.kamoku-map dl{
	padding:0;
	margin:0;
	display:inline-block;
	position:relative;
}
.kamoku-map dl.kamoku dt{
	padding:0;
	margin:0 1em 0 0;
	display:inline-block;
	color:#014099;
	font-weight:bold;
	position:relative;
	font-size:85%;
}
.kamoku-map dl.kamoku dt:before{
	content:"：";
	position:absolute;
	width:1em;
	height:1em;
	top:0;
	right:-1em;
	font-weight:normal;
}
.kamoku-map dl.kamoku dd{
	padding:0;
	margin:0;
	display:inline-block;
}
.pc .kamoku-map dl.kamoku{
	font-size:123.1%;
}
.sp .kamoku-map dl.kamoku{
	display:block;
	padding-bottom:10px;
	margin-bottom:10px;
	border-bottom:dashed 1px #ddd;
}
.pc .kamoku-map dl.tel,
.pc .kamoku-map dl.map{
	display:none;
}
.pc .kamoku-map dl.tel a,
.pc .kamoku-map dl.map a{
	pointer-events:none;
	text-decoration:none;
	color:inherit;
}
.sp .kamoku-map dl.tel,
.sp .kamoku-map dl.map{
	width:calc(50% - 4px);
}
.sp .kamoku-map dl.tel{
	margin-right:8px;
}
.sp .kamoku-map dl.tel a,
.sp .kamoku-map dl.map a{
	display:block;
	padding:0.75em 0.5em;
	border-radius:30em;
	text-align:center;
	letter-spacing:0.3em;
	text-decoration:none;
	box-shadow:0 0 3px rgba(0,0,0,0.2);
	text-shadow:0 1px 1px rgba(0,0,0,0.3);
	font-weight:bold;
	position:relative;
}
.sp .kamoku-map dl.tel a{
	background:#014099;
	color:#fff;
}
.sp .kamoku-map dl.tel a:before{
	content:"";
	position:absolute;
	background:url("../2025/05/tel-icon.png") no-repeat top left;
	background-size:contain;
	height:24px;
	width:24px;
	top:50%;
	left:6px;
	margin-top:-12px;
}
.sp .kamoku-map dl.map a{
	background:#2094d2;
	color:#fff;
}
.sp .kamoku-map dl.map a:before{
	content:"";
	position:absolute;
	background:url("../2025/05/map-icon.png") no-repeat top left;
	background-size:contain;
	height:24px;
	width:24px;
	top:50%;
	left:6px;
	margin-top:-12px;
}




/*
 *ウィジェット調整
 */
#side-r{
	display:flex;
	flex-direction:column;
}
#side-r #side-second-widget{
	order:1
}
#side-r #search{
	order:2;
}
#side-r #mobile{
	order:3;
}
#side-l{
	display:flex;
	flex-direction:column;
}
#side-l #snavi-main{
	order:1;
}
#side-l #side-second-widget{
	order:2;
}
#side-l #side-first-widget{
	order:3;
}
#side-l #search{
	order:4;
}
#side-l #mobile{
	order:5;
}




/*
 *テーマ調整
 */
body.page.w6-lt16 #contents .entry-content-wrap{
	padding-bottom:50px;
}
body.pc.w6-lt16 #header #header-kamoku-wrap {
    padding-bottom:20px;
}
.ns-kigou-font{
	font-family:inherit;
}




/*
 *ロゴマークサイズ調整
 */
.pc #header #site-title{
	width:50%;
}
.pc #header #site-title img{
	width:100%;
}
.sp #header #site-title{
	margin-right:0.5rem;
}


/*
 *診療時間
 */
body.jikan table.shinryou-jikan{
	width:100%;
}
body.pc.jikan .uketsuke-separate-container{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: stretch;
	align-content: stretch;
	align-items: stretch;
	margin-right:-20px;
}
body.pc.jikan .uketsuke-separate-wrap{
	width:calc(50% - 20px);
	margin:20px 20px 20px 0;
}
body.pc.jikan .uketsuke-separate-wrap h3{
	margin-top:0;
}


