@charset "UTF-8";
/*Androidバグ対策*/

h1, h2, h3, h4, h5, p, li, dt, dd, ol, dl, a {
	max-height: 100%;
}

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

a {
	color: #484848;
	text-decoration: none;
}

img {
	vertical-align: bottom;
}

header, footer, .contents {
	width: 1000px;
	margin: 0 auto;
}

.pagetop {
	border-radius: 2px;
	cursor: pointer;
	display: none;
	overflow: hidden;
	position: fixed;
	bottom: 20px;
	right: 40px;
}

.pagetop:hover {
	opacity: .6;
}

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

/* ==========================================================================

	 01. header(multinfo)
	 02. nav
	 03. menu
	 04. banner(side)
	 05. timetable（table）
	 06. footer
	 07. reservebanner (low only)
	 08. case-records--footer  (low only)

	 09.multi-class

	 10. 404 error

   ========================================================================== */

/*
       01. header (multinfo)
   ========================================================================== */

header {
	padding: 10px 0 0;
}
.multinfo {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}
.multinfo .dis {
	width: 100%;
	font-size: 11px;
	text-align: right;
}

.multinfo .logo {
	width: 370px;
    padding-top: 22px;
    margin-right: auto;
}
.multinfo .logo img{
	width: 100%;
}

.reserve {
	/*width: 400px;*/
	width: 460px;
	padding-top: 5px;
	margin-bottom: 5px;
}

.contact_btn a{
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	flex-direction: column;
	padding: 1.1em 0.4em;
	text-align: center;
	background: #06b5ff;
	background: linear-gradient(to bottom, #51c8f9 0%, #06b5ff 100%);
	border-radius: 6px;
	font-size: 14.5px;
	letter-spacing: 0.05em;
	border: 1px solid #28bdfc;
	margin-top: 12px;
	color: #fff;
}

.contact_btn i {
	margin: 0.3em 0 0 0;
	font-size: 120%;
}

.tel {
	font-size: 14px;
	text-align: left;
	line-height: 24px;
	/*width: 185px;*/
	width: 215px;
	float: left;
}

.tel:nth-child(1) {
	margin-right: 14px;
    padding-right: 10px;
	border-right: 1px solid #bfbfbf;
}

.tel .clinic i {
	color: #ffc100;
	margin-right: 6px;
}

.tel .tel-link {
	vertical-align: middle;
	/*font-size: 22px;*/
	font-size: 25px;
	line-height: 1em;
	display: inline-block;
	margin-top: 2px;
}

.tel .tel-time {
	margin-top: 8px;
	font-size: 14px;
	display: flex;
	justify-content: space-around;
	line-height: 1.5;
}

.tel .tel-time dt {
	background: linear-gradient(to bottom, #ffc100 0%, #ffba00 100%);
	color: #fff;
	padding: 2px 0.4em 0;
	border-radius: 6px;
}

.tel .tel-time dd {
	padding-top: 2px;
}

.tel img {
	margin-right: 5px;
	vertical-align: top;
	width: 24px;
}

.tel .web{
	display: block;
    margin: 0.4em auto 0;
	background: linear-gradient(to bottom, #51c8f9 0%, #06b5ff 100%);
	border: 1px solid #28bdfc;
    text-align: center;
    color: #fff;
    width: 9em;
    font-size: 15px;
    line-height: 1.2;
    padding: 0.4em 0 0.3em;
    border-radius: 5px;
}
.tel .web i.fa{
	margin:0 0.5em 0 0;
}
.time {
	float: left;
	width: 384px;
	text-align: right;
	font-size: 0;
}

.time dt {
	width: 90px;
	text-align: center;
	background: #ffc100;
	background: -moz-linear-gradient(top, #ffc100 0%, #ffba00 100%);
	background: -webkit-linear-gradient(top, #ffc100 0%, #ffba00 100%);
	background: linear-gradient(to bottom, #ffc100 0%, #ffba00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc100', endColorstr='#ffba00', GradientType=0);
	border-radius: 6px;
	font-size: 15px;
	letter-spacing: 2px;
	border: 1px solid #ffb400;
	margin-top: 3px;
	color: #fff;
	padding: 3px 0 0;
	display: inline-block;
	margin-right: 10px;
}

.time dd {
	display: inline-block;
	margin-right: 14px;
	font-size: 15px;
}

.time dd:last-child {
	margin-right: 0;
}

/*
       02. nav
   ========================================================================== */

.gNav {
	padding: 10px 0;
	margin: 5px 0 20px;
}

.gNav ul {
	border-right: 1px solid #bfbfbf;
}

.gNav li a {
	float: left;
	width: 118px;
	height: 30px;
	padding: 10px 4px 3px;
	text-align: center;
	border-left: 1px solid #bfbfbf;
	letter-spacing: 1px;
	line-height: 1;
	display: block;
	color: #484848;
}

.gNav li:nth-child(2) a {
	width: 108px;
	letter-spacing: .5px;
}

.gNav li:nth-child(7) a {
	width: 110px;
	letter-spacing: .5px;
}

.gNav li a span {
	color: #aaa;
	font-size: 11px;
	letter-spacing: 1px;
}

.gNav li a:hover {
	border-bottom: 3px solid #ffc100;
	height: 27px;
	padding: 10px 4px 3px;
}

.gNav li.home a, .gNav li.staff a, .gNav li.tour a, .gNav li.voice a, .gNav li.price a, .gNav li.map_time a, .gNav li.recruit a, .gNav li.contact a {
	border-bottom: 3px solid #ffc100;
	height: 27px;
	padding: 10px 4px 3px;
}

/*
       03. menu
   ========================================================================== */

.menu {
	width: 210px;
	float: left;
}

.menu li {
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

.menu li a {
	display: block;
	height: 50px;
	background: url(../images/common/side_menu.png) no-repeat left top;
}

.menu li.selected a {
	background-image: url(../images/common/side_menu_on.png);
}

.menu li a:hover {
	background: url(../images/common/side_menu_on.png) no-repeat left top;
}

.menu li.caries a, .menu li.caries a:hover {
	background-position: 0 -10px;
}

.menu li.implant a, .menu li.implant a:hover {
	background-position: 0 -60px;
}

.menu li.denture a, .menu li.denture a:hover {
	background-position: 0 -110px;
}

.menu .whitening a, .menu .whitening a:hover {
	background-position: 0 -160px;
}

.menu .perio a, .menu .perio a:hover {
	background-position: 0 -210px;
}

.menu li.prevent a, .menu li.prevent a:hover {
	background-position: 0 -260px;
}

.menu li.kids a, .menu li.kids a:hover {
	background-position: 0 -310px;
}

.menu li.root a, .menu li.root a:hover {
	background-position: 0 -360px;
}

.menu li.correct a, .menu li.correct a:hover {
	background-position: 0 -410px;
}

.menu li.esthetics a, .menu li.esthetics a:hover {
	background-position: 0 -460px;
}

.menu li.halitosis a, .menu li.halitosis a:hover {
	background-position: 0 -510px;
}

.menu li.visit a, .menu li.visit a:hover {
	background-position: 0 -560px;
}

.menu li.dental_surgery a, .menu li.dental_surgery a:hover {
	background-position: 0 -610px;
}

.menu li.extraction a, .menu li.extraction a:hover {
	background-position: 0 -660px;
}

/*
       04. banner(side)
   ========================================================================== */

.banner {
	width: 220px;
	float: left;
	margin: 5px 0 15px;
}

.banner li {
	margin-bottom: 5px;
}

.banner li a {
	display: block;
}

/*
     05. footer
 ========================================================================== */
footer{	
	position: relative;
}
footer .multinfo {
	padding-bottom: 5px;
	border-bottom: 1px solid #bfbfbf;
}

.ttl-f.ttl-top {
	font-size: 20px;
}

.fNav {
	padding: 20px;
	font-size: 12px;
	margin-bottom: 30px;
}

.fNav ul {
	width: 200px;
	float: left;
	line-height: 20px;
}

.fNav .wide-ul {
	width: 400px;
}

.fNav ul li i {
	color: #ff9900;
	margin-right: 4px;
	line-height: 20px;
}

.fNav ul li a:hover {
	color: #ff9900;
	text-decoration: underline;
}

.footerArea {
	clear: both;
	margin-bottom: 20px;
	width: 470px;
}

.footerAreaTxt {
	font-size: 12px;
	text-indent: 1em;
}

.footerLink {
	text-align: right;
}

.footerLink a.footerAreaTxt i {
	color: #ff9900;
	margin-right: 4px;
	line-height: 20px;
}

.footerLink a.footerAreaTxt:hover {
	color: #ff9900;
	text-decoration: underline;
}

.humanity{
	text-align: right;
}

.humanity .wesmile{
	vertical-align: top;
	display: inline-block;
	margin-right:15px;
	margin-top: 15px;
}

.humanity .wesmile img{
	width: 140px;
}
footer .linkBnr {
    position: absolute;
    right: 0;
    bottom: 150px;
}

footer .linkBnr a + a{
	margin-left: 8px;
}

footer .linkBnr img{
    width:auto;
    height:78px;
}

small {
	font-size: 11px;
	text-align: center;
	display: block;
	line-height: 3;
}

/*
     06. reservebanner (low only)
========================================================================== */

.private {
	margin-bottom: 10px;
}

.reserve-btn {
	background: url(../images/common/private_banner.jpg) no-repeat;
	position: relative;
	width: 730px;
	height: 340px;
	border-radius: 10px;
	border: 1px solid #bfbfbf;
	margin-bottom: 20px;
}

.reserve-btn a {
	display: block;
	background: #ffc100;
	background: -moz-linear-gradient(top, #ffd144 0%, #ffc100 100%);
	background: -webkit-linear-gradient(top, #ffd144 0%, #ffc100 100%);
	background: linear-gradient(to bottom, #ffd144 0%, #ffc100 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffd144', endColorstr='#ffc100', GradientType=0);
	opacity: .96;
	color: #fff;
	border: 1px solid #ffb81e;
	width: 190px;
	line-height: 54px;
	border-radius: 6px;
	font-size: 16px;
	padding-left: 18px;
	-moz-text-shadow: 2px 0px 5px rgba(255, 144, 0, 0.8);
	-webkit-text-shadow: 2px 0px 5px rgba(255, 144, 0, 0.8);
	-ms-text-shadow: 2px 0px 5px rgba(255, 144, 0, 0.8);
	text-shadow: 2px 0px 5px rgba(255, 144, 0, 0.8);
}

.reserve-btn i {
	margin-right: 8px;
}

.reserve-btn .p-btn {
	position: absolute;
	top: 155px;
	left: 30px;
}

.reserve-btn .w-btn {
	position: absolute;
	top: 225px;
	left: 30px;
}

.reserve-btn .address {
	position: absolute;
	bottom: 12px;
	left: 30px;
	text-shadow: white 1px 1px 0px, white -1px 1px 0px, white 1px -1px 0px, white -1px -1px 0px;
}

.footertimetable {
	text-align: center;
	padding-bottom: 50px;
}

.footertimetable table {
	width: 730px;
	border: 1px solid #9e9a98;
	margin: 10px auto0px;
}

.footertimetable th {
	background-color: #ffc100;
	color: #fff;
	border: 1px solid #fc9e0b;
	padding: 5px;
	text-align: center;
}

.footertimetable td {
	text-align: center;
	padding: 5px;
	border: 1px solid #9e9a98;
}

.footertimetable .tel .tel-link {
	text-align: center;
	font-size: 30px;
	vertical-align: middle;
}

.footertimetable .tel span {
	margin: 0 5px 0 20px;
	font-size: 20px;
	vertical-align: middle;
}

.footertimetable .hosoku{
	margin-top: 5px;
	text-align: left;
}

.footertimetable .callme {
	/* width: 50%; */
	float: left;
	padding-left: 1em;
	margin-bottom: 10px;
}
.footertimetable .tel .web{
	font-size: 18px;
}
/*
     07. link (low only)
========================================================================== */

.link {
	margin-bottom: 60px;
}

.link a {
	color: #ff9900;
	text-decoration: underline;
	margin: 0 2px;
}

.pricelink {
	margin-bottom: 100px;
}

/*
     09. multi-class
========================================================================== */

/*****　画像　*****/

.fade {
	-webkit-transition: .3s ease-in-out;
	-moz-transition: .3s ease-in-out;
	-o-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}

.fade:hover {
	opacity: .5;
	filter: alpha(opacity=60);
}

.img-border {
	padding: 4px;
	border: 1px solid #bfbfbf;
}

.img-right {
	float: right;
	margin: 0 0 10px 15px;
}

.img-left {
	float: left;
	margin: 0 15px 10px 0;
}

.clear {
	clear: both;
}

/*****　テキスト *****/

.gothic {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.mincho {
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.p-link {
	color: #ff9900;
	text-decoration: underline;
	margin: 0 1px;
}

.center {
	text-align: center;
}

.txt-l {
	font-size: 120%;
}

.txt-ll {
	font-size: 130%;
}

.txt-s {
	font-size: 80%;
}

.or {
	color: #fc9b2a;
}

.or2 {
	color: #ffae00;
}

.re {
	color: #FF373A;
}

.gr {
	color: #a1dd52;
}

.bl {
	color: #51ccff;
}

/*　余白 */

.p10 {
	padding: 0 10px 10px;
}

.pt10 {
	padding-top: 10px;
}

.py10 {
	padding: 10px 0;
}

.mb5 {
	margin-bottom: 5px;
}

.mb10 {
	margin-bottom: 10px;
}

.mb20 {
	margin-bottom: 20px;
}

.mb30 {
	margin-bottom: 30px;
}

.mb40 {
	margin-bottom: 40px;
}

.mt5 {
	margin-top: 5px;
}

.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}

.mt40 {
	margin-top: 40px;
}

.ml10 {
	margin-left: 10px;
}

/*　見出し */

.ttl-top {
	background: url(../images/top/bg_h.png) repeat-x left center;
	font-size: 27px;
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.ttl-top span {
	display: inline-block;
	background: url(../images/top/icon_h.png) no-repeat left center #fff;
	padding: 0 20px;
}

.ttl-low {
	background: url(../images/common/icon_h_low.png) no-repeat left center;
	font-size: 22px;
	padding-left: 20px;
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	border-bottom: 1px solid #343434;
	margin-bottom: 12px;
	letter-spacing: 2px;
}

.ttl-low-s {
	background: url(../images/common/icon_h_low.png) no-repeat left center;
	font-size: 20px;
	/*＋*/
	padding-left: 20px;
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	border-bottom: 1px solid #343434;
	margin-bottom: 12px;
	letter-spacing: 2px;
}

.ttl-low2 {
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
	margin-bottom: 15px;
	padding: 4px 0 4px 12px;
	border-left: 5px solid #ffae00;
}

.ttl-low3 {
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	border-bottom: 1px solid #444444;
	font-size: 20px;
	margin-bottom: 10px;
	padding-bottom: 2px;
}

.ttl-low3 span {
	font-size: 22px;
	margin-right: 6px;
	color: #ffae00;
}

.ttl-low4 {
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	background: url(../images/common/icon_h_low2.png) no-repeat 2px 10px;
	padding-left: 26px;
	font-size: 20px;
	border-bottom: 1px solid #bfbfbf;
	line-height: 1.8;
	margin-bottom: 10px;
}

.ttl-low5 {
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
	color: #ffae00;
	margin-bottom: 10px;
}

/*　強調用の小見出し */

.ttl-btn-bl, .ttl-btn-or, .ttl-btn-gr {
	padding: 6px;
	font-size: 15px;
	letter-spacing: 1px;
	border-radius: 5px;
	text-align: center;
	position: relative;
}

.ttl-btn-bl {
	background: #35c5f2 url(../images/common/bg_stripe3.gif);
	border: 1px solid #2daed6;
	color: #fff;
}

.ttl-btn-or {
	background: #ffda91 url(../images/common/bg_stripe.gif);
	border: 1px solid #ff6d0b;
	color: #fff;
}

.ttl-btn-gr {
	background: #a1dd52 url(../images/common/bg_stripe2.gif);
	border: 1px solid #6eb60f;
	color: #fff;
}

.arrowdown {
	margin-right: 5px;
}

span.column {
	display: inline-block;
	position: absolute;
	left: -16px;
	top: -8px;
	-moz-transform: rotate(-16deg);
	-webkit-transform: rotate(-16deg);
	-ms-transform: rotate(-16deg);
	transform: rotate(-16deg);
	background: #ffb137;
	border-radius: 10px;
	line-height: 1em;
	padding: 8px 30px;
}

.ttl-circle span {
	display: inline-block;
	background-color: #ffae00;
	color: #fff;
	width: 52px;
	height: 52px;
	border-radius: 26px;
	line-height: 52px;
	text-align: center;
	font-size: 24px;
	margin-right: 12px;
}

.ttl-circle {
	font-size: 18px;
	font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin-bottom: 10px;
}

/*　画像・レイアウト */

.two-column img:nth-of-type(odd) {
	float: left;
}

.two-column img:nth-of-type(even) {
	float: right;
}

.three-column li {
	float: left;
	margin-right: 5px;
}

.three-column li:last-child {
	margin-right: 0;
}

.four-column li {
	float: left;
	margin-right: 5px;
}

.four-column li:last-child {
	margin-right: 0;
}

/*　テーブル */

.table-normal {
	border: 1px solid #9e9a98;
}

.table-normal th {
	background-color: #ffc100;
	color: #fff;
	border: 1px solid #9e9a98;
	padding: 5px 15px;
	vertical-align: middle;
}

.table-normal td {
	padding: 5px 15px;
	border: 1px solid #9e9a98;
}

/*リスト*/

.list-num {
	list-style-type: decimal;
	padding-left: 1.3em;
}

.list-dot {
	list-style: disc;
	padding-left: 1.3em;
}

.list-nostyle {
	list-style: none;
}

.list-a {
	list-style-type: lower-alpha;
	padding-left: 1.3em;
}

.list-check li {
	padding-left: 16px;
	background: url(../images/common/checkmark.png) no-repeat left 6px;
	margin-bottom: 5px;
}

/*　ページ内リンク */

.btn-detail {
	display: block;
	border-radius: 5px;
	text-decoration: underline;
	text-align: right;
	font-size: 12px;
	padding: 5px;
	margin: 0 auto;
}

.btn-detail i {
	margin-right: 5px;
	color: #ffae00;
}

/*　症例画像2枚並び */

.case-records {
	background: url(../images/common/arrow02.png) no-repeat center 120px;
	padding: 20px 40px;
}

.case-records img:nth-child(odd) {
	float: left;
	background: url(../images/common/before.png) no-repeat left top;
	padding-top: 20px;
}

.case-records img:nth-child(even) {
	float: right;
	background: url(../images/common/after.png) no-repeat left top;
	padding-top: 20px;
}

/*　2枚画像比較 */

.compare {
	background: url(../images/common/arrow04.png) no-repeat center 50px;
	margin: 15px 20px 20px;
}

.compare figure {
	width: 300px;
	text-align: center;
}

.compare figure:nth-of-type(odd) {
	float: left;
}

.compare figure:nth-of-type(even) {
	float: right;
}

.compare figure img {
	margin-bottom: 5px;
}

.compare figcaption span {
	font-size: 17px;
}

/*
     10. 404 error
 ========================================================================== */

.error {
	text-align: center;
	font-size: 20px;
	height: 120px;
	padding-top: 150px;
}

/*
    modal
 ========================================================================== */
 .overlay {
	display: none;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	position: fixed;
	z-index: 200;
	top:0;
	left:0;
}

.btn_area {
	width: 680px;
	position: absolute;
	left:50%;
	top:50%;
	transform: translate(-50%,-50%);
	background-color: #fff;
	z-index: 2;
	padding: 25px 20px;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 16px;
}

.btn_area h1 {
	text-align: center;
	font-size: 145%;
	font-weight: 700;
}
.btn_area h1 .txt-s{
	font-size:70%;
}

.btn_area p {
	padding: 5px;
}

.btn_area .bold{
	font-weight: bold;
}
.btn_area .underline{
	text-decoration: underline;
}
.btn_area .btnflex {
	display: flex;
	flex-flow: row;
	margin-top: 1em;
	/* margin-bottom: 1em; */
	width: 22em;
}

.btn_area button {
	display: block;
	margin: 0 auto;
	width: 48%;
	font-size: 130%;
	cursor: pointer;
}