@charset "UTF-8";
@media screen and (min-width: 769px) {
	.pc_off {
		display: none;
	}
	body {
		font-family: "ヒラキノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴ シック", "MS PGothic", sans-serif;
		background-color: #f7f5f2;
	}
	.clearfix::after {
		content: "";
		display: block;
		clear: both;
	}
	section {
		clear: both;
	}
	h1 {
		width: 900px;
		margin: 0 auto;
		color: #111;
		font-size: 11px;
		font-weight: normal;
		text-align: center;
		padding: 5px 0 5px 150px;
	}
	/* ----------------------------------------
	ch_program_tl
	---------------------------------------- */
	.ch_program_tl {
		height: 150px;
		background-color: #3f98d7;
		text-align: center;
		font-size: 24px;
		line-height: 150px;
		border-bottom: 1px solid #ffffff;
		box-shadow: 0px 9px 0px 0px rgba(63, 152, 215, 1.0);
		-webkit-box-shadow: 0px 9px 0px 0px rgba(63, 152, 215, 1.0);
		-moz-box-shadow: 0px 9px 0px 0px rgba(63, 152, 215, 1.0);
		color: #ffffff;
	}
	/* ----------------------------------------
	pan
	---------------------------------------- */
	.pan {
		margin: 20px 0 0 0;
		display: block;
	}
	.pan ul {
		overflow: hidden;
	}
	.pan li {
		float: left;
		font-size: 14px;
	}
	.pan li p {
		display: inline-block;
	}
	.pan li a {
		text-decoration: none;
		color: #111111;
	}
	.pan li a:hover {
		color: #999999;
	}
	.pan li::after {
		content: ">";
		margin: 0 15px;
	}
	.pan li:last-child {
		color: #3f98d7
	}
	.pan li:last-child::after {
		content: "";
		margin: 0 15px;
	}
	/* ----------------------------------------
	ch_link
	---------------------------------------- */
	.ch_link {
		width: 1100px;
		margin: 40px auto 0 auto;
		border: 1px solid #cccccc;
		box-shadow: 0px 0px 0px 5px #eeeeee inset;
		overflow: hidden;
		padding: 20px;
		display: flex;
		align-items: center;
		box-sizing: border-box;
	}
	.ch_link ul {
		width: 70%;
		overflow: hidden;
		display: flex;
		flex-wrap: wrap;
	}
	.ch_link li {
		margin: 0 10px 10px 0;
	}
	.ch_link li:nth-child(n + 3) {
		margin: 0 10px 0 0;
	}
	.ch_link_tl {
		width: 30%;
		text-align: center;
	}
	.ch_link li a:hover {
		display: block;
		opacity: 0.6;
	}
	/* ----------------------------------------
	ch_grouppaging
	---------------------------------------- */
	.group_paging {
		padding: 20px 0;
	}
	.group_paging ul {
		display: flex;
		justify-content: center;
	}
	.group_paging li {
		padding: 5px;
		line-height: 30px;
	}
	.group_paging a,
	.group_paging span {
		border-radius: 50%;
		border: 1px solid #3f98d7;
		color: #3f98d7;
		background: #fff;
		width: 40px;
		height: 40px;
		box-sizing: border-box;
		display: block;
		text-align: center;
		font-size: 18px;
		font-weight: bold;
		line-height: 37px;
	}
	.group_paging a {
		text-decoration: none
	}
	.group_paging a:hover,
	.group_paging span {
		background: #3f98d7;
		color: #fff;
	}
	.group_paging p {
		font-size: 20px;
		font-weight: bold;
		line-height: 28px;
	}
	/* ----------------------------------------

	---------------------------------------- */
	/*---------------

	サイドバー

	---------------*/
	.side-bar {
		position: fixed;
		top: 0;
		left: 0;
		width: 150px;
		height: 100vh;
		background-color: #fff;
		background-image: url(../img/common/side_bg_top.png), url(../img/common/side_bg_under.png);
		background-repeat: no-repeat;
		background-position: top, left bottom;
	}
	.side-logo {
		text-align: center;
		padding-top: 10px;
		margin-bottom: 104px;
	}
	.side-nav {
		border-top: 1px dashed #33a389;
	}
	.side-nav li {
		background-color: #fff;
		line-height: 25px;
		vertical-align: bottom;
		border-bottom: 1px dashed #33a389;
	}
	.side-nav li:hover {
		background-color: #f7f5f2;
	}
	.side-nav a {
		font-weight: bold;
		position: relative;
		display: block;
		font-size: 14px;
		padding: 12px 10px 12px 40px;
		color: #33a389;
		text-decoration: none;
	}
	.icon {
		position: absolute;
		content: " ";
		display: block;
	}
	.side-nav .icon {
		position: absolute;
		top: 12px;
		left: 10px;
		width: 25px;
		height: 25px;
	}
	.icon-top {
		background-image: url(../img/common/side_icon_top.png);
	}
	.icon-news {
		background-image: url(../img/common/side_icon_news.png);
	}
	.icon-info {
		background-image: url(../img/common/side_icon_info.png);
	}
	.icon-about {
		background-image: url(../img/common/side_icon_about.png);
	}
	.icon-hosp {
		background-image: url(../img/common/side_icon_hosp.png);
	}
	.icon-staff {
		background-image: url(../img/common/side_icon_staff.png);
	}
	/*---------------

	メインコンテンツ

	---------------*/
	.main-contents {
		padding-left: 150px;
		margin: 0 auto;
	}
	.main-contents_wrapper {
		background-image: url(../img/common/bg_main-contents_top.png), url(../img/common/bg_main-contents_under.png);
		background-repeat: no-repeat;
		background-position: top right, bottom right;
	}
	.main-contents_inner {
		width: 900px;
		margin: 0 auto;
		padding: 53px 30px 124px;
	}
	.content-box {
		margin: 38px auto;
		border: 3px solid #33a389;
		background-color: #fff;
		border-radius: 3px;
		width: 834px;
		padding: 30px;
	}
	.content-box-inner {
		border-bottom: 1px dashed #33a389;
		padding: 20px 0;
		overflow: hidden;
	}
	.content-box-inner:last-of-type {
		border-bottom: none;
	}
	.content-box-inner:nth-of-type(2) .left-content {
		width: 45%;
		float: left;
	}
	.content-box-inner:nth-of-type(2) .right-content {
		width: 55%;
		float: right;
	}
	.content-box-inner:nth-of-type(3) .left-content {
		width: 410px;
		float: left;
	}
	.content-box-inner:nth-of-type(3) .right-content {
		width: 410px;
		float: right;
	}
	.bg_dog {
		background-image: url(../img/common/bg_guide.png);
		background-repeat: no-repeat;
		background-position: top right;
	}
	/*common-guide*/
	.content-box h2 {
		text-align: center;
	}
	.common-guide h3 {
		font-size: 13px;
		padding: 9px 14px 8px 15px;
		background-color: #ffec35;
		border-radius: 3px;
		float: left;
		clear: both;
		margin-right: 11px;
		margin-bottom: 10px;
	}
	.common-guide h3+p {
		font-size: 13px;
		line-height: 1.5;
		padding: 6px 14px 5px 15px;
		margin-bottom: 10px;
		margin-left: 80px;
	}
	.common-guide h3+p:last-of-type {
		margin-bottom: auto;
	}
	.guide-table {
		font-weight: bold;
		text-align: center;
		font-size: 14px;
		margin-bottom: 10px;
		border-top: 1px solid #33a389;
		border-left: 1px solid #33a389;
	}
	.guide-table th {
		padding: 18px 0;
		background-color: #b4d5cd;
		border-bottom: 1px solid #33a389;
		border-right: 1px solid #33a389;
	}
	.guide-table td {
		vertical-align: middle;
		width: 78px;
		padding: 18px 0;
		border-bottom: 1px solid #33a389;
		border-right: 1px solid #33a389;
	}
	.guide-table td:first-of-type {
		width: 145px;
	}
	.guide-table span {
		display: block;
		padding-top: 5px;
	}
	.common-guide .content-box-inner:first-of-type .left-content {
		float: left;
		width: 443px;
		font-size: 13px;
		line-height: 1.8;
	}
	.common-guide .content-box-inner:first-of-type .right-content {
		float: left;
		font-size: 13px;
		line-height: 1.8;
	}
	.green-text {
		font-weight: bold;
		color: #33a389;
	}
	.map iframe {
		width: 100%;
	}
	.bnr_hospital {
		padding-top: 10px;
		clear: both;
	}
	.bnr_hospital_box {
		background: #f7f5f2;
		padding: 20px;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.bnr_hospital p {
		font-size: 14px;
		line-height: 1.6;
		margin-right: 20px;
		font-weight: bold;
	}
	.bnr_hospital a {
		display: block;
	}
	.bnr_hospital a:hover {
		opacity: 0.9;
	}
	/*---------------

	メインコンテンツの共通ナビゲーション

	----------------*/
	.main-nav {
		margin: 40px auto;
	}
	.main-nav::after {
		content: "";
		display: block;
		clear: both;
	}
	.main-nav li {
		border: 2px solid #33a389;
		border-radius: 3px;
		background-color: #fff;
		float: left;
		margin-right: 30px;
	}
	.main-nav .current {
		font-size: 17px;
		width: 210px;
		padding: 22px 32px;
		color: #fff;
		background-color: #33a389;
		font-weight: bold;
		position: relative;
	}
	.main-nav li.current i.icon-about {
		background-image: url(../img/common/main-nav_icon_about_hover.png);
	}
	.main-nav li.current i.icon-hosp {
		background-image: url(../img/common/main-nav_icon_hosp_hover.png);
	}
	.main-nav li.current i.icon-staff {
		background-image: url(../img/common/main-nav_icon_staff_hover.png);
	}
	.main-nav li:nth-of-type(3n) {
		margin-right: auto;
	}
	.main-nav a {
		font-size: 17px;
		width: 210px;
		padding: 22px 32px;
		color: #33a389;
		font-weight: bold;
		text-decoration: none;
		display: block;
		position: relative;
	}
	.main-nav i {
		position: absolute;
	}
	.main-nav i.icon-about {
		width: 26px;
		height: 29px;
		bottom: 18px;
		right: 24px;
		background-image: url(../img/common/main-nav_icon_about.png);
		background-repeat: no-repeat;
	}
	.main-nav i.icon-hosp {
		width: 30px;
		height: 23px;
		bottom: 18px;
		right: 25px;
		background-image: url(../img/common/main-nav_icon_hosp.png);
		background-repeat: no-repeat;
	}
	.main-nav i.icon-staff {
		width: 40px;
		height: 24px;
		bottom: 19px;
		right: 19px;
		background-image: url(../img/common/main-nav_icon_staff.png);
		background-repeat: no-repeat;
	}
	.main-nav li:hover {
		background-color: #33a389;
	}
	.main-nav li:hover a {
		color: #fff;
	}
	.main-nav li:hover i.icon-about {
		background-image: url(../img/common/main-nav_icon_about_hover.png);
	}
	.main-nav li:hover i.icon-hosp {
		background-image: url(../img/common/main-nav_icon_hosp_hover.png);
	}
	.main-nav li:hover i.icon-staff {
		background-image: url(../img/common/main-nav_icon_staff_hover.png);
	}
	/*-------------------

	フッター

	-------------------*/
	footer {
		font-size: 14px;
		background-color: #33a389;
		margin-left: 150px;
	}
	.footer-wrapper {}
	.footer-inner {
		width: 900px;
		margin: 0 auto;
		padding: 47px 30px 23px;
		padding-top: 47px;
		padding-bottom: 23px;
	}
	footer .left-content {
		float: left;
	}
	footer .right-content {
		float: right;
	}
	footer h2 {
		font-size: 16px;
		color: #fff;
		font-weight: normal;
		margin-bottom: 27px;
	}
	.footer-nav {
		font-size: 14px;
		line-height: 1.8;
		color: #fff;
	}
	.footer-nav a {
		color: #fff;
		text-decoration: none;
	}
	.footer-nav a:hover {
		text-decoration: underline;
	}
	.footer-nav ul {
		float: left;
	}
	.footer-nav li {
		padding-left: 20px;
		width: 173px;
	}
	.footer-address {
		float: right;
	}
	.footer-address-logo {
		margin-bottom: 13px;
	}
	.footer-contact-btn a {
		font-size: 15px;
		display: block;
		font-weight: bold;
		padding: 18px 26px 17px;
		color: white;
		background-color: #33a389;
		border: 2px solid #fff;
		text-decoration: none;
		border-radius: 3px;
		position: relative;
	}
	.footer-contact-btn a:hover {
		background-color: white;
		color: #33a389;
	}
	.footer-contact-btn .icon-contact {
		position: absolute;
		width: 24px;
		height: 16px;
		top: 17px;
		right: 30px;
		background-image: url(../img/common/icon_mail.png);
		background-repeat: no-repeat;
	}
	.footer-contact-btn a:hover .icon-contact {
		background-image: url(../img/common/footer_icon_mail_hover.png);
	}
	.footer-tel {
		margin: 14px auto 20px;
	}
	.footer-logo {
		padding-top: 32px;
		clear: both;
		text-align: center;
	}
	.f_bnr_hospital {
		padding-top: 20px;
		clear: both;
	}
	.f_bnr_hospital_box {
		border-top: 1px dashed #fff;
		border-bottom: 1px dashed #fff;
		padding: 20px;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.f_bnr_hospital p {
		font-size: 14px;
		line-height: 1.6;
		margin-right: 20px;
		color: #fff;
		font-weight: bold;
	}
	.f_bnr_hospital a {
		display: block;
	}
	.f_bnr_hospital a:hover {
		opacity: 0.9;
	}
	.floatbnr {
		position: fixed;
		bottom: 0;
		right: -25px;
		z-index: 20;
	}
	.floatbnr a {
		display: block;
		width: 100%;
		height: 100%;
		vertical-align: bottom;
		box-shadow: -3px -2px 3px rgba(0, 0, 0, 0.15);
		&:hover {
			opacity: 0.8;
		}
	}
	.floatbnr img {
		max-width: 90%;
	}
}