@charset "UTF-8";

/* **************************************
 * 共通CSS
************************************** */

html,body {
	font-family: -apple-system, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Osaka, "メイリオ", Meiryo, sans-serif;
	text-align: justify;
	line-height: 1.6;
	-ms-text-justify: distribute;
	text-justify: distribute;

	-webkit-font-feature-settings: "palt" 1;

	font-feature-settings: "palt" 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

main {
	display: block;
}

figure {
	margin: 0;
	padding: 0;
}

img {
	width: 100%;
	height: auto;
	vertical-align: top;
	line-height: 1;
}

p {
	margin: 0;
}

ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.saturday {
	color: #2C7DBF;
}

.holiday {
	color: #D80000;
}

.clearfix:after,.hp-header__btm:after,.service-info:after,.access-cover:after,.access-ask:after {
	display: block;
	overflow: hidden;
	clear: both;
	width: 0;
	height: 0;
	content: "";
}

.table {
	display: table;
}

.table > .table-row {
	display: table-row;
}

.table .table-cell {
	display: table-cell;
}

.inside-conts {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	margin: auto;
	padding: 0 4vw;
}

.txt-col {
	margin-top: 1.6rem;
}

.txt-col:first-child {
	margin-top: 0;
}

.txt-large {
	font-size: 115%;
}

.block-col {
	margin-bottom: 8vw;
}

/* **************************************
 * Button Style
************************************** */

.ent-btn {
	display: block;
	width: 82.7vw;
	margin: auto;
}

.ent-btn__in {
	display: inline-block;
	-webkit-box-shadow: .15rem .15rem .01rem rgba(165, 165, 165, .35);
	box-shadow: .15rem .15rem .01rem rgba(165, 165, 165, .35);
}

/* **************************************
 * header
************************************** */

.hp-header__ci {
	overflow: hidden;
	position: relative;
	padding: 3.3vw 4vw;
	border-bottom: .3rem solid #94D6EA;
}

.hp-header__ci .logo {
	width: 62.7vw;
	margin: 0 auto;
}

.hp-header__ask {
	margin: 2.7vw auto;
}

.hd-ask {
	width: 71.3vw;
	margin: auto;
	margin-bottom: 4vw;
}
/* ====================================================== */
/*                                          Navigation    */
/* ====================================================== */
.navigationMenu{
	width:100%;
	margin:0 auto 30px;
	padding:0;
	border-top:#cacaca 1px solid;
	border-bottom:#cacaca 1px solid;
}
.navigationMenu::after{content:" ";display: block;clear: both;}

.navigationMenu ul{width:1000px; margin:0 auto; padding:0;}
.navigationMenu ul:before,
.navigationMenu ul:after {
    content:"";
    display:table;
}
.navigationMenu ul:after {clear:both;}
.navigationMenu ul {zoom:1;}

.navigationMenu ul li{
	list-style:none;
	padding:0;
}
.navigationMenu ul li a{
	display:block;
	text-decoration:none;
}
.navigationMenu ul li a:hover > img {opacity:.9;}


/* pc */
@media print, screen and (min-width:768px) {
.navigationMenu ul li{
	width:200px;
	float:left;
}
.navigationMenu ul li a{
	text-align:center;
}
.navigationMenu ul li a > span {display:none;}

.navigationMenu ul li:first-child a{border-left:1px solid #ffffff;}
.navigationMenu ul li a:hover{background-color:#ffffe1;}

.toppage     .navitop a{background-color:#ffffe1;}
.general     .navigen a{background-color:#ffffe1;}
.periodontal .naviper a{background-color:#ffffe1;}
.denture     .naviden a{background-color:#ffffe1;}
.self        .navisel a{background-color:#ffffe1;}
}
/* sp */
@media only screen and (max-width: 767px) {
/* btn */
.navToggle {
	display: block;
	position: fixed;/* bodyに対しての絶対位置指定 */
	right: 13px;
	top: 12px;
	width: 42px;
	height: 51px;
	cursor: pointer;
	z-index: 30;
	background: #666;
	text-align: center;
}
.navToggle span {
	display: block;
	position: absolute;	/* .navToggleに対して */
	width: 30px;
	border-bottom: solid 3px #eee;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	left: 6px;
}
.navToggle span:nth-child(1) {top: 9px;}
.navToggle span:nth-child(2) {top: 18px;}
.navToggle span:nth-child(3) {top: 27px;}
.navToggle span:nth-child(4) {top: 34px;}
.navToggle span:last-child{
    border: none;
    color: #eee;
    font-size: 9px;
    font-weight: bold;
}
/* //btn */
.navigationMenu ul li a > img {display:none;}
.navigationMenu ul li a > span {color:#000000;}
.navigationMenu ul li a > span > span {color:#244d89; font-size:0.8rem}

div.navigationMenu {
	position: fixed;
	z-index: 29;
	top: 0;
	left: 0;
	text-align: center;
	transform: translateY(-100%);
	transition: all 0.6s;
	width: 100%;
}
div.navigationMenu ul {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
div.navigationMenu ul li {
	font-size: 1.1em;
	padding: 0;

	width: 100%;

	clear: both;

	background:#ffffff url(../images/sp_arrow.svg) 95% center no-repeat;
	background-size: 2.5% auto;

	border-bottom: 1px dotted #cacaca;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
/* 最後はラインを描かない */
div.navigationMenu ul li:last-child {
	padding-bottom: 0;
	border-bottom: none;
}
div.navigationMenu ul li a {
	display: block;
	padding: 1em 0;
	text-align:left;
	padding-left:1.5em;
}
/* このクラスを、jQueryで付与・削除する */
div.navigationMenu.active {transform: translateY(0%);}
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
}

/* **************************************
 * footer
************************************** */

.hp-footer {
	padding: 2.7vw 0;
	text-align: center;
}

.hp-footer > small {
	font-size: 70%;
}

/* **************************************
 * Main Visual
************************************** */

.hp-mainvis {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	min-height: 30vw;
	margin: 4vw auto;
	border: .3rem solid #94D6EA;
	background: url("../images/bg_main-ph_sp.jpg") center no-repeat transparent;
	background-size: cover;
}

/* **************************************
 * NEWS
************************************** */

.gw_news{
	width: 100%;
	margin-bottom: 4vh;
	padding: 0.5% 1% 1% 1%;
	box-sizing: border-box;
	background: #f1f1f1;
	text-align: left;
	clear: both;
}
.gw_news h2{
	font-size: 110%;
	line-height: 0.5;
}

/* **************************************
 * Banner
************************************** */

.hp-banner {
	margin: 6.7vw auto;
}

.banner-list > li {
	margin: 5.3vw 0;
}

.banner-list > li > a {
	display: block;
}

/* **************************************
 * Section
************************************** */

.sec-head__title {
	margin: 0;
	margin-bottom: 6.7vw;
}

.col-title {
	margin: 0;
	margin-bottom: 3.2vw;
	line-height: 1.4;
}

.service-info {
	margin: 0 6.7vw;
}

.service-info__grid {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 4vw;
	padding: 6.7vw;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.service-info__grid:first-child {
	margin-top: 0;
}

.service-info__grid.is-1 {
	background-color: #F9EF78;
}

.service-info__grid.is-2 {
	min-height: 72vw;
	background-image: url("../images/bg_service-info01.jpg");
}

.service-info__grid.is-3 {
	background-color: #B0D9ED;
}

.service-info__grid.is-4 {
	min-height: 73.3vw;
	background-image: url("../images/bg_service-info02.jpg");
}

.service-info__grid.is-5 {
	background-color: #CEE6EF;
}

.service-info__grid.is-6 {
	float: left;
	width: 27.3vw;
	min-height: 51.3vw;
	background-image: url("../images/bg_service-info03.jpg");
}

.service-info__grid.is-7 {
	float: right;
	width: 46vw;
	min-height: 51.3vw;
	background-image: url("../images/bg_service-info04.jpg");
}

.service-info__grid > ul {
	margin: 2.4vw 0;
	margin-left: 1rem;
}

.service-info__grid > ul > li {
	list-style: disc;
}

.service-info__grid > div {
	margin-bottom: .8rem;
}

.service-info__grid > div:last-child {
	margin-bottom: 0;
}

/* **************************************
 * Read
************************************** */

.main-read__photo {
	margin-bottom: 1.6rem;
}

/* **************************************
 * Pick Up
************************************** */

.pick-up__sec {
	margin-top: 1.6rem;
}

.pick-up__sec:first-child {
	margin-top: 0;
}

.pick-up__col {
	margin-top: 1.6rem;
}

.pick-up__col:first-child {
	margin-top: 0;
}

/* **************************************
 * Medical Care
************************************** */

.m-care__head {
	width: 100vw;
	margin: 0 -4vw;
	background-color: #94D6EA;
}

.m-care__title {
	width: 29.3vw;
	margin: 0 auto;
	padding: 9.3vw 0;
}

.m-care__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-direction: row;
	padding: 5.1vw 3.2vw;

	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-box-orient: vertical;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	-ms-flex-pack: justify;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.m-care__list > li {
	overflow: hidden;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 40vw;
	height: 45.3vw;
	margin: 2.4vw 0;
	border: .3rem solid #BFBFBF;
	background: no-repeat center transparent;
	background-size: contain;
	text-indent: 100%;
	text-align: center;
	white-space: nowrap;
}

.m-care__list > li:first-child {
	background-image: url("../images/bg_illust-care01.png");
}

.m-care__list > li:nth-of-type(2) {
	background-image: url("../images/bg_illust-care02.png");
}

.m-care__list > li:nth-of-type(3) {
	background-image: url("../images/bg_illust-care03.png");
}

.m-care__list > li:nth-of-type(4) {
	background-image: url("../images/bg_illust-care04.png");
}

.m-care__list > li:nth-of-type(2n-1) {
	border-bottom: none;
}

.m-care__list > li:nth-of-type(2n) {
	border-top: none;
}

/* **************************************
 * Access
************************************** */

.access__head:before,.access__head:after {
	display: inline-block;
	width: 6.4vw;
	height: 6.4vw;
	margin: auto;
	background-color: #F9EF78;
	vertical-align: middle;
	content: "";
}

.access-cover {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100vw;
	margin: 0 -4vw;
	border: .3rem solid #94D6EA;
	border-right: none;
}

.access__head {
	position: relative;
	margin: 7.3vw auto;
	text-align: center;
}

.access__head:before {
	margin-right: 6.7vw;
}

.access__head:after {
	margin-left: 6.7vw;
}

.access__title {
	display: inline-block;
	width: 32.7vw;
	margin: 0 auto;
	vertical-align: middle;
}

.access-info {
	padding: 0 5.3vw;
}

.access-info > .logo {
	margin: 6.7vw 0;
}

.access-inset {
	margin-bottom: 8vw;
}

.access-data {
	font-size: 90%;
}

.access-data__head {
	white-space: nowrap;
}

.access-hours {
	padding: .5vw 2vw;
	border: .1rem solid black;
	background-color: #ffffff;
}

.access-hours > .biz-hours {
	table-layout: fixed;
	border-spacing: 0;
	width: 100%;
	margin: 0;
}

.access-hours > .biz-hours th,.access-hours > .biz-hours td {
	padding: 2.1vw 0;
	font-size: 75%;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

.access-hours > .biz-hours th:first-child,.access-hours > .biz-hours td:first-child {
	width: 30%;
}

.access-hours > .biz-hours tr:not(:first-child) th,.access-hours > .biz-hours tr:not(:first-child) td {
	border-top: 1px solid #999;
}
.circle{
	color:#960032;
}
.circleman {
	color:#005196;
}

.access-ask {
	border: 1px solid #BFBFBF;
	border-right: none;
	border-left: none;
}

.access-ask__set {
	margin: 5.3vw auto;
}

.access-ask__set > dt {
	width: 45.6vw;
	margin: auto;
	margin-bottom: 5.3vw;
}

.access-ask__set > dd {
	width: 65.9vw;
	margin: auto;
	margin-bottom: 2.7vw;
}

.access-ask > .ent-btn {
	margin-bottom: 5.3vw;
}

.map {
	margin-bottom: 6.7vw;
	text-align: center;
}

.map > iframe {
	width: 100%;
	height: 100vw;
}

.map-area__txt {
	margin-top: 4vw;
}

#map {
	height: 100vw;
}

/* **************************************
 * Media Queries
************************************** */

@media screen and (min-width: 737px) {
	html,body {
		min-width: 1024px;
		font-size: 95%;
	}

	img {
		width: auto;
	}

	img.is-pcfull {
		width: 100%;
	}

	p {
		font-size: 95%;
	}

	a > img {
		-webkit-transition: opacity .3s ease-in;
		-webkit-transition: opacity .3s ease-in 0s;
		transition: opacity .3s ease-in 0s;
		-webkit-transition-delay: 0s;
	}

	a:hover > img {
		opacity: .7;
	}

	a[href^="tel:"] {
		color: inherit;
		text-decoration: none;
		cursor: default;
	}

	.view-sp {
		display: none !important;
	}

	.ly-grid {
		display: -ms-grid;
		display: grid;
		width: 100%;

		-ms-grid-columns: 2fr 2.1fr 1fr 1.9fr;
		-ms-grid-rows: 1fr 0 .1fr .8fr;
		grid-template-columns: 2fr 2.1fr 1fr 1.9fr;
		grid-template-rows: 1fr .05fr .1fr .8fr;
	}

	.ly-grid__in.is-1 {
		margin: 0 20px 20px 0;
		background-color: #F9EF78;

		-ms-grid-column: 1;
		grid-column: 1;
		-ms-grid-row: 1;
		grid-row: 1 / 2;
		-ms-grid-row-span: 1;
	}

	.ly-grid__in.is-2 {
		margin-right: 20px;

		-ms-grid-column: 1;
		grid-column: 1;
		-ms-grid-row: 2;
		grid-row: 2 / 5;
		-ms-grid-row-span: 3;
	}

	.ly-grid__in.is-3 {
		margin-right: 20px;

		-ms-grid-column: 2;
		grid-column: 2 / 3;
		-ms-grid-column-span: 1;
		-ms-grid-row: 4;
		grid-row: 4 / 5;
		-ms-grid-row-span: 1;
	}

	.ly-grid__in.is-4 {
		margin: 0 20px 20px 0;

		-ms-grid-column: 2;
		grid-column: 2 / 3;
		-ms-grid-column-span: 1;
		-ms-grid-row: 1;
		grid-row: 1 / 4;
		-ms-grid-row-span: 3;
	}

	.ly-grid__in.is-5 {
		margin-bottom: 20px;

		-ms-grid-column: 3;
		grid-column: 3 / 5;
		-ms-grid-column-span: 2;
		-ms-grid-row: 1;
		grid-row: 1 / 3;
		-ms-grid-row-span: 2;
	}

	.ly-grid__in.is-6 {
		margin-right: 20px;

		-ms-grid-column: 3;
		grid-column: 3 / 4;
		-ms-grid-column-span: 1;
		-ms-grid-row: 3;
		grid-row: 3 / 5;
		-ms-grid-row-span: 2;
	}

	.ly-grid__in.is-7 {
		-ms-grid-column: 4;
		grid-column: 4 / 5;
		-ms-grid-column-span: 1;
		-ms-grid-row: 3;
		grid-row: 3 / 5;
		-ms-grid-row-span: 2;
	}

	.inside-conts {
		width: 1000px;
		padding: 0;
	}

	.pc-left {
		float: left;
		clear: left;
	}

	.pc-right {
		float: right;
		clear: right;
	}

	.block-col {
		margin-bottom: 36px;
	}

	.ent-btn {
		width: auto;
	}

	.ent-btn__in {
		-webkit-box-shadow: 3px 3px 0 rgba(165, 165, 165, .35);
		box-shadow: 3px 3px 0 rgba(165, 165, 165, .35);
	}

	.hp-header__top {
		padding: 8px 0;
		background-color: #94D6EA;
		text-align: center;
	}

	.hp-header__top > p {
		color: white;
		font-size: 98%;
	}

	.hp-header__ci {
		float: left;
		margin: 28px 0;
		padding: 0;
		border: none;
	}

	.hp-header__ci .logo {
		width: auto;
	}

	.hp-header__ask {
		display: table;
		float: right;
		margin: 24px 0;
	}

	.hd-ask {
		display: table-cell;
		width: auto;
		margin: auto;
		vertical-align: top;
	}

	.hd-ask + .ent-btn {
		display: table-cell;
		padding-top: 4px;
		padding-left: 20px;
	}

	.hp-footer {
		padding: 3rem 0;
	}

	.hp-footer > small {
		font-size: 100%;
	}

	.hp-mainvis {
		min-height: auto;
		height: 340px;
		margin: 4px auto;
		border-width: 4px;
		background-image: url("../images/bg_main-ph_pc.jpg");
	}

	.hp-banner {
		margin: 36px auto;
	}
	
	.hp-banner li {
		list-style: none;
	}

	.banner-list {
		letter-spacing: -.4rem;
	}

	.banner-list > li {
		display: inline-block;
		margin: 0;
		margin-right: 20px;
		letter-spacing: 0;
		list-style: none;
	}

	.banner-list > li:nth-child(2n) {
		margin-right: 0;
	}

	.sec-head__title {
		margin: 0;
		margin-bottom: 28px;
	}

	.col-title {
		margin: 0;
		margin-bottom: .8rem;
	}

	.service-info {
		margin: 0;
	}

	.service-info__grid {
		margin-top: 0;
		padding: 20px;
	}

	.service-info__grid.is-2 {
		min-height: auto;
	}

	.service-info__grid.is-4 {
		min-height: auto;
	}

	.service-info__grid.is-6 {
		float: none;
		width: auto;
		min-height: auto;
	}

	.service-info__grid.is-7 {
		float: none;
		width: auto;
		min-height: auto;
	}

	.service-info__grid > ul {
		margin: .8rem 0;
		margin-left: 1rem;
	}

	.main-read {
		display: table;
		overflow: hidden;
	}

	.main-read__photo {
		display: table-cell;
		margin-bottom: 0;
		vertical-align: middle;
	}

	.main-read__txt {
		display: table-cell;
		padding-left: 45px;
		vertical-align: middle;
	}

	.pick-up__sec {
		margin-top: 2.6rem;
	}

	figure.pick-up__col {
		margin-top: 0;
	}

	figure.pick-up__col + .pick-up__col {
		margin-top: 0;
	}

	.pick-up .flexed {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		flex-direction: row;

		-webkit-align-content: stretch;
		align-content: stretch;
		-webkit-align-items: center;
		align-items: center;
		-webkit-box-align: center;
		-moz-box-align: center;
		-webkit-box-lines: multiple;
		-moz-box-lines: multiple;
		-webkit-box-orient: vertical;
		-webkit-box-pack: justify;
		-moz-box-pack: justify;
		-ms-flex-align: center;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		-ms-flex-line-pack: stretch;
		-ms-flex-pack: justify;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-order: 0;
		-webkit-box-ordinal-group: 1;
		-ms-flex-order: 0;
		order: 0;
	}

	.pick-up .flexed .pick-up__col:first-child {
		width: 590px;
	}

	.pick-up .flexed .pick-up__col:first-child > .txt-col {
		margin-right: 40px;
	}

	.pick-up .flexed .pick-up__col:nth-child(2) {
		width: 390px;
	}

	.pick-up .flexed:nth-child(2) .pick-up__col:first-child {
		width: 290px;
	}

	.pick-up .flexed:nth-child(2) .pick-up__col:nth-child(2) {
		width: 650px;
	}

	.pick-up .flexed:nth-child(3) .pick-up__col:first-child {
		text-align: right;
	}

	.m-care {
		display: table;
		width: 100%;
	}

	.m-care__head {
		display: table-cell;
		width: 330px;
		text-align: center;
		vertical-align: middle;
	}

	.m-care__title {
		width: 110px;
		padding: 0;
	}

	.m-care__title > img {
		width: 100%;
	}

	.m-care__cat {
		display: table-cell;
	}

	.m-care__list {
		padding: 0;
		padding-left: 16px;
	}

	.m-care__list > li {
		width: 150px;
		height: 170px;
		margin: 0;
		border-width: 3px;
	}

	.m-care__list > li:first-child {
		background-image: url("../images/bg_illust-care01_pc.png");
	}

	.m-care__list > li:nth-of-type(2) {
		background-image: url("../images/bg_illust-care02_pc.png");
	}

	.m-care__list > li:nth-of-type(3) {
		background-image: url("../images/bg_illust-care03_pc.png");
	}

	.m-care__list > li:nth-of-type(4) {
		background-image: url("../images/bg_illust-care04_pc.png");
	}

	.access__head:before,.access__head:after {
		width: 30px;
		height: 30px;
	}

	.access-cover {
		width: auto;
		margin: 0 auto;
		padding: 36px;
		padding-right: 0;
		border-width: 6px;
		background: url("../images/bg_cover-photo.jpg") no-repeat left bottom transparent;
	}

	.access-map {
		float: right;
		width: 438px;
	}

	.access__head {
		margin: 64px auto 32px;
	}

	.access__head:before {
		margin-right: 32px;
	}

	.access__head:after {
		margin-left: 32px;
	}

	.access__title {
		width: auto;
	}

	.access-info {
		float: left;
		width: 483px;
		padding: 0;
	}

	.access-info > .logo {
		margin: 0;
		margin-bottom: 40px;
	}

	.access-inset {
		margin-bottom: 10px;
	}

	.access-data {
		width: 100%;
		margin-bottom: 24px;
	}

	.access-hours {
		padding: 4px 10px;
		border-width: 1px;
	}

	.access-hours > .biz-hours th,.access-hours > .biz-hours td {
		padding: 12px 0;
		font-size: 95%;
	}

	.access-ask {
		position: relative;
		padding: 21px 18px;
	}

	.access-ask__set {
		float: left;
		margin: 0;
	}

	.access-ask__set > dt {
		width: auto;
		margin-bottom: 24px;
	}

	.access-ask__set > dd {
		width: auto;
		margin-bottom: 16px;
	}

	.access-ask__set > dd:last-child {
		margin-bottom: 0;
	}

	.access-ask > .ent-btn {
		position: absolute;
		right: 18px;
		bottom: 34px;
		margin: auto;
	}

	.map {
		margin-bottom: 24px;
	}

	.map:last-child {
		margin-bottom: 0;
	}

	.map > iframe {
		height: 438px;
	}

	.map-area__txt {
		margin-top: 1rem;
	}

	#map {
		height: 288px;
	}
}

/*フローティング
====================================================*/

#footerFloatingMenu {
  background:#fff;
  padding: 1rem 0;
  left:0;
  line-height:1;
  position:fixed;
  bottom:0;
  width:100%;
  z-index:24;
}

@media screen and (max-width: 736px) {
	html,body {
		font-size: 4.2vw;
	}

	img {
		display: block;
		margin: auto;
	}
	
	.hp-banner li {
		list-style: none;
	}

	.view-pc {
		display: none !important;
	}

	.inside-conts.is-sp-full {
		padding: 0;
	}
  
/*フローティング
====================================================*/ 
#footerFloatingMenu{
  width:100%;
  padding-top:2%;
  background: #fff;
  position:fixed;
  right:0;
  bottom:0;
  /*left:0;
  line-height:1;
  position:fixed;
  top:0; 
  z-index:24;*/
}
#footerFloatingMenu .hp-header__ci{
  display: none;
}
}

.gw	{
	color: #ff0000;
	}




/* ====================================================== */
/*                                      inner Contents    */
/* ====================================================== */
main{
	margin:0;
	padding:0;
}
/* sub Title ____________________________________________ */
.sub_ttl {
	width: 100%;
	max-width:1000px;

	margin: 0 auto 30px;
	padding: 0 0 5px;
	text-align:center;

	background:url(../images/bg_subttl.png) no-repeat center bottom;
	-webkit-background-size: 100%;
	-moz-background-size: 100%;
	-o-background-size: 100%;
	background-size: 100%;
}
.sub_ttl h2 {margin:0;}

/* pc */
@media print, screen and (min-width:768px) {
.sub_ttl {height: 55px;}
.sub_ttl h2 {padding: 0;}
.sub_ttl h2 img{height:40px;}
}
/* sp */
@media only screen and (max-width: 767px) {
.sub_ttl {
	min-height: 60px;
	width: 100%;
}
.sub_ttl h2 {padding: 15px 0 5px;}
.sub_ttl h2 img{max-width:200px;}

}

/* h2 ___________________________________________________ */
h2.h2_01,
h2.h2_02 {
	text-align:center;
	padding:10px 0;
	background-repeat:no-repeat;
	background-position: 50% 50%;
}
h2.h2_01 {background-image: url(../images/bg_h2_01.png);}
h2.h2_02 {background-image: url(../images/bg_h2_02.png);}
/* pc */
@media print, screen and (min-width:768px) {
}
/* sp */
@media only screen and (max-width: 767px) {
h2.h2_01,
h2.h2_02 {
	width:100%;
}
h2.h2_01 img,
h2.h2_02 img{
	max-width:300px;
	height:auto;
}
}
/* pc */
@media print, screen and (min-width:768px) {
.sp{display:none;}
}
/* sp */
@media only screen and (max-width: 767px) {
.pc{display:none;}
}

/* ====================================================== */
/*                                    General Contents    */
/* ====================================================== */
.generalBlock{margin: 0 auto 60px; padding:0;}
.generalBlock::after{content:" ";display: block;clear: both;}
.generalBlock h3 {
	font-size: 180%;
	font-family: "Rounded Mplus 1c", sans-serif;
	margin-bottom: 1em;
	text-align: center;
	color: #b57400;
	background: url(../images/sub_line.svg) no-repeat center bottom;
	padding: 2rem 0;
}
.generalBlock p{text-align:left;padding:0 25px;}
.generalBlock figure{margin:0; padding:0 25px;}

/* pc */
@media print, screen and (min-width:768px) {
.generalBlock{width: 1000px;}
.generalBlock::after{content:" ";display: block;clear: both;}

.generalBlock h3 {
    font-size: 180%;
    font-family: "Rounded Mplus 1c", sans-serif;
    margin-bottom: 1em;
    text-align: center;
    color: #b57400;
    background: url(../images/sub_line.svg) no-repeat center bottom;
    padding: 2rem 0;
}
.generalBlock .txtBox{
	text-align:left;
	width:680px;
	padding:0 15px;
}
.generalBlock figure{
	width:235px;
	margin:0;
	padding:0 20px;
}
.generalBlock figure img{
	width:100%;
	height:auto;
}
.generalBlock .left{float:left;}
.generalBlock .right{float:right;}

}
/* sp */
@media only screen and (max-width: 767px) {
.generalBlock .left,
.generalBlock .right{float:none;}

.generalBlock{width:100%;}
.generalBlock h3 {
    font-size: 120%;
    font-family: "Rounded Mplus 1c", sans-serif;
    margin-bottom: 1em;
    text-align: center;
    color: #b57400;
    background: url(../images/sub_line.svg) no-repeat center bottom;
    padding: 0.5em 0;
}
.generalBlock p{
	width:95%;
	margin:0 auto;
	padding:0;
}
.generalBlock figure{
	width:95%;
	margin:20px auto 0;
	padding:0;
}
.generalBlock figure img{width:100%;height:auto;}
}

/*------------------------------------ General Block 2 ---*/
.generalBlock2{
	box-sizing: border-box;

	background: #fcfbf0;
	border:#69c6f9 3px solid;
	margin: 0 auto 60px;
}
.generalBlock2 h2{
	background: url(../images/bg_subttl.png) no-repeat center bottom;
	-webkit-background-size: 100%;
	-moz-background-size: 100%;
	-o-background-size: 100%;
	background-size: 100%;
	margin: 20px auto 0;
	padding: 0 0 15px;
	text-align: center;
}
.generalBlock2 p{
	text-align:center;
	margin: 30px auto;
}
.generalBlock2 .box{
	margin:30px 0;
	padding:0 20px 30px;
	box-sizing: border-box;

	background-image: url(../images/ico_arrow01.svg);
	background-size:55px;
	background-repeat: no-repeat;
	background-position: bottom center;
}
.generalBlock2 .box:last-child{
	padding-bottom:0;
	background-image:none;
}

.generalBlock2 .box::after{content:" ";display: block;clear: both;}

.generalBlock2 .box dl{}
.generalBlock2 .box dl dt{
	border-bottom:#878787 dotted 1px;
	font-weight:bold;
	padding:10px 0;
}
.generalBlock2 .box dl dd{padding:10px 0 10px 4em; margin:0;}
.generalBlock2 .box dl dd span{color:#043b89; margin-left:-4em;}

/* pc */
@media print, screen and (min-width:768px) {
.generalBlock2{
    padding:10px 30px 50px;
	width: 1000px;
}
.generalBlock2 .box{margin:30px 0;}

.generalBlock2 .box figure{width:210px;float:left;}
.generalBlock2 .box figure img{width:100%; height:auto;}

.generalBlock2 .box dl{margin:0 0 0 30px; width:600px;float:left;}
.generalBlock2 .box dl dt{font-size:120%;}
.generalBlock2 .box dl dd{font-size:100%;}
}
/* sp */
@media only screen and (max-width: 767px) {
.generalBlock2{
	width:95%;
	margin:0 auto 30px;
    padding: 10px;
}

.generalBlock2 .box figure{text-align:center;}

.generalBlock2 .box dl{}
.generalBlock2 .box dl dt{font-size:120%;}
.generalBlock2 .box dl dd{font-size:100%;}
}

/*------------------------------------ General Block 3 ---*/
.generalBlock3{
	background: url(../general/images/bg_generalBlock3.png) no-repeat right top;

	box-sizing: border-box;

	border:#69c6f9 3px solid;
	border-right:none;
	margin: 30px auto 80px;
}
.generalBlock3 h2{
	text-align:center;
}
/* pc */
@media print, screen and (min-width:768px) {
.generalBlock3{
    padding:10px 30px 50px;
	width: 1000px;
}
.generalBlock3 .box{margin:30px 0;}

.generalBlock3 .box figure{width:210px;float:left;}
.generalBlock3 .box figure img{width:100%; height:auto;}

.generalBlock3 .box dl{margin:0 0 0 30px; width:600px;float:left;}
.generalBlock3 .box dl dt{font-size:120%;}
.generalBlock3 .box dl dd{font-size:100%;}
}
/* sp */
@media only screen and (max-width: 767px) {
.generalBlock3{
	width:95%;
	margin:0 auto 180px;
    padding: 10px;
}
}


/* ====================================================== */
/*                                Periodontal Contents    */
/* ====================================================== */
.periodontalBlock{margin: 0 auto 60px; padding:0;}
.periodontalBlock::after{content:" ";display: block;clear: both;}

.periodontalBlock p{text-align:left; margin-bottom:2em;}
.periodontalBlock figure{margin:0; padding:0 25px;}

.periodontalBlock .periodontalBox{padding:0 30px;}
.periodontalBlock .periodontalBox .bgBox div::after{content:" ";display: block;clear: both;}
.periodontalBlock .periodontalBox .bgBox .box div{background:#fcfee0; padding:10px 40px;}
.periodontalBlock .periodontalBox .bgBox .box ul li{font-weight:bold;}
.periodontalBlock .periodontalBox .bgBox .box figure{margin:0; padding:0;}

.periodontalBlock .periodontalBox2{padding:0 30px;}
.periodontalBlock .periodontalBox2 .bgcBox div::after{content:" ";display: block;clear: both;}
.periodontalBlock .periodontalBox2 .bgcBox{background:#fcfee0; padding:10px 30px;}
.periodontalBlock .periodontalBox2 .bgcBox ul li{font-weight:bold;}
.periodontalBlock .periodontalBox2 p{margin:1em 0;}


/* pc */
@media print, screen and (min-width:768px) {
.periodontalBlock{width: 1000px;}
.periodontalBlock::after{content:" ";display: block;clear: both;}
.periodontalBlock .txtBox{
	text-align:left;
	width:650px;
	padding:0 15px;
}
.periodontalBlock figure{
	width:235px;
	margin:0;
	padding:0;
}
.periodontalBlock figure img{
	width:100%;
	height:auto;
}
.periodontalBlock .left{float:left;}
.periodontalBlock .right{float:right;}

.periodontalBlock .periodontalBox{
	background-image: url(../periodontal/images/bg_periodontalBox.jpg);
	background-repeat:no-repeat;
	background-position:740px top;
	background-size:235px;
}
.periodontalBlock .periodontalBox .bgBox p{padding:0 40px; margin-bottom:0;}
.periodontalBlock .periodontalBox .bgBox .box{background:#ffffff; padding:10px 10px 10px 0; width:840px;}
.periodontalBlock .periodontalBox .bgBox .box div{width:500px;}
}
/* sp */
@media only screen and (max-width: 767px) {
.periodontalBlock{width:100%;}
.periodontalBlock p{
	width:95%;
	margin:0 auto 1.5em;
	padding:0;
}
.periodontalBlock figure{
	width:95%;
	margin:20px auto 1.5em;
	padding:0;
}
.periodontalBlock figure img{width:100%;height:auto;}

.periodontalBlock .periodontalBox .bgBox .box figure{margin:1em auto; padding:0;}

.periodontalBlock .periodontalBox2 h2{height:50px;}
}

/*-------------------------------- Periodontal Block 2 ---*/
.periodontalBlock2{
	box-sizing: border-box;

	background: #fcfbf0;
	border:#69c6f9 3px solid;
	margin: 0 auto 60px;
}
.periodontalBlock2 h2{
	background: url(../images/bg_subttl.png) no-repeat center bottom;
	-webkit-background-size: 100%;
	-moz-background-size: 100%;
	-o-background-size: 100%;
	background-size: 100%;
	margin: 20px auto 0;
	padding: 0 0 15px;
	text-align: center;
}
.periodontalBlock2 h3{
	background:#ffffff;
	width:100%;

	margin: 20px auto 0;
	padding:5px 0;
	text-align: center;
}
.periodontalBlock2 p{
	text-align:center;
	margin: 30px auto;
}
.periodontalBlock2 .box{
	margin:30px 0;
	padding:0 20px;
	box-sizing: border-box;
}

.periodontalBlock2 .box::after{content:" ";display: block;clear: both;}


/* pc */
@media print, screen and (min-width:768px) {
.periodontalBlock2{
    padding:10px 30px 50px;
	width: 1000px;
}
.periodontalBlock2 .box{margin:30px 0;}

.periodontalBlock2 .box figure{width:735px; margin:0 auto;}
.periodontalBlock2 .box figure img{width:100%; height:auto;}

}
/* sp */
@media only screen and (max-width: 767px) {
.periodontalBlock2{
	width:95%;
	margin:0 auto 30px;
    padding: 10px;
}
.periodontalBlock2 .periodontalBox h2 img,
.periodontalBlock2 .box h3 img{
	max-width:200px;
	height:auto;
}
.periodontalBlock2 .box figure{text-align:center;}

}

/*-------------------------------- Periodontal Block 3 ---*/
.periodontalBlock3{
	background: url(../periodontal/images/bg_periodontalBox3.png) no-repeat right top;

	box-sizing: border-box;

	border:#69c6f9 3px solid;
	border-right:none;
	margin: 30px auto 80px;
}
.periodontalBlock3 h2{
	text-align:center;
}
/* pc */
@media print, screen and (min-width:768px) {
.periodontalBlock3{
    padding:10px 30px 50px;
	width: 1000px;
}
.periodontalBlock3 p{margin:0 0 1em;}

}
/* sp */
@media only screen and (max-width: 767px) {
.periodontalBlock3{
	width:95%;
	margin:0 auto 200px;
    padding: 20px;
}
.periodontalBlock3 .periodontalBox h2 img{
	max-width:250px;
	height:auto;
}
}


/* ====================================================== */
/*                               DentureBlock Contents    */
/* ====================================================== */
.dentureBlock{margin: 0 auto 60px; padding:0;}
.dentureBlock::after{content:" ";display: block;clear: both;}
.dentureBlock p{text-align:left; margin-bottom:2em;}
.dentureBlock figure{margin:0; padding:0 25px;}

.dentureBlock .periodontalBox{padding:0 30px;}

/* pc */
@media print, screen and (min-width:768px) {
.dentureBlock{width: 1000px;}

.dentureBlock .dentureBox.right,
.dentureBlock .dentureBox.left{width:440px; margin:0 30px;}

.dentureBlock .txtBox{
	text-align:left;
	width:650px;
	padding:0 15px;
}
.dentureBlock .dentureBox.right .txtBox,
.dentureBlock .dentureBox.left .txtBox{width: auto;}

.dentureBlock figure{
	width:235px;
	margin:0;
}
.dentureBlock figure img{
	width:100%;
	height:auto;
}
.dentureBlock .left{float:left;}
.dentureBlock .right{float:right;}

}
/* sp */
@media only screen and (max-width: 767px) {
.dentureBlock{width:100%;}
.dentureBlock p{
	width:95%;
	margin:0 auto 1.5em;
	padding:0;
}
.dentureBlock figure{
	width:95%;
	margin:20px auto 1.5em;
	padding:0;
}
.dentureBlock figure img{width:90%;height:auto;}
}

/*------------------------------------ Denture Block 2 ---*/
.dentureBlock2{margin: 0 auto 60px; padding:0 0 30px;}
.dentureBlock2::after{content:" ";display: block;clear: both;}
.dentureBlock2 p{text-align:left; margin-bottom:1.5em;}
.dentureBlock2 figure{margin:0; padding:0 25px;}

.dentureBlock2{
	background: url(../denture/images/bg_dentureBlock2.jpg) no-repeat right top;

	box-sizing: border-box;

	border:#69c6f9 3px solid;
	border-right:none;
}
.dentureBlock2 h2{text-align:center; margin:1.5em 0;}

.dentureBlock2 .dentureBox{padding:0 30px;}

.dentureBlock2 .dentureBox p.bgc-p{margin:0.5em 0;}
.dentureBlock2 .dentureBox .bgcBox{background:#fcfee0; padding:10px 40px;}
/* pc */
@media print, screen and (min-width:768px) {
.dentureBlock2{width: 1000px;}

.dentureBlock2 .left{float:left;}
.dentureBlock2 .right{float:right;}

.dentureBlock2 .dentureBox .bgcBox{width:460px;}
}
/* sp */
@media only screen and (max-width: 767px) {
.dentureBlock2{width:90%;margin: 0 auto 60px;}
.dentureBlock2 p{
	width:95%;
	margin:0 auto 1.5em;
	padding:0;
}
.dentureBlock2 figure{
	width:95%;
	margin:20px auto 1.5em;
	padding:0;
}
.dentureBlock2 figure img{width:90%;height:auto;}
}

/*------------------------------------ Denture Block 3 ---*/
.dentureBlock3{
	margin: 0 auto 60px;
	text-align:center;
	background:#e3f9ff;
	padding:30px 0;
}
/* pc */
@media print, screen and (min-width:768px) {
.dentureBlock3{width: 1000px;}
}
/* sp */
@media only screen and (max-width: 767px) {
.dentureBlock3{width:100%;margin: 0 auto 200px;}
.dentureBlock3 img{width:90%;}
}

/* ====================================================== */
/*                                       Self Contents    */
/* ====================================================== */
.selfBlock{margin: 0 auto 60px; padding:0;box-sizing: border-box;}
.selfBlock::after{content:" ";display: block;clear: both;}
.selfBlock p{text-align:left; margin-bottom:2em;}
.selfBlock figure{margin:0; padding:0;}

.selfBlock .selfBox{padding:0;}

/* pc */
@media print, screen and (min-width:768px) {
.selfBlock{width: 1000px;}
.selfBlock .txtBox{
	text-align:left;
	width:650px;
	padding:0 15px;
}
.selfBlock figure{
	width:300px;
	margin:0;
}
.selfBlock figure img{
	width:100%;
	height:auto;
}
.selfBlock .left{float:left;}
.selfBlock .right{float:right;}

}
/* sp */
@media only screen and (max-width: 767px) {
.selfBlock{width:100%;}
.selfBlock p{
	width:95%;
	margin:0 auto 1.5em;
	padding:0;
}
.selfBlock figure{
	width:95%;
	margin:20px auto 1.5em;
	padding:0;
}
.selfBlock figure img{width:90%;height:auto;}
}

/*--------------------------------------- Self Block 2 ---*/
.selfBlock2{margin: 0 auto 60px; padding:0 0 30px;box-sizing: border-box;}
.selfBlock2::after{content:" ";display: block;clear: both;}
.selfBlock2 p{text-align:left; margin-bottom:1.5em;}
.selfBlock2 figure{margin:0; padding:0;}

.selfBlock2{background:#F9F9F9;}
.selfBlock2 h2{text-align:center; margin:1.5em 0;}
.selfBlock2 .selfBox{padding:0 30px;}

/* pc */
@media print, screen and (min-width:768px) {
.selfBlock2{width: 1000px;}
.selfBlock2 .txtBox{width: 715px; margin-left:30px;}
.selfBlock2 figure{width: 190px;}
.selfBlock2 figure img{width:100%;height:auto;}

.selfBlock2 .left{float:left;}
.selfBlock2 .right{float:right;}
}
/* sp */
@media only screen and (max-width: 767px) {
.selfBlock2{width:90%;margin: 0 auto 60px;}
.selfBlock2 p{
	width:95%;
	margin:0 auto 1.5em;
	padding:0;
}
.selfBlock2 figure{
	width:95%;
	margin:20px auto 1.5em;
	padding:0;
}
.selfBlock2 figure img{width:90%;height:auto;}
}

/*--------------------------------------- Self Block 3 ---*/
.selfBlock3{margin: 0 auto 60px; padding:0;}
.selfBlock3::after,
.selfBlock3 .selfBox::after, 
.selfBlock3 .selfBox .box::after{content:" ";display: block;clear: both;}
.selfBlock3{
	background: url(../self/images/bg_selfBlock3.png) no-repeat right top;

	box-sizing: border-box;

	border:#69c6f9 3px solid;
	border-right:none;
}

.selfBlock3 .selfBox{}
.selfBlock3 .selfBox h2{text-align:center;}

.selfBlock3 .selfBox .box{
	border-radius: 5px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;

	background: #f9f9f9;
}
.selfBlock3 .selfBox .box h3{
	text-align:center;
	margin:0 10px 25px;
	padding: 10px 0 20px;
	border-bottom:#EBEA46 solid 4px;
}
.selfBlock3 .box table {border-spacing: 5px;}
.selfBlock3 .box table th,
.selfBlock3 .box table td{background:#ffffff;}


/* pc */
@media print, screen and (min-width:768px) {
.selfBlock3{width: 1000px;}
.selfBlock3 .selfBox{width: 900px; margin:0 auto;}
.selfBlock3 .selfBox .box{width: 880px; margin:0 auto 25px; padding:0 0 20px;}

.selfBlock3 .box .left {
	float: left;
	margin: 0 30px 2rem 45px;
}
.selfBlock3 .box dl dt {
	width: 110px;
	height: 100px;
	float: left;
	text-align: center;
	line-height: 3.6;
	margin:0 20px 0 0;

	display: block;
}
.selfBlock3 .box dl dd {
	margin: 0 0 2rem 2rem;
	overflow: hidden;
}
.selfBlock3 .box dl dd ul {
	width:465px;
}
.selfBlock3 .box dl dd ul li {
	padding: 0 0 0 1.5em;
	text-indent: -1em;
	line-height: 2;
}
.selfBlock3 .box table {
	width: 235px;
}

}
/* sp */
@media only screen and (max-width: 767px) {
.selfBlock3{width:95%;margin: 0 auto 200px;}
.selfBlock3 img{width:90%;}

.selfBlock3 h2 img{max-width: 300px;}
.selfBlock3 p{width:90%; margin:0 auto; padding:10px; background: rgba(255,255,255,0.8);}

.selfBlock3 .box h3 img{
	max-width: 300px;
	text-align:center;
}
.selfBlock3 .box {
    padding: 10px;
	margin-bottom:2em;
}

.selfBlock3 figure{
	text-align:center;
}
.selfBlock3 figure img{
	width: 90%;
	max-width: 200px;
	margin-bottom:1.5em;
}
.selfBlock3 .box dl dt{
	margin-bottom:1.5em;
}
.selfBlock3 .box dl dt img{
	width:50%;
	max-width:110px;
}
.selfBlock3 .box dl dd {
	margin: 0 0 2rem 0;
}
.selfBlock3 .box table {
	width: 90%;
	margin:1em auto 0;
}
.selfBlock3 .box table th {
	width:50%;
}

}
