@charset "utf-8";
/*************************************************************
	style css
*************************************************************/
body {
	font-family: Meiryo, メイリオ, Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
	font-size: 13px;
	color: #2d2d2d;
	margin: 0 auto;
	background-color: #d5efd8;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h1 {color: #666666;}
h2 {text-align: center;}
.txt-orange {color: #f7931e;}
.txt-blue {color: #293d71;}
p.txt-mail {color: #293d71;}
p.txt-tel {color: #293d71;}

.btn-contact a {
	background: #293d71;
	color: #ffffff;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	display: block;
}

/* pc */
@media print, screen and (min-width:768px) {
body {min-width: 1020px;}
h2 {font-size: 350%;margin-bottom: 1em;}
h3 {font-size: 241%;margin-bottom: 1em;}
h4 {font-size: 134%;font-weight: bold;margin-bottom: 0.5em;}

.bnr_public_pc {text-align: center;margin-bottom: 5rem;}
.bnr_public_sp {display: none;}

	.sp{display:none;}
}
/* sp */
@media only screen and (max-width: 767px) {
img {max-width: 100%;height: auto;}
.bnr_public_pc {display: none;}
.bnr_public_sp {width: 85%;margin: 0 auto;text-align: center;margin-bottom: 4rem;}

	.pc{display:none;}
}

/* **************************************
 * GW-NEWS
************************************** */

.gw_news{
	width: 1000px;
	margin: -2% auto 0 auto;
	margin-bottom: 4vh;
	padding: 1.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;
	font-weight: bold;
}
/* sp */
@media only screen and (max-width: 767px) {
.gw_news{
	width: 100%;
	margin-top: 4%;
	padding-top: 2.5%;
}
.gw_news h2{
	font-size: 110%;
	line-height: 1.5;
}
 }

/* ====================================================== */
/*                                              Header    */
/* ====================================================== */
.header .contact{
	background: #f9e8d9;
	border-radius: 5px;
	padding: 16px 20px;
}

/* pc */
@media print, screen and (min-width:768px) {
header h1 {font-size: 85%;margin: 1.5em 0;}
header .wrapper {width: 1000px;margin: 0 auto;overflow: hidden;}
header p.logo {width: 460px;}
header p.logo img {display: inherit;width: 100%;}
header p.txt-tel {width: 275px;}
header p.txt-tel img {display: inherit;width: 100%;}

header .block-left   {float:left;}
header .block-right  {float:right;width: 275px;margin: 10px;display: flex;}
header .block-right2 {float:right;width: 275px;margin-top: 15px;}

header .tel-mail {float: left;}
header p.txt-mail {margin: 1em 0 0.5em;font-size: 110%;}
header p.txt-mail a {color: #293d71;text-decoration: none;}

/* ------------------------------------------ .header --- */
.header{margin:0 auto; background-color: #ffffff;}
.header h3 {font-size: inherit;margin-bottom: 10px;}
.header h3 img {width: 112px;}
.header .contact p.txt-tel {
	margin-bottom: 14px;
	text-align: center;
	width: inherit;
}
.header .contact p.txt-tel img {width: 224px;}
.header .contact .btn {text-align: center;}
.header .contact .btn img {width: 234px;}
}
/* sp */
@media only screen and (max-width: 767px) {
header {padding: 4% 2% 2%;background: #ffffff;}
header .block-left {display: none;}
header p.logo {width: 100%;margin-bottom: 1em;}
header .btn-contact a {
	box-sizing: border-box;
	float: right;
	-webkit-border-radius: 4px 0 0 4px;
	border-radius: 4px 0 0 4px;
	display: block;
	padding: 12px;
	font-size: 0.7rem;
	width: 80px;
}
header .contact {width: 60%;margin: 0 auto;padding: 5%;}
header .contact h3 {margin-bottom: 0.5em;}
header .contact h3 img {width: 50%;}
header .contact p.txt-tel {margin-bottom: 14px;text-align: center;width: 100%;}
header .contact p.txt-tel img {width: 100%;}
header .contact .btn {text-align: center;}
header .contact .btn img {width: 100%;}
}
/* ====================================================== */
/*                                              Footer    */
/* ====================================================== */
footer {width: 100%;margin: 0 auto;}
footer small {text-align: center;display: block;padding: 30px 0;}

/* pc */
@media print, screen and (min-width:768px) {
footer {background: #ffffff;}
footer .wrapper {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
footer .block-footer {margin: 0 auto;}
footer .block-left {float: left;}
footer .block-left dt {
	margin-bottom: 30px;
	font-size: 117%;
}
footer .block-left dd.txt-tel {
	color: #333333;
	font-size: 233%;
	font-weight: bold;
}
footer .block-left dd.txt-mail a {
	color: #293d71;
	font-size: 134%;
	font-weight: bold;
	text-decoration: none;
}
footer .block-right {float: right;}
footer .block-right p {
	font-size: 117%;
	padding-top: 22%;
}
footer .block-right p br {display: none;}

/* ------------------------------ #footerFloatingMenu --- */
#footerFloatingMenu {
	width: 100%;
	background:#ffffff;
	position:fixed;
	right:0;
	bottom:0;
}
#footerFloatingMenu h1 {font-size: 85%;margin: 1.5em 0;}
#footerFloatingMenu .wrapper {
	width: 1000px;
	margin: 20px auto;
	overflow: hidden;
}
#footerFloatingMenu p.logo {width: 460px;}
#footerFloatingMenu p.logo img {display: inherit;width: 100%;}

#footerFloatingMenu p.txt-tel {width: 275px;}
#footerFloatingMenu p.txt-tel img {display: inherit;width: 100%;}

#footerFloatingMenu .block-left {float: left;}
#footerFloatingMenu .block-right {float: right;width: 370px;display: flex;}

#footerFloatingMenu .tel-mail {float: left;}

#footerFloatingMenu p.txt-mail {margin: 1em 0 0.5em;font-size: 110%;}
#footerFloatingMenu p.txt-mail a {color: #293d71;text-decoration: none;}

#footerFloatingMenu .contact {
	background: #f9e8d9;
	border-radius: 5px;
	padding: 20px 40px;
	width: auto;
	box-sizing: border-box;
	overflow: hidden;
}
#footerFloatingMenu .contact h3 img {width: 130px;}
#footerFloatingMenu .contact h3 {font-size: inherit;float: left;margin-top: 5px;margin-bottom:0;}

#footerFloatingMenu .contact p.txt-tel {
	text-align: center;
	width: auto;
	float: left;
	margin-left: 30px;
	display: inline-block;
}

#footerFloatingMenu .contact p.txt-tel img {width: 270px;}
#footerFloatingMenu .contact-web {text-align: right;}
#footerFloatingMenu .contact-web .btn img {width: 370px;}

/* ---------------------------- #footerFloatingMenu-2 --- */
#footerFloatingMenu-2 {
	width: 100%;
	background: #fff;
	position: fixed;
	right: 0;
	bottom: 0;
}
#footerFloatingMenu-2 .wrapper {
	width: 1000px;
	margin: 20px auto;
	overflow: hidden;
}
#footerFloatingMenu-2 .block-left {
	float: left;
}
#footerFloatingMenu-2 .block-right2 {
	float: right;
	width: 490px;
}
#footerFloatingMenu-2 h1 {
	font-size: 85%;
	margin: 1.5em 0;
}
#footerFloatingMenu-2 p.logo {
	width: 460px;
}
#footerFloatingMenu-2 p.logo img {
	display: inherit;
	width: 100%;
}
#footerFloatingMenu-2 .home {
	float: right;
	margin: 15px 0 0 15px;
}
#footerFloatingMenu-2 .home img {
	width: 35px;
}
#footerFloatingMenu-2 .contact {
	background: #f9e8d9;
	border-radius: 5px;
	padding: 20px 40px;
	width: auto;
	box-sizing: border-box;
	overflow: hidden;
}
#footerFloatingMenu-2 .contact h3 img {
	width: 130px;
}
#footerFloatingMenu-2 .contact h3 {
	font-size: inherit;
	float: left;
	margin-top: 5px;
	margin-bottom: 0;
}
#footerFloatingMenu-2 .contact p.txt-tel {
	text-align: center;
	width: auto;
	float: left;
	margin-left: 30px;
	display: inline-block;
}
#footerFloatingMenu-2 .contact p.txt-tel img {
	width: 270px;
}
#footerFloatingMenu-2 .contact-web .btn {
	float: left;
	margin-left: 40px;
}
#footerFloatingMenu-2 .contact-web .btn img {
	width: 370px;
}
}
/* sp */
@media only screen and (max-width: 767px) {
footer {background: #ffffff;}
footer .block-footer {padding: 8% 4% 4% 4%;margin: 0 auto;}
footer small {font-size: 0.6rem;}

/* ------------------------------ #footerFloatingMenu --- */
#footerFloatingMenu {
	margin-top: 4vw;
	width: 100%;
	padding: 4% 0;
	background: #fff;
	position: fixed;
	right: 0;
	bottom: 0;
}
#footerFloatingMenu h1 {
	display: none;
}
#footerFloatingMenu p.logo {
	width: 96%;
	margin-bottom: 1em;
	padding: 0 2%;
}
#footerFloatingMenu .contact {
	width: 90%;
	margin: 0 auto 4vw;
	/*background: #f9e8d9;*/
	border-radius: 5px;
	padding: 0 4vw;
	overflow: hidden;
}
#footerFloatingMenu .contact h3 {
	float: left;
	width: 30%;
	margin-top: 4px;
	margin-right: 5%;
	line-height: 0;
}
#footerFloatingMenu .contact p.txt-tel {
	float: left;
	width: 65%;
	display: inline-block;
}
#footerFloatingMenu .contact p.txt-tel {
	text-align: center;
}
#footerFloatingMenu .contact p.txt-tel img {
	width: 100%;
}
#footerFloatingMenu .contact-web {
	width: 80%;
	margin: 0 auto;
}
#footerFloatingMenu .contact-web .btn {
	text-align: center;
}
#footerFloatingMenu .contact-web .btn img {
	width: 100%;
	text-align: center;
}
#footerFloatingMenu .contact .btn {
	text-align: center;
}

/* ---------------------------- #footerFloatingMenu-2 --- */
#footerFloatingMenu-2 {
	margin-top: 4vw;
	width: 100%;
	padding: 4% 0;
	background: #fff;
	position: fixed;
	right: 0;
	bottom: 0;
}
#footerFloatingMenu-2 h1 {display: none;}
#footerFloatingMenu-2 p.logo {
	width: 96%;
	margin-bottom: 1em;
	padding: 0 2%;
}
#footerFloatingMenu-2 .home {display: none;}
#footerFloatingMenu-2 .contact {
	width: 90%;
	margin: 0 auto 4vw;
	/*background: #f9e8d9;*/
	overflow: hidden;
}
#footerFloatingMenu-2 .contact h3 {
	float: left;
	width: 30%;
	margin-top: 4px;
	margin-right: 5%;
	line-height: 0;
}
#footerFloatingMenu-2 .contact p.txt-tel {
	float: left;
	width: 65%;
	display: inline-block;
}
#footerFloatingMenu-2 .contact p.txt-tel img {
	width: 100%;
}
#footerFloatingMenu-2 .contact-web {
	width: 80%;
	margin: 0 auto;
}
#footerFloatingMenu-2 .contact-web .btn {
	text-align: center;
}
#footerFloatingMenu-2 .contact-web .btn img {
	width: 100%;
	text-align: center;
}
}
/* ====================================================== */
/*                                          Navigation    */
/* ====================================================== */
.navi{
	width:100%;
	margin:0 auto;
	border-top:#cccccc solid 1px;
	border-bottom:#cccccc solid 1px;
}
.navi::after{content:" ";display: block;clear: both;}

.navi ul{width:1000px; margin:0 auto;}
.navi ul li{
	width:200px;
	float:left;
}
.navi ul li a{display:block;}
.navi ul li a:hover{background-color:#fffedc}
/* pc */
@media print, screen and (min-width:768px) {
.toppage      .navitop a{background-color:#fffedc}
.general      .navigen a{background-color:#fffedc}
.periodontics .naviper a{background-color:#fffedc}
.children     .navichi a{background-color:#fffedc}
.preventive   .navipre a{background-color:#fffedc}
}
/* sp */
@media only screen and (max-width: 767px) {
.sp_menuBtn{background:#ffffff;}
.sp_menuBtn::after{content:" ";display: block;clear: both;}

.sp_menuBtn .logo{
	float: left;
	width:auto;
	margin: 1.2rem 0 0 0;
}
.sp_menuBtn .logo img{
	width: 250px;
	height: auto;
}

.sp_menu{float: right; margin:1rem 0.5rem 0.5rem;}
.sp_menu a{display:block; width: 40px;}
.sp_menu img{width: 40px; height:auto;}
#sp_menu{display:none;}

#sp_menu li{
	width: 100%;
	height: 3em;
	font-size: 1.5em;
	line-height: 3em;
	clear: both;
	background: #fffedc url(../images/sp_arrow.svg) 95% center no-repeat;
	background-size: 2.5% auto;
	border-bottom: #ef9684 1px solid;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#sp_menu li:first-child{border-top: #ef9684 1px solid;}
#sp_menu a{
	padding-left: 2em;
	color:#000000;
	text-decoration:none;
	display: block;
}
#sp_menu a span{color:#ef9684;font-size: 1rem;}
}

/* ====================================================== */
/*                                      inner Contents    */
/* ====================================================== */
/* sub Title ____________________________________________ */
.sub_ttl {
	width: 100%;
	background-color:#ffffff;
}
.sub_ttl h2 {
	font-size: 240%;
	font-family: "Rounded Mplus 1c", sans-serif;
	margin-bottom: 1em;
	line-height: 8rem;
}
.sub_ttl .wrapper {
	width: 950px;
	padding: 20px 0 0;
	margin: 0 auto;
	color: #008e54;
	background-image: url(../images/pic_left.png), url(../images/pic_right.png);
	background-repeat: no-repeat;
	background-position: left 20px, right 20px;
}
/* pc */
@media print, screen and (min-width:768px) {
.sub_ttl {
	overflow: auto;
	border-bottom-right-radius: 100% 300px;
	border-bottom-left-radius: 100% 300px;
}
}
/* sp */
@media only screen and (max-width: 767px) {
.sub_ttl {}
.sub_ttl h2 {
	font-size: 160%;
	line-height: 2;
}
.sub_ttl .wrapper {
	width: 100%;
	min-height: 70px;
	line-height: 2;
	background-image: url(../images/pic_left.png), url(../images/pic_right.png);
	background-size: 50px auto, 50px auto;
}
}


/*block-06
====================================================*/
.block-06 ul {
	display: table;
	overflow: hidden;
	margin: 0 auto;
}
.block-06 li {display: table-cell;}

/*block-09
====================================================*/
.block-09 {background-color: #f4f4f0;}
.block-09 table {
	border-top: #999999 solid 1px;
	border-left: #999999 solid 1px;
	background: #ffffff;
	color: #252525;
}
.block-09 table tr {
	border-bottom: #999999 solid 1px;
}
.block-09 table th {
	border-bottom: #999999 solid 1px;
	border-right: #999999 solid 1px;
	text-align: center;
	font-weight: bold;
}
.block-09 table td {
	border-right: #999999 solid 1px;
	text-align: center;
}
.block-09 table th.sat {color: #2c7dbf;}
.block-09 table th.sun {color: #d80000;}


/* PC ------------------------------------------------------------------------------------------------------*/
@media print, screen and (min-width:768px) {
/* INNER CSS */
/*block-fv inner
====================================================*/
.block-fv2 {
	max-width: 100%;
	background: #fff;
	width: 100%;
	height: 155px;
	margin: 0 auto;
	border-bottom: 1px solid #cccccc;
}
.block-fv2 p.fv img {display: none;}
.block-fv2 h3 {
	font-size: inherit;
	margin-bottom: 10px;
}
.block-fv2 h3 img {width: 112px;}
.block-fv2 .contact2 {
	background: #f9e8d9;
	border-radius: 5px;
	padding: 16px 20px;
}
.block-fv2 .contact2 p.txt-tel {
	margin-bottom: 14px;
	text-align: center;
	width: inherit;
}
.block-fv2 .contact2 p.txt-tel img {width: 224px;}
.block-fv .contact2 .btn {text-align: center;}
.block-fv2 .contact2 .btn img {width: 234px;}
.home {float: right;margin: 15px 0 0 15px;}
.home img {width: 35px;}

/* /INNER CSS */

/* index */
/*block-fv
====================================================*/
.mvBlock {
	max-width: 1400px;
	background-image: url(../images/pic_main_pc1.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
	height: 440px;
	margin: 0 auto 60px;
}
.mvBlock p.fv img {display: none;}

/*block-01
====================================================*/
.block-01 {margin-bottom: 60px;}
.block-01 .wrapper {
	width: 970px;
	margin: 0 auto;
	background-image: url(../images/pic_left.png), url(../images/pic_right.png);
	background-repeat: no-repeat;
	background-position: left 44px, right 44px;
}
.block-01 h2 {
	background-image: url(../images/txt_01_pc.png);
	background-repeat: no-repeat;
	background-position: top center;
	width: 670px;
	height: 68px;
	margin: 0 auto 50px;
}
.block-01 h2 img {display: none;}
.block-01 p {text-align: center;}

/*block-02
====================================================*/
.block-02 {margin-bottom: 80px;}
.block-02 h2 {
	margin: 0 auto 40px;
	text-align: center;
	width: 492px;
}
.block-02 h2 img {width: 100%;}
.block-02 .decoration {
	margin: 0 auto 70px;
	text-align: center;
}
.block-02 ul.pc-only {
	width: 1002px;
	margin: 0 auto 60px;
	overflow: hidden;
}
.block-02 ul.pc-only li {
	float: left;
	margin-right: 50px;
}
.block-02 ul.pc-only li:last-child {margin-right: 0;}

/*block-03
====================================================*/
.block-03 {margin-bottom: 70px;}
.block-03 .wrapper {
	width: 1000px;
	height: auto;
	margin: 0 auto;
	overflow: hidden;
}
.block-03 .wrapper:first-of-type {border-bottom: #ffffff solid 2px;}
.block-03 .wrapper:last-of-type h2 {
	margin-top: 30px;
}
.block-03 .block-left {
	float: left;
	width: 419px;
	padding: 0 40px;
	border-right: #ffffff solid 2px;
}
.block-03 .block-right {
	float: left;
	width: 419px;
	padding: 0 40px;
}
.block-03 h2 {
	text-align: left;
	margin-bottom: 25px;
}
.block-03 h2 img {width: 60%;}
.block-03 p {margin-bottom: 30px;}
.block-03 figure.sp-only {display: none;}

/*block-04
====================================================*/
.block-04 {
	margin: 0 auto 50px;
	width: 1000px;
}
.block-04 h2 {
	margin-bottom: 30px;
	font-size: inherit;
}
.block-04 h2 img {
	width: 325px;
}
.block-04 p {
	text-align: center;
	margin-bottom: 70px;
}

/*block-05
====================================================*/
.block-05 {
	width: 1000px;
	box-sizing: border-box;
	margin: 0 auto 80px;
	background-image: url(../images/block_05_bg_pc.png);
	background-repeat: no-repeat;
	background-position: top center;
	padding-top: 107px;
}
.block-05 .inner {
	width: 900px;
	background: #ffffff;
	border-radius: 15px;
	padding: 50px;
	overflow: hidden;
	box-shadow: 8px 8px 0 #6ba4aa;
}
.block-05 figure {
	float: left;
	margin-right: 35px;
	width: 280px;
	height: 540px;
}
.block-05 figure figcaption {
	font-size: 124%;
	padding-top: 30px;
}
.block-05 figure img {
	width: 100%;
}
.block-05 p {
	font-size: 100%;
	line-height: 1.6;
	width: 585px;
	float: left;
	margin-bottom: 30px;
}
.block-05 p:first-of-type {margin-bottom: 2em;}
.block-05 p:last-of-type {margin-bottom: 0;}

/*block-06
====================================================*/
.block-06 {padding-bottom: 40px;}
.block-06 h2 {
	margin-bottom: 40px;
	font-size: inherit;
}
.block-06 h2 img {
	width: 113px;
	height: auto;
}
.block-06 ul {
	display: table;
	margin-bottom: 40px;
}
.block-06 li {
	display: table-cell;
	padding: 0 35px;
}
.block-06 li img {width: 160px;}

/*block-07
====================================================*/
.block-07 .inner {
	margin: 0 auto 60px;
	width: 990px;
	background: #ffffff;
	border-radius: 15px;
	padding: 50px 0;
	overflow: hidden;
	box-shadow: 8px 8px 0 #6ba4aa;
}
.block-07 h2 {
	text-align: center;
	background: url(../images/txt_09_pc.png) no-repeat top center;
	width: 675px;
	height: 46px;
	margin: 0 auto 30px;
}
.block-07 h2 img {display: none;}
.block-07 p {text-align: center;}

/*block-08
====================================================*/
.block-08 {background: #eaeaea;line-height: 0;}
.block-08 .map {margin: 0 auto;}

/*block-09
====================================================*/
.block-09 {
	background: #f0f9e8;
	padding: 50px 0;
}
.block-09 h2 {
	font-size: inherit;
	text-align: left;
	margin-bottom: 30px;
}
.block-09 h2 img {
	width: 465px;
}
.block-09 .wrapper {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
.block-09 .block-left {
	float: left;
	width: 50%;
	margin-bottom: 60px;
	margin-right: 4%;
}
.block-09 .block-right {
	float: left;
	width: 46%;
}
.block-09 .block-right .map {
	margin-top: 10px;
}
.block-09 p {
	font-size: 116%;
	margin-bottom: 1em;
}
.block-09 p.address {
	font-size: 139%;
	margin-bottom: 2em;
}
.block-09 .contact {
	background: #ffffff;
	border-radius: 10px;
	padding: 20px 25px 5px;
	overflow: hidden;
}
.block-09 h3 {
	margin: 0 auto 20px;
	text-align: center;
	font-size: inherit;
}
.block-09 h3 img {
	width: 144px;
}
.block-09 p.txt-tel {
	float: left;
	margin-right: 20px;
	line-height: 2;
}
.block-09 p.txt-tel img {
	width: 230px;
}
.block-09 .btn {
	float: left;
	margin-top: 10px;
}
.block-09 .btn img {
	width: 200px;
}
.block-09 p img.icn {
	width: 26px;
}
.block-09 table {
	float: left;
	margin-bottom: 15px;
}
.block-09 table th {
	padding: 9px;
	font-size: 100%;
}
.block-09 table td {
	padding: 24px 9px;
	font-size: 100%;
	vertical-align: middle;
}
.block-09 table td img {
	width: 26px;
}
.block-09 .block-right p {
	font-size: 100%;
	line-height: 2;
}
.block-09 #map {
	margin-top: 50px;
}
.block-09 h4 {
	text-align: left;
	margin-bottom: 40px;
}
.block-09 h4 img {width: 300px;}
.block-09 p a {
	color: #0097da;
	text-decoration: underline;
}

/*block-10
====================================================*/
.block-10 {
	background: #f0f9e8;
	padding: 0 0 70px;
	/*margin-bottom:70px;*/
}
.block-10 .inner {
	width: 990px;
	background: #ffffff;
	border-radius: 15px;
	padding: 20px 0 40px;
	overflow: hidden;
	box-shadow: 8px 8px 0 #acc48a;
	overflow: hidden;
	margin: 0 auto 30px;
}
.block-10 h2 {
	text-align: center;
	margin-bottom: 20px;
}
.block-10 h2 img {
	width: 460px;
}
.block-10 .wrapper {
	overflow: hidden;
	width: 830px;
	margin: 0 auto 35px;
}
.block-10 p {
	text-align: center;
	font-size: 139%;
}
.block-10 p br {display: none;}
.block-10 p.txt-tel {float: left;margin: 15px 35px 0 0;}
.block-10 p.txt-tel img {width: 413px;}
.block-10 p.txt-web {float: left;}
.block-10 p.txt-web img {width: 380px;}

}
/* SP ------------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 767px) {

/*header
====================================================*/
/*block-fv
====================================================*/
.block-fv,
.block-fv2 {width: 100%;}
.block-fv2 {border-bottom: 1px solid #cccccc;}

.block-fv img,
.block-fv2 img, {width:100%;}

.block-fv .contact,
.block-fv2 .contact2 {width: 60%;margin: 0 auto;padding: 5%;}

.block-fv .contact h3,
.block-fv2 .contact2 h3 {margin-bottom: 0.5em;}

.block-fv .contact h3 img,
.block-fv2 .contact2 h3 img {width: 50%;}

.block-fv .contact p.txt-tel, .block-fv2 .contact2 p.txt-tel {margin-bottom: 14px;text-align: center;width: 100%;}
.block-fv .contact p.txt-tel img, .block-fv2 .contact2 p.txt-tel img {width: 100%;}
.block-fv .contact .btn, .block-fv2 .contact .btn {text-align: center;}
.block-fv .contact .btn img, .block-fv2 .contact2 .btn img {width: 100%;}
.home {display: none;}

/*block-01
====================================================*/
.block-01 {padding: 5%;}
.block-01 h2 {margin-bottom: 5%;}
.block-01 p {text-align: center;}

/*block-02
====================================================*/
.block-02 {padding: 0 5%;margin-bottom: 5%;}
.block-02 .decoration {margin: 0 auto 5%;text-align: center;}
.block-02 ul.pc-only {display: none;}

/*block-03
====================================================*/
.block-03 {padding: 5%;margin-bottom: 5%;}
.block-03 h2 {margin-bottom: 5%;width: 65%;}
.block-03 p {margin-bottom: 5%;}
.block-03 figure {text-align: center;width: 90%;margin: 0 auto 10%;}

/*block-04
====================================================*/
.block-04 {
	padding: 0 5% 5%;
	margin-bottom: 5%;
}
.block-04 h2 {
	width: 65%;
	margin: 0 auto 5%;
}
.block-04 p {
	text-align: center;
	margin-bottom: 10%;
}
.block-04 p br {display: none;}

/*block-05
====================================================*/
.block-05 {
	box-sizing: border-box;
	margin: 0 5% 15%;
	background-image: url(../images/block_05_bg_pc.png);
	background-repeat: no-repeat;
	background-position: top center;
	padding-top: 20%;
	background-size: 50%;
}
.block-05 .inner {
	background: #ffffff;
	border-radius: 10px;
	padding: 6%;
	overflow: hidden;
	box-shadow: 6px 6px 0 #6ba4aa;
}
.block-05 figure {
	width: 100%;
	margin-bottom: 5%;
}
.block-05 figure figcaption {
	font-size: 124%;
	padding-top: 5%;
}
.block-05 figure img {
	width: 100%;
}
.block-05 p {
	font-size: 100%;
	line-height: 1.6;
	margin-bottom: 5%;
}
.block-05 p:first-of-type {margin-bottom: 2em;}
.block-05 p:last-of-type {margin-bottom: 0;}

/*block-06
====================================================*/
.block-06 {margin: 0 5% 15%;}
.block-06 h2 {width: 65%;margin: 0 auto 10%;}
.block-06 h2 img {width: 113px;height: auto;}
.block-06 ul {display: table;margin-bottom: 40px;}
.block-06 li {display: table-cell;padding: 0 2%;}
.block-06 li img {width: 100%;}

/*block-07
====================================================*/
.block-07 .inner {
	margin: 0 5% 10%;
	background: #ffffff;
	border-radius: 10px;
	padding: 5% 5% 10%;
	overflow: hidden;
	box-shadow: 6px 6px 0 #6ba4aa;
}
.block-07 h2 {text-align: center;margin: 0 auto 10%;}
.block-07 p {text-align: left;}

/*block-08
====================================================*/
.block-08 {
	background: #eaeaea;
	line-height: 0;
}
.block-08 .map {
	width: 100% !important;
	margin: 0 auto;
}
.block-08 iframe {
	width: 100% !important;
	height: 300px;
}

/*block-09
====================================================*/
.block-09 {
	background: #f0f9e8;
	padding-top: 5%;
}
.block-09 .wrapper {
	margin: 5% 5% 0;
	overflow: hidden;
}
.block-09 h2 {
	margin-bottom: 5%;
}
.block-09 p.address {
	margin-bottom: 5%;
}
.block-09 table {
	font-size: 0.85rem;
}
.block-09 .block-left {
	margin-bottom: 5%;
}
.block-09 .block-right {
	margin-bottom: 10%;
}
.block-09 .block-right .map {
	margin-top: 10px;
}
.block-09 p {
	margin-bottom: 5%;
}
.block-09 p.address {
	font-size: 0.9rem;
	margin-bottom: 2em;
}
.block-09 .contact {
	background: #ffffff;
	border-radius: 6px;
	padding: 10% 5%;
	overflow: hidden;
}
.block-09 h3 {
	margin: 0 auto 10%;
	text-align: center;
	font-size: inherit;
}
.block-09 h3 img {
	width: 50%;
}
.block-09 p.txt-tel {
	line-height: 2.5;
	margin-bottom: 1%;
}
.block-09 .btn img {
	width: 100%;
}
.block-09 p img.icn {
	width: 20px;
}
.block-09 table {
	margin-bottom: 5%;
}
.block-09 table th {
	padding: 3% 2%;
	font-size: 0.7rem;
}
.block-09 table td {
	padding: 5% 2%;
	font-size: 0.7rem;
	vertical-align: middle;
}
.block-09 table td img {
	width: 100%;
}
.block-09 #map {
	margin: 5% 0 10%;
	width: 100% !important;
}
.block-09 h4 {
	text-align: left;
	margin-bottom: 5%;
}
.block-09 h4 img {
	width: 80%;
}
.block-09 p a {
	color: #0097da;
	text-decoration: underline;
}

/*block-10
====================================================*/
.block-10 {
	background: #f0f9e8;
	/*padding:0 5% 5%;*/
	padding: 0 5% 5%;
	margin: 0;
}
.block-10 .inner {
	background: #ffffff;
	border-radius: 10px;
	padding: 8% 5%;
	overflow: hidden;
	box-shadow: 6px 6px 0 #acc48a;
	overflow: hidden;
	margin: 0 auto 30px;
}
.block-10 h2 {
	text-align: center;
	margin-bottom: 8%;
}
.block-10 .wrapper {
	margin: 0 auto 5%;
}
.block-10 p {
	text-align: center;
}
.block-10 p.txt-tel {
	margin-bottom: 8%;
}
.block-10 p.txt-web {
	margin-bottom: 8%;
}
}


/* ====================================================== */
/*                                             General    */
/* ====================================================== */
.generalBlock{margin: 0 auto 30px; 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 p{
	text-align:left;
	width:605px;
	padding:0 25px;
}
.generalBlock figure{
	width:295px;
	margin:0;
	padding:0 25px;
}
.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;}
}

/*------------------------------------ Treatment Block ---*/
.treatmentBlock{
	background: #ffffff;
	border-radius: 15px;
	overflow: hidden;
	box-sizing: border-box;
	margin: 0 auto 80px;
}
.treatmentBlock h3{
	color:#007200;
	text-align:center;
	font-size:180%;
}
.treatmentBlock p{
	text-align:center;
	font-size:120%;
}
.treatmentBlock .box{
	margin:30px 0;
	padding-bottom:60px;
	box-sizing: border-box;

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

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

.treatmentBlock .box dl{}
.treatmentBlock .box dl dt{
	border-bottom:#5d895d dotted 1px;
	font-weight:bold;
	padding:10px 0;
}
.treatmentBlock .box dl dd{padding:10px 0;}

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

.treatmentBlock .box figure{width:210px;float:left;}

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

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

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

/* ------------------------------- gclinicBlock Block --- */
.gclinicBlock h2 {text-align: center;}
.gclinicBlock .inner {
	background: #fffedc;
	overflow: hidden;
}
.gclinicBlock .inner .box{margin: 0 auto 60px;}

.gclinicBlock p.link a{font-size: 120%; color:#00a6c1; text-decoration:none;}


/* pc */
@media print, screen and (min-width:768px) {
.gclinicBlock .inner {
	width: 990px;
	margin: 0 auto 60px;
	padding: 50px 0;
	border-radius: 15px;
	box-shadow: 8px 8px 0 #6ba4aa;
}
.gclinicBlock h2 {
	width: 675px;
	height: 46px;
	margin: 0 auto 30px;
}

.gclinicBlock h2.ttl01{background: url(../images/ttl_gclinicBlock01_pc.png) no-repeat top center;}
.gclinicBlock h2.ttl02{background: url(../images/ttl_gclinicBlock02_pc.png) no-repeat top center;}

.gclinicBlock h2 img {display: none;}
.gclinicBlock p {text-align: center;}

}
/* sp */
@media only screen and (max-width: 767px) {
.gclinicBlock .inner {
	margin: 0 5% 10%;
	padding: 5% 5% 10%;
	border-radius: 10px;
	box-shadow: 6px 6px 0 #6ba4aa;
}
.gclinicBlock h2 {margin: 0 auto 10%;}
.gclinicBlock p {text-align: left;}
}

/* ====================================================== */
/*                                        Periodontics    */
/* ====================================================== */
.periodonticsBlock{margin: 0 auto 30px;padding:0;}
.periodonticsBlock::after{content:" ";display: block;clear: both;}
.periodonticsBlock 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;
}
.periodonticsBlock p{text-align:left;padding:0 25px;}
.periodonticsBlock figure{margin:0;padding:0 25px;}

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

.periodonticsBlock 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;
}
.periodonticsBlock p{
	text-align:left;
	width:605px;
	padding:0 25px;
}
.periodonticsBlock figure{
	width:295px;
	margin:0;
	padding:0 25px;
}
.periodonticsBlock .txtBox{width:645px;}

.periodonticsBlock .box{width:475px;}
.periodonticsBlock .box p{width: auto;}

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

.periodonticsBlock{width: 100%;}
.periodonticsBlock 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;
}
.periodonticsBlock p{
	width:95%;
	margin:0 auto;
	padding:0;
}
.periodonticsBlock figure{
	width:95%;
	margin:0 auto;
	padding:0;
}
.periodonticsBlock figure img{width:100%;height:auto;}

.periodonticsBlock .box{margin:0 auto 2em;}
.periodonticsBlock .txtBox{margin:0 auto 2em;}
}


/*---------------- Periodontal Disease Treatment Block ---*/
.pdtBlock{
	background: #ffffff;
	border-radius: 15px;
	overflow: hidden;
	box-sizing: border-box;
	margin: 0 auto 80px;
}
.pdtBlock h3{
	color:#007200;
	text-align:center;
	font-size:180%;
}
.pdtBlock p{
	text-align:center;
	font-size:120%;
}
.pdtBlock .box{
	margin:30px 0;
	box-sizing: border-box;
}

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

.pdtBlock .box dl{}
.pdtBlock .box dl dt{
	border-bottom:#5d895d dotted 1px;
	font-weight:bold;
	padding:0 0 10px;
}
.pdtBlock .box dl dd{padding:10px 0;}

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

.pdtBlock .box figure{width:95px;float:left;}

.pdtBlock .box dl{margin:0 0 0 30px; width:760px;float:left;}
.pdtBlock .box dl dt{font-size:180%;}
.pdtBlock .box dl dd{font-size:120%;}

.pdtBlock .box dl dd.txtBox{float:left; width:510px;}
.pdtBlock .box dl dd.imgBox{float:right; width:250px;text-align:center;}
}
/* sp */
@media only screen and (max-width: 767px) {
.pdtBlock{
	width:95%;
	margin:0 auto 30px;
    padding: 10px;
}
.pdtBlock .box figure{text-align:center;}
.pdtBlock .box figure img{width:50%; max-width:90px; height:auto;}
.pdtBlock .box dl{}
.pdtBlock .box dl dt{font-size:120%;}
.pdtBlock .box dl dd{font-size:100%;}
.pdtBlock .box dl dd.imgBox{text-align:center;}
.pdtBlock .box dl dd.imgBox img{width:100%; max-width:220px; height:auto;}
}

/* ====================================================== */
/*                                            Children    */
/* ====================================================== */
.childrenBlock{padding:0;}
.childrenBlock::after{content:" ";display: block;clear: both;}

.childrenBlock 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;
}
.childrenBlock p{
	text-align:left;
	padding:0 25px;
}
.childrenBlock figure{
	margin:0;
	padding:0 25px;
}

.childrenBlock .txtBox div{background:#ffffff;}
.childrenBlock .txtBox div dt{font-weight:bold;}

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

.childrenBlock 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: 0.5rem 0 2rem;
}
.childrenBlock p{
	text-align:left;
	padding:0 25px;
}
.childrenBlock figure{
	width:295px;
	margin:0;
	padding:0 25px;
}
.childrenBlock .txtBox{width:645px;}
.childrenBlock .txtBox div{
	margin:1em 25px;
	padding:10px;
	width:390px;
}
.childrenBlock .box{width:475px;}
.childrenBlock .box p{width: auto;}

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

.childrenBlock{width:100%;}
.childrenBlock 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;
}
.childrenBlock p{
	width:95%;
	margin:0 auto;
	padding:0;
}
.childrenBlock figure{
	width:95%;
	margin:0 auto;
	padding:0;
}
.childrenBlock figure img{
	width:100%;
	height:auto;
}

.childrenBlock .box{margin:0 auto 2em;}
.childrenBlock .txtBox{margin:0 auto 2em;}
.childrenBlock .txtBox div{
	width:95%;
	margin:1em auto;
}
.childrenBlock .txtBox div dl{
	padding:10px;
}
}

/* ====================================================== */
/*                                          Preventive    */
/* ====================================================== */
.preventiveBlock{}
.preventiveBlock::after{content:" ";display: block;clear: both;}

.preventiveBlock 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;
}
.preventiveBlock p{
	text-align:left;
	padding:0 25px;
}
.preventiveBlock figure{
	margin:0;
	padding:0 25px;
}

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

.preventiveBlock 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;
}
.preventiveBlock p{
	text-align:left;
	padding:0 25px;
}
.preventiveBlock figure{
	width:295px;
	margin:0;
	padding:0 25px;
}

.preventiveBlock .txtBox{width:100%;}
.preventiveBlock .txtBox.left,
.preventiveBlock .txtBox.right{width:645px;}

.preventiveBlock .txtBox div{
	margin:1em 25px;
	padding:10px;
	width:390px;
}

.preventiveBlock .box{width:475px;}
.preventiveBlock .box p{width: auto;}

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

}
/* sp */
@media only screen and (max-width: 767px) {
.preventiveBlock{
	margin: 0 auto 30px;
	padding:0;
}
.preventiveBlock .left,
.preventiveBlock .right{float:none;}

.preventiveBlock{width:100%;}
.preventiveBlock 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;
}
.preventiveBlock p{
	width:95%;
	margin:0 auto;
	padding:0;
}
.preventiveBlock figure{
	width:95%;
	margin:0 auto;
	padding:0;
}
.preventiveBlock figure img{
	width:100%;
	height:auto;
}

.preventiveBlock .box{margin:0 auto 2em;}
.preventiveBlock .txtBox{margin:0 auto 2em;}
.preventiveBlock .txtBox div{
	width:95%;
	margin:1em auto;
}
.preventiveBlock .txtBox div dl{padding:10px;}
}

/* ----------------------------------- periodic Block --- */
.periodicBlock h2 {text-align: center;}
/* pc */
@media print, screen and (min-width:768px) {
.periodicBlock{
	margin: 0 auto 60px;
	width: 990px;
	background: #fffedc;
	border-radius: 15px;
	padding: 50px 0;
	overflow: hidden;
	box-shadow: 8px 8px 0 #6ba4aa;
}
.periodicBlock h2 {
	width: 675px;
	height: 46px;
	margin: 0 auto 30px;
}

.periodicBlock h2{background: url(../preventive/images/ttl_periodic01_pc.png) no-repeat top center;}

.periodicBlock h2 img {display: none;}
.periodicBlock p {text-align: center;}


}
/* sp */
@media only screen and (max-width: 767px) {
.periodicBlock{
	margin: 0 5% 10%;
	background: #fffedc;
	border-radius: 10px;
	padding: 5% 5% 10%;
	overflow: hidden;
	box-shadow: 6px 6px 0 #6ba4aa;
}
.periodicBlock h2 {margin: 0 auto 10%;}
.periodicBlock p {text-align: left;}
}

/* --------------------------------- whiteBlock Block --- */
.whiteBlock {background: #ffffff;overflow: hidden;}
.whiteBlock h2 {text-align: center;}
/* pc */
@media print, screen and (min-width:768px) {
.whiteBlock{
	width: 990px;
	padding: 50px 0;
	margin: 0 auto 60px;
	border-radius: 15px;
}
.whiteBlock h2 {width: 675px;height: 46px;margin: 0 auto 30px;}
.whiteBlock p {text-align: center;}

.whiteBlock h2 img {display: none;}
.whiteBlock h2.ttl_preventive01{background: url(../preventive/images/ttl_preventive01_pc.png) no-repeat top center;}
}
/* sp */
@media only screen and (max-width: 767px) {
.whiteBlock{
	margin: 0 5% 10%;
	padding: 5% 5% 10%;
	border-radius: 10px;
}
.whiteBlock h2 {margin: 0 auto 10%;}
.whiteBlock p {text-align: left;}
}



/*--------------------------------------------------------*/
/* ====================================================== */
