/******************************************************************
Site Name:
Author:

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.
******************************************************************/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects `block` display not defined in IE6/7/8/9 & FF3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}

/*
 * Corrects `inline-block` display not defined in IE6/7/8/9 & FF3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/*
 * Addresses styling for `hidden` attribute not present in IE7/8/9, FF3, S4.
 * Known issue: no IE6 support.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */
}

/*
 * Addresses `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

/*
 * Addresses margins handled incorrectly in IE6/7.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/*
 * Improves readability when focused and also mouse hovered in all browsers.
 * people.opera.com/patrickl/experiments/keyboard/test
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Addresses font sizes and margins set differently in IE6/7.
 * Addresses font sizes within `section` and `article` in FF4+, Chrome, S5.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

h2 {
  font-size: 1.5em;
  margin: 0.83em 0;
}

h3 {
  font-size: 1.17em;
  margin: 1em 0;
}

h4 {
  font-size: 1em;
  margin: 1.33em 0;
}

h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
}

h6 {
  font-size: 0.75em;
  margin: 2.33em 0;
}

/*
 * Addresses styling not present in IE7/8/9, S5, Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/*
 * Addresses style set to `bolder` in FF3+, S4/5, Chrome.
 */
b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

/*
 * Addresses styling not present in S5, Chrome.
 */
dfn {
  font-style: italic;
}

/*
 * Addresses styling not present in IE6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/*
 * Addresses margins set differently in IE6/7.
 */
p,
pre {
  margin: 1em 0;
}

/*
 * Corrects font family set oddly in IE6, S4/5, Chrome.
 * en.wikipedia.org/wiki/User:Davidgothberg/Test59
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em;
}

/*
 * Improves readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/*
 * Addresses CSS quotes not supported in IE6/7.
 */
q {
  quotes: none;
}

/*
 * Addresses `quotes` property not supported in S4.
 */
q:before,
q:after {
  content: '';
  content: none;
}

small {
  font-size: 75%;
}

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 * gist.github.com/413930
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0 0 0 40px;
}

/*
 * Addresses paddings set differently in IE6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 40px;
}

/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside `a` element in IE6/7/8/9, FF3.
 * 2. Improves image quality when scaled in IE7.
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
}

/*
 * Corrects overflow displayed oddly in IE9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7.
 */
form {
  margin: 0;
}

/*
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/*
 * 1. Corrects color not being inherited in IE6/7/8/9.
 * 2. Corrects text not wrapping in FF3.
 * 3. Corrects alignment displayed oddly in IE6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */
}

/*
 * 1. Corrects font size not being inherited in all browsers.
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome.
 * 3. Improves appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */
}

/*
 * Addresses FF3/4 setting `line-height` on `input` using `!important` in the
 * UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Removes inner spacing in IE7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */
}

/*
 * Re-set default cursor for disabled elements.
 */
button[disabled],
input[disabled] {
  cursor: default;
}

/*
 * 1. Addresses box sizing set to content-box in IE8/9.
 * 2. Removes excess padding in IE8/9.
 * 3. Removes excess padding in IE7.
 *    Known issue: excess padding remains in IE6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */
}

/*
 * 1. Addresses `appearance` set to `searchfield` in S5, Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in S5, Chrome (include `-moz`
 *    to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
 * Removes inner padding and border in FF3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9.
 * 2. Improves readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/******************************************************************
CUSTOMIZED RESET VALUES
I added these extra styles as a more personalized reset. Feel free
to remove them if you like or add your own. If you want to update
the normalize styles, make sure to edit from this point up.
******************************************************************/
p {
  -webkit-hyphens: auto;
  -epub-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
}

b, strong, .strong {
  font-weight: bold;
}

dfn, em, .em {
  font-style: italic;
}

small, .small {
  font-size: 75%;
}

ul, ol {
  padding: 0;
  list-style-type: none;
}

dd {
  margin: 0;
}

.sidebar ul,
.sidebar ol,
.commentlist {
  list-style: none;
}

/******************************************************************
Site Name:
Author:

Stylesheet: Mixins & Constants Stylesheet

This is where you can take advantage of Sass' great features:
Mixins & Constants. I won't go in-depth on how they work exactly,
there are a few articles below that will help do that. What I will
tell you is that this will help speed up simple changes like
changing a color or adding CSS3 techniques gradients.

A WORD OF WARNING: It's very easy to overdo it here. Be careful and
remember less is more.

******************************************************************/
/*********************
CLEARFIXIN'
*********************/
.clearfix {
  zoom: 1;
}
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}

/*********************
TOOLS
*********************/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.image-replacement {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

/*********************
COLORS
Need help w/ choosing your colors? Try this site out:
http://0to255.com/
*********************/
/*
Here's a great tutorial on how to
use color variables properly:
http://sachagreif.com/sass-color-variables/
*/
/*********************
TYPOGRAPHY
*********************/
/* 	To embed your own fonts, use this syntax
	and place your fonts inside the
	library/fonts folder. For more information
	on embedding fonts, go to:
	http://www.fontsquirrel.com/
	Be sure to remove the comment brackets.
*/
/*	@font-face {
    	font-family: 'Font Name';
    	src: url('library/fonts/font-name.eot');
    	src: url('library/fonts/font-name.eot?#iefix') format('embedded-opentype'),
             url('library/fonts/font-name.woff') format('woff'),
             url('library/fonts/font-name.ttf') format('truetype'),
             url('library/fonts/font-name.svg#font-name') format('svg');
    	font-weight: normal;
    	font-style: normal;
	}
*/
/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp {
  font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
  font-style: italic;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.alert-help, .alert-info, .alert-error, .alert-success {
  margin: 10px;
  padding: 5px 18px;
  border: 1px solid;
}

.alert-help {
  border-color: #e8dc59;
  background: #ebe16f;
}

.alert-info {
  border-color: #bfe4f4;
  background: #d5edf8;
}

.alert-error {
  border-color: #f8cdce;
  background: #fbe3e4;
}

.alert-success {
  border-color: #deeaae;
  background: #e6efc2;
}

/*********************
BOX SIZING
*********************/
/* @include box-sizing(border-box); */
/* NOTE: value of "padding-box" is only supported in Gecko. So
probably best not to use it. I mean, were you going to anyway? */
/*
BASE (MOBILE) SIZE
This are the mobile styles. It's what people see on their phones. If
you set a great foundation, you won't need to add too many styles in
the other stylesheets. Remember, keep it light: Speed is Important.
*/
/******************************************************************
Site Name:
Author:

Stylesheet: Base Mobile Stylesheet

Be light and don't over style since everything here will be
loaded by mobile devices. You want to keep it as minimal as
possible. This is called at the top of the main stylsheet
and will be used across all viewports.

******************************************************************/
/*
YUI 3.5.1 (build 22)
Copyright 2012 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
body {
  font: 13px/1.8 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  *font-size: small;
  *font: x-small;
}

select, input, button, textarea {
  font: 99% "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
}

table {
  font-size: inherit;
  font: 100%;
}

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%;
}

#yui3-css-stamp.cssfonts {
  display: none;
}

/* mapping yui-fonts px and % */
/**
 * DEFINITION MIXIN and EXTEND of COMPASS
 * 2012.10.26
 */
/**
 * CONFIG
 */
#gnavi a {
  overflow: hidden;
  text-indent: 110%;
  white-space: nowrap;
}

.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: " ";
  display: block;
  visibility: hidden;
  clear: both;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
}

.wrap,
.container,
#breadcrumbs {
  margin: 0 auto;
  padding: 0;
  width: 940px;
}

/**
 * BORDER
 */
/**
 * TEXT SHADOW
 */
/**
 * BOX SHADOW
 */
/**
 * GRADATION
 */
/**
 * TAB NAVIGATION GENELATOR
 * @see http://css-tricks.com/better-tabs-with-round-out-borders/
 */
/***********
 * COMMON CLASS
 ***********/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

.alpha a:hover img,
a.alpha:hover img,
a:hover img.alpha {
  filter: Alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}

.vT {
  vertical-align: top !important;
}

.vM {
  vertical-align: middle !important;
}

.vB {
  vertical-align: bottom !important;
}

.aL {
  text-align: left !important;
}

.aC {
  text-align: center !important;
}

.aR {
  text-align: right !important;
}

.fL {
  float: left !important;
}

.fR {
  float: right !important;
}

.fN {
  float: none !important;
}

.imgL {
  float: left !important;
  margin-right: 20px;
  margin-bottom: 20px;
}

.imgR {
  float: right !important;
  margin-left: 20px;
  margin-bottom: 20px;
}

.mT0 {
  margin-top: 0px !important;
}

.mR0 {
  margin-right: 0px !important;
}

.mB0 {
  margin-bottom: 0px !important;
}

.mL0 {
  margin-left: 0px !important;
}

.mT5 {
  margin-top: 5px !important;
}

.mR5 {
  margin-right: 5px !important;
}

.mB5 {
  margin-bottom: 5px !important;
}

.mL5 {
  margin-left: 5px !important;
}

.mT10 {
  margin-top: 10px !important;
}

.mR10 {
  margin-right: 10px !important;
}

.mB10 {
  margin-bottom: 10px !important;
}

.mL10 {
  margin-left: 10px !important;
}

.mT20 {
  margin-top: 20px !important;
}

.mR20 {
  margin-right: 20px !important;
}

.mB20 {
  margin-bottom: 20px !important;
}

.mL20 {
  margin-left: 20px !important;
}

.pR10 {
  padding-right: 10px !important;
}

.pB10 {
  padding-bottom: 10px !important;
}

.pL10 {
  padding-left: 10px !important;
}

.pT20 {
  padding-top: 20px !important;
}

.pR20 {
  padding-right: 20px !important;
}

.pB20 {
  padding-bottom: 20px !important;
}

.pL20 {
  padding-left: 20px !important;
}

.noshadow img {
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.center {
  text-align: center;
}

/*********************
GENERAL STYLES
*********************/
body {
  background: #f7f7f7 url("/wp-content/uploads/common/header_bg.jpg") 0 0 repeat-x;
  color: #4c4c4c;
}

p {
  margin: 0 0 10px 0;
}

ul, ol {
  margin: 0 0 10px 0;
}

#header ul,
#sidebar ul,
#footer ul {
  list-style: none;
}

/*********************
LAYOUT & GRID STYLES
*********************/
.wrap {
  margin: 0 auto;
}

/*********************
LINK STYLES
*********************/
a, a:visited {
  color: #185b7a;
  /* on hover */
  /* mobile tap color */
}
a:hover, a:focus, a:visited:hover, a:visited:focus {
  color: #103e54;
}
a:link, a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}
a:hover img, a:visited:hover img {
  filter: Alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}

/******************************************************************
H1, H2, H3, H4, H5 STYLES
******************************************************************/
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5 {
  text-rendering: optimizelegibility;
  margin: 0 0 10px 0;
  padding: 0;
}
h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a {
  text-decoration: none;
}

h1, .h1 {
  margin: 0;
}

h4, .h4 {
  font-size: 1.1em;
  font-weight: 700;
}

h5, .h5 {
  font-size: 0.846em;
  line-height: 2.09em;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/*********************
HEADER STYLES
*********************/
.header {
  position: relative;
  height: 175px;
  overflow: hidden;
}
.header #header_description {
  font-size: 10px;
  padding: 5px;
}
.header #header_description .description {
  float: left;
  width: 50%;
}
.header #header_description ul {
  float: right;
  width: 50%;
}
.header #header_description li {
  display: inline-block;
  float: right;
  padding-left: 20px;
}
.header #header_description li a {
  padding: 0 0 0 10px;
  text-decoration: none;
  color: #d4810d;
  background: url("/wp-content/uploads/common/header_arrow.png") 0 3px no-repeat;
}
.header #header_main {
  clear: both;
  padding-top: 15px;
}
.header #logo {
  float: left;
}
.header #header_right {
  float: right;
  width: 440px;
}
.header #header_contactinfo {
  float: left;
}
.header #header_tel {
  font-family: "PT Serif", serif;
  font-size: 215.4%;
  margin-bottom: 0;
  padding-left: 24px;
  line-height: 1.3;
  background: url("/wp-content/uploads/common/header_tel.png") 0 5px no-repeat;
}
.header #header_contact {
  float: left;
  margin-right: 5px;
}
.header #header_access {
  float: right;
}
.header #header_info {
  float: right;
  padding-top: 0px;
}

/*********************
NAVIGATION STYLES
*********************/
#gnavi {
  clear: both;
  position: absolute;
  top: 131px;
  height: 43px;
}
#gnavi li {
  display: table-cell;
  height: 43px;
}
#gnavi li.nav_home {
  width: 51px;
}
#gnavi li.nav_home a {
  width: 51px;
}
#gnavi li.nav_about {
  width: 126px;
}
#gnavi li.nav_about a {
  width: 126px;
  background-position: -51px 0;
}
#gnavi li.nav_menu {
  width: 129px;
}
#gnavi li.nav_menu a {
  width: 129px;
  background-position: -177px 0;
}
#gnavi li.nav_staff {
  width: 127px;
}
#gnavi li.nav_staff a {
  width: 127px;
  background-position: -306px 0;
}
#gnavi li.nav_visit {
  width: 127px;
}
#gnavi li.nav_visit a {
  width: 127px;
  background-position: -433px 0;
}
#gnavi li.nav_implant {
  width: 127px;
}
#gnavi li.nav_implant a {
  width: 127px;
  background-position: -560px 0;
}
#gnavi li.nav_recruit {
  width: 126px;
}
#gnavi li.nav_recruit a {
  width: 126px;
  background-position: -687px 0;
}
#gnavi li.nav_qa {
  width: 127px;
}
#gnavi li.nav_qa a {
  width: 127px;
  background-position: -813px 0;
}
#gnavi a {
  display: block;
  height: 43px;
  width: 100%;
  background: url("/wp-content/uploads/common/gnavi.png") 0 0 no-repeat;
}
#gnavi a:hover {
  background: url("/wp-content/uploads/common/gnavi_on.png") 0 0 no-repeat;
}
#gnavi .current_page_item a,
#gnavi .active a {
  background: url("/wp-content/uploads/common/gnavi_on.png") 0 0 no-repeat;
}

#breadcrumbs {
  clear: both;
  color: #666666;
  height: 25px;
  line-height: 2;
  margin-bottom: 30px;
  font-size: 93%;
}
#breadcrumbs a {
  text-decoration: none !important;
}
#breadcrumbs a:hover {
  text-decoration: underline !important;
}

/*********************
POSTS & CONTENT STYLES
*********************/
#main {
  float: left;
  width: 660px;
}

.hentry {
  /* Table */
  /* Recruit */
  /* Q and A */
  /* Contact Form */
}
.hentry h1#mainimg img {
  margin-bottom: 20px;
}
.hentry h1#mainimg + h2 {
  margin-top: 0;
}
.hentry img + h2 {
  margin-top: 20px;
}
.hentry img {
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}
.hentry img.imgR {
  margin-bottom: 50px;
}
.hentry img.noshadow {
  box-shadow: none;
}
.hentry ul {
  margin-left: 20px;
  list-style-type: disc;
}
.hentry ol {
  list-style-type: decimal;
}
.hentry h2 {
  clear: both;
  margin: 40px 0 20px;
  padding: 8px 10px 3px 15px;
  font-size: 138.5%;
  line-height: 1.3;
  color: #d4810d;
  background-color: #f5e5d0;
  border-bottom: 3px solid #eccea6;
  font-family: "Hiragino Mincho Pro","ヒラギノ明朝 Pro W3","HGS明朝E","ＭＳ Ｐ明朝","細明朝体", Times, serif;
}
.hentry h2 span {
  font-size: 11px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  float: right;
  font-weight: normal;
  display: inline-block;
  padding: 4px 12px 1px;
  margin-left: 3px;
  background: #FFFFFF;
}
.hentry h2 span.name {
  font-size: 12px;
  margin-left: 1.5em;
  padding: 0;
  display: inline;
  float: none;
  background: transparent;
}
.hentry h2 span.attention {
  text-align: right;
  background: transparent;
  padding: 5px;
  margin: 0;
}
.hentry h2 span.required {
  float: none;
  background: transparent;
  padding: 0;
  margin: 0;
}
.hentry h2.type1 {
  background-color: #f2a02c;
  color: #FFFFFF;
}
.hentry h2.type2 {
  background: url("/wp-content/uploads/common/heading_type2.png") 0 0 no-repeat;
  border: none;
  width: 660px;
  height: 45px;
  padding-top: 10px;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}
.hentry h2.type3 {
  background: #E5E5E5;
  border-color: #D9D9D9;
}
.hentry h3 {
  clear: both;
  background-color: #f2a02c;
  color: #FFFFFF;
  font-size: 93%;
  font-weight: normal;
  border-left: 10px solid #f5e5d0;
  margin-top: 30px;
  padding-left: 10px;
  padding: 5px 10px 2px;
}
.hentry h3.center {
  border-left: none;
}
.hentry h2.type1 + h3.type1 {
  margin-top: -23px;
}
.hentry h3.type1 {
  color: #d4810d;
  background-color: #f5e5d0;
  border: none;
  padding: 8px 10px 3px 15px;
  font-size: 138.5%;
  line-height: 1.3;
  font-family: "Hiragino Mincho Pro","ヒラギノ明朝 Pro W3","HGS明朝E","ＭＳ Ｐ明朝","細明朝体", Times, serif;
}
.hentry .column_img {
  width: 200px;
  float: right;
  clear: both;
  margin-bottom: 30px;
}
.hentry .column_img p {
  margin-bottom: 5px;
}
.hentry .column_main {
  width: 440px;
  float: left;
  clear: left;
  margin-bottom: 30px;
}
.hentry .bg {
  background: #f5e5d0;
  padding: 10px 10px 5px;
}
.hentry .staffimg {
  width: 200px;
  height: auto;
}
.hentry th, .hentry td {
  text-align: left;
  vertical-align: top;
}
.hentry h2 + dl,
.hentry h2 + table.basicTable,
.hentry h2 + table.recruitTable {
  margin-top: -20px;
}
.hentry table.basicTable {
  width: 100%;
}
.hentry table.basicTable th, .hentry table.basicTable td {
  padding: 5px 10px;
  font-size: 93%;
  line-height: 1.5;
  border-bottom: 1px solid #D5DFDF;
}
.hentry table.basicTable th {
  width: 11em;
  padding-left: 15px;
}
.hentry table.recruitTable {
  width: 100%;
  background: #F4F4F4;
}
.hentry table.recruitTable th,
.hentry table.recruitTable td {
  padding: 5px 10px;
  font-weight: normal;
  font-size: 93%;
  border-bottom: 1px solid #D5DFDF;
  color: #A0A0A0;
}
.hentry table.recruitTable th {
  width: 8em;
  padding-left: 15px;
}
.hentry dl.qalist {
  border-bottom: 1px solid #D5DFDF;
  background: url("/wp-content/uploads/common/qa_qbg.png") 0 0 repeat-y;
}
.hentry dl.qalist dt {
  border-top: 1px solid #D5DFDF;
  cursor: pointer;
  color: #d4810d;
  background: url("/wp-content/uploads/common/qa_open.png") 645px 12px no-repeat;
}
.hentry dl.qalist dt span {
  display: block;
  padding: 5px 45px 3px;
  background: url("/wp-content/uploads/common/qa_q.png") 9px 8px no-repeat;
}
.hentry dl.qalist dd {
  display: none;
  background: url("/wp-content/uploads/common/qa_abg.png") 0 0 repeat-y;
}
.hentry dl.qalist dd span {
  display: block;
  padding: 5px 45px 3px;
  background: url("/wp-content/uploads/common/qa_a.png") 10px 8px no-repeat;
}
.hentry dl.qalist dt.active {
  background: #f0f6f7 url("/wp-content/uploads/common/qa_close.png") 645px 12px no-repeat;
}
.hentry .required {
  margin-left: 10px;
  color: #CC3333 !important;
}
.hentry table.contactTable {
  margin-top: -20px;
  width: 100%;
}
.hentry table.contactTable th,
.hentry table.contactTable td {
  padding: 10px;
  border-bottom: 1px solid #B7CCCC;
}
.hentry table.contactTable th {
  width: 12em;
  vertical-align: middle;
  background: #F0F6F7;
}
.hentry table.contactTable table {
  width: 100%;
}
.hentry table.contactTable table th,
.hentry table.contactTable table td {
  border: none;
}
.hentry table.contactTable table tr + tr th,
.hentry table.contactTable table tr + tr td {
  border-top: 1px solid #D8E7EB;
}
.hentry table.contactTable table th {
  background: transparent;
}
.hentry .input2 {
  width: 35%;
}
.hentry .input3 {
  width: 15%;
}
.hentry .inputzip {
  width: 20%;
}
.hentry textarea {
  width: 100%;
}
.hentry table.contactTable table th {
  width: 7em;
}
.hentry .wpcf7-list-item {
  display: block;
}
.hentry input[type=submit] {
  text-align: center;
  padding: 4px 70px 2px;
  color: #FFFFFF;
  background: white url("/wp-content/uploads/common/btn_bg.png") 0 0 repeat-x;
  border: none;
  -webkit-appearance: none;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}
.hentry input[type=submit]:hover {
  box-shadow: none;
  filter: Alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}

/* end .hentry */
#information {
  clear: both;
  background: #E6E6E6;
  padding: 30px 50px 20px;
  margin: 80px 0;
  line-height: 1.3;
}
#information #information_tel {
  float: left;
  color: #f2a02c;
  padding-left: 40px;
  margin-bottom: 15px;
  font-size: 38px;
  font-family: "PT Serif", serif;
  line-height: 1;
  background: url("/wp-content/uploads/common/information_tel.jpg") left 15px no-repeat;
}
#information #information_btn_contact {
  float: right;
  margin: 5px 0 0;
  padding-left: 45px;
  height: 28px;
  background: url("/wp-content/uploads/common/information_line_vert.png") left top repeat-y;
}
#information #information_btn_access {
  float: right;
  text-align: right;
}
#information table {
  clear: both;
  width: 100%;
  background: url("/wp-content/uploads/common/information_line_hori.png") left top repeat-x;
}
#information th,
#information td {
  font-size: 93%;
  padding: 10px 0 10px 0;
  text-align: left;
  vertical-align: top;
  background: url("/wp-content/uploads/common/information_line_hori.png") left bottom repeat-x;
}
#information th {
  color: #d4810d;
  font-weight: normal;
  padding-right: 10px;
  width: 70px;
}

/*********************
SIDEBARS & ASIDES
*********************/
#sidebar {
  float: right;
  width: 240px;
  margin-bottom: 50px;
}
#sidebar h3 {
  margin-bottom: 0;
}
#sidebar ul {
  list-style: none;
}
#sidebar img {
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}

/*********************
FOOTER STYLES
*********************/
.footer {
  clear: both;
  background: #f5e5d0 url("/wp-content/uploads/common/footer_bg.png") 0 0 repeat-x;
  font-size: 93%;
}
.footer #btn_pagetop {
  float: right;
  margin: 0;
}
.footer #footer_logo {
  clear: both;
  float: left;
  width: 180px;
}
.footer .footer_lists {
  float: left;
  width: 180px;
}
.footer .footer_lists a {
  display: block;
  background: url("/wp-content/uploads/common/header_arrow.png") 0 5px no-repeat;
  padding: 0 10px 0;
  margin: 0;
  text-decoration: none;
  color: #d4810d;
}
.footer .footer_lists a:hover {
  text-decoration: underline;
}
.footer .footer_lists ul ul a {
  background: none;
  color: #CCCCCC;
}
.footer #footer_bnr {
  float: right;
  margin-top: 20px;
}
.footer #footer_bnr img {
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}

.copyright {
  clear: both;
  background: #000;
  color: #FFF;
  margin: 0;
  padding: 10px;
  text-align: center;
  font-size: 77%;
}

/* HOME */
body.home {
  background: #f7f7f7 url("/wp-content/uploads/common/home_bg.png") 0 0 repeat-x;
}

.home #content {
  margin-top: 15px;
  margin-bottom: 30px;
}
.home #mainimglists {
  margin-bottom: 40px;
}
.home #featured {
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}
.home #featured a:hover img {
  filter: Alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}

.newslists {
  margin: -10px 0 0 !important;
  padding: 0;
  list-style: none !important;
}
.newslists li {
  margin: 0;
  padding: 5px 5px 3px;
  border-bottom: 1px solid #D9D9D9;
}
.newslists li span {
  display: inline-block;
  width: 100px;
}

#slide-checkbox,
.slide-toggle {
  display: none;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  /* Styles */
  /******************************************************************
  Site Name:
  Author:
  
  Stylesheet: Smartphone Stylesheet
  
  A word of warning. This size COULD be a larger mobile device,
  so you still want to keep it pretty light and simply expand
  upon your base.scss styles.
  
  ******************************************************************/
  /*********************
  GENERAL STYLES
  *********************/
  body {
    background-image: none;
    background-color: #fff;
    color: #4c4c4c;
  }

  .wrap,
  .container,
  #breadcrumbs {
    width: 100% !important;
  }

  #container {
    overflow: hidden;
  }

  img {
    max-width: 100% !important;
    height: auto;
  }

  /******************************************************************
  H1, H2, H3, H4, H5 STYLES
  ******************************************************************/
  /*********************
  HEADER STYLES
  *********************/
  .header {
    position: relative;
    height: auto;
    overflow: visible;
  }
  .header #header_description {
    font-size: 10px;
    padding: 5px;
    margin-bottom: 10px;
    background: #E6E6E6;
  }
  .header #header_description .description {
    float: none;
    width: auto;
    margin-bottom: 0;
  }
  .header #header_description ul {
    display: none;
  }
  .header #header_main {
    padding: 0 10px;
  }
  .header #logo {
    float: none;
    text-align: left;
    padding: 10px;
  }
  .header #logo img {
    width: 50%;
    height: auto;
  }
  .header #header_right {
    display: none;
  }

  /*********************
  NAVIGATION STYLES
  *********************/
  #gnavi {
    clear: both;
    position: relative;
    top: auto;
    height: auto;
  }
  #gnavi li {
    display: block;
    height: auto;
  }
  #gnavi li.nav_home {
    width: auto;
  }
  #gnavi li.nav_home a {
    width: auto;
  }
  #gnavi li.nav_about {
    width: auto;
  }
  #gnavi li.nav_about a {
    width: auto;
  }
  #gnavi li.nav_menu {
    width: auto;
  }
  #gnavi li.nav_menu a {
    width: auto;
  }
  #gnavi li.nav_staff {
    width: auto;
  }
  #gnavi li.nav_staff a {
    width: auto;
  }
  #gnavi li.nav_visit {
    width: auto;
  }
  #gnavi li.nav_visit a {
    width: auto;
  }
  #gnavi li.nav_implant {
    width: auto;
  }
  #gnavi li.nav_implant a {
    width: auto;
  }
  #gnavi li.nav_recruit {
    width: auto;
  }
  #gnavi li.nav_recruit a {
    width: auto;
  }
  #gnavi li.nav_qa {
    width: auto;
  }
  #gnavi li.nav_qa a {
    width: auto;
  }
  #gnavi a {
    height: auto;
    width: 100%;
    overflow: auto;
    text-indent: 0;
    white-space: nowrap;
    background-image: none;
  }
  #gnavi a:hover {
    background-image: none;
  }
  #gnavi .current_page_item a,
  #gnavi .active a {
    background-image: none;
  }

  #breadcrumbs {
    clear: both;
    padding: 5px;
    margin-bottom: 0px;
    background: #E6E6E6;
    color: #666666;
    height: auto;
    line-height: 1.5;
    margin-bottom: 20px;
  }

  /*********************
  POSTS & CONTENT STYLES
  *********************/
  #main {
    float: none;
    width: auto;
  }

  #content {
    padding: 10px;
  }

  .hentry {
    /* Contact Form */
  }
  .hentry h1#mainimg img {
    width: 100%;
    height: auto;
  }
  .hentry h1#mainimg + h2 {
    margin-top: 0;
  }
  .hentry img + h2 {
    margin-top: 20px;
  }
  .hentry img.imgR {
    float: none;
    margin-bottom: 50px;
  }
  .hentry img.noshadow {
    box-shadow: none;
  }
  .hentry ul {
    margin-left: 20px;
    list-style-type: disc;
  }
  .hentry ol {
    list-style-type: decimal;
  }
  .hentry h2 {
    clear: both;
    margin: 40px 0 20px;
    padding: 8px 10px 3px 15px;
    font-size: 123.1%;
  }
  .hentry h2 span.name {
    font-size: 10px;
    margin-left: 1em;
  }
  .hentry h2 span.attention {
    text-align: right;
    background: transparent;
    padding: 5px;
    margin: 0;
  }
  .hentry h2 span.required {
    float: none;
    background: transparent;
    padding: 0;
    margin: 0;
  }
  .hentry h2.type2 {
    background: url("../images/heading_type2.png") 0 0 no-repeat;
    border: none;
    width: 100%;
    height: 45px;
    padding-top: 13px;
  }
  .hentry h2.type1 + h3.type1 {
    margin-top: -23px;
  }
  .hentry h3.type1 {
    border: none;
    padding: 8px 10px 3px 15px;
    font-size: 138.5%;
    line-height: 1.3;
  }
  .hentry .column_img {
    width: auto;
    float: none;
    text-align: center;
  }
  .hentry .column_main {
    width: auto;
    float: none;
    margin-bottom: 10px;
  }
  .hentry input[type=text],
  .hentry input[type=email],
  .hentry textarea {
    width: 200px;
  }
  .hentry td td input[type=text] {
    width: 100px;
  }
  .hentry input[type=text].input2 {
    width: 30%;
  }
  .hentry input[type=text].input3 {
    width: 25%;
  }
  .hentry input[type=text].inputzip {
    width: 25%;
  }
  .hentry table.contactTable table th {
    width: 7em;
  }

  /* end .hentry */
  .mapp-layout {
    width: 90% !important;
    margin-left: 5%;
  }

  #information {
    padding: 10px;
    margin: 30px 0 10px;
    line-height: 1.3;
  }
  #information #information_tel {
    float: none;
    padding-left: 40px;
    font-size: 28px;
    font-family: "PT Serif", serif;
    background: url("/wp-content/uploads/common/information_tel.jpg") left 0 no-repeat;
  }
  #information #information_btn_contact {
    float: none;
    margin: 0 0 10px;
    padding-left: 40px;
    background: none;
  }
  #information #information_btn_access {
    float: none;
    text-align: right;
  }
  #information table {
    clear: both;
    width: 100%;
  }

  /*********************
  SIDEBARS & ASIDES
  *********************/
  #sidebar {
    width: 100%;
    padding-top: 20px;
    padding-bottom: 1px;
    margin-bottom: 0px;
    float: none;
    text-align: center;
    background: #F3F3F3;
  }
  #sidebar h3 img {
    width: 260px;
    height: auto;
  }
  #sidebar ul li {
    display: inline-block;
    margin-bottom: 0px;
  }
  #sidebar ul li img {
    width: 130px;
    height: auto;
  }

  /*********************
  FOOTER STYLES
  *********************/
  .footer {
    clear: both;
    padding: 0 10px;
    background: #f5e5d0 url("/wp-content/uploads/common/footer_bg.png") 0 0 repeat-x;
  }
  .footer #btn_pagetop {
    float: right;
    margin: 0;
  }
  .footer #btn_pagetop img {
    width: 120px;
    height: auto;
  }
  .footer #footer_logo {
    clear: both;
    float: none;
  }
  .footer #footer_logo img {
    width: 80px;
    height: auto;
  }
  .footer .footer_lists {
    float: left;
    width: 150px;
  }
  .footer .footer_lists a {
    display: block;
    background: url("/wp-content/uploads/common/header_arrow.png") 0 5px no-repeat;
    padding: 0 10px 0;
    margin: 0;
    text-decoration: none;
  }
  .footer .footer_lists a:hover {
    text-decoration: underline;
  }
  .footer .footer_lists ul ul a {
    background: none;
    color: #CCCCCC;
  }
  .footer #footer_bnr {
    display: none;
  }

  body,
  body.home {
    background-color: #333333;
  }

  #container {
    background-color: #FFFFFF;
  }

  /* HOME */
  body.home {
    background-image: none;
  }

  .home #content {
    margin-top: 0px;
    margin-bottom: 30px;
  }
  .home #mainimglists {
    margin-bottom: 40px;
  }
  .home #featured {
    width: 300px;
    height: 120px;
  }
  .home #featured div {
    width: 300px;
    height: 120px;
  }
  .home .orbit-bullets {
    position: relative;
    top: 10px;
    left: 160px;
  }
  .home #sidebar {
    display: none;
  }

  /* ************************************************* */
  /**
   * Slide Navigation
   */
  body {
    /*
     * Relates to the pseudo class & sibling bug, see
     * http://css-tricks.com/webkit-sibling-bug/ for more details
     */
    -webkit-animation: bugfix infinite 1s;
  }

  /* Also relates to the pseudo class & sibling bug */
  @-webkit-keyframes bugfix {
    from {
      padding: 0;
    }

    to {
      padding: 0;
    }
}

  #gnavi {
    background: #333333;
  }

  #container {
    background: #333333;
  }

  .slide {
    background: white;
  }

  #slide-checkbox,
  .slide-toggle {
    display: inline;
  }

  .slide-toggle {
    position: absolute;
    top: 45px;
    right: 0px;
    z-index: 1;
    font-family: "fontello";
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    text-align: center;
    background: #333333;
    color: white;
    font-size: 14px;
    padding: 7px 3px 7px 8px;
    line-height: 1;
    -webkit-border-radius: 5px 0 0 5px;
    -moz-border-radius: 5px 0 0 5px;
    -ms-border-radius: 5px 0 0 5px;
    -o-border-radius: 5px 0 0 5px;
    border-radius: 5px 0 0 5px;
    /* Uncomment for 3D effect */
  }

  /* This is the clickable label */
  .slide-toggle {
    cursor: pointer;
  }

  /* Kill the nasty outlines everywhere */
  .slide-toggle,
  .slide-toggle:active,
  .slide-toggle:focus {
    border: none !important;
    outline: none !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }

  /* The :after pseudo element has an icon that covers the checkbox */
  .slide-toggle:before {
    font-size: 16px;
    content: '\f008';
    margin-right: 5px;
  }

  /* This is the checkbox */
  .slide-checkbox {
    position: absolute;
    top: -9999px;
    left: -9999px;
  }

  /* When it's checked replace the menu icon with a close icon */
  /*
   * I set the width pretty high because I wanted to test on an Ipad in portrait mode,
   * depending on your website you can probably make this narrower
   */
  /* Only show the menu link on smaller screens */
  .slide-toggle {
    display: block;
  }

  /*
   * The transition value determines the speed
   * at which the content will slide over
   */
  .slide {
    -webkit-transition: -webkit-transform 500ms ease;
    -moz-transition: -moz-transform 500ms ease;
    -o-transition: -o-transform 500ms ease;
    transition: transform 500ms ease;
  }

  /*
   * Enable hardware acceleration and stop flickering
   * More details: http://indiegamr.com/ios6-html-hardware-acceleration-changes-and-how-to-fix-them/
   * Add more browser prefixes as required for your environment
   */
  .slide,
  #gnavi {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -webkit-perspective: 1000;
    -moz-perspective: 1000;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
  }

  /*
   * When the checkbox is checked slide the content
   * over and the checkbox with it
   */
  .slide-checkbox:checked ~ .slide {
    -webkit-transform: translateX(-70%) scale(1);
    -moz-transform: translateX(-70%) scale(1);
    -ms-transform: translateX(-70%) scale(1);
    -o-transform: translateX(-70%) scale(1);
    transform: translateX(-70%) scale(1);
  }

  #gnavi {
    height: auto;
    border-radius: 0;
    /*
     * The width determines how much of the page you want to
     * remain visible once the menu slides over
     */
    width: 100%;
    /*
     * Must be absolutely positioned otherwise it won't sit
     * side by side with the content but instead above it
     * */
    position: absolute;
    left: 0;
    top: 0;
    /* Keeps the menu hidden off-canvas to the left */
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
  }

  #gnavi li {
    float: none;
  }

  #gnavi li a {
    border-top: 1px solid #222;
    border-bottom: 1px solid #444;
    padding: 5px 20px;
    color: #FFFFFF;
    text-decoration: none;
  }
  #gnavi li a:before {
    font-family: "fontello";
    font-style: normal;
    font-weight: normal;
    speak: none;
    font-size: 6px;
    padding-right: 8px;
    content: '\f00F';
  }

  #gnavi li:first-child a {
    border-top: none;
  }

  #gnavi li:last-child a {
    border-bottom: none;
  }

  #gnavi a {
    height: auto!important;
    width: 100%!important;
    overflow: auto!important;
    text-indent: 0!important;
  }
  #gnavi a:hover {
    background: none;
    background-color: #444444;
    -webkit-box-shadow: 0px 2px 10px #222222 inset;
    -moz-box-shadow: 0px 2px 10px #222222 inset;
    box-shadow: 0px 2px 10px #222222 inset;
  }

  @font-face {
    font-family: 'fontello';
    src: url("../font/fontello.eot?40465872");
    src: url("../font/fontello.eot?40465872#iefix") format("embedded-opentype"), url("../font/fontello.woff?40465872") format("woff"), url("../font/fontello.ttf?40465872") format("truetype"), url("../font/fontello.svg?40465872#fontello") format("svg");
    font-weight: normal;
    font-style: normal;
}
}
