﻿@charset "utf-8";
/* CSS Document */

/*----------------- HTML 5 サポート#492b00 -----------------*/
header, section, footer, aside, nav, article, figure {
	display: block;
}
html, body {
	margin: 0;
	padding: 0;
	font-style: normal;
	vertical-align: baseline;
	background: transparent;
	text-indent: 0;
	font-size: 0.95em; /* size:M */
}
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	font-style: normal;
	text-indent: 0;
	list-style: none;
}
body {
	line-height: 1;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
nav ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
th {
	font-weight: normal;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
/* エレメント */
ul, ol, dl, li {
	padding: 0;
	margin: 0;
}
#contents ol li {
	margin-left: 1.5em;
	list-style: decimal;
	padding-left: normal;
}
/* clearfix -------------*/
.cf {
	zoom: 1;
}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
#contents section:after,
.cf:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.cf,
.float_block {
	overflow: hidden;
}
/*//  End Reset //////////////////////////////////////////////////////////////////////*/
body{
      background: url(../../testserver-image/test-server.png) repeat-x left 400px;
}
@media only screen and (max-width: 906px) {
body{
      background: url(../../testserver-image/test-server.png) repeat-x left bottom;
}
}
/* Flexible Block Style  -----------------*/

#h1,
#top .block,
#title p,
#container,
#promotion-foot > div,
footer ul,
footer nav,
footer > div {
	display: block;
	position: relative;
	width: 85%;
	max-width: 950px;
	margin: 0 auto;
}

#contents {
	width: 65%;
	max-width: 630px;
}

#sidebar {
	width: 35%;
	max-width: 210px;
	height: auto;
}


/*----------------- Outer Block -----------------*/

#outer-wrap {
	background: url(../img/outer-wrap-bg.gif) repeat-x left top;
	background-size: auto 40px;	
}


/*----------------- Wrapper -----------------*/

#wrapper {
	position: relative;
}


/*----------------- Header -----------------*/

/*--- #h1-----------------*/

#h1 {
	position: relative;
	background:url(../img/h1_bg.jpg) no-repeat center top;
	background-size: 100% auto;
}

h1 {
	padding: 8px 0;
	color: #ffffff;
	font-size: 0.7em;
	font-weight: normal;
	line-height: 0.5em;
}

#h1 ul {
	position: absolute;
	right: 0;
	top: 0;
}

#h1 ul li {
	float: left;
	margin-left: 20px;	
	padding: 6px 0;
	line-height: 0.5em;
}

#h1 ul li a {
	color: #ffffff;
	font-size: 0.8em;
}


/*--- #top-----------------*/

#top {
	background: url(../img/top_bg.gif) repeat-x left top;
	background-size: auto 100%; 	
}

#top .logo {
	position: relative;
	margin-top: 40px;
	float: left;
	width: 25%;
	max-width: 236px;
	height: 70px;
}

#top .tel {
	position: relative;
	margin-top: 40px;
	float: right;
	width: 25%;
	max-width: 174px;
	height: 70px;
}


/*--- header-----------------*/

header {

}

.home #keyword {
	display: block;
	position: absolute;
	z-index: 10;
	top: 150px;
	left: 10px;
	width: 620px;
	height: 100px;
}
.home #keyword a {
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	background: url(../img/catch_copy.png) no-repeat;
	background-size: contain;
}

/*----------------- Navigation -----------------*/

header nav {
	width: 100%;
}
header nav ul {
	padding: 0;
}


/*----------------- Container -----------------*/

#container {
	position: relative;
	min-height: 1px;
	padding-top: 30px;
	background: #ffffff;
	overflow: hidden;
	border-radius: 0px 0px 0 0;
}
.home #container {
	padding-top: 30px;
	border-radius: 0 0 0 0;
}
.home #menu_01, .greeting #menu_02, .treat #menu_03, .syoujyou #menu_04, .topics #menu_05, .clinic #menu_06, .faq #menu_07, .access #menu_08 {
	background: rgba(255,255,199,0.2) url(../img/menu_select_marker.png) no-repeat center top;
}


/*----------------- Contents -----------------*/

#contents {
	float: right;
	height: auto;
	background: #FFFFFF;
	line-height: 1.5em;
	color: #232d4c;
}

#contents #title {
	padding-bottom: 1em;
	font-size: 28px;
	color: #1ca8e5;
	font-weight: bold;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	
}

#contents .listAnchor {
	padding-left: 15px;
}
#contents > section {
	margin-bottom: 3em;
	padding-left: 20px;
	overflow: inherit;
}
#contents > section > section {
	margin-bottom: 2.5em;
}

#contents section p {
	margin-bottom: 1em;	
}

#bottom_banner a {
	display: block;
	width: 90%;
	max-width: 640px;
	margin: 0 auto;
}
.up_page {
	position: relative;
	height: 18px;
	color: #ff7c00;
}
.up_page a {
	display: block;
	position: absolute;
	right: 20px;
	width: 130px;
	height: 18px;
	padding-left: 10px;
	background: url(../img/page_top_button.png) no-repeat left;
	color: #ff7c00;
}
#contents .page_name{
	font-size:130%;
	font-weight:bold;
	margin-bottom:20px;
	padding:10px;
	border:3px solid #ff7c00;
	border-radius:10px;
	color:#ff7c00;
	font-family:メイリオ;
	text-shadow: 1px 1px 1px #ccc;
	letter-spacing:0.3em;
	padding-left:20px;
	width:60%;
}

#contents .size50{
	font-size:50%;
}

/*----------------- Sidebar -----------------*/

#sidebar {
	margin-left: 20px !important;
	padding-top: 40px;
	height: auto;
}
#sidebar section {
	margin: 20px 0;
}

#sidebar h2 {
	margin-top: 1em;
	color: #1b2c57;
	border-bottom: 1px solid #1b2c57;	
}
#sidebar li {
	margin: 0;	
	background: url(../img/side_button_bg.png) no-repeat left center;
	border-bottom: 1px dotted #ccc;
}
#sidebar li a{
	display: block;
	padding: 0.8em 0 0.8em 10px;
	font-size: 0.9em;
	color: #0063a4/*#41abe7*/;
}
#sidebar li a:hover {
	background: #eaeaea url(../img/side_button_bg.png) no-repeat left center;
	background-size: auto !important;
}
#sidebar li ul li {
	padding-left: 1.2em;	
}

#sidebar .sb-info li {
	margin-bottom: 20px;
}


/*----------------- Footer Promotion -----------------*/
#promotion-foot {
	min-height: 90px;
	padding: 2em 0;
	background: url(../img/promotion-foot-bg.gif) repeat-x left top;
	background-size: auto 100%;
	border-top: 1px solid #eaeaea;	
}
#promotion-foot > div {
	text-align: center;	
}

/*----------------- Footer -----------------*/

footer {
	clear: both;
	position: relative;
	padding: 0;
	margin: 0;
	width: 100%;
	font-size: 90%;
	background: #0063a4;
}

footer > div,
footer > div > div {
	position: relative;
	overflow: hidden;
}

footer > div {
	padding: 16px 0;
	background: url(../img/footer_bg.png) no-repeat center top;
	background-size: 100% 100%;
}

footer address {
	position: relative;
	float: left;
	width: 30%;
	max-width: 946px;
	font-size: 0.7em;
	color: #cde4f5;
	line-height: 1.3em;
}

footer address a {
	color: #ffffff;	
}

footer .link {
	position: relative;
	float: right;
	width: 35%;	
}
footer .link .text-link {
	float: left;
	width: 45%;
}

footer .link .banner-link {
	float: right;
	width: 45%;
	max-width: 152px;	
}

footer ul li {
	margin-bottom: 0.8em;
	padding-left: 1em;
	font-size: 0.87em;
}

footer li a {
	color: #ffffff !important;	
}



/* H1 - H4 Tag --------------------------*/

h2, h3, h4, h5, h6, p {
	margin-top: 0;
}

#contents h2 {
	margin-bottom: 1em;
	margin-left: -20px;
	padding: 8px 0px 5px 31px;
	background: #0063a4 url(../img/h1_bg.jpg) no-repeat left center;
	background-size: auto 100% !important;
	color: #ffffff;
	letter-spacing: 1px;
	font-size: 1.3em;
	font-weight: bold;
	text-shadow: 1px 1px 2px #000000;
}

/*html>#contents h2 {
	color: #487558\9;
}*/
/*IE8*/

/*#contents h2:not(:target) {
	color: #487558\9;
}*/
/*IE9*/

#contents h3 {
	margin: 30px 0 15px 0;
	border-bottom: 2px solid #cccccc;
	font-weight: bold;
	font-size: 1.2em;
	color: #0063a4;
}


/* Link --------------------------*/

#contents a:link, a:visited {
	color: #41abe7;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	text-decoration: none;
}
a img {
	border: none;
}
header a:hover, .home #linkBa a:hover, a:hover img, a:active img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.auto_img img {
	width: 100%;
	height: auto;
}
.pagetop {
	display: block;
	text-align: right;
	margin-right: 5%;
}
#contents .pagetop a:link {
	padding-left: 1em;
	color: #ff7c00;
	text-decoration: none;
	font-size: 0.9em;
	background: url(../img/page_top_button.png) no-repeat left;
}

.syousai {
	display: block;
}
.syousai a {
	display: inline-block;
	margin: 0 auto;
	padding: 0.8em 2em;
	border: 1px solid #cccccc;
	border-radius:5px;
	color: #ffffff !important;
	background: #0a9bda;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #7295b5), color-stop(0.47, #005081), color-stop(0.70, #147bb6), color-stop(0.94, #00abe5), color-stop(1.00, #02a8e4));
	background: -webkit-linear-gradient(top, #7295b5 0%, #005081 47%, #147bb6 70%, #00abe5 94%, #02a8e4 100%);
	background: -moz-linear-gradient(top, #7295b5 0%, #005081 47%, #147bb6 70%, #00abe5 94%, #02a8e4 100%);
	background: -o-linear-gradient(top, #7295b5 0%, #005081 47%, #147bb6 70%, #00abe5 94%, #02a8e4 100%);
	background: -ms-linear-gradient(top, #7295b5 0%, #005081 47%, #147bb6 70%, #00abe5 94%, #02a8e4 100%);
	background: linear-gradient(to bottom, #7295b5 0%, #005081 47%, #147bb6 70%, #00abe5 94%, #02a8e4 100%);
	text-decoration: none !important;
	text-shadow: 1px 1px 2px #000000;
	font-size: 0.9em;
	text-align: center;
}
.syousai a:hover {
	background: #30b7ef;
}


/*-----------------　文字スタイル　-----------------*/

#bread strong {
	font-weight: normal;
	color: #000 !important;
}
.red {color: #FF0000;}/*赤　文字*/
.blue {color: #3aa5f2;}/*青　文字*/
.purple {color: #639;}
.bold {font-weight: bold;}/*太　文字*/
.ca1 {color: #730524}/* コーポレートえんじ*/
.size-ss {font-size: 75%;}/*75%　文字*/
.size-s {font-size: 80%;}/*80%　文字*/
.size-l {font-size: 120%;}/*120%　文字*/
.size-ll {font-size: 150%;}/*150%　文字*/
.anno-s {
	color: #FF0000;
	font-size: 80%
}
.anno-l {
	color: #FF0000;
	font-size: 120%;
	font-weight: bold;
}
.anno-ll {
	color: #FF0000;
	font-size: 150%;
	font-weight: bold;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.super {
	vertical-align: super;
}


/*-----------------　レイアウト　-----------------*/

.ind1 {
	text-indent: -1em;
	margin-left: 1em;
}
.center {text-align: center;}
.right {text-align: right;}
.posR {float: right;}
.posL {float: left;}
.imgR {
	display: block;
	float: right;
	margin: 0 0 12px 20px;
}
.imgL {
	float: left;
	margin: 0 20px 12px 0;
}
.mar0 {margin: 0 auto;}
.marb30{
	margin-bottom:30px;
}
.float li {
	float: left;
	margin-right: 2em;	
}

/*-----------------　可変ブロック　-----------------*/
.w15 {width: 15%;height: auto;}
.w20 {width: 20%;height: auto;}
.w25 {width: 25%;height: auto;}
.w30 {width: 30%;height: auto;}
.w35 {width: 35%;height: auto;}
.w40 {width: 40%;height: auto;}
.w45 {width: 45%;height: auto;}
.w50 {width: 50%;height: auto;}
.w60 {width: 60%;height: auto;}
.w70 {width: 70%;height: auto;}
.w80 {width: 80%;height: auto;}
.w90 {width: 80%;height: auto;}

.w250 { max-width: 250px;}
.w300 { max-width: 300px;}	
.w480 img{
	max-width:480px;
	height:auto;
}
.w660 img{
	max-width:660px;
	height:auto;
}
.w950 img{
	max-width:950px;
	height:auto;
}
/*-----------------　ボックススタイル　-----------------*/

.box-a {
	margin-bottom: 1em;
	padding: 1.5em;
	padding-bottom: 0.5em;
	border: 3px double #87c2fb;
	border-radius: 6px;
	background: #dbf7fc;
}
.quote {
	display: block;
	font-size: 0.8em;
}
.half {
	float: left;
	width: 45%;
	margin-left: 2%;
}
.trisection {
	float: left;
	width: 30%;
	margin-right: 2%;
}
.block01 dt, .block01 h3 {
	margin-bottom: 0.2em;
	font-weight: bold;
	color: #5bb97d;
}
.block01 dd {
	margin-bottom: 2em;
}

.mb20 {
	margin-bottom: 20px;	
}


/*-----------------　imgスタイル　-----------------*/

.auto_img img,
section img {
	width: 100%;
	height: auto;
}

.pagetop img,
.re_auto img {
	width: auto;
	height: auto;
}


/*-----------------　ul ol dlスタイル　-----------------*/

#contents ul, #contents ol, #contents dl {
	margin-bottom: 0em;
}
#contents li {
	margin-bottom: 0em;
}
.square li {
	margin-left: 1em;
	list-style-type: square;
}
#contents .dl-table dt, #contents .dl-table dd {
}
#contents .dl-table dd {
	margin-top: -1.6em;
	margin-bottom: 0.5em;
	padding-left: 6em;
	border-bottom: 1px dotted #636363;
}
#contents .pl6 dd {
	padding-left: 6em;
}
.list li {
	padding-left: 16px;
	background: url(../img/arrow03.gif) no-repeat left center;
	border-bottom: 1px dashed #cccccc;
}


/*-----------------　tableスタイル　-----------------*/

#contents table {
	width: 95%;
	margin-bottom: 3em;
	border: 1px solid #ccccccc;
}

#contents table  th,
#contents table  td {
	padding: 4px 7px;
	border-bottom: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
	font-size: 0.9em;
}
#contents table th {
	background: #e6e6e6;
	border-left: 1px solid #cccccc;
	white-space:nowrap;
}
#contents table tr:first-child {
	border-top: 1px solid #cccccc;
}

.table_t01 {

}
.table_t01 th,
.table_t01 td {

}

.table_t01 th {

}
.td_align01 .table_t01 td:nth-child(even) {
	text-align: right;
}

/*----------------------------------------------------------------------------------*/
/*----------------- パンクズリスト -----------------*/

#bread span {
	display: inline-block;
	margin: 0 0.6em;
}
#bread a {
	text-decoration: underline;
	color: #0066cc;
}
.home #bread {
	text-indent: -9999px;
}

/*-----------------　文字サイズ変更ボタン　-----------------*/
	
#textresizer {
	display: none;
}

/*-----------------　診療時間表　-----------------*/

#time_table1 {
	margin: 0 auto;
	text-align: center;
	line-height: 1em;
}
#time_table1 th {
	border: 1px solid #bebebe;
	padding: 10px 5px;
	text-align: center;
	vertical-align: middle;
	background-color: #ff7f00;
	color: #fff;
	font-size: 90%;
	font-weight: bold;
}
#time_table1 td {
	width: 40px;
	border: 1px solid #bebebe;
	color: #492b00;
	vertical-align: middle;
	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
	font-size: 100%;
	font-weight: bold;
}
#time_table1 th span {
	margin-left: 6px;
}
#time_table1 td span {
	display: block;
}
#time_table1 .nowrap {
	white-space: nowrap;
}

/*----------------- パンクズリスト -----------------*/

#bread {
	position: relative;
	height: 40px;
	padding: 0 0 0 20px;
	font-size: 0.85em;
	color: #999;
}
#bread a {
	text-decoration: underline;
	color: #0066cc;
}
.home #bread {
	text-indent: -9999px;
}


/* トップ
//////////////////////////////////////////////////////////////////*/

/* バナーリンク　*/
.home #contents #lower_01 h2 {
	position: absolute;
	background: none;
	border: none;
	text-indent: -9999px;
}
.home #contents > section#lower_01 > div{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.home #contents > section#lower_01 > div > section{
	flex: 0 0 23%;
}
.home #contents #lower_01 h3 {
	padding: 0;
	background: none;
	border: none;
}
.home #contents #lower_01 h3 img {
	max-width: 278px;
}
.home #contents > section#lower_01{
	margin-bottom: 0px;
}

@media only screen and (max-width: 906px) {
	.home #contents #lower_01 h3 img {
		display: block;
		width: 100%;
		max-width: 278px;
		margin-left: auto;
		margin-right: auto;
		border: 3px solid #0d9bd9;
	}
	.home #contents > section#lower_01 > div > section{
	flex: 0 0 48%;
	}
}
@media only screen and (max-width: 480px) {
	.home #contents > section#lower_01 > div{
	display: block;
	}
}
.home #linkBa {
	margin-bottom: 2em;
	padding-left: 0;
}
.home #linkBa li {
	float: left;
	display: block;
	width: 48%;
	margin-bottom: 0.2em;
	text-indent: -9999px;
}
.home #linkBa li:nth-child(even) {
	float: right;
}
.home #linkBa li a {
	display: block;
	width: 100%;
	height: 70px;
}
.home #linkBa #razer a {
	background: url(../img/top_banner_01.png) no-repeat center top;
	background-size: 100% auto;
}
.home #linkBa #nbi a {
	background: url(../img/top_banner_02.png) no-repeat center top;
	background-size: 100% auto;
}

/* 臨時のお知らせ*/
#topics .anno {
	margin-bottom: 40px;
	border: 1px solid #0d9bd9;
	padding: 0em 3em;
	text-align: center; 	
}
#topics .anno h2 {
	background: none;
/*	color: #0d9bd9;
*/	color:red;
text-shadow: none;
}

/* お知らせ　*/
.home #topics {
	text-align: left !important;
}

.home #topics h2 {
	padding-left: 1em;
}

.home #topics div {
	height: 200px;
	overflow: auto;
}
.home #topics dl {
	margin-bottom: 0 !important;
	border-bottom: 1px dotted #bebebe;
}
.home #topics dd {
	padding-bottom: 0.7em;
}

/* 実績　
//////////////////////////////////////////////////////////////////*/

.jisseki #contents li {
	margin-bottom: 0.7em;
	padding-left: 16px;
	background: url(../img/icon_03.gif) no-repeat left 4px;
	line-height: 1.2em;
	font-size: 0.9em;	
}

.jisseki #contents li a {
	text-decoration: none !important;	
}

.jisseki #contents li a:hover {
	text-decoration: underline !important;	
}

/* 会社案内
//////////////////////////////////////////////////////////////////*/
.company #lower_02 dt{
	font-weight: bold;
	margin-top: 1em;
	margin-bottom: 0.3em;
	padding-left: 5px;
	color: #0063a4;
	border-left: 3px solid #0063a4;
}

/* 採用情報　
//////////////////////////////////////////////////////////////////*/

.re-messa #contents h2 {
	background: none !important;
	padding: 0 !important;	
}



/* 地図・アクセス
//////////////////////////////////////////////////////////////////*/


.access #lower_01 .intro {
	margin-bottom: 20px;
}
.access #lower_01 p.imgL {
	width: 60%;
	margin: 0;
}
.access #contents section {
	margin-bottom: 20px;
}
.access #lower_01 dl {
	float: right;
	width: 35%;
	line-height: 1.2em;
	border-left: 3px solid #73bb3c;
}
.access #lower_01 dt {
	margin-bottom: 10px;
	padding-left: 5px;
	font-weight: bold;
	color: #73bb3c;
}
.access #lower_01 dd {
	margin-bottom: 10px;
	margin-left: 1em;
}
.access #lower_01 dd em {
	display: block;
	font-weight: bold;
}
.access #lower_01 dd.tel a {
	display: block;
	margin-bottom: 0.5em;
	font-size: 1.8em;
	font-weight: bold;
}
.access #lower_01 div.imgR p {
	margin-top: 1em;
	padding: 0.7em;
	border: 2px dotted #ccc;
}
.access #map, .access #map_mini {
	text-align: center;
}
.access #map img {
	width: 100%;
	height: auto;
	max-width: 458px;
}
.access #map_mini img {
	width: 100%;
	height: auto;
	max-width: 281px;
}
.access #lower_02 ul {
	margin-bottom: 1em;
}
.access #lower_02 li:before {
	content: "★ ";
	color: #73bb3c;
}

/*サイトマップ*/
.sitemap #contents section {
	padding: 0 !important;
}
.sitemap #contents ul.group {
	float: left;
	width: 31%;
	margin-right: 1.5%;
	background: #f9f7ea;
}
.sitemap #contents li:before {
	content: "●";
	color: #73bb3c;
}
.sitemap #contents .sub li {
	margin: 0;
	margin-top: 0.8em;
	padding-left: 1em;
	line-height: 1.15em;
	background: url(../access/img/menu_li_marker_02.png) no-repeat left center;
}
.sitemap #contents .sub li.end {
	background: url(../access/img/menu_li_marker_03.png) no-repeat left center;
}
.sitemap #contents .sub li:before {
	content: "";
}
.sitemap #contents .sub {
	margin-left: 0.7em;
}
.sitemap #contents li a {
	text-decoration: none;
	font-size: 0.9em;
}
	
/* 問い合わせフォーム
//////////////////////////////////////////////////////////////////*/

#mailform dt {
	padding: 0.2em 0.3em;
	background: #e8e8e8;
	line-height: 1em;		
}

#mailform dd {
	padding: 0.2em 0.3em;
	background: #e8e8e8;
	margin-bottom: 1em;		
}

#mailform span {
	color: red;
	font-weight: bold;
}

#mailform dt p {
	margin-bottom: 0;
	font-size: 0.7em;
	color: #666;
}

#mailform .input-s {width: 30% !important;}
#mailform .input-m {width: 50% !important;}
#mailform .input-l {width: 95% !important;}

#mailform .error {
	background: #e2eaff;
}
#mailform p.error {
	color: red;
	font-size: 0.9em;
	
}
.button button {
	border: none !important;
	background: none;
	cursor:pointer;	
}

/* 会計　////////////////////////////////////////////*/

.kaikei .comtab th{
	padding: 10px 10px !important;
	background: #ffffff !important;
}
.kaikei .comtab td{
	vertical-align:top;
}

.kaikei .comtab td em{
	font-weight: bold;
	font-size: 1.15em;
	color: #0063a4;
}

/* GA4　
//////////////////////////////////////////////////////////////////*/
#ga4 h2 {
   margin: 20px 0;
   font-size: 2em;
   line-height: 1.3;
}
#ga4 h3 {
   margin: 60px 0 0;
   padding: 12px 16px 10px;
   font-size: 1.6em;
   line-height: 1.3;
   border-left: 5px solid #41abe7;
   background-color: #e6f5f7;
}
#ga4 p {
   font-size: 1.2em;
   line-height: 2;
   margin: 20px 0;
}
#ga4 p.size-l {font-size: 1.4em;}
#ga4 strong {
   font-weight: 700;
   color: #41abe7;
}
#ga4 ol {
   margin: 20px 0 0 1em;
}
#ga4 ol li {
   margin-left: 1.5em;
   margin-bottom: 20px;
   list-style: decimal !important;
   font-size: 1.2em;
}
#ga4 ol li ul {
   margin-top: 10px;
   background: #e6f5f7;
   padding: 10px 10px 5px;
   width:fit-content;
}
#ga4 ol li ul li {
   font-size: 1em;
   margin-bottom: 5px;
   list-style-type: disc !important;
}

/* 展示会　////////////////////////////////////////////*/
.press #sidebar {
		float: none;
		display: none;
	}
	
.press #contents {
		float: none;
		width: auto;	
		max-width: auto;
		margin-right: 0;
	}
.press #contents {
	width: 100%;
	max-width: 950px;
}
/*メディカルジャパン*/
.medicalJpn #sidebar {
		float: none;
		display: none;
	}
	
.medicalJpn #contents {
		float: none;
		width: auto;	
		max-width: auto;
		margin-right: 0;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	}
.medicalJpn #contents {
	width: 100%;
	max-width: 950px;
}
.medicalJpn #contents h2 {
	margin-bottom: 1em;
	background: none;
	color: #000 !important;
	text-shadow: none !important;
	letter-spacing: 1px;
	font-size: 1.6em;
	line-height: 1.5;
	font-weight: bold;
}
.medicalJpn #contents h3 {
	font-size: 1.6em;
	padding-bottom: 10px;
	margin-bottom: 1em;
}
.medicalJpn #contents h4 {
	font-size: 1.5em;
	margin-bottom: 0.8em;
	line-height: 1.5;
}
.medicalJpn #contents h5 {
	font-size: 1.2em;
}
.medicalJpn #contents p {
	line-height: 1.7;
}
.medicalJpn #contents figure.medicalJapan_top{
	margin-bottom: 30px;	
}
.medicalJpn dl.exhibition_detail{
	font-size: 1.1em;
}
.medicalJpn dl.exhibition_detail dt{
	font-weight: bold;
}
.medicalJpn dl.exhibition_detail dd{
	margin-top: -1.5em;
	padding-left: 10em;
	margin-bottom: 1em;
}
#merchandise > section{
	margin-bottom: 40px;
}
#merchandise figure{
	margin-bottom: 20px;
}
.machine_image{
	display: flex;
	justify-content: space-between;

}
.machine_image li {
	flex: 0 0 49%;
	margin-bottom: 15px !important;
}
.machine_image li img{
	max-width: 475px;
}
@media only screen and (max-width: 479px) {
	.medicalJpn #contents h2 {
		font-size: 1.5em;
	}
	.medicalJpn #contents h3 {
		font-size: 1.4em;
	}
	.medicalJpn dl.exhibition_detail dt{
		margin-bottom: 0.5em;
}
 .medicalJpn dl.exhibition_detail dd{
	margin-top: 0;
	padding-left:0;
	 margin-bottom: 1.5em;
}
	.machine_image{
	display: block;
	}
}
/*############################################################################################*/
/* スマホ向け指定：～479px */

/*@media only screen and (max-width: 479px) {*/
@media only screen and (max-width: 906px) {
	
	html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
		font-size: 99%;
	}
	
	.rwd_marker,
	.hidden-phone,
	.disp-tablet,
	.disp-pc {
		display: none;
	}
	
	/* Flexible Block Style  -----------------*/
	
	#title p,
	#container,
	#promotion-foot > div,
	footer ul,
	footer nav,
	footer > div {
		display: block;
		position: relative;
		width: 85%;
		max-width: autox;
		margin: 0 auto;
	}
	
	#h1,
	#top .block{
		width: 100%;	
	}
	
	#sidebar {
		float: none;
		display: none;
	}
	
	#contents {
		float: none;
		width: auto;	
		max-width: auto;
	}
	
	#contents > section,
	.home #contents #topics  {
		margin-bottom: 3em;
		padding: 0 4% !important;
	}
	
	#contents section h2  {
		margin-right: -4%;
		padding: 0.8em 3% 0.8em 4.5%;
	}
	
	#h1 {
		position: absolute;
		background: none;
	}
	
	h1 {
		text-indent: -9999px;
	}

	#title p, footer ul, footer nav, footer div {
		width: 94%;
		margin: 0 auto;
	}
	
	.half,
	.trisection {
		float: none;
		width: 100%;
		margin-right: 0;
	}
	
	#top {
		height: 68px;
	}
	
	.home #top {
		height: 202px;
		background:url(../img/home_header_bg_top.jpg) no-repeat center top;
		background-size: 100% auto;
	}
	
	#top .logo {
		margin-top: 0px;
		float: none;
		position: absolute;
		top: 16px;
		right: 12px;
		width: 65%;
		max-width: auto;
		height: auto;
	}
	.home #top .logo {
		display: none;	
	}
	.home #keyword {
		top: 100px;
		left: 15px;
		width: 95%;
		max-width: auto;
		height: 180px;
	}
	header nav li {
		float: none;
		width: 100%;
		margin-bottom: 0;
	}
	
	header nav li:nth-child(1) {
		display: none;
	}
	
	header nav li a {
		height: auto;
		padding: 0.6em 0;
		text-indent: 0;
		text-align: left;
		color: #ffffff;
		font-size: 0.9em;
	}
	#container {
		border: none;
	}
	.home #container {
		padding-top: 20px;
	}
	
	#contents #title {
		padding-left: 15px;
		font-size: 1.5em;
		color: #1ca8e5;
	}
	#contents h2 {
		padding: 8px 0 4px 2.2em;
		background-size: auto 75%;
		font-size: 1.2em;
	}
	.home #cotents #lower_01 h2 {
		padding: 0;
	}
	.reserve #contents h2 {
		background-size: auto 60%;
	}
	#contents section {
		margin-left: 0;
		margin-right: 0;
	}
	#contents table {
		width: 100%;	
	}
	
	footer .link {
		display: none;
	}
	footer address {
		float: none;
		width: 100%;
	}
	
#contents .syousai a {
	padding: 0.8em 1em;
	color: #ffffff;
	font-size: 0.9em;
}
	
	
	
	.home #news dt {
		padding-left: 0;
	}
	.home #news dd {
		padding: 0;
		margin-top: 0;
	}
	.home #contents .list div > div > section {
		width: auto;
		float: none;
	}
	.home #contents .list div > div > section:nth-child(even) {
		float: none;
	}
	.about #lower_01 section h3, .about #lower_01 section p {
		float: none;
		width: 100%;
		padding: 0;
	}
	#topics02 #lower_01 #index {
		width: 95%;
	}
	
	.sitemap #contents ul.group {
		float: none;
		width: auto;
		margin-right: 0;
		padding: 1em 0 0.5em 0;
		background: #f9f7ea;
	}
	.sitemap #contents li a {
		font-size: 1em;
	}
	/* メールフォーム
	//////////////////////////////////////////////////////////////////*/

	#mailform .input-s {width: 50% !important;}
	#mailform .input-m {width: 95% !important;}
	#mailform .input-l {width: 95% !important;}
	.recruit_button{
		margin:0 auto;
		text-align:center;
	}

}


/*############################################################################################*/
/* タブレット向け指定：480px～768px */

@media only screen and (min-width: 480px) and (max-width: 906px) {
/*@media only screen and (max-width: 10px) {*/

.rwd_marker,
.hidden-tablet,
.disp-phone,
.disp-pc {
	display: none;
}
/*	h1 span,
	header > div,
	#title p,
	#container,
	footer ul,
	footer nav,
	footer div {
		display: block;
		position: relative;
		width: 90%;
		margin: 0 auto;
	}
*/

	#sidebar {
		float: none;
		display: none;
	}
	
	#contents {
		float: none;
		width: auto;	
		max-width: auto;
		margin-right: 0;
	}
.home #contents {
	float: none;
	width: 100%;
	max-width: none;
}

.home #top {
	height: 250px;
	background-position: center bottom;
	background-size: cover;
}
.home #linkBa {
	margin-left: 20px;
}
#top #logo {
	top: 0;
	margin-left: 2%;
}
#top address, #top #sitemap {
	margin-right: 2%;
}
.home #keyword {
	top: 150px;
	left: 30px;
	width: 60%;
	max-width: 620px;
	height: 100px;
}
header nav, header nav ul {
	height: 88px;
}
header nav li {
	width: 100%;
	margin-bottom: 0;
	background: url(../img/li_bg.png) no-repeat right bottom;
	background-size: 100% 100%;
}
#contents h2 {
	margin-left: -6%;
	margin-right: -6%;
	padding: 13px 0 7px 2.2em;
}


.about #lower_01 section h3 {
	width: 30%;
	max-width: 166px;
	min-width: 100px;
}
.about #lower_01 section h3 img {
	width: 100%;
	height: auto;
}

}



/*############################################################################################*/
/* PC向け：907px～ */

@media only screen and (min-width: 907px) {
	
	.disp-phone,
	.disp-tablet,
	.hidden-desktop {
		display: none;
	}
	
	#rwd_marker {
		position: absolute;
		right: 2px;
		top: 3px;
		opacity:0.5;
		filter:alpha(opacity=50);
		-ms-filter: "alpha( opacity=50 )";
	}

	/* Flexible Block Style  -----------------*/
	
	#h1,
	#top .block,
	#title p,
	#container,
	#promotion-foot > div,
	footer ul,
	footer nav,
	footer > div {
		display: block;
		position: relative;
		width: 85%;
		max-width: 950px;
		margin: 0 auto;
	}

	header {
   position: absolute;
   z-index: 2;
   top: 45px;
   left: 64px;
   right: 0;
   width: 38%;
   max-width: 460px;
   margin: 0 auto;
	}
	
	header nav {
		width: 100%;
	}
	
	header nav > ul > li {
		float: left;
		padding: 0;
		width: 33.3%;
	}
	
	header nav > ul > li p {
		height: 30px;
		font-size: 12px;
		text-align: center;
		cursor :pointer;
	}
	
	header nav:after {
		content: ".";
		display: block;
		clear: both;
		height: 0;
		visibility: hidden;
	}
	
	header nav li a {
		display: block;
		margin: 0;
		padding: 0;
		width: 100%;
		height: 50px;
	}
	
	#menu_01 a {background: url(../img/nav_01.png) no-repeat center center;}
	#menu_02 a {background: url(../img/nav_02.png) no-repeat center center;}
	#menu_03 a {background: url(../img/nav_03.png) no-repeat center center;}
	#menu_04 a {background: url(../img/nav_04.png) no-repeat center center;}
	.home #menu_01,
	.services #menu_02,
	.company #menu_03,
	.recruit #menu_04 {
		background: rgba(255,255,199,0.2) url(../img/menu_select_marker.png) no-repeat center top;
	}
	
	header .sub_menu li {
		box-shadow: 1px 2px 10px #999999;	
		background: #eaeaea;
	}
	
	header .sub_menu li a {
		height: auto;
		padding: 0.7em 0 0.7em 0.8em;
		font-size: 12px;	
	}
		
	#nav-open-btn,
	#nav-close-btn {
		display: none\9 !important /* IE8以下 */;
	}
	.disp-phone {
		display: none\9 !important /* IE8以下 */;
		background: none\9 !important /* IE8以下 */;
	}
	
	#container {position: relative;}
	
	#sidebar {margin-bottom: 30px !important;}
	
	.home #sidebar {
		float: none;
		position: absolute;
	}
	
	
	.home #contents {
		float: none;
		width: 100%;
		max-width: none;
	}
	
	/* top --------------------------------*/
   .home #topics #koushin {float: right;}
	/*.home #topics section:nth-child(even) {float: right;}*/
	.recruit_button{
		position:absolute;
		/*top:0;*/
		top: 435px;
		left:0;
	}

}



/*############################################################################################33*/
/* 印刷向けレイアウトの指定 */

@media only print {
	html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
		font-size: 97%;
	}
	header,
	footer ul,
	#nav-close-btn,
	#nav-open-btn,
	#rwd_marker {
			display: none;
	}
		.disp-phone,
	.disp-tablet,
	.hidden-desktop {
		display: none;
	}

	#bread {
		font-size: 10px;
		margin: 15px 0;
	}
	h1 span,
	header > div, 
	#title p,
	#container,
	footer ul,
	footer nav,
	footer > div {
		width: 950px;
	}

	#container {
		overflow: hidden;
	}

	#contents {
		position: relative;
		float:right;
		width: 630px;
		margin: 0;
	}
	.home #contents {
		float: none;
		width: 950px;
		max-width: none;	
	}
	
	#contents_head {
		position: relative;
		height:inherit;	
	}
	
	#contents_head #title {
		height: auto;
		font-size: 18px;
		color: #1ca8e5;
		padding: 2em 0;
		font-weight: bold;
		letter-spacing: 1px;
		
	}
	.home #contents_head #title {
		height: auto;
		padding: 0em;
		
	}

}
