@charset "utf-8";
/* CSS Document */

@media print {
	#telbox {
		display: none;
	}
} 

/*共通設定*/
.viewpc {
	display: block;
}
.viewsp {
	display: none;
}

/*フォントサイズ*/
.fs12 {font-size: 12px;}
.fs14 {font-size: 14px;}
.fs16 {font-size: 16px;}
.fs18 {font-size: 18px;}
.fs20 {font-size: 20px;}
.fs24 {font-size: 24px;}
.fs28 {font-size: 28px;}
.strong{font-weight: bold;}
.strong-300 {font-weight: 400;}
.strong-500 {font-weight: 500;}

/*色*/
.blue {color: #008cd6;}
.gold {color: #b99834;}
.shuiro {color: #d9472a;}
.kimidori {color: #559c39;}
.orange {color: #ff6000;}
.kuro {color: #000;}

/*テキストインデント*/
.ti5 {text-indent: 5px;}

/*線・囲み線*/
.underline {
	border-bottom: dotted 1px;
}
/*囲いボーダー*/
.kakoi {
	border: #fff 2px solid;
}

/*角丸*/
.kakumaru20 {
	border-radius: 20px;
}
.kakumaru10 {
	border-radius: 10px;
}

/*右寄せ・左寄せ*/
.fr {
	float: right;
	margin: 0 0 10px 10px;
}
.fl {
	float: left;
	margin: 0 10px 10px 0;
}

/*z-index*/
.z-100 {
	z-index: -100;
}
.z10 {
	z-index: 10;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	line-height: 1.5;
}

/*構造*/
.inner {
	width: 960px;
	margin: 0 auto;
}

/*flexbox*/
.list {
	display: flex;
}
.flex-container-jcsa {
	display: flex;
	justify-content: space-around;
	margin: 30px 0 60px;
}
.flex-container-jcsb {
	display: flex;
	justify-content: space-between;
	/margin: 30px 0;
}
.flex-container-jcc {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
/*3列ボックス*/
.rowbox3 {
	width: 300px;
}

/*main-image下の位置調整*/
.adjust-position {
	position: relative;
	top: -130px;
}

/*ボタン*/
.button-350 a {
	background: #6cbad6;
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 30px auto 40px;
	max-width: 240px;
	padding: 20px 10px;
	color: #fff;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	text-decoration: none;
	border-radius: 10px;
	z-index: 0;
}
.button-350 a:visited {
	background: #6cbad6;
	color: #fff;
}
.button-350 a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 0;
	display: block;
	background: #ebc553;
	border-radius: 10px;
	transition: .3s;
	left: 0;
}
.button-350 a:hover {
	color: #fff;
}
.button-350 a:hover:before {
	width: 100%;
	z-index: -1;
} 
/*無料低額診療ボタン*/
.button-muryou a {
	background: #fff;
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 30px auto 40px;
	max-width: 240px;
	padding: 20px 10px;
	color: #6cbad6;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	text-decoration: none;
	border-radius: 10px;
	z-index: 0;
}
.button-muryou a:visited {
	background: #fff;
	color: #6cbad6;
}
.button-muryou a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 0;
	display: block;
	background: #6cbad6;
	border-radius: 10px;
	transition: .3s;
	left: 0;
}
.button-muryou a:hover {
	color:#fff;
}
.button-muryou a:hover:before {
	width: 100%;
	z-index: -1;
} 

/*button-access*/
.button-access a {
	background:#6cbad6;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px 20px;
	width: 240px;
	padding: 10px 10px;
	color: #fff;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	text-decoration: none;
	border-radius: 10px;
	border: #6cbad6 1px solid;
	z-index: 0;
}
.button-access a:visited {
	background:#6cbad6;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px 20px;
	width: 240px;
	padding: 10px 10px;
	color: #fff;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	text-decoration: none;
	border-radius: 10px;
	border: #6cbad6 1px solid;
	z-index: 0;
}
.button-access a:before {
	content: "";
	position: absolute;
	top: 0;
	/bottom: 0;
	/width: 0;
	height: 0;
	display: block;
	background:#fff;
	border-radius: 10px;
	transition: .3s;
	left: 0;
	right: 0;
}
.button-access a:hover {
	color: #0087E1;
}
.button-access a:hover:before {
	/width: 100%;
	height: 100%;
	z-index: -1;
} 

/*ヘッダーエリア*/
header {
	width: 100%;
	height: 69px;
	z-index:100;
	position:relative;
	/top: 0px;
	background: #fff;
	/opacity: 0.85;
	/border-top:solid 2px #008cd6;
	padding-top:1px;
	/background-color:floralwhite;
	/background-image: url("../images/header_bg.png");
}
header #header-name {
	padding: 0 0 0 5px;
}
header h1{
	font-size: 28px;
	color: #008cd6;
	text-decoration: none;
}
header h1 a, a:visited{
	font-size: 28px;
	color: #008cd6;
	text-decoration: none;
}
header h1 a:visited{
	font-size: 28px;
	color: #008cd6;
	text-decoration: none;
}


/*ナビエリア*/
nav {
	width: 100%;
	height: 60px;
	background: #fff;
	opacity:0.95;
	position:sticky;
	top: 0;
	z-index: 10;
}
nav ul li {
	position: relative;
	width: 160px;
}
nav ul li:nth-child(1) {
	background-image:url("../images/nav_home.png");
}
nav ul li:nth-child(2) {
	background-image:url("../images/nav_shinryo.png");
}
nav ul li:nth-child(3) {
	background-image:url("../images/nav_zaitaku.png");
}
nav ul li:nth-child(4) {
	background-image:url("../images/nav_kenshin.png");
}
nav ul li:nth-child(5) {
	background-image:url("../images/nav_annai.png");
}
nav ul li:nth-child(6) {
	background-image:url("../images/nav_access.png");
}
nav ul li a:hover {
	background-image:url("../images/nav_up.png");
}
nav ul li a {
	display: block;
	color: #000;
	font-size: 18px;
	text-decoration: none;
	text-indent: 35px;
	line-height: 60px;
	width: 160px;
}
nav ul li a:hover {
	background:#BBE1FD;
	/font-size: 18px;
	transition: 0.1s;
	background-image:url("../images/nav_up_w.png");
}
nav ul li ul {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 10;
}
nav ul li ul li {
	opacity: 0;
	width: 160px;
	height: 0;
	overflow: hidden;
	transition: 0.5s;
}
nav ul li:hover ul li {
	opacity: 1;
	height: 59px;
	width: 160px;
	border-top: 1px #fff solid;
	overflow: visible;
}
nav ul li ul li a {
	background:  bisque;
}
nav ul li ul li a:visited {
	background:  bisque;
}
nav ul li ul li a:hover {
	background: #BBE1FD;
	background-image:url("../images/nav_up_w.png");
}


/*メインイメージ*/
#main_image {
	width: 100%;
	margin: 0 auto;
	/height: 500px;
	background-image: url("../images/main_image_01.JPG");
	background-size: cover;
	position:relative;
	background: #fff;
	/top: -130px;
}
#main_image_2 {
	width: 100%;
	margin: 0 auto;
	height: 250px;
	/background-image: url("../images/main-image_9a.jpg");
	background-size: cover;
	position:relative;
	/top: -130px;
}
.infobox {
	width: 240px;
	position: absolute;
	left: 75%;
	bottom: 35%;
	z-index: 5;
	background: #fff;
	opacity: 0.95;
	border: solid 4px #6cbad6;
	border-radius: 10px;
	padding: 10px;
	font-size: 18px;
}

.telask {
	position: fixed;
	left: 75%;
	bottom: 5%;
	width: 240px;
	height: 54px;
	color: #fff;
	padding: 10px;
	background: #6cbad6; /*#B16162;*/
	border-radius: 10px;
	border: 3px solid #fff;
	z-index: 10;
}
.telask_top {
	position: absolute;
	left: 75%;
	bottom: 14%;
	width: 240px;
	height: 54px;
	color: #fff;
	padding: 10px;
	background: #6cbad6; /*#B16162;*/
	border-radius: 10px;
	border: 3px solid #fff;
	z-index: 3;
}
.telmark {
	width: 40px;
	padding: 12px 5px;
}
.telnumber {
	width: 200px;
}

.kamoku {
	width: 240px;
	position: absolute;
	right: 50%;
	transform: translate(-70%, 50%);
	bottom: 50%;
	z-index: 5;
	background: #fff;
	opacity: 0.95;
	border: solid 4px #6cbad6;
	border-radius: 10px;
	padding: 10px;
	font-size: 18px;
}

/*お知らせ・外来受付時間・一般ページメイン*/
#main-info {
	width: 100%;
	background: #fff;
}
#info {
	width: 450px;
	padding: 0 0 20px;
}
#info h3 {
	font-size: 20px;
	text-indent: 40px;
	/margin: 20px 0 0;
    padding: 0 0 5px;
	background:url("../images/info-icon-r.png") no-repeat;
    border-bottom: 2px solid #008cd6;
    line-height: 1.5;
}
.news-item {
	padding: 10px 0;
	border-bottom: 1px dotted #008cd6;
	display: block;
}
.news-item:last-child {
	border-bottom: 2px solid #008cd6;
	margin: 0 0 20px;
}
.news-item a {
	text-decoration: none;
	color:#000;
}
.news-item a:visited {
	text-decoration: none;
	color:#000;
}
.news-item:hover {
	color:#000;
	text-decoration:none;
	background-color: antiquewhite;
}

#clinic-hours {
	width: 450px;
	padding: 0 0 20px;
}
#clinic-hours h3 {
	font-size: 20px;
	text-indent: 40px;
	margin: 0px 0 5px;
    padding: 0 0 5px;
	background: url("../images/time-icon-30.png") no-repeat;
    border-bottom: 2px solid #008cd6;
    line-height: 1.5;
}
.hours-item {
	padding: 5px 0;
	border-bottom: 1px dotted #008cd6;
}
.hours-item-bold {
	padding: 5px 0;
	border-bottom: 2px solid #008cd6;
}
.hours-item-bold-last {
	padding: 5px 0;
	border-bottom: 2px solid #008cd6;
	margin: 0 0 20px;
}

.hours-item-link {
	padding: 5px;
	margin: 0 5px 0 0;
	line-height: 2em;
	background: #6cbad6;
	display: block;
	width: auto;
	color: #fff;
	text-align: center;
	border-radius: 5px;
}
.hours-item-link img {
	vertical-align:middle;
}
.hours-item-bold-last img {
	vertical-align:middle;
}
.hours-item-link a {
	text-decoration: none;
	background: #6cbad6;
	color: #fff;
	display: block;
}
.hours-item-link a:visited {
	text-decoration: none;
	background: #6cbad6;
	color: #fff;
	display: block;
}
.hours-item-link a:hover {
	background: #fff;
	color: #6cbad6;
}
.width-40 {
	width: 40%;
}
.width-30  {
	width: 30%;
}

/*お問い合わせ*/
#top-toiawase h3 {
	font-size: 20px;
	text-indent: 40px;
	margin: 30px 0 5px;
    padding: 0 0 5px;
	background:url("../images/telmark-30.png") no-repeat;
    border-bottom: 2px solid #008cd6;
    line-height: 1.5;
}

/*others-メイン*/
main {
	width: 100%;
	background:rgba(234,214,193,0.90);
	padding: 30px 0;
}
.inner-others {
	width: 960px;
	margin: 0 auto;
	/padding: 0 30px;
	/background: #fff;
	/opacity:1;
	/z-index: 2;
	/border-radius: 10px;
}
.semi-title {
	width: 960px;
	height: 58px;
	background: #fff url("../images/title.jpg");
	border-radius: 10px;
	margin: 0 auto 10px;
	padding-top: 2px;
}
.semi-title h2 {
	font-size: 28px;
	color: #6cbad6;
	text-indent: 80px;
	line-height: 60px;
}
.content {
	/width:100%;
	font-size: 18px;
	padding: 30px;
	background: #fff;
	border-radius: 10px;
	/border: 1px solid;
}
.content h3 {
	font-size: 20px;
	margin: 5px 0 5px;
    padding: 0 0 5px;
    border-bottom: 2px solid #008cd6;
    line-height: 1.5;
}
.content h4 {
	font-size: 20px;
	text-indent: 10px;
	margin: 10px 0;
	border-left: 5px solid #6cbad6;
	border-bottom: 2px dotted #6cbad6;
}
/*外来受付時間*/
#clinic-hours-wide {
	width: 100%;
	font-size: 18px;
	line-height: 1.8;
}
#clinic-hours-wide h3 {
	background: url("../images/time-icon-30.png") no-repeat;
	text-indent: 40px;
}

/*週間予定表*/
#weekly {
	margin: 50px 0 20px;
}
#weekly h3 {
	margin: 0 0 30px;
	background: url("../images/calendar-icon.png") no-repeat;
	text-indent: 40px;
}
.weekly-tb th,td {
	border: 1px solid #90C5FF;
	text-align: center;
	padding: 10px;
	font-size: 18px;
	vertical-align: middle;
}

#yobou, #kamoku {
	padding-top: 60px;
	margin-top: -30px;
}
.semi-title-marginadjust{
	padding-top: 60px;
	margin-top: -30px;
}

/*リンク*/
#link ul {
	margin:20px 0 20px 3em;
}
#link li {
	list-style:disc;
	margin-bottom:1em;
}
#link li a {
	text-decoration: none;
	color: #000;
}
#link li a:hover {
	text-decoration: underline;
}

/*info-news*/
#info-news ul {
	margin-left: 1em;
}
#info-news li {
	list-style:disc;
	margin-bottom:2em;
}
#info-news li a {
	text-decoration: none;
	color: #000;
}
#info-news li a:hover {
	text-decoration: underline;
}
#info-news .ichiran {
	width: 200px;
	border: 2px solid #6cbad6;
	text-align: center;
	border-radius: 10px;
	color: #6cbad6;
	line-height: 2;
	margin: 0 auto;
}
#info-news .ichiran a {
	color: #6cbad6;
	text-decoration: none;
}

#yobou .link {
	width: 400px;
	border: 2px solid #6cbad6;
	text-align: center;
	border-radius: 10px;
	color: #489bb9;
	line-height: 2;
	margin: 0 auto;
}
#yobou .link a {
	color: #489bb9;
	text-decoration: none;
}

/*診療所の写真*/

#setsubi h4 {
	width: 100%;
	color: #6cbad6;
	border: 2px solid #6cbad6;
	border-radius: 10px;
	text-align:center;
}
.photo {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 20px 0;
}
.photo img {
	width: 49%;
	height: auto;
	border-radius: 10px;
}
.photo2 {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 20px 0;
}
.photo2 img {
	width: 24%;
	height: auto;
	border-radius: 10px;
}

/*2カラム*/
#sidebar {
	width: 170px;
	margin: 50px 0 50px 30px;
	background-color: antiquewhite;
}
#sidebar h3 {
	font-size: 20px;
	margin: 20px 0 5px;
	padding: 0 0 5px;
	line-height: 1.5;
}

/*特徴エリア*/
#feature {
	width: 100%;
	height:　1000px;
	background: #F1D275;
	padding: 20px 0;
	position: relative;
}
#feature h3 {
	font-size: 28px;
	margin: 20px 0;
}
#feature h4 {
	font-size: 24px;
	margin: 10px 0;
	color: #008cd6;
}

.feature-item {
	position: relative;
	width: 220px;
	min-height: 260px;
	background: #fff;
	padding: 20px;
	border-radius: 10px;
}
.feature-item a {
	text-decoration: none;
	color: #000;
}
.feature-item a:visited {
	text-decoration: none;
	color: #000;
}
.feature-item p a:visited {
	text-decoration: none;
	color: #000;
}
.feature-item p a:active {
	text-decoration: none;
	color: #000;
}


/.feature-item img {
/	position: absolute;
/	top: -40px;
/	left: 85px;
/}
.department {
	width: 150px;
	height: 50px;
	background: #fff;
	border-radius: 50%;
	vertical-align:bottom;
	padding: 50px 0;
}
.department a {
	text-decoration: none;
}

/*関連施設エリア*/
#related {
	padding: 20px 0;
	background: #fff;
}
#related h3 {
	font-size: 28px;
	margin: 20px 0;
}

/*マップエリア*/
#map {
	width: 100%;
	height: 440px;
	padding: 0 0 20px 0;
	background: #fff;
}
#map_2 {
	width: 100%;
	height: 600px;
}

/*フッターエリア*/
footer {
	width: 100%;
	height: 320px;
	background-color:antiquewhite;
}
footer .inner {
	padding: 20px 0;
}
footer #footer_title{
	width: 200px;
	padding: 0 20px;
}
footer #footer_address{
	padding: 0 0 30px 0;
}

footer .list_item {
	width: 125px;
	margin: 0 5px 0 0;
	line-height: 1.8;
}
footer .list_item a,a:visited {
	text-decoration: none;
	color: #000;
}
footer a:hover {
	/background: #fff;
	text-decoration: underline;
}
#copyright {
	text-align: center;
	padding: 10px 0;
}

/*アコーディオン*/
.accordion {
margin: 1em 0;
max-width:100%;
}
.toggle {
display: none;
}
.option {
position: relative;
margin-bottom: 1em;
}
.title_accordion,
.content_accordion {
/backface-visibility: hidden;
/transform: translateZ(0);
transition: all 0.3s;
}
.title_accordion {
border: solid 1px #ccc;
padding: 1em;
display: block;
color: #333;
background: #cee7f0;
font-size: 20px;
/font-weight: bold;
cursor: pointer;
}
.title_accordion::after,
.title_accordion::before {
content: "";
position: absolute;
right: 1.25em;
top: 1.25em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}
.title_accordion::after {
transform: rotate(90deg);
}
.content_accordion {
max-height: 0;
/padding: 10px;
overflow: hidden;
}
.content_accordion p {
margin: 0;
padding: 0.5em 1em ;
/font-size: 0.9em;
line-height: 1.5;
}
.toggle:checked + .title_accordion + .content_accordion {
max-height: 3000px;
transition: all 1.5s;
}
.toggle:checked + .title_accordion::before {
transform: rotate(90deg) !important;
}