@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

/* 全体---------------------------------------------*/

body {
color:#333;
font-size:16px;
font-family:verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
line-height:1.6;
-webkit-text-size-adjust: none;
word-break: break-all;/*長いURLはみ出し改行対策*/
}

a{color:#993300; font-weight:bold;text-decoration:none;}
a:hover{color:#C94C00; text-decoration:underline;}
a:active, a:focus {outline:0;}
a:hover img{
	transform:scale(1.00,1.00);
   filter: alpha(opacity=70);
   -moz-opacity:0.8;
   opacity:0.8;
} 

img,.wp div{
	max-width:100%;
	height:auto;
}

strong{
	font-weight:bold;
}

.clear{
	clear:both;
}

.border-left{
border-left:3px solid #ddd;
padding:0 5px;
}

.border{
border:1px solid #ccc;
border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	-webkit-border-radius: 5px 5px 5px 5px;	
box-shadow:#666 2px 2px 2px 1px;
}

.pc{
	display:block;
	display:inline;
}

.smp,.smp-v{
	display:none;
}

/**** bxslider*****/

ul.bxslider li img{
	display:none;
	}

ul.bxslider li:first-child img{
	display:block;
	}

/**** 全体の構成・枠組み　********/

#header_obi{
background:#FFFFFF;
background:linear-gradient(to bottom,#FFFFFF 0%,#FFFFFF 100%);
background:-webkit-gradient(linear, left top, left bottom, from(#FFFFFF), to(#FFFFFF));
border-bottom:#3333FF 0px solid;
box-shadow:0px 0px 0px 0 #bbb;
}	

#header{
width:1100px;
padding:10px;
margin:0 auto;
}

.wrapper{      /*　⇒（メイン+サイド）とフッターの枠に適用*/
width:1100px;
margin:0 auto;
padding:0 5px;
}

#navi{
float:right;
width:280px;
padding:30px 0 0 0;
}

#main{
float:left;
width:750px;
padding:10px 0 0 0;
}

.LP #main{
width:800px;
float:none;
padding:10px;
}

.wp{
	font-size:14px;
}

#sidebar{
clear:right;
float:right;
width:280px;
padding:30px 0 0 0;
}	

.LP #sidebar{
width:0px;
float:none;
display:none;
}


#footer{
clear:both;
overflow:hidden;
padding:5px;
background:#ddddff;
}

/**** ヘッダー　********/

/* 左上ロゴ　*/
#header_logo{
float:left;
max-width:52%;
padding:0;
}

/* 右上の電話番号　*/
#header_right{
float:right;
max-width:45%;
text-align:left;
font-size:14px;
line-height:18px;
padding:0 50px 0 0;
}


/**　グリッド**********/
.grid1{float:left;width:calc(99.9999% *1/12 ); }
.grid2{float:left;width:calc(99.9999% *2/12 ); }
.grid3{float:left;width:calc(99.9999% *3/12 ); }
.grid4{float:left;width:calc(99.9999% *4/12 ); }
.grid5{float:left;width:calc(99.9999% *5/12 ); }
.grid6{float:left;width:calc(99.9999% *6/12 ); }
.grid7{float:left;width:calc(99.9999% *7/12 ); }
.grid8{float:left;width:calc(99.9999% *8/12 ); }
.grid9{float:left;width:calc(99.9999% *9/12 ); }
.grid10{float:left;width:calc(99.9999% *10/12 ); }
.grid11{float:left;width:calc(99.9999% *11/12 ); }
.grid12{float:left;width:calc(99.9999% *12/12 ); }




/**　見出し　**********/

.h1_bg{
	min-height:60px;
	background-color:#cc8855;
		background:linear-gradient(to bottom,#eebb66 0%,#cc8855 100%);
		background:-webkit-gradient(linear, left top, left bottom, from(#eebb66),to(#cc8855));
}

h1 {
font-weight:bold;
padding:26px 10px;
font-size:32px;
line-height:36px;
color: #632;
text-shadow: 1px 1px 1px #fff;
}


h2{
margin:0 0 15px 0;
padding:10px 10px;
/*
font-size:26px;
line-height:28px;
*/
font-size:16px;
line-height:20px;
font-weight:600;
color:#ccaa55;
text-shadow: 0px 0px 0px #ccc;
background: #fff;
	background:linear-gradient(to bottom,#fff 0%,#fff 100%);
	background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
	border:#ccaa55 2px solid;
border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	-webkit-border-radius: 5px 5px 5px 5px;	
box-shadow:#999 2px 2px 2px 1px;
}

h3{
margin:0 0 8px 0;
padding:3px 0;
/*
font-size:21px;
line-height:23px;
*/
font-size:16px;
line-height:23px;
color:#333;
font-weight:bold;
border-bottom:#333 1px solid;
}

h4{
margin:8px -3px;
padding:0;
text-align:left;
/*
font-size:20px;
line-height:22px;
*/
font-size:16px;
line-height:22px;
color:#dd8844;
text-shadow: 1px 1px 1px #ccc;
font-weight:bold;
}

h5{
margin:8px -3px;
padding:0;
text-align:left;
/*
font-size:18px;
line-height:20px;
*/
font-size:16px;
line-height:20px;
color:#cc9988;
text-shadow: 1px 1px 1px #999;
font-weight:bold;
}

h6{
margin:8px -3px;
padding:0;
text-align:left;
font-size:16px;
line-height:18px;
color:#aa9999;
text-shadow: 1px 1px 1px #ccc;
font-weight:bold;
}

/***********イメージ float**********/
.img_left {
	margin:0 2% 0 0;
	float: left;
	max-width:40%;
}

.img_right {
	margin:0 0 0 2%;
	float: right;
	max-width:40%;
}

/***********イメージ float**********/
.img_left2 {
	margin:0 10px 0 0;
	float: left;
	max-width:40%;
}

.img_right2 {
	margin:0 0 0 10px;
	float: right;
	max-width:40%;
}

/**** wordpress対応*****/
 
.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignleft {
	float: left;
	margin:0 10px 10px 0;
	max-width:40%;
}

.alignright {
	float: right;
	margin:0 0 10px 10px;
	max-width:40%;
}

label.screen-reader-text{  /***ウィジェットの検索テキスト非表示*****/
	display:none;
	}

/***********テーブル**********/
table{
width:100%;
border-collapse:collapse;
margin:0px auto;
}

table th{
vertical-align:middle;
background-color:#eeddaa;
color:#663300;
font-weight:bold;
font-size:16px;
line-height:18px;
border:2px solid #fff;
padding:8px 10px;
}

table td{
border-collapse:collapse;
background-color:#eee;
color:#666;
vertical-align:middle;
border:2px solid #fff;
font-weight:bold;
font-size:16px;
line-height:18px;
padding:8px 10px;
}


.LP table{
}

.LP table th{
}

.LP table td{
}


table.center th,
table.center td{
text-align:center;
padding:5px 0;
}

table.rp th,
table.rp td{
}


/**　テーブル(WP簡易グリッド用)**********/

table.t-grid td,
table.t-grid-rp td{
vertical-align: top;
font-size:15px;
line-height:28px;
background: none;
color:#333;
border:none;
padding:1%;
}



/***********フォーム　input　**********/
input{
	vertical-align:middle;
	height:20px;
	font-size:14px;
	margin:2px;
}

select{
	vertical-align:middle;
	font-size:18px;
	height:24px;
}

input[type="submit"]{
	font-size:22px;
	font-weight:bold;
   background: #4499bb;
   color: #fff;
	 padding:5px 12px;
   border: none;
   border-radius: 5px;
   cursor: pointer;
   height: auto;
}

input[type="submit"]:hover{
   background: #d96;
}

/***********dl dt ddリスト**********/

dt{
	clear:both;
	float:left;
	width:25%;
}

dd{
	float:left;
	width:75%;
}

dl.info dt{
	padding:5px 0;
	border-top:1px dashed #bbb;
	line-height:22px;
}

dl.info dd{
	padding:5px 0;
	border-top:1px dashed #bbb;
	line-height:22px;
}

/***********ul liリスト**********/

#navi li,ul.none li,ul.bxslider li{
	list-style-type: none;
	margin:0;
	padding:0;
}

ul li{
	margin:10px 0 10px 24px;
	line-height:1.4em;
}

ol li{
	margin:10px 0 10px 24px;
	line-height:1.4em;
}


/* クリスタルブライトニング検索用 */
ul.list>li{
	clear:both;
	line-height:1.2em;
	padding:10px 0;
}

ul.float li{
list-style-type: none;
float:left;
margin:0 10px 0 0;
}

.register_sidebar ul{
	list-style-type: square;
}

.register_sidebar ul li{
	line-height:1.2em;
	margin:8px 5px 8px 10px;
}

.register_sidebar ul ul{
	list-style-type: disc;
}


ul.wp_menu>li{
	list-style-type: square;
	margin:10px 0 10px 10px;
	color:#C30;
	text-shadow:1px 1px 1px #ccc;
	font-size:20px;
	line-height:22px;
	font-weight:800;
}

ul.wp_menu>li>ul>li{
	list-style-type: disc;
	margin:5px 0 5px 15px;
	font-size:18px;
	font-weight:400;
}

ul.wp_menu>li>ul>li>ul>li{
	list-style-type: circle;
	margin:3px 0 3px 15px;
	font-size:16px;
}

ul.wp_menu>li>ul>li>ul>li>ul>li{
	list-style-type: circle;
	color:#999;
	margin:3px 0 3px 15px;
	font-size:14px;
}

/***********ボタン、リンク**********/	

.btn{
	display: inline-block;
	padding: 0.5em 1em;
	font-size:18px;
	text-decoration: none;
	color: #FFF;
	text-shadow:#333 1px 1px 1px;
	background: #668ad8;/*ボタン色*/
		background:linear-gradient(to bottom,#96aae8 0%,#668ad8 100%);
		background:-webkit-gradient(linear, left top, left bottom, from(#96aae8), to(#668ad8));
	border-bottom: solid 2px #627295;
	border-radius: 10px;
}

.btn:hover{
  background: #999;
	color: #FFF;
}

.link{
	display: inline-block;
	padding: 3px 10px 3px 35px;
	text-decoration: underline;
	font-size:18px;
	color: #CC9966;
	text-shadow:#333 0px 0px 0px;
	background:url(images/btn_link.png) 0 50% no-repeat;
}


/***********スクロール**********/	
.scroll{
	overflow:scroll;
	height:200px;
	font-size:12px;
	border:#999 1px solid;
	padding:0 5%;
	margin:0 10% 10px 10%;
}

/**** iframeレスポンシブ対応********/

.iframeBox{
position:relative;
width:100%;
padding:75% 0 0 0;
}

.iframeBox iframe{
position:absolute;
top:0;
left:0;
padding:0%;
width:100% !important;
height:100% !important
}

iframe{
	max-width:98%;
}

/****** サイドバー  ******/

#sidebar p{
}


/***** フッター *******/


#footer .wrapper>ul>li {
	list-style-type: none;
	float:left;
	margin:5px 0;
	padding:0 20px 0 5px;
	font-size:15px;
	font-weight:bold;
	line-height:18px;
	color:#333;
	border-left:#0186D1 5px solid;
}

/*メニュー２階層目*/
#footer ul ul li {
	list-style-type: none;
	margin:4px 0;
	font-size:14px;
	font-weight:normal;
}

#footer ul ul li:before {
	content:"－";
}

/*メニュー３階層目*/
#footer ul ul ul li {
	margin:3px 0;
	font-size:13px;
}

#footer ul ul ul li:before {
	content:"　－";
}

/*メニュー４階層目*/
#footer ul ul ul ul li {
	margin:2px 0;
	font-size:12px;
}

#footer ul ul ul ul li:before {
	content:"　　－";
}

#copyright{
clear:both;
padding:5px;
text-align:center;
font-style:normal;
font-size:10px;
color:#fff;
background:#0186D1;
}

#pageTop {
  display: none;
  position: fixed;
  right: 5%;
  bottom: 20px;
}

#pageTop a {
  padding:15px 18px;
	font-size:30px;
	color:#ffffff;
	background:#0186D1;
   filter: alpha(opacity=65);
   -moz-opacity:0.65;
   opacity:0.65;
	
	border:#FFF 1px solid;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;	
}


/***** PCのみ適用の設定　*******/
@media print, screen and (min-width: 1100px){

/**** メニュー　********/	

	a#menu{display:none;}

	.panel{
	display:block !important ;
	}

	.panel>ul{
	border:0px solid #4466ff;
	border-radius: 0px 0px 0px 0px;
	-moz-border-radius: 0px 0px 0px 0px;
	-webkit-border-radius: 0px 0px 0px 0px;
	}

	.panel ul li a{
	display: block;
	padding:12px 10px;
	font-weight:bold;
	font-size:20px;
	line-height:22px;
	color:#fff;
	text-shadow:#333 0px 0px 0px;
	background:#0176C1;
		background:linear-gradient(to bottom,#3399ff 0%,#0176C1 100%);
		background:-webkit-gradient(linear, left top, left bottom, from(#3399ff), to(#0176C1));
	border-bottom:1px solid #fff;
	}

	.panel ul li a.new{
		color:#cc5522;
	}

	.panel>ul>li:last-child a{}

	.panel ul li a:hover{
	color:#0176C1;
   background:#ccc;
	}

/*メニュー２階層目*/

	.panel>ul ul>li a{
	padding:10px 8px;
	font-size:16px;
	font-weight:bold;
	color:#014691;
	text-shadow:#ccc 0px 0px 0px;
	background:#eef;
	border-bottom:2px solid #0176C1;
	}

	.panel>ul ul>li a:before{
		content:"－";
	}


/*メニュー３階層目*/

	.panel>ul ul ul>li a{
	font-size:14px;
	color:#c96;
	background:#fff;
	}

	.panel>ul ul ul>li a:before{
		content:"　－";
	}

/*メニュー４階層目*/

	.panel>ul ul ul ul>li a{
	font-size:14px;
	color:#666;
	background:#fff;
	}

	.panel>ul ul ul ul>li a:before{
		content:"　　－";
	}

/**** メニューここまで　********/	
		
}
/***** PCのみ適用の設定ここまで　*******/


/***** タブレット用　*********/
@media only screen and (max-width:1099px){

*{
 -webkit-box-sizing: border-box;
	 -moz-box-sizing: border-box;
		-o-box-sizing: border-box;
	  -ms-box-sizing: border-box;
			box-sizing: border-box;
}

/**** 全体の構成・枠組み　********/

#header{
width:99%;
padding:0.5%;
}

.wrapper{
width:100%;
padding:0 2px;
}

#main,.LP #main{
width:100%;
padding:1px 0 0 0;
}

#sidebar,.LP #sidebar{
width:99%;
padding:0 0.5%;
}	

#footer{
width:100%;
}

/**** メニュー　********/	

	#overlay{
	display: none;
	width: 100%;
	height:120%;
	text-align: center;
	position: fixed;
	top: 0;
	z-index: 5;
	background: rgba(0,0,0,0.5);
	}
	
	#navi{
	clear:both;
	float:right;
	max-width:50%;
	margin:0 auto;
	padding:0;

	position: fixed;
	right:2px;
	top:3px;
	z-index: 100;
	}
	
	#menu{
	width:55px;
	display:block;
	float:right;
	padding:0;
	height:55px;
	background:url(images/icon_menu.png) no-repeat;
	background-size:200% 100% ;
	}
	
	#navi a#menu span{padding-left:5px;}
	#navi a.menu span:before{content: "";}
	#navi a.menu span:after{content: "";}

	#navi a.menuOpen{
	background:url(images/icon_menu.png) no-repeat -55px 0;
	background-size:200% 100% ;
	}
	#navi a.menuOpen span:before{content: "";}
	#navi a.menuOpen span:after{content: "";}

	#navi a#menu:hover{cursor:pointer;}

	#navi .panel{
	display: none;
	float:none;
	max-width:80%;
	max-height:85%;
	overflow:scroll;
	border:2px #0186D1 solid;

	position: fixed;
	right: 3px;
	top:56px;
	z-index: 10;
	}

	#navi ul>li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	}

	#navi ul li a{
	display: block;
	padding:6px 10px;
	font-size:16px;
	font-weight:bold;
	color:#fff;
	background:#0186D1;
	border-bottom:1px dashed #fff;
	}
			
	#navi .panel>ul>li:first-child a{
	}
	
	#navi .panel>ul>li:last-child a{border:0;}

/*メニュー２階層目*/		
	#navi .panel>ul ul>li a{
	color:#0186D1;
	background:#fff;
	border-bottom:1px dashed #0186D1;
	}

	#navi .panel>ul ul>li a:before{
	content:"－";
	}

/*メニュー３階層目*/		
	#navi .panel>ul ul ul>li a{
	color:#996644;
	}

	#navi .panel>ul ul ul>li a:before{
	content:"　－";
	}

/*メニュー４階層目*/		
	#navi .panel>ul ul ul ul>li a{
	color:#666666;
	}

	#navi .panel>ul ul ul ul>li a:before{
	content:"　　－";
	}

/**** メニューここまで　********/	
	
}
/***** タブレット用ここまで******/


/***** スマホ 横(ランドスケープ) 用*****/
@media only screen and (max-width:640px){

body {
font-size:14px;
}

.pc{
	display:none;
}

.smp{
	display:block;
	display:inline;
}


#header_logo{
clear:both;
float:none;
max-width:100%;
padding:0;
margin:5px 0 0 0;
}

#header_logo img{
max-width:52%;
}

#header_right{
clear:both;
float:none;
max-width:60%;
padding:0;

position:fixed;
right:58px;	/***** ●●通常用**/
top:3px;
z-index:1000;
}

/*** ●●右上メニューボタン無し（dental用）●●**/
div#header_right.no-navi{
right:2px;	
}

/**　見出し　**********/

.h1_bg{
	min-height:40px;
}

h1{	
font-size:20px;
line-height:28px;
padding:16px 10px;
}

}
/***** スマホ 横(ランドスケープ) 用ここまで*****/

/****** スマホ 縦(ポートレート)用 ******/
@media only screen and (max-width:480px){

.smp-v{
	display:block;
	display:inline;
}

/**　グリッド**********/
.grid1,.grid2,.grid3,.grid4,.grid5,.grid6,.grid7,.grid8,.grid9,.grid10,.grid11,.grid12{width:100%; margin:0; padding:0;}

.grid1s{float:left;width:calc(100% *1/12 );}
.grid2s{float:left;width:calc(100% *2/12 );}
.grid3s{float:left;width:calc(100% *3/12 );}
.grid4s{float:left;width:calc(100% *4/12 );}
.grid5s{float:left;width:calc(100% *5/12 );}
.grid6s{float:left;width:calc(100% *6/12 );}
.grid7s{float:left;width:calc(100% *7/12 );}
.grid8s{float:left;width:calc(100% *8/12 );}
.grid9s{float:left;width:calc(100% *9/12 );}
.grid10s{float:left;width:calc(100% *10/12 );}
.grid11s{float:left;width:calc(100% *11/12 );}
.grid12s{float:left;width:calc(100% *12/12 );}


/***********テーブル**********/
table.rp tr{
	display:block;
}

table.rp th{
	width:100%;
	display:list-item;
	list-style:none;
}

table.rp td{
	width:100%;
	display:list-item;
	list-style:none;
}

table.rp .w100{
width:100%;
}

/***********dt ddリスト**********/

dt,dd{
	float:none;
	width:100%;
}

dt:before{
	content:"【";
}

dt:after{
	content:"】";
}

/**　テーブル(WP簡易グリッド用)**********/

table.t-grid-rp tr{
	display:block;
}

table.t-grid-rp td{
	width:100%;
	display:list-item;
	list-style:none;
	padding:5px 5px 25px 5px;
}


/***********イメージ float→スマホ解除**********/
.img_left2,.img_right2 {
	float: none;
	max-width:100%;
}

/**** wordpress対応*****/
.alignleft,.alignright {
	float: none;
	max-width:100%;
  display: block;
  margin: 0 auto 10px auto;
}

/*********その他**********/

.kaigyou:before{
  content: "\A";
  white-space: pre;
}

}
/****** スマホ 縦(ポートレート)用 ここまで******/

