@charset "UTF-8";

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline; }

html {
	line-height: 1; }

ol, ul {
	list-style: none; }

table {
	border-collapse: collapse;
	border-spacing: 0; }

caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle; }

q, blockquote {
	quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
		content: "";
		content: none; }

a img {
	border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block; }

/* ************************************
 *
 * SCSS Media Queries Mixins
 * 
 * Aauthor   : Ryuichi Nonaka
 * Version   : 0.5.0
 * Copyright : 2012 Ryuichi Nonaka
 * Date      : 2013/08/07
 *
 * Released under the MIT license
 *
 *********************************** */
/* ************************************
 *
 * MediaQueries Mixin
 * Initialize variables
 *
 * @param $min-width: num - Minimum device width.
 * @param $max-width: num - Maximum device width.
 * @param $resolution: num - Device pixel ratio.
 * @param $orientation: string or boolean [portrait|landscape|false] - Device orientation.
 *
 *********************************** */
/*---------------------------------------------
01. layout
02. common
03. header + footer
04. nav
05. info
06. contents

07. introduction
08. urgent
09. examination
10. time
11. location
12. reservation
13. news
14. clinic
15. staff
16. orthodontics
17. pedodontics
18. price
---------------------------------------------*/
/*---------------------------------------------
01. layout
---------------------------------------------*/
body {
	width: 100%;
	min-width: 320px;
	margin: 0;
	background-color: #b4ecde;
	font-family: 'Helvetica Neue', Helvetica, Arial, Verdana, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: 1.5;
	font-size: 24px; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    body {
			font-size: 14px; } }

.view_pc {
	display: none; }
  @media only screen and (min-width: 769px) and (max-width: 5000px) {
    .view_pc {
			display: block !important; } }

.view_tb {
	display: none; }
  @media only screen and (min-width: 569px) and (max-width: 768px) {
    .view_tb {
			display: block !important; } }

.view_sp {
	display: none; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    .view_sp {
			display: block !important; } }

#container {
	width: 960px;
	margin: 0 auto; }
  @media only screen and (min-width: 0px) and (max-width: 768px) {
    #container {
			width: 100%; } }

/*---------------------------------------------
02. common
---------------------------------------------*/
.triangle-right {
	position: relative;
	padding: 10px 15px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px; }

/* Variant : for left positioned triangle
------------------------------------------ */
.triangle-right.left {
	margin: 5px 10px 0 55px;
	background: #e6e9ee; }

/* THE TRIANGLE
------------------------------------------ */
.triangle-right:after {
	content: "";
	position: absolute;
	bottom: -20px;
  /* value = - border-top-width - border-bottom-width */
	left: 50px;
  /* controls horizontal position */
	border-width: 20px 0 0 20px;
  /* vary these values to change the angle of the vertex */
	border-style: solid;
	border-color: #075698 transparent;
  /* reduce the damage in FF3.0 */
	display: block;
	width: 0; }

/* Variant : left
------------------------------------------ */
.triangle-right.left:after {
	top: 9px;
	left: -14px;
  /* value = - border-left-width - border-right-width */
	bottom: auto;
	border-width: 5px 15px 5px 0;
  /* vary these values to change the angle of the vertex */
	border-color: transparent #e6e9ee; }

span.blue {
	background-color: #C8FAFA; }

p.notice {
	width: 85% !important;
	margin: 0 auto 20px !important;
	padding: 10px 10px 10px 50px;
	border: 1px solid #5fcbda;
	background: #dff5f8 url("../images/icon_check01.png") 5px 12px no-repeat;
	background-size: auto auto;
	color: #231815; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    p.notice {
			width: 80% !important;
			padding: 10px 10px 10px 25px;
			background-size: 16px auto; } }
  @media only screen and (min-width: 569px) and (max-width: 768px) {
    p.notice {
			width: 80% !important; } }

h3.triangle-border {
	position: relative;
	width: 82% !important;
	margin: 0 auto 10px !important;
	padding: 5px 5% !important;
	background-color: #6fc9d8 !important;
	font-size: 100%;
	font-weight: bold;
	color: #333; }
  h3.triangle-border.triangle-border:before {
		content: "";
		position: absolute;
		bottom: -5px;
    /* value = - border-top-width - border-bottom-width */
		left: 15px;
    /* controls horizontal position */
		border-width: 5px 8px 0;
		border-style: solid;
		border-color: #6fc9d8 transparent;
    /* reduce the damage in FF3.0 */
		display: block;
		width: 0; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    h3.triangle-border {
			width: 82% !important; }
      h3.triangle-border.triangle-border:before {
				content: "";
				position: absolute;
				bottom: -5px;
        /* value = - border-top-width - border-bottom-width */
				left: 10px;
        /* controls horizontal position */
				border-width: 5px 8px 0;
				border-style: solid;
				border-color: #6fc9d8 transparent;
        /* reduce the damage in FF3.0 */
				display: block;
				width: 0; } }
  @media only screen and (min-width: 569px) and (max-width: 768px) {
    h3.triangle-border {
			width: 80% !important; } }

/*---------------------------------------------
03. header + footer
---------------------------------------------*/
.index header {
	margin: 0 0 17px; }

header.gnav {
	-webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.3);
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.3);
	background-color: #fff;
	position: relative;
	width: 100%;
	color: #37bd9c;
	text-align: center;
	padding: 20px 0; }
  header.gnav a {
		display: inline-block;
		text-decoration: none;
		color: #37bd9c; }
  header.gnav h1 {
		padding: 0;
		font-weight: bold;
		font-size: 129%; }
  header.gnav p {
		font-size: 86%; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    header.gnav {
			padding: 10px 0; } }

footer {
	overflow: hidden;
	*zoom: 1;
	-webkit-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.3);
	box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.3);
	background-color: #fff;
	width: 100%;
	padding: 20px 0;
	color: #37bd9c;
	font-size: 100%; }
  footer dl {
		width: 60%;
		margin: 0 auto;
		text-align: center; }
    footer dl dt {
			margin: 0 0 5px;
			font-weight: bold;
			font-size: 108%; }
    footer dl dd {
			margin: 0 0 5px;
			line-height: 1.2;
			font-size: 108%; }
    footer dl dd:last-child {
			margin: 0;
			color: #000;
			font-size: 86%; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    footer {
			padding: 5px 0; } }

/*---------------------------------------------
04. nav
---------------------------------------------*/
.home nav ul {
	overflow: hidden;
	*zoom: 1;
	padding: 30px 0 15px; }
  .home nav ul li {
		display: inline-block;
		float: left;
		width: 25%;
		margin: 20px 0 40px;
		padding: 10px 0 0;
		font-size: 86%;
		line-height: 1;
		text-align: center;
		text-shadow: 1px 1px 3px black; }
    .home nav ul li a {
			display: inline-block;
			position: relative;
			color: #fff;
			text-decoration: none; }
    .home nav ul li img {
			width: 120px;
			height: auto;
			margin: 0 0 6px; }
    .home nav ul li img.icon {
			position: absolute;
			top: -10px;
			right: -15px;
			width: 60px;
			height: auto;
			margin: 0; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    .home nav ul {
			padding: 15px 0; }
      .home nav ul li {
				width: 33%;
				margin: 0 0 5px; }
        .home nav ul li img {
					width: 60px;
					margin: 0 0 3px; }
        .home nav ul li img.icon {
					top: -10px;
					right: -15px;
					width: 30px; } }

.single .gnav nav,
.page .gnav nav {
	overflow: hidden;
	*zoom: 1; }
  .single .gnav nav ul li,
  .page .gnav nav ul li {
		position: absolute; }
  .single .gnav nav ul .menu,
  .page .gnav nav ul .menu {
		top: 40px;
		left: 40px; }
  .single .gnav nav ul .tel,
  .page .gnav nav ul .tel {
		top: 40px;
		right: 30px; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    .single .gnav nav ul .menu,
    .page .gnav nav ul .menu {
			top: 25px;
			left: 15px; }
      .single .gnav nav ul .menu img,
      .page .gnav nav ul .menu img {
				width: 18px;
				height: auto; }
    .single .gnav nav ul .tel,
    .page .gnav nav ul .tel {
			top: 17px;
			right: 15px; }
      .single .gnav nav ul .tel img,
      .page .gnav nav ul .tel img {
				width: 17px;
				height: auto; } }

/*---------------------------------------------
05. info
---------------------------------------------*/
#info {
	width: 90%;
	margin: 0 auto 50px;
	background-image: url("../images/icon_info.png");
	background-repeat: no-repeat;
	background-position: 10px 3px; }
  #info p {
		font-size: 108%; }
  #info .triangle-right.left {
		margin-left: 80px; }
  #info .triangle-right.left:after {
		top: 15px; }
  #info a {
		color: #333333;
		text-decoration: none; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    #info {
			margin: 0 auto 15px;
			background-size: 25px auto; }
      #info .triangle-right.left {
				margin-left: 55px; }
      #info .triangle-right.left:after {
				top: 12px; } }

/*---------------------------------------------
06. contents
---------------------------------------------*/
.page article header,
.single article header {
	margin: 0 0 30px;
	padding: 30px;
	background-image: url("../images/bg_title.png");
	background-repeat: repeat-x;
	background-size: contain;
	background-color: transparent;
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    .page article header,
    .single article header {
			margin: 0 0 10px;
			padding: 14px; } }
  .page article header h2,
  .single article header h2 {
		font-size: 143%;
		line-height: 0.8em;
		color: #fff;
		text-shadow: 1px 1px 3px black; }
.page article .contentsArea,
.single article .contentsArea {
	overflow: hidden;
	*zoom: 1;
	margin: 0 40px 40px;
	padding: 40px 0 0;
	background-color: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px; }
  @media only screen and (min-width: 0px) and (max-width: 568px) {
    .page article .contentsArea,
    .single article .contentsArea {
			margin: 0 10px 10px;
			padding: 12px 0 0; } }
  .page article .contentsArea .box,
  .single article .contentsArea .box {
		overflow: hidden;
		*zoom: 1;
		margin: 0 0 30px; }
    .page article .contentsArea .box:last-of-type,
    .single article .contentsArea .box:last-of-type {
			margin: 0 !important; }
    .page article .contentsArea .box h3,
    .single article .contentsArea .box h3 {
			margin: 0 0 40px;
			padding: 10px 5%;
			background-color: #37bd9c;
			color: #fff;
			font-size: 129%; }
      @media only screen and (min-width: 0px) and (max-width: 568px) {
        .page article .contentsArea .box h3,
        .single article .contentsArea .box h3 {
					margin: 0 0 10px; } }
    .page article .contentsArea .box p,
    .page article .contentsArea .box dl,
    .page article .contentsArea .box table,
    .single article .contentsArea .box p,
    .single article .contentsArea .box dl,
    .single article .contentsArea .box table {
			width: 90%;
			margin: 0 auto 1em; }
    .page article .contentsArea .box .introList,
    .single article .contentsArea .box .introList {
			width: 90%;
			margin: 0 auto;
			padding: 0 10px; }
      .page article .contentsArea .box .introList dt,
      .single article .contentsArea .box .introList dt {
				margin: 0 0 10px;
				text-align: center; }
        .page article .contentsArea .box .introList dt img,
        .single article .contentsArea .box .introList dt img {
					border: 1px solid #37bd9c;
					padding: 3px; }
          @media only screen and (min-width: 0px) and (max-width: 568px) {
            .page article .contentsArea .box .introList dt img,
            .single article .contentsArea .box .introList dt img {
							max-width: 50%; } }
      .page article .contentsArea .box .introList dd,
      .single article .contentsArea .box .introList dd {
				line-height: 1.5; }
        .page article .contentsArea .box .introList dd p,
        .single article .contentsArea .box .introList dd p {
					width: 100%; }
          .page article .contentsArea .box .introList dd p:last-child,
          .single article .contentsArea .box .introList dd p:last-child {
						margin: 0; }
    .page article .contentsArea .box .numberList,
    .single article .contentsArea .box .numberList {
			width: 90%;
			margin: 0 auto;
			counter-reset: li; }
      .page article .contentsArea .box .numberList li,
      .single article .contentsArea .box .numberList li {
				position: relative;
				margin: 0 0 10px 2em;
				padding: 20px;
				border: 1px solid #37bd9c; }
        @media only screen and (min-width: 0px) and (max-width: 568px) {
          .page article .contentsArea .box .numberList li,
          .single article .contentsArea .box .numberList li {
						padding: 10px; } }
        .page article .contentsArea .box .numberList li:before,
        .single article .contentsArea .box .numberList li:before {
					content: counter(li);
					counter-increment: li;
					position: absolute;
					z-index: 10;
					top: 40%;
					left: -2em;
					width: 2em;
					color: #fff;
					background: #37bd9c;
					font-weight: bold;
					text-align: center; }
        .page article .contentsArea .box .numberList li:after,
        .single article .contentsArea .box .numberList li:after {
					content: '';
					position: absolute;
					z-index: 1;
					top: -1px;
					left: -2em;
					width: 2em;
					height: 100%;
					border: 1px solid #37bd9c;
					color: #fff;
					background: #37bd9c; }
        .page article .contentsArea .box .numberList li h4,
        .single article .contentsArea .box .numberList li h4 {
					margin: 0 0 5px;
					color: #37bd9c;
					font-weight: bold; }
        .page article .contentsArea .box .numberList li p,
        .single article .contentsArea .box .numberList li p {
					width: 100%; }
          .page article .contentsArea .box .numberList li p:last-child,
          .single article .contentsArea .box .numberList li p:last-child {
						margin: 0; }
    .page article .contentsArea .box .menuList li,
    .single article .contentsArea .box .menuList li {
			display: inline-block;
			float: left;
			width: 25%;
			margin: 0 0 40px;
			font-size: 86%;
			text-align: center;
			line-height: 1; }
      .page article .contentsArea .box .menuList li a,
      .single article .contentsArea .box .menuList li a {
				text-decoration: none;
				color: #000; }
      .page article .contentsArea .box .menuList li img,
      .single article .contentsArea .box .menuList li img {
				width: 120px;
				height: 120px;
				margin: 0 0 6px; }
    @media only screen and (min-width: 0px) and (max-width: 568px) {
      .page article .contentsArea .box .menuList li,
      .single article .contentsArea .box .menuList li {
				width: 33%;
				margin: 0 0 20px; }
        .page article .contentsArea .box .menuList li img,
        .single article .contentsArea .box .menuList li img {
					width: 60px;
					height: 60px;
					margin: 0 0 3px; } }
  .page article .contentsArea nav,
  .single article .contentsArea nav {
		overflow: hidden;
		*zoom: 1;
		border-top: 1px solid #b2b2b2; }
    .page article .contentsArea nav li,
    .single article .contentsArea nav li {
			width: 50%;
			float: left;
			min-height: 70px; }
      .page article .contentsArea nav li a,
      .single article .contentsArea nav li a {
				text-decoration: none;
				color: #37bd9c; }
    .page article .contentsArea nav .menu,
    .single article .contentsArea nav .menu {
			width: 45%;
			margin: 0 -1px 0 0;
			border-right: 1px solid #b2b2b2;
			padding: 25px 0 0;
			text-align: center; }
    .page article .contentsArea nav .tel,
    .single article .contentsArea nav .tel {
			width: 54%;
			padding: 12px 0 0;
			text-align: center; }
    @media only screen and (min-width: 0px) and (max-width: 568px) {
      .page article .contentsArea nav li,
      .single article .contentsArea nav li {
				min-height: 35px; }
      .page article .contentsArea nav .menu,
      .single article .contentsArea nav .menu {
				margin: 0 -1px 0 0;
				padding: 20px 0 0; }
        .page article .contentsArea nav .menu img,
        .single article .contentsArea nav .menu img {
					width: 110px;
					height: auto; }
      .page article .contentsArea nav .tel,
      .single article .contentsArea nav .tel {
				padding: 12px 0 0; }
        .page article .contentsArea nav .tel img,
        .single article .contentsArea nav .tel img {
					width: 142px;
					height: auto; } }

/*---------------------------------------------
07. introduction
---------------------------------------------*/
.introduction dl {
	width: 90%;
	margin: 0 auto; }
  .introduction dl dt {
		margin: 0 0 10px;
		font-size: 136%;
		color: #37bd9c; }
  .introduction dl dd {
		margin: 0 0 20px; }

/*---------------------------------------------
08. urgent
---------------------------------------------*/
.urgent h3 {
	font-size: 136%; }
.urgent .pointList {
	width: 90%;
	margin: 0 auto; }
  .urgent .pointList li {
		margin: 0 0 5px 1em;
		text-indent: -1em;
		color: #333; }
    .urgent .pointList li:before {
			content: '・'; }
.urgent .qaList {
	width: 90%;
	margin: 20px auto 0; }
  .urgent .qaList dt {
		margin: 0 0 5px;
		padding: 2px 0 0 40px;
		background: url("../images/icon_q.png") 0 3px no-repeat;
		background-size: auto auto;
		color: #f27398; }
    @media only screen and (min-width: 0px) and (max-width: 568px) {
      .urgent .qaList dt {
				padding: 0 0 0 20px;
				background-size: 15px auto; } }
    @media only screen and (min-width: 569px) and (max-width: 768px) {
      .urgent .qaList dt {
				background-size: auto auto; } }
  .urgent .qaList dd {
		margin: 0 0 20px;
		padding: 2px 0 0 40px;
		background: url("../images/icon_a.png") 0 3px no-repeat;
		background-size: auto auto; }
    @media only screen and (min-width: 0px) and (max-width: 568px) {
      .urgent .qaList dd {
				padding: 0 0 0 20px;
				background-size: 15px auto; } }
    @media only screen and (min-width: 569px) and (max-width: 768px) {
      .urgent .qaList dd {
				background-size: auto auto; } }

/*---------------------------------------------
09. examination
---------------------------------------------*/
.examination .contentsArea dl {
	width: 90%;
	margin: 0 auto 20px; }
  .examination .contentsArea dl dt {
		margin: 0 0 5px; }
  .examination .contentsArea dl dd {
		margin: 0 0 20px; }
  .examination .contentsArea dl .pointList li {
		margin: 0 0 5px 1em;
		text-indent: -1em;
		color: #333; }
    .examination .contentsArea dl .pointList li:before {
			content: '・'; }

/*---------------------------------------------
10. time
---------------------------------------------*/
.time {
  /* --------------------------------------------------
     coder Table
  -------------------------------------------------- */
  /* -----------------------
    左上角丸　最初の行の最初のセル
  ----------------------- */
  /* -----------------------
    右上角丸　最初の行の最後のセル
  ----------------------- */
  /* -----------------------
    左下角丸　最後の行の最初のセル
  ----------------------- */
  /* -----------------------
    右下角丸　最後の行の最後のセル
  ----------------------- */
  /* --------------------------------------------
    thaed,tbodyを使う場合の設定
  -------------------------------------------- */
  /* -----------------------
    左上角丸 thead内　最初の行の最初のセル
  ----------------------- */
  /* -----------------------
    右上角丸 thead内　最初の行の最後のセル
  ----------------------- */
  /* -----------------------
    角丸なし　thaedの後のtbody 最初の行の最初のセル
    角丸なし　thaedの後のtbody 最初の行の最後のセル
  ----------------------- */
  /* -----------------------
    左下角丸　thaedの後のtbody 最後の行の最初のセル
  ----------------------- */
  /* -----------------------
    右下角丸　thaedの後のtbody 最後の行の最後のセル
  ----------------------- */ }
  .time .pointList {
		width: 90%;
		margin: 0 auto 1em; }
    .time .pointList li {
			margin: 0 0 5px 1em;
			text-indent: -1em;
			color: #333; }
      .time .pointList li:before {
				content: '・'; }
      .time .pointList li span {
				background-color: #c8fafa; }
  .time .box em {
		font-weight: bold; }
  .time .box dl {
		margin: 0 10px 1em; }
    .time .box dl dt {
			font-size: 115%; }
  .time .coder {
		border-collapse: separate;
		border-spacing: 0;
		border: 1px solid #CCC;
		-webkit-border-radius: 6px;
		-moz-border-radius: 6px;
		-o-border-radius: 6px;
		border-radius: 6px; }
  .time .coder th,
  .time .coder td {
		padding: 5px;
		background: #FFF;
		border-bottom: solid 1px #CCC;
		border-right: solid 1px #CCC;
		text-align: center; }
  .time .coder th {
		background: #e3dcd5;
		box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
		color: #69655c;
		text-align: center; }
  .time .coder tr:first-child th:first-child,
  .time .coder tr:first-child td:first-child {
		-webkit-border-radius: 6px 0 0 0;
		-moz-border-radius: 6px 0 0 0;
		-o-border-radius: 6px 0 0 0;
		border-radius: 6px 0 0 0; }
  .time .coder tr:first-child th:last-child,
  .time .coder tr:first-child td:last-child {
		-webkit-border-radius: 0 6px 0 0;
		-moz-border-radius: 0 6px 0 0;
		-o-border-radius: 0 6px 0 0;
		border-radius: 0 6px 0 0; }
  .time .coder tr:last-child th:first-child,
  .time .coder tr:last-child td:first-child {
		-webkit-border-radius: 0 0 0 6px;
		-moz-border-radius: 0 0 0 6px;
		-o-border-radius: 0 0 0 6px;
		border-radius: 0 0 0 6px; }
  .time .coder tr:last-child th:last-child,
  .time .coder tr:last-child td:last-child {
		-webkit-border-radius: 0 0 6px 0;
		-moz-border-radius: 0 0 6px 0;
		-o-border-radius: 0 0 6px 0;
		border-radius: 0 0 6px 0; }
  .time .coder thead th {
		background: #e3dcd5; }
  .time .coder thead + tbody th {
		background: #f4ede6; }
  .time .coder thead tr:first-child th:first-child,
  .time .coder thead tr:first-child td:first-child {
		-webkit-border-radius: 6px 0 0 0;
		-moz-border-radius: 6px 0 0 0;
		-o-border-radius: 6px 0 0 0;
		border-radius: 6px 0 0 0; }
  .time .coder thead tr:first-child th:last-child,
  .time .coder thead tr:first-child td:last-child {
		-webkit-border-radius: 0 6px 0 0;
		-moz-border-radius: 0 6px 0 0;
		-o-border-radius: 0 6px 0 0;
		border-radius: 0 6px 0 0; }
  .time .coder thead + tbody tr:first-child th:first-child,
  .time .coder thead + tbody tr:first-child td:first-child,
  .time .coder thead + tbody tr:first-child th:last-child,
  .time .coder thead + tbody tr:first-child td:last-child {
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		-o-border-radius: 0px;
		border-radius: 0px; }
  .time .coder thead + tbody tr:last-child th:first-child,
  .time .coder thead + tbody tr:last-child td:first-child {
		-webkit-border-radius: 0 0 0 6px;
		-moz-border-radius: 0 0 0 6px;
		-o-border-radius: 0 0 0 6px;
		border-radius: 0 0 0 6px; }
  .time .coder thead + tbody tr:last-child th:last-child,
  .time .coder thead + tbody tr:last-child td:last-child {
		-webkit-border-radius: 0 0 6px 0;
		-moz-border-radius: 0 0 6px 0;
		-o-border-radius: 0 0 6px 0;
		border-radius: 0 0 6px 0; }

/*---------------------------------------------
11. location
---------------------------------------------*/
.location .box .gmap {
	width: 95%;
	margin: 0 auto;
	text-align: center; }
  .location .box .gmap #gmap {
		width: 100%;
		height: 300px;
		margin: 0 0 20px; }
  .location .box .gmap .btn {
		width: 130px;
		margin: 0 auto; }
    .location .box .gmap .btn img {
			width: 100%; }

/*---------------------------------------------
12. reservation
---------------------------------------------*/
.reservation .intro em {
	font-size: 172%; }
.reservation .pointList {
	width: 90%;
	margin: 0 auto 20px; }
  .reservation .pointList li {
		margin: 0 0 5px 1em;
		text-indent: -1em;
		color: #333; }
    .reservation .pointList li:before {
			content: '・'; }
.reservation .extra {
	width: 90%;
	margin: 0 auto 20px;
	color: #333; }

/*---------------------------------------------
13. news
---------------------------------------------*/
.arrowList {
	margin: 20px 0 40px;
	border-top: 1px solid #b2b2b2; }
  .arrowList li {
		padding: 10px 10px 10px 70px;
		background: url("../images/icon_arrow01.png") 20px center no-repeat;
		background-size: auto auto;
		border-bottom: 1px solid #b2b2b2; }
    @media only screen and (min-width: 0px) and (max-width: 568px) {
      .arrowList li {
				padding: 10px 10px 10px 40px;
				background: url("../images/icon_arrow01.png") 10px center no-repeat;
				background-size: 20px auto; } }
    @media only screen and (min-width: 569px) and (max-width: 768px) {
      .arrowList li {
				background-size: auto auto; } }
    .arrowList li a {
			font-size: 108%;
			color: #333333;
			text-decoration: none; }

.single h3 {
	padding-top: 0 !important;
	background-color: #fff !important;
	border-bottom: 1px solid #b2b2b2;
	font-size: 136%;
	color: #37bd9c !important; }
.single .wpContent {
	width: 90%;
	margin: 0 auto;
	color: #333; }
  .single .wpContent p {
		margin: 0 0 1em; }

/*---------------------------------------------
14. clinic
---------------------------------------------*/
.clinic .box .royalSlider {
	margin: 0 auto; }
.clinic .box .rsDefaultInv,
.clinic .box .rsDefaultInv .rsOverflow,
.clinic .box .rsDefaultInv .rsSlide, .clinic .box .rsDefaultInv .rsVideoFrameHolder,
.clinic .box .rsDefaultInv .rsThumbs {
	background: none; }
.clinic .priceBox {
	margin: 0 10px 10px;
	border: 1px solid #37bd9c; }
  .clinic .priceBox dl {
		overflow: hidden;
		*zoom: 1;
		padding: 10px; }
    .clinic .priceBox dl dt {
			float: left;
			width: 40%;
			text-align: left; }
    .clinic .priceBox dl dd {
			margin: 0 0 0 43%; }
  .clinic .priceBox p {
		padding: 10px; }
.clinic .creditBox {
	margin: 0 10px; }
  .clinic .creditBox .credit {
		background-image: url("../images/icon_credit.png");
		background-repeat: no-repeat;
		background-position: 0 3px;
		background-size: 25px auto;
		padding: 0 0 0 30px; }

/*---------------------------------------------
15. staff
---------------------------------------------*/
.staff h3 {
	font-size: 136%; }
.staff .ph {
	width: 50%;
	max-width: 50%;
	margin: 0 auto 20px;
	padding: 2px;
	border: 1px solid #37bd9c; }
  .staff .ph img {
		width: 100%;
		vertical-align: middle; }
.staff h4 {
	width: 90%;
	margin: 0 auto 30px;
	font-size: 122%; }
.staff dl {
	width: 90%;
	margin: 0 auto; }
  .staff dl dt {
		margin: 0 0 10px;
		font-size: 122%; }
  .staff dl dd {
		margin: 0 0 20px; }
  .staff dl ul li {
		margin: 0 0 5px; }
  .staff dl .squareList li {
		margin: 0 0 5px 1em;
		text-indent: -1em;
		color: #333; }
    .staff dl .squareList li:before {
			content: '◇'; }

/*---------------------------------------------
16. orthodontics
---------------------------------------------*/
.orthodontics .priceBox {
	margin: 0 10px 10px;
	border: 1px solid #37bd9c; }
  .orthodontics .priceBox dl {
		overflow: hidden;
		*zoom: 1;
		padding: 10px; }
    .orthodontics .priceBox dl dt {
			float: left;
			width: 40%;
			text-align: left; }
    .orthodontics .priceBox dl dd {
			margin: 0 0 0 43%; }
  .orthodontics .priceBox p {
		padding: 10px; }
.orthodontics .creditBox {
	margin: 0 10px; }
  .orthodontics .creditBox .credit {
		background-image: url("../images/icon_credit.png");
		background-repeat: no-repeat;
		background-position: 0 3px;
		background-size: 25px auto;
		padding: 0 0 0 30px; }

/*---------------------------------------------
17. pedodontics
---------------------------------------------*/
.pedodontics .box h3 {
	font-size: 136%; }
.pedodontics .box .ph {
	width: 50%;
	max-width: 50%;
	margin: 20px auto 10px; }
  .pedodontics .box .ph img {
		width: 100%; }
.pedodontics .box p {
	margin: 0 10px 20px; }

/*---------------------------------------------
18. price
---------------------------------------------*/
.price .box p {
	margin: 0 10px; }
.price .box > section {
	width: 90%;
	margin: 0 auto 20px; }
  .price .box > section h4 {
		font-size: 122%;
		color: #37bd9c; }
    .price .box > section h4 span {
			display: block;
			margin: 0 0 5px;
			font-size: 71%; }
.price #priceArea p {
	margin-bottom: 20px; }
.price #priceTable {
	width: 100%;
	border: 1px solid #37bd9c; }
  .price #priceTable tbody tr {
		display: block;
		padding: 5px 10px; }
  .price #priceTable tbody th,
  .price #priceTable tbody td {
		display: list-item;
		border: none;
		list-style-type: none; }

/*個別の修正はこちらで*/

img {
  max-width: 100%;
  height: auto;
}
.img_center {
    text-align: center;
	margin: 0 auto 1em;
    width: 90%;
}
.page article .contentsArea .box h3, .single article .contentsArea .box h3 {
    font-size: 110% !important;
}


.no_wrap {
	display: inline-block;
}
.introduction dl dt {
    font-size: 120% !important;

}

/*各医院カラー ドーム歯科*/
body {
    background-color: #ffeb8c !important;

}

header.gnav a {
    color: #ff9844 !important;
}

footer {
    color: #ff9844 !important;
}
.introduction dl dt {
    color: #ff9844 !important;
}

.page article .contentsArea .box h3, .single article .contentsArea .box h3 {
    background-color: #ff9844 !important;
	color: #FFFFFF !important;
}

.price .box section h4 {
    color: #ff9844 !important;
}

.price #priceTable {
    border: 1px solid#ff9844 !important;
}

.page article .contentsArea .box .numberList li:before, .single article .contentsArea .box .numberList li:before {
    background: none repeat scroll 0 0 #ff9844 !important;
}

.page article .contentsArea .box .numberList li h4, .single article .contentsArea .box .numberList li h4 {
    color: #ff9844 !important;
}

.page article .contentsArea .box .numberList li:after, .single article .contentsArea .box .numberList li:after {
    background: none repeat scroll 0 0 #ff9844 !important;
    border: 1px solid #ff9844 !important;
}

.page article .contentsArea .box .numberList li, .single article .contentsArea .box .numberList li {
    border: 1px solid #ff9844 !important;
}
.reservation h3.triangle-border.triangle-border:before {
    border-color: #ff9844 rgba(0, 0, 0, 0) !important;
}
.urgent h3.triangle-border.triangle-border:before {
    border-color: #ff9844 rgba(0, 0, 0, 0) !important;
}

/*矯正歯科*/

.orthodontics_child .priceBox dl {
    overflow: hidden;
    padding: 10px;
}
.orthodontics_adult .priceBox dl {
    overflow: hidden;
    padding: 10px;
}
.orthodontics_child  .priceBox dl dt {
    float: left;
    text-align: left;
    width: 40%;
}

.orthodontics_adult  .priceBox dl dt {
    float: left;
    text-align: left;
    width: 40%;
}

.orthodontics_child .priceBox {
    border: 1px solid #37bd9c;
    margin: 0 10px 10px;
}

.orthodontics_adult .priceBox {
    border: 1px solid #37bd9c;
    margin: 0 10px 10px;
}

.contentsArea    p a{
    width:90%;
    padding:10px;
    background:#405dca;
    color:#ffffff;
    text-align:center;
    display:block;
    text-decoration:none;
    }
    p a:hover{
    text-decoration:none;
    background:#364ea5;
     
    }
	
.contentsArea   .btn2 a{
    border-radius:5px;
    border:1px solid #364ea5;
    background: -moz-linear-gradient(
    top,
    #5470dc 0%,
    #415dcb 100%);
    background: -webkit-gradient(
    linear, left top, left bottom,
    from(#5470dc),
    to(#415dcb));
    background:linear-gradient(
    top,
    #5470dc 0%,
    #415dcb 100%);
    }

#container {background:url("../images/10.jpg") center top no-repeat !important;background-attachment:fixed !important;}

.clinic-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;width:100%;padding-bottom:12px;}
.clinic-gallery .rsContent{flex:0 0 100%;scroll-snap-align:start;text-align:center;}
.clinic-gallery img{max-height:450px;object-fit:contain;}
#gmap{height:auto!important;}

/* Static edition: retain original appearance and prevent narrow-screen overflow. */
#container{max-width:100%;}
iframe{max-width:100%;}
.contentsArea p a.phone-number{display:inline;width:auto;padding:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:.15em;}
a:focus-visible{outline:3px solid #405dca;outline-offset:3px;}
/* Unified layout */
body{font-size:16px;line-height:1.85;color:#45382c;background:#fff5e7;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;}
#container{width:1080px;max-width:100%;background-size:cover!important;}
header.gnav{box-sizing:border-box;padding:28px 100px;background:rgba(255,255,255,.97);box-shadow:0 2px 16px #213e3510;}
header.gnav h1{font-size:28px;letter-spacing:.08em;line-height:1.5;color:#a95823;}
header.gnav p{font-size:12px;letter-spacing:.08em;color:#78654f;margin-bottom:5px;}
.home nav ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:38px;}
.home nav ul li{float:none;width:auto;margin:0;padding:0;font-size:15px;line-height:1.5;text-shadow:none;}
.home nav ul li a{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:184px;border-radius:18px;background:rgba(255,255,255,.94);color:#62452e;padding:22px 12px;box-shadow:0 5px 22px #19382b12;transition:transform .2s,box-shadow .2s;}
.home nav ul li a:hover{transform:translateY(-4px);box-shadow:0 10px 26px #19382b24;}
.home nav ul li a>br{display:none;}
.home nav ul li img{width:86px;margin-bottom:14px;}
.home nav ul li img.icon{width:38px;top:12px;right:14px;}
#info{box-sizing:border-box;width:calc(100% - 76px);margin:0 auto 38px;background:none;}
#info .triangle-right.left{margin:0;padding:18px 24px;background:rgba(255,255,255,.95);border-radius:12px;}
#info .triangle-right:after{display:none;}
#info p{font-size:14px;}
.page article header,.single article header{margin:0;padding:34px 40px;background:rgba(173,91,37,.87);box-shadow:none;}
.page article header h2,.single article header h2{font-size:28px;line-height:1.5;letter-spacing:.08em;text-shadow:none;}
.page article .contentsArea,.single article .contentsArea{margin:28px;padding:32px 0 0;border-radius:18px;box-shadow:0 8px 35px #173b3012;}
.page article .contentsArea .box,.single article .contentsArea .box{margin-bottom:36px;}
.page article .contentsArea .box h3,.single article .contentsArea .box h3{font-size:21px!important;line-height:1.6;padding:13px 5%;margin-bottom:24px;background:#fff0db;color:#8c471d!important;border-left:4px solid #e6994e;}
.page article .contentsArea .box p,.page article .contentsArea .box dl,.single article .contentsArea .box p{line-height:1.9;}
.contentsArea h4{font-size:19px;line-height:1.6;margin:12px 0;color:#a65320;font-weight:600;}
.contentsArea .pointList{width:90%;margin:0 auto 24px;}
.contentsArea .pointList li{padding:7px 0;border-bottom:1px solid #f0e7da;}
.contentsArea .qaList{width:90%;margin:24px auto;}
.contentsArea .qaList dt{font-weight:600;color:#a65320;margin-top:20px;}
.contentsArea .qaList dd{margin:8px 0 20px;}
.contentsArea table{font-size:15px;line-height:1.7;}
.contentsArea th,.contentsArea td{padding:14px 16px;border:1px solid #e8d8c3;}
.contentsArea th{background:#fff6e9;font-weight:500;}
#priceArea>section{width:90%;margin:0 auto 28px;}
#priceArea table{width:100%;}
#priceArea th{width:58%;}
.priceBox{width:90%;box-sizing:border-box;margin:0 auto 28px;border:1px solid #e8d8c3;border-radius:10px;padding:20px;}
.priceBox dl{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;}
.priceBox dt,.priceBox dd{padding:8px;border-bottom:1px solid #f0e7da;}
.priceBox p{font-size:13px;margin-top:16px;}
.contentsArea p a:not(.phone-number){box-sizing:border-box;width:auto;max-width:100%;padding:13px 24px;background:#a65320;border-radius:8px;}
.contentsArea p a:not(.phone-number):hover{background:#834018;}
.contentsArea p a.phone-number{color:#a65320;font-size:30px;font-weight:600;text-decoration:none;}
.contentsArea .menuList{display:flex;flex-wrap:wrap;gap:20px;padding:0 5%;}
.page article .contentsArea .box .menuList li,.single article .contentsArea .box .menuList li{float:none;width:calc(25% - 15px);margin:0 0 20px;font-size:14px;line-height:1.6;}
.page article .contentsArea .box .menuList li img,.single article .contentsArea .box .menuList li img{width:76px;height:auto;margin-bottom:10px;}
.gmap{width:90%;margin:0 auto 24px;}.gmap iframe{display:block;width:100%;height:380px;border-radius:12px;}.gmap .btn{margin:16px auto;text-align:center;}
.contentsArea .ph{text-align:center;margin:0 auto 24px;}.contentsArea .ph img{max-width:80%;border-radius:12px;}
footer{box-sizing:border-box;padding:28px 20px;box-shadow:none;background:rgba(255,255,255,.97);font-size:13px;line-height:1.7;}
footer dl dt{font-size:18px;margin-bottom:10px;}footer dl dd{font-size:13px;line-height:1.7;}footer dl dd:last-child{font-size:11px;color:#8b8070;margin-top:14px;}
@media(max-width:768px){body{font-size:15px;}header.gnav{padding:23px 48px;}header.gnav h1{font-size:22px;}header.gnav p{font-size:10px;}.home nav ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:22px;}.home nav ul li a{height:152px;border-radius:13px;padding:16px 6px;font-size:13px;}.home nav ul li img{width:66px;margin-bottom:10px;}.home nav ul li img.icon{width:26px;right:5px;top:8px;}#info{width:calc(100% - 44px);margin-bottom:22px;}.page article header,.single article header{padding:24px;}.page article header h2,.single article header h2{font-size:24px;}.page article .contentsArea,.single article .contentsArea{margin:18px;padding-top:22px;}.page article .contentsArea .box h3,.single article .contentsArea .box h3{font-size:19px!important;}.contentsArea th,.contentsArea td{padding:10px 8px;font-size:13px;}.gmap iframe{height:300px;}.view_sp{display:block!important;}.view_pc{display:none!important;}.single .gnav nav ul .menu,.page .gnav nav ul .menu{top:32px;left:16px;}.single .gnav nav ul .tel,.page .gnav nav ul .tel{top:27px;right:16px;}.gnav nav .menu img{width:20px;height:auto;}.gnav nav .tel img{width:20px;height:auto;}}
@media(max-width:480px){header.gnav h1{font-size:19px;letter-spacing:.03em;}header.gnav p{font-size:9px;letter-spacing:0;}.home nav ul{padding:18px 14px;gap:10px;}.home nav ul li a{height:135px;font-size:12px;}.home nav ul li img{width:58px;}#info{width:calc(100% - 28px);}#info .triangle-right.left{padding:15px 17px;}#info p{font-size:12px;}.page article .contentsArea,.single article .contentsArea{margin:12px;border-radius:12px;}.page article header h2,.single article header h2{font-size:22px;}.contentsArea .menuList{gap:12px;}.page article .contentsArea .box .menuList li,.single article .contentsArea .box .menuList li{width:calc(33.333% - 8px);font-size:12px;}.page article .contentsArea .box .menuList li img,.single article .contentsArea .box .menuList li img{width:58px;}.priceBox{padding:12px;}.priceBox dl{gap:6px;font-size:13px;}#priceArea th{width:52%;}.contentsArea p a.phone-number{font-size:27px;}}
@media(prefers-reduced-motion:reduce){.home nav ul li a{transition:none;}}

/* Orange identity, balanced photography and tables */
body{background:#fff5e7!important;}
header.gnav a,footer{color:#8c471d!important;}
.page article .contentsArea .box h3,.single article .contentsArea .box h3{background:#fff0db!important;color:#8c471d!important;}
.page article .contentsArea,.single article .contentsArea{background:rgba(255,255,255,.97);}
.contentsArea .btn2 a{background:#a65320;border-color:#a65320;}
.clinic-gallery{gap:16px;padding:0 5% 18px;box-sizing:border-box;scroll-padding-inline:5%;}
.clinic-gallery .rsContent{flex-basis:100%;}
.clinic-gallery img{display:block;width:100%;height:clamp(220px,42vw,440px);max-height:none;object-fit:contain;background:#f7f4ef;border-radius:12px;}
.staff .ph,.pedodontics .box .ph{width:70%;max-width:400px;border:0;padding:0;}
.contentsArea .ph img{max-width:100%;}
.priceBox dl dt,.priceBox dl dd{float:none!important;width:auto!important;margin:0!important;}
.price #priceTable tbody tr{display:table-row;}
.price #priceTable tbody th,.price #priceTable tbody td{display:table-cell;}
.time .coder{width:95%;margin:0 auto;table-layout:fixed;}
.time .coder th,.time .coder td{padding:10px 3px;overflow-wrap:anywhere;}
@media(max-width:480px){.home nav ul{grid-template-columns:repeat(2,minmax(0,1fr));}.home nav ul li a{height:142px;font-size:14px;}.home nav ul li img{width:66px;}.time .coder th,.time .coder td{font-size:11px;padding:9px 2px;}.price #priceTable tbody th,.price #priceTable tbody td{overflow-wrap:anywhere;}.staff .ph,.pedodontics .box .ph{width:85%;}}
