@charset "UTF-8";
@font-face {
  font-family: GenJyuuGothic-P-Bold;
  src: url("../font/GenJyuuGothic-P-Bold.eot");
  src: url("../font/GenJyuuGothic-P-Bold.eot?#iefix") format("embedded-opentype"), url("../font/GenJyuuGothic-P-Bold.woff") format("woff"), url("../font/GenJyuuGothic-P-Bold.ttf") format("truetype");
}
 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
　reset
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
  max-width: 100%;
  height: auto;
}

.ie8 img {
  width: auto;
}

ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, p {
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

label {
  cursor: pointer;
}

th, td {
  vertical-align: top;
}

a {
  color: #7a6952;
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}
a img {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
a img:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
　base
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#sp_bnr {
  text-align: center;
}

body {
  background-image: url(../images/bg_body.png);
  font-family: Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.231;
}

#wrapper {
  min-width: 960px;
  position: relative;
  color: #7a6952;
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  overflow: hidden;
}

.sec .sec-inner {
  *zoom: 1;
  position: relative;
  width: 960px;
  margin: 0 auto;
  padding: 60px 0 80px;
}
.sec .sec-inner:after {
  content: "";
  display: table;
  clear: both;
}
.sec.sec-bg {
  background-image: url(../images/bg_02.png);
}

/* header */
#header-inner {
  position: relative;
  *zoom: 1;
  width: 960px;
  height: 90px;
  margin: 0 auto;
}
#header-inner:after {
  content: "";
  display: table;
  clear: both;
}
#header-inner h1 {
  position: absolute;
  left: 0;
  top: 15px;
}
#header-inner #h-btn {
  position: absolute;
  top: 35px;
  right: 325px;
}
#header-inner #h-tel {
  position: absolute;
  top: 0px;
  right: 10px;
}

/* topic-path */
.topic-path {
  background-image: url(../images/bg_02.png);
}
.topic-path ol {
  *zoom: 1;
  width: 960px;
  margin: 0 auto;
}
.topic-path ol:after {
  content: "";
  display: table;
  clear: both;
}
.topic-path ol li {
  position: relative;
  float: left;
  margin-right: 5px;
  padding-left: 15px;
  line-height: 30px;
  font-size: 12px;
}
.topic-path ol li a {
  color: #e8341a;
}
.topic-path ol li a:hover {
  text-decoration: underline;
}
.topic-path ol li:before {
  content: ">";
  position: absolute;
  left: 0;
  top: 0;
}
.topic-path ol li:first-child {
  padding-left: 20px;
}
.topic-path ol li:first-child:before {
  top: 50%;
  margin-top: -13px;
  content: "";
  background-image: url(../images/icon_logo.png);
  width: 16px;
  height: 20px;
}

/* g-nav */
#g-nav {
  background-image: url(../images/bg_nav.png);
}
#g-nav ul {
  *zoom: 1;
  width: 960px;
  margin: 0 auto;
  padding: 8px 0;
}
#g-nav ul:after {
  content: "";
  display: table;
  clear: both;
}
#g-nav ul li a {
  float: left;
  margin: 0 1px;
  width: 158px;
  height: 74px;
  position: relative;
}
#g-nav ul li a span {
  display: block;
  position: absolute;
  font-weight: 800;
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, メイリオ, Meiryo, Osaka, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  color: #67471c;
}
#g-nav ul li a span:hover img, #g-nav ul li a span.on img {
  opacity: 0;
  filter: alpha(opacity=0);
}
#g-nav ul li:nth-child(1) span {
  right: 16px;
  top: 19px;
}
#g-nav ul li:nth-child(1) span:before {
  content: "";
  width: 33px;
  height: 23px;
  position: absolute;
  left: -47px;
  top: 33px;
  margin-top: -25px;
  background-image: url(../images/g-nav-icon01.png);
}
#g-nav ul li:nth-child(2) span {
  right: 22px;
  top: 20px;
}
#g-nav ul li:nth-child(2) span:before {
  content: "";
  width: 65px;
  height: 67px;
  position: absolute;
  left: -38px;
  top: 11px;
  margin-top: -25px;
  background-image: url(../images/g-nav-icon02.png);
}
#g-nav ul li:nth-child(3) span {
  right: 27px;
  top: 27px;
}
#g-nav ul li:nth-child(3) span:before {
  content: "";
  width: 23px;
  height: 25px;
  position: absolute;
  left: -33px;
  top: 22px;
  margin-top: -25px;
  background-image: url(../images/g-nav-icon03.png);
}
#g-nav ul li:nth-child(4) span {
  right: 35px;
  top: 27px;
}
#g-nav ul li:nth-child(4) span:before {
  content: "";
  width: 33px;
  height: 31px;
  position: absolute;
  left: -49px;
  top: 22px;
  margin-top: -25px;
  background-image: url(../images/g-nav-icon04.png);
}
#g-nav ul li:nth-child(5) span {
  right: 17px;
  top: 27px;
}
#g-nav ul li:nth-child(5) span:before {
  content: "";
  width: 21px;
  height: 26px;
  position: absolute;
  left: -33px;
  top: 21px;
  margin-top: -25px;
  background-image: url(../images/g-nav-icon05.png);
}

#g-nav-01 a, #g-nav-02 a, #g-nav-03 a, #g-nav-04 a, #g-nav-05 a {
  background-image: url(../images/nav_01.png);
}

#g-nav-01 a:hover, #g-nav-02 a:hover, #g-nav-03 a:hover, #g-nav-04 a:hover, #g-nav-05 a:hover {
  background-image: url(../images/nav_01_on.png);
}

#g-nav-06 {
  background-image: url(../images/nav_06_on.png);
}

#dir-appoint #g-nav-01 img,
#dir-examination #g-nav-02 img,
#dir-cavity #g-nav-03 img,
#dir-orthodontic #g-nav-04 img,
#dir-about #g-nav-05 img {
  opacity: 0;
  filter: alpha(opacity=0);
}

/* footer */
.sec-common-contact {
  text-align: center;
}
.sec-common-contact .sec-inner {
  padding: 35px 0 65px;
}
.sec-common-contact dl {
  margin-top: 25px;
}
.sec-common-contact dl dd {
  margin-top: 15px;
}
.sec-common-contact #btn-pt {
  position: absolute;
  right: 100px;
  bottom: 15px;
}

#icon-pt {
  position: absolute;
  top: -52px;
  right: -112px;
  background-image: url(../images/icon_pt.png);
  width: 102px;
  height: 86px;
}

.sec-common-contact-btn {
  margin-top: 35px;
  font-size: 0;
}
.sec-common-contact-btn li {
  display: inline-block;
  margin: 0 10px;
}

#footer {
  background-repeat: repeat-x;
  background-position: center bottom;
  background-image: url(../images/bg_footer.jpg), url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2RhZjVmZiIvPjxzdG9wIG9mZnNldD0iMTAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background-size: 100%;
  background-image: url(../images/bg_footer.jpg), -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #daf5ff), color-stop(10%, #ffffff));
  background-image: url(../images/bg_footer.jpg), -webkit-linear-gradient(#daf5ff 0%, #ffffff 10%);
  background-image: url(../images/bg_footer.jpg), linear-gradient(#daf5ff 0%, #ffffff 10%);
}

.ie8 #footer,
.ie9 #footer {
  background-image: url(../images/bg_footer.jpg);
  background-color: #fff;
}

#bg-footer {
  background: url(../images/bg_fnav.jpg) no-repeat center 0;
}

#footer-inner {
  position: relative;
  width: 960px;
  margin: 0 auto;
  padding: 40px 0 210px;
}
#footer-inner:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 45px;
  width: 532px;
  height: 126px;
  background-image: url(../images/img_footer.png);
}

#f-btn {
  *zoom: 1;
  width: 984px;
  margin-bottom: 30px;
}
#f-btn:after {
  content: "";
  display: table;
  clear: both;
}
#f-btn li {
  float: left;
  margin-right: 24px;
}

#f-nav {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 15px;
  font-size: 12px;
}
#f-nav > li > a {
  position: relative;
  display: inline-block;
  color: #e8341a;
  padding-left: 25px;
}
#f-nav > li > a:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -13px;
  width: 16px;
  height: 20px;
  background-image: url(../images/icon_logo.png);
}
#f-nav > li a:hover {
  text-decoration: underline;
}
#f-nav > li ul {
  margin-left: 25px;
}
#f-nav > li li {
  margin-top: 15px;
}

.txt-sitemap {
  position: absolute;
  right: 0;
  bottom: 100px;
  font-size: 12px;
  text-align: right;
}
.txt-sitemap a:hover {
  text-decoration: underline;
}

.txt-footer-snav {
  position: absolute;
  right: 29px;
  bottom: 105px;
  text-align: left;
}

.txt-footer-snav li {
  display: inline-block;
}

.txt-footer-snav li:nth-child(1) {
  padding-right: 10px;
}

#txt-cr {
  position: absolute;
  right: 0;
  bottom: 70px;
  font-size: 12px;
  text-align: right;
}

#header-inner #h-otona {
  position: absolute;
  top: 20px;
  right: 314px;
}

#sec-home-schedule .box-contact .tel-icon {
  color: #67471C;
  display: inline-block;
  padding-left: 63px;
  background: url(/images/contact/tel50.png) no-repeat left;
  position: relative;
  left: -8px;
  margin-bottom: 10px;
}

#sec-home-schedule .box-contact .tel-icon span {
  font-size: 24px;
  padding-bottom: 3px;
  display: inline-block;
}

#sec-home-schedule .box-contact .tel-icon .tellsmall {
  font-size: 16px;
}

.sec-common-contact .tel-icon {
  color: #67471C;
  display: inline-block;
  padding-left: 63px;
  background: url(/images/contact/tel50.png) no-repeat left bottom;
  position: relative;
  left: -8px;
  height: 41px !important;
  font-size: 32px;
  line-height: 1em;
}

.sec-common-contact .tel-icon span {
  font-size: 21px;
  letter-spacing: 1px;
}

.sec-common-contact .tel-icon small {
  font-size: 16px;
  letter-spacing: 1px;
}
