@charset "UTF-8";

/* --- 共通 --- */

body {
  -webkit-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, ol, ul,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, input, textarea, select {
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
  font-size: 13px;
  color: #0d0d0d;
}

hr { display: none; }
sup { vertical-align: super }

.clr {
  width: auto;
  zoom: 100%;
}
.clr:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}
img {
  vertical-align: bottom;
  boreder: 0px;
}
a { outline: none; }

strong, span, select, label, textarea, input[type="text"] { font-size: 100%; }
strong { font-weight: bold; }
body {
  background: url(/images/header_bg.png) repeat-x 0 0;
}

/* header */

#header {
  width: 980px;
  height: 114px;
  margin: 0 auto;
  position: relative;
  padding-top: 20px;
}
.logo { }
.logo a {
  display: block;
  width: 388px;
  height: 98px;
  background: url(/images/logo.png) no-repeat 0 0;
  text-indent: -9999px;
}
.header_tel {
  position: absolute;
  top: 53px;
  right: 0;
}
.sp_header_tel { display: none; }

.header_addr {
  color: #3d1303;
  font-size: 125%;
  position: absolute;
  right: 0;
  bottom: 20px;
}

/* mainmenu */

.mainmenu {
  margin: 0 auto;
  width: 980px;
}
.mainmenu li {}
.mainmenu li a {
  display:block;
  background: url(/images/mainmenu_sprite.png) no-repeat 0 0;
  height: 67px;
  float: left;
  text-indent: -9999px;
}
.mainmenu .mm_home a {
  width: 162px;
}
#home .mainmenu .mm_home a {
  width: 162px;
  background-position: 0 -67px;
}
.mainmenu .mm_policy a {
  width: 164px;
  background-position: -162px 0;
}
#policy .mainmenu .mm_policy a {
  width: 164px;
  background-position: -162px -67px;
}
.mainmenu .mm_guide a {
  width: 163px;
  background-position: -326px 0;
}
#guide .mainmenu .mm_guide a {
  width: 163px;
  background-position: -326px -67px;
}
.mainmenu .mm_clinic a {
  width: 163px;
  background-position: -489px 0;
}
#clinic .mainmenu .mm_clinic a {
  width: 163px;
  background-position: -489px -67px;
}
.mainmenu .mm_time a {
  width: 164px;
  background-position: -652px 0;
}
#time .mainmenu .mm_time a {
  width: 164px;
  background-position: -652px -67px;
}
.mainmenu .mm_access a {
  width: 164px;
  background-position: -816px 0;
}
#access .mainmenu .mm_access a {
  width: 164px;
  background-position: -816px -67px;
}

/* topicpath */

.topicpath {
  margin: 0 auto;
  padding: 15px 0 18px;
  width: 980px;
}
.topicpath li {
  color: #234756;
  display: inline;
  font-size: 116%;
}
.topicpath li a:link,
.topicpath li a:visited,
.topicpath li a:hover {
  color: #234756;
}

/* cont */

#cont {
  width: 980px;
  margin: 0 auto 85px;
}

/* main */

#main {
  float: right;
  min-height: 400px;
  padding: 0 5px;
  width: 730px;
}

/* left */

#left {
  width: 240px;
  float: left;
}
.leftmenutitle {
  background: url(/images/leftmenu_sprite.png) no-repeat 0 0;
  width: 219px;
  height: 31px;
  text-indent: -9999px;
}
.leftmenu { margin-bottom: 27px; }
.leftmenu li {}
.leftmenu li a {
  display: block;
  background: url(/images/leftmenu_sprite.png) no-repeat 0 0;
  width: 219px;
  text-indent: -9999px;
}
.leftmenu .lm01 a {
  background-position: 0 -31px;
  height: 62px;
}
#general .leftmenu .lm01 a { background-position: -219px -31px; }
.leftmenu .lm02 a {
  background-position: 0 -93px;
  height: 61px;
}
#aesthetics .leftmenu .lm02 a { background-position: -219px -93px; }
.leftmenu .lm03 a {
  background-position: 0 -154px;
  height: 61px;
}
#prevention .leftmenu .lm03 a { background-position: -219px -154px; }
.leftmenu .lm04 a {
  background-position: 0 -215px;
  height: 61px;
}
#periodontics .leftmenu .lm04 a { background-position: -219px -215px; }
.leftmenu .lm05 a {
  background-position: 0 -276px;
  height: 61px;
}
#whitening .leftmenu .lm05 a { background-position: -219px -276px; }
.leftmenu .lm06 a {
  background-position: 0 -337px;
  height: 61px;
}
#maintenance .leftmenu .lm06 a { background-position: -219px -337px; }
.leftmenu .lm07 a {
  background-position: 0 -398px;
  height: 61px;
}
#implants .leftmenu .lm07 a { background-position: -219px -398px; }
.leftmenu .lm08 a {
  background-position: 0 -459px;
  height: 61px;
}
#orthodontics .leftmenu .lm08 a { background-position: -219px -459px; }
.leftmenu .lm09 a {
  background-position: 0 -520px;
  height: 65px;
}
#qa .leftmenu .lm09 a { background-position: -219px -520px; }
.left_time_access {
  width: 220px;
}
.left_time_access * {
  color: #3d1303;
}
.left_time_access .title {
  background: url(/images/time_access_title_side.png) no-repeat 0 0;
  width: 220px;
  height: 43px;
  text-indent: -9999px;
  margin-bottom: 10px;
}
.left_time_access .shinryotitle {
  padding: 8px 15px 6px;
  text-align: center;
  margin-bottom: 10px;
  font-size: 108%;
  letter-spacing: 1px;
  border-top: 1px solid #42190a;
  border-bottom: 1px solid #42190a;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fefdfc+0,f6eee7+100 */
  background: #fefdfc; /* Old browsers */
  background: -moz-linear-gradient(top,  #fefdfc 0%, #f6eee7 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  #fefdfc 0%,#f6eee7 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  #fefdfc 0%,#f6eee7 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefdfc', endColorstr='#f6eee7',GradientType=0 ); /* IE6-9 */
}
.left_time_access .youbi {
  margin-bottom: 8px;
  font-size: 108%;
}
.left_time_access .jikan {
  margin-bottom: 8px;
  letter-spacing: -1px;
  font-size: 108%;
}
.left_time_access .jushotitle {
  padding: 8px 15px 6px;
  text-align: center;
  margin-bottom: 10px;
  font-size: 108%;
  letter-spacing: 1px;
  border-top: 1px solid #42190a;
  border-bottom: 1px solid #42190a;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fefdfc+0,f6eee7+100 */
  background: #fefdfc; /* Old browsers */
  background: -moz-linear-gradient(top,  #fefdfc 0%, #f6eee7 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  #fefdfc 0%,#f6eee7 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  #fefdfc 0%,#f6eee7 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefdfc', endColorstr='#f6eee7',GradientType=0 ); /* IE6-9 */
}
.left_time_access .jusho {
  line-height: 1.25;
  margin-bottom: 10px;
  font-size: 108%;
}
.left_time_access .jusho span { display: block; }
.left_time_access .eki {
  margin-bottom: 15px;
  font-size: 108%;
}
.left_time_access .shosai { font-size: 108%; }
.left_time_access .shosai a {
  background: url("/images/more_arrow_blue.png") no-repeat scroll right 2px;
  color: #265074;
  display: block;
  width: 90px;
}
.left_time_access .shosai a:link,
.left_time_access .shosai a:hover {
  color: #265074;
}

/* footer */

#footer {
  width: 100%;
  border-top: 3px solid #615f5f;
  clear: both;
}
#footer_inner {
  width: 980px;
  margin: 0 auto;
  position: relative;
}
.footermenu {
  float: left;
  margin: 15px 0 10px;
  width: 760px;
}
.footermenu li {
  line-height: 2em;
  float: left;
}
.footermenu li a {
  background: url(/images/footer_list_mark.png) 0 8px no-repeat;
  color: #3d1303;
  font-size: 116%;
  text-decoration: none;
  padding-left: 12px;
  display: block;
  width: 130px;
}
.footer_recruit_banner {
  float: right;
  height: 68px;
  width: 200px;
  margin-top: 20px;
}
.footer_recruit_banner a {
  background: url(/images/footer_recruit_banner.png) no-repeat 0 0;
  display: block;
  width: 200px;
  height: 68px;
  text-indent: -9999px;
}
.goto_top {
  position: absolute;
  top: -54px;
  right: 0;
  cursor: pointer;
  text-align: right;
}
.goto_top img { width: 68.9189%; }
.copy {
  background: #3d1303;
  text-align: center;
  color: #ffffff;
  padding: 10px 0;
  clear: both;
}



@media only screen and (max-width: 740px) {

  body { background: url(); }

  #header {
    width: 100%;
    height: auto;
    max-width: 540px;
    padding-top: 0;
    position: static;
    margin-bottom: 3%;
  }
  .logo { }
  .logo a {
    background: url("/images/sp_logo.png") no-repeat scroll 0 0;
    padding-top: 20%; /* 108÷540px */
    width: 100%;
    height: 0;
    margin-bottom: 3%;
    background: url(/images/sp_logo.png) no-repeat 0 0;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    -ms-background-size: contain;
    background-size: contain;
  }
  .header_tel { display: none; }
  .sp_header_tel {
    display: block;
    margin-bottom: 1.5%;
  }
  .sp_header_tel img { width: 100%; }

  .header_addr {
    font-size: 150%;
    padding-left: 2.5%;
    position: static;
  }

  #cont {
    max-width: 540px;
    width: 100%;
    margin: 0 auto;
  }

  #main {
    min-height: 0;
    width: 100%;
    float: none;
    padding: 0;
  }

  .mainmenu {
    margin: 0 auto 4%;
    width: 100%;
    max-width: 540px;
    overflow: hidden;
  }
  .mainmenu li {}
  .mainmenu li a {
    height: 0;
    width: 50%!important;
    max-width: 270px!important;
    -webkit-background-size: contain!important;
    -moz-background-size: contain!important;
    -o-background-size: contain!important;
    -ms-background-size: contain!important;
    background-size: contain!important;
  }
  .mainmenu .mm_home a {
    background: url(/images/sp_mainmenu_home.png) no-repeat 0 0;
    padding-top: 15.5%;
  }
  #home .mainmenu .mm_home a {
    background: url(/images/sp_mainmenu_home.png) no-repeat 0 0;
    padding-top: 15.5%;
  }
  .mainmenu .mm_policy a {
    background: url(/images/sp_mainmenu_policy.png) no-repeat 0 0;
    padding-top: 15.5%;
  }
  #policy .mainmenu .mm_policy a {
    background: url(/images/sp_mainmenu_policy.png) no-repeat 0 0;
    padding-top: 15.5%;
  }
  .mainmenu .mm_guide a {
    background: url(/images/sp_mainmenu_guide.png) no-repeat 0 0;
    padding-top: 16.4%;
  }
  #guide .mainmenu .mm_guide a {
    background: url(/images/sp_mainmenu_guide.png) no-repeat 0 0;
    padding-top: 16.4%;
  }
  .mainmenu .mm_clinic a {
    background: url(/images/sp_mainmenu_clinic.png) no-repeat 0 0;
    padding-top: 16.4%;
  }
  #clinic .mainmenu .mm_clinic a {
    background: url(/images/sp_mainmenu_clinic.png) no-repeat 0 0;
    padding-top: 16.4%;
  }
  .mainmenu .mm_time a {
    background: url(/images/sp_mainmenu_time.png) no-repeat 0 0;
    padding-top: 16.6%;
  }
  #time .mainmenu .mm_time a {
    background: url(/images/sp_mainmenu_time.png) no-repeat 0 0;
    padding-top: 16.6%;
  }
  .mainmenu .mm_access a {
    background: url(/images/sp_mainmenu_access.png) no-repeat 0 0;
    padding-top: 16.6%;
  }
  #access .mainmenu .mm_access a {
    background: url(/images/sp_mainmenu_access.png) no-repeat 0 0;
    padding-top: 16.6%;
  }

  .topicpath { display: none; }

  #left {
    width: 100%;
    float: none;
    margin-top: 6%;
  }
  .leftmenu_wrap {
    width: 85%;
    max-width: 458px;
    margin-left: 7.6%;
  }
  .leftmenutitle {
    background: url(/images/sp_leftmenu_title.png) no-repeat 0 0;
    width: 100%;
    height: 0;
    padding-top: 15%;
    -webkit-background-size: contain!important;
    -moz-background-size: contain!important;
    -o-background-size: contain!important;
    -ms-background-size: contain!important;
    background-size: contain!important;
    overflow: hidden;
  }
  .leftmenu {
    margin-bottom: 10%;
    width: 100%;
  }
  .leftmenu li {}
  .leftmenu li a {
    display: block;
    background: url();
    width: 100%;
    height: 0!important;
    -webkit-background-size: contain!important;
    -moz-background-size: contain!important;
    -o-background-size: contain!important;
    -ms-background-size: contain!important;
    background-size: contain!important;
    overflow: hidden;
  }
  .leftmenu .lm01 a {
    background: url(/images/sp_leftmenu_01.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #general .leftmenu .lm01 a {
    background: url(/images/sp_leftmenu_01_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm02 a {
    background: url(/images/sp_leftmenu_02.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #aesthetics .leftmenu .lm02 a {
    background: url(/images/sp_leftmenu_02_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm03 a {
    background: url(/images/sp_leftmenu_03.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #prevention .leftmenu .lm03 a {
    background: url(/images/sp_leftmenu_03_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm04 a {
    background: url(/images/sp_leftmenu_04.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #periodontics .leftmenu .lm04 a {
    background: url(/images/sp_leftmenu_04_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm05 a {
    background: url(/images/sp_leftmenu_05.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #whitening .leftmenu .lm05 a {
    background: url(/images/sp_leftmenu_05_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm06 a {
    background: url(/images/sp_leftmenu_06.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #maintenance .leftmenu .lm06 a {
    background: url(/images/sp_leftmenu_06_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm07 a {
    background: url(/images/sp_leftmenu_07.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #implants .leftmenu .lm07 a {
    background: url(/images/sp_leftmenu_07_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm08 a {
    background: url(/images/sp_leftmenu_08.png) no-repeat 0 0;
    padding-top: 28%;
  }
  #orthodontics .leftmenu .lm08 a {
    background: url(/images/sp_leftmenu_08_on.png) no-repeat 0 0;
    padding-top: 28%;
  }
  .leftmenu .lm09 a {
    background: url(/images/sp_leftmenu_09.png) no-repeat 0 0;
    padding-top: 29.05%;
  }
  #qa .leftmenu .lm09 a {
    background: url(/images/sp_leftmenu_09_on.png) no-repeat 0 0;
    padding-top: 29.05%;
  }
  .left_time_access { display: none; }
  #footer {
    width: 100%;
    max-width: 540px;
    border-top: 0 none;
    margin: 0 auto;
  }
  #footer_inner {
    width: 100%;
    position: static;
  }
  .footermenu { display: none; }
  .footer_recruit_banner {
    float: none;
    width: 100%;
    height: auto;
    margin-top: 20px;
  }
  .footer_recruit_banner a {
    background: url(/images/sp_footer_recruit_banner.png) no-repeat 0 0;
    height: 0;
    margin: 0 1.7592% 3%;
    max-width: 521px;
    padding-top: 17.037%;
    width: 96.481%;
    -webkit-background-size: contain!important;
    -moz-background-size: contain!important;
    -o-background-size: contain!important;
    -ms-background-size: contain!important;
    background-size: contain!important;
  }
  .goto_top {
    margin: 0 0 0 84.5%;
    position: static;
    width: 13.7037%;
  }
  .goto_top img { width: 100%; }
  .copy { padding: 10px 0; }


}

@media only screen and (max-width: 415px) {

  .header_addr {
    font-size: 116%;
    letter-spacing: -1px;
  }

}

@media only screen and (max-width: 320px) {

}

