@charset "utf-8";

/* 共有 [SP]
---------------------------------------------------------*/

.txt-center{
	text-align:center;
}

.txt-right{
	text-align:right;
}

.red-font{
	color:#ff0000;
}

.bold-font{
	font-weight: bold;
}

.cl{
	clear: both;

}

.pdl30{
	padding-left:30px;
}

/* 余白調整  */

.mgB20{
	margin-bottom:20px;
}

.mgB50{
	margin-bottom:50px;
}

.mgT20{
	margin-top:20px;
}

.privacy-indent{
	padding-left:30px;
	margin-top:-20px;
}


/* 写真横の文章 横周り SP */

.imgl-layout{
	text-align:center;
}

.imgl-n{
	margin:0 0 10px 0;
	width:auto;
	float:none;
	text-align:center;
	box-sizing:border-box;
}

.imgl-a{
	padding:0 30px 10px 0;
	width:auto;
	height:auto;
	max-width:100%;
}

.w50{
	width:100%;
}


/* 3枚並んだ写真のスタイルシート SP */

ul.images3-ph{
	margin:0;
	padding:0;
}

ul.images3-ph li{
	margin:0;
	padding:0 0 30px 0;
	text-align:center;
	float:none;
}

/* トップP [SP]
---------------------------------------------------------*/

.staffBox{
	width:auto;
	margin:0 auto;
	overflow:hidden;
}

.staffBox p{
	text-align:left;
}

.sp {
	display:block;
}

/* Item */

	.item2 {
		margin-bottom: 20px;
		/*padding:0;
		width:auto;
		float:none;*/
	}

		.item2 header {
			background-color: #FFFFFF;
			margin: 0;
			padding: 1em;
			font-size: 0.8em;
		}

			.item2 header h3 {
				font-size: 1.1em;
			}		
			

/* お知らせ　*/

.news_title{
	display:block;
	color: #015d1a;
	border-bottom: 1px solid #015d1a;
	padding: 0 0 5px 10px;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: Bold;
	text-align: left;
}

.news-box{
	width:100%;
	height:250px;
	overflow-y:scroll;
	float:left;
	font-size: 14px;
}

.news-box a{
	text-decoration:none;
}

#news dl{
	overflow: hidden;
	/*padding:5px 0;*/
}

#news dl dt{
	float: left;
	width: 25%; 
}

#news dl dd{
	float: left;
	width: 75%; 
	text-align: left;
	padding-left: 15px;
    margin-bottom: 20px;
}

span.n_ttl{
    font-weight: bold;
}

/* キャッチコピー　*/

p.headline_top{
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
	font-size: 24px;
	color: #015d1a;
	font-weight: bold;
	text-align: left;
	/*letter-spacing: 0.1rem;
	margin-bottom: 1em;*/
}

.genom{
    background-color: #fff;
    border: dotted 1px #9ccf8d;
    margin:0px 10px;
    padding: 15px;
	color: #015d1a;
    /*font-weight:bold;
	text-align:left;*/
}

/* 下層P [SP]
---------------------------------------------------------*/

/* Intro 内のタイトル　*/

h2.alt2 {
	color:#000;
	margin-top:50px;
	font-size:36px;
	background-color:rgba(255, 255, 255, 0.5);
	text-shadow: 2px 2px 2px #fff;
}

h2.alt2_contact {
	color:#000;
	margin-top:50px;
	font-size:24px;
	background-color:rgba(255, 255, 255, 0.5);
	text-shadow: 2px 2px 2px #fff;
}

/* ぱんくず　*/

#breadcrumb{
	display:none;
}


/* ぱんくずを入れた為の調整用　*/

#portfolio{
	padding-top:30px;
}

/* ページ内リンクボタン　*/

.btn1,
.btn2{
	text-decoration: underline;
	text-align: left;
}

/* キャッチコピー　*/
p.headline{
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
	font-size: 20px;
	color: #015d1a;
	font-weight: bold;
}

/* リスト　*/
.list{
	list-style:none;
	font-size:14px;
	margin-left:15px;
}

/* 右コンテンツ内の仕分け用　*/

.boxTxt{
	overflow:hidden;
	display:block;
	padding-bottom:30px;
}

.boxTxt h4.noto{
	display: block;
	border-left: 5px solid #015d1a;
	border-bottom: 1px dotted #015d1a;
	padding: 0 0 5px 10px;
	margin-bottom: 20px;
	text-align: left;
	color: #333;
}

.boxTxt h4.noto2{
	display: block;
	font-size:16px;
	text-align: center;
}

.boxTxt h5.noto{
	display: block;
	font-size:15px;
	font-weight: bold;
	margin-bottom: 5px;
	text-align: left;
	color: #333;
}

.subtitle{
	font-size:18px;
	margin-top:-15px;
}

.end{
	text-decoration: line-through;
}

/* 右コンテンツ内写真レイアウト　*/

.boxPh{
	width:auto;
	float:none;
	padding:0;
}

.boxPh_mini{
	width:auto;
	float:none;
	padding:0;
}

.one-pic{
	text-align:center;
}

.zoom{
	text-decoration: none;
	text-align:center;
	font-size:12px;
}

/* Googlemap  */

/*.ggmap {
	margin:20px 0;
	position: relative;
	padding-bottom: 56.25%; /* 56.25 */
	/*padding-top: 30px;
	height: 0;
	overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:100%;
}*/

/* 表（table）　*/

.tb-box table{
	width:100%;
	/*border:1px solid #EFEFEF;*/
	font-size: 14px;
	background-color:#FFFFFF;
}

.tb-box table th{
	text-align:center;
	border:1px solid #cdcdcd;
	background-color:#9ccf8d;
	padding:10px;
}

.tb-box table tr td{
	border:1px solid #cdcdcd;
	vertical-align:middle;
	padding:10px;
	width:25%;
}

.tb-box tr td:nth-child(1),tr:nth-child(1) td:nth-child(3){
	text-align:center;
	background-color:#e3f6e3;
}

.title{
	text-align:center;
	background-color:#e3f6e3;
}

.tb-box2 table{
	width:100%;
	font-size: 14px;
	background-color:#FFFFFF;
}

.tb-box2 tr td{
	border:1px solid #cdcdcd;
	vertical-align:middle;
	padding:10px;
}

.tb-box2 tr td p{
	font-size: 14px;
}

.tb-box2 tr td:nth-child(even){
	width:70%;
}

.tb-box2 tr td:nth-child(odd){
	width:30%;
	text-align:center;
	background-color:#e3f6e3;
}

.tb-box3 table{
	width:100%;
	font-size: 14px;
	background-color:#FFFFFF;
}

.tb-box3 tr td{
	border:1px solid #cdcdcd;
	vertical-align:middle;
	padding:10px;
}

.tb-box3 tr td:nth-child(even){
	width:25%;
}

.tb-box3 tr td:nth-child(odd){
	width:25%;
	text-align:center;
	background-color:#e3f6e3;
}

/* 20200225追加：左側の方が長いテーブル */
.tb-box4 table{
	width:100%;
	font-size: 14px;
	background-color:#FFFFFF;
}

.tb-box4 tr td,.tb-box4 tr th{
	border:1px solid #cdcdcd;
	vertical-align:middle;
	padding:10px;
}

.tb-box4 tr th{
	width:70%;
	background-color:#e3f6e3;
}

.tb-box4 tr td{
	width:30%;
	text-align:center;
}

.tb-box4 thead th{
	background-color:#9ccf8d;
}

/* 20210617追加：テーブル */
.tb-box5 table{
	width:100%;
	font-size: 14px;
	background-color:#FFFFFF;
}

.tb-box5 tr td,.tb-box5 tr th{
	border:1px solid #cdcdcd;
	vertical-align:middle;
	padding:10px;
}

.tb-box5 tr th{
	width:20%;
	background-color:#e3f6e3;
	white-space:nowrap;
}

.tb-box5 tr td{
	width:20%;
	text-align:center;
}

.tb-box5 thead th{
	background-color:#9ccf8d;
}

/* 20220317追加：テーブル */
.tb-box6 table{
	width: 100%;
	font-size: 14px;
	background-color: #FFF;
}

.tb-box6 tr th, .tb-box6 tr td{
	border: 1px solid #cdcdcd;
	vertical-align: middle;
	padding: 10px;
}

.tb-box6 tr th{
	background-color: #e3f6e3;
	white-space: nowrap;
	text-align:center;
}


.pc-table{
	display:none;
}

.sp-table{
	display:block;
}


/* お問い合わせ SP */

#formBox{
	width:auto;
	overflow:hidden;
	margin:0;
	font-size: 0.9em;
}
.contact_noto{
	font-size: 1em;
	font-weight: Bold;
}
#formBox span{
	color:#ff0000;
}
.formLine{
	/*border:1px solid #e8e7e7;*/
}
 
/* 20210203 mizuta add ----------------- */
/* リストタグ共通 */
#formBox ul.formList{
	margin:0 auto;
	padding:0;
	width:100%;
	list-style:none;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch; 
}
/* 性別 */
#formBox ul.formList li.genderList{
	margin:0;
	padding:10px;
	box-sizing: border-box;
	width:25%;
}
/* 年齢 */
#formBox ul.formList li.ageList{
	margin:0;
	padding:10px;
	box-sizing: border-box;
	width:20%;
}
/* アンケート */
#formBox ul.formList li.anqList{
	margin:0;
	padding:5px;
	box-sizing: border-box;
	width:100%;
}
@media screen and (max-width:735px) {
	#formBox ul.formList li.ageList{
		width:50%;
	}
	#formBox ul.formList li.genderList{
		width:50%;
	}
}
#formBox input.txt_readonly{
	pointer-events : none;
	background-color: #f5f5f5;
	display: inline-block;
}

/* 20210203 mizuta end ----------------- */


#formBox dl,#formBox dt,#formBox dd{
	margin:0;
	padding:0;
	overflow:hidden;
}

#formBox dl{
	padding:0 0 20px 0;
	background-color:#fff;
}

#formBox dl dt,
#formBox dl dd{
	text-align:center;
	padding:10px;
	width:auto;
	float:none;
}

/*#formBox dl:nth-child(odd){
	background-color:#fbfbfb;
}

#formBox dl:nth-child(even){
	background-color:#f7f7f7
}
*/
#formBox ol{
	margin:0 auto;
	padding:0;
	width:90%;
	list-style:none;
	overflow:hidden;
}

#formBox ol li{
	margin:0;
	padding:0 0 5px 40px;
	width:35%;
	float:left;
	text-align:center;
	display:block;
}

#formBox ol li:nth-child(odd){
	clear:both;
}

#formBox input{
	display:inline;
	color: #000;
}

#formBox .fbox{
	border:1px solid #ccc;
	padding:5px;
}

#formBox .w15{
	width:30%;
}

#formBox .w30{
	width:30%;
}

#formBox .w50{
	width:50%;
}

#formBox .w90{
	width:90%;
}

@media screen and (max-width:735px) {
	#formBox .w50{
		width:100%;
	}
	#formBox .w90{
		width:100%;
	}
	
}

#formBox .ftextarea{
	width:90%;
	height:100px;
	border:1px solid #ccc;
	padding:5px;
	display:inline;
}

.submit{
	padding-top:30px;
	text-align:center;
}

input[type="button"],
input[type="submit"],
input[type="reset"],
button,
.button {
	text-decoration: none;
	text-align: center;
	padding: 5px 15px;
	color: #fff;
	background-color: #12964b;
   	border: solid 2px #12964b;
	cursor: pointer;
	margin-right:15px;
	/*float:left;*/
}

input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:hover,
.button:hover  {
	background-color: #9ccf8d;
}

.fTxt{
	margin:0;
	padding:40px 0;
}

 input number スピンボタン非表示 chrome */

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* input number スピンボタン非表示 firefox */

input.num_a[type="number"] {
    -moz-appearance: textfield;
}

/*　入力後の確認ページのCSS  SP用*/

.formTable{
	width:100%;
	margin:30px 0;
	background-color:#fff;
	border:1px dotted #ccc;
	font-size: 0.9em;
}

.formTable th{
	width:30%;
	padding:10px;
	text-align:left;
	color:#666;
	border:1px dotted #ccc;
}

.formTable td{
	width:70%;
	padding:10px;
	border:1px dotted #ccc;
}


@media screen and (min-width:736px) {
	

/* 写真横の文章 横周り PC */

.imgl-layout{
	text-align:left;
}

.imgl-n{
	padding:0 30px 10px 0;
	width:30%;
	float:left;
}

.featured2-nor{
	padding: 0 2em 2em 0;
	float:left;
}

#formBox .w15{
	width:15%;
}
	
.w50{
	width:50%;
}

/* 3枚並んだ写真のスタイルシート PC */

ul.images3-ph li{
	margin:0;
	padding:0 10px 30px 0;
	text-align:left;
	float:left;
}


/* トップP [PC]
---------------------------------------------------------*/

.item2 {
	margin-bottom: 20px;
	padding:0 15px;
	width:33%;
	float:left;
}

.tel {
	text-decoration: none;
}

.sp {
	display: none;
}

/* お知らせ　*/

.news-box{
	width:100%;
/*	height:250px; */
	height:500px;
	box-sizing:border-box;
	float:left;
	padding:0 5px;
}

#news dl dt{
	width: 10%; 
}

#news dl dd{
	width: 90%;
	text-align:left;
	padding-left:20px;
    margin-bottom: 10px;
}

/* 下層P [PC]
---------------------------------------------------------*/

/* ぱんくず　*/

#breadcrumb{display:block;overflow:hidden;margin:0;padding:20px 0;text-align:left;}
#breadcrumb ul{margin:0; padding:0; list-style:none;}
#breadcrumb li{display:inline-block; margin:0 6px 0 0; padding:0;}
#breadcrumb li a{display:block; position:relative; margin:0; padding:0; font-size:12px;border:none;}
#breadcrumb li a::after{top:3px; right:0; content:" > ";} /* \f101 */
#breadcrumb li:last-child a{margin:0; padding:0;}
#breadcrumb li:last-child a::after{display:none;}	


/* 右コンテンツ内の仕分け用　*/

.boxTxt{
	padding-bottom:30px;
}

.boxTxt h4.noto2{
	display: block;
	font-size:18px;
	text-align: center;
}

/* ページ内リンクボタン　*/

.btn1,.btn2{
	text-decoration: none;
	text-align: center;
	padding: 5px 15px;
	color: #333;
	background-color: #fff;
	cursor: pointer;
	margin-right:15px;
	float:left;
}

.btn1{
   	border: solid 2px #9ccf8d;
}

.btn2{
   	border: dotted 1px #9ccf8d;
}

.btn_box{
	overflow:hidden;
}

/* 右コンテンツ内写真レイアウト　*/

.boxPh{
	width:280px;
	float:left;
	padding-right:30px;
}
	
.boxPh_mini{
	width:150px;
	float:left;
	padding-left:30px;
}

#portfolio{
	padding-top:0;
}

.one-pic{
	text-align:left;
}


/* 下層ページ - お問い合わせ PC
------------------------------------------------------------------------------------------------------------ */

#formBox{
	width:100%;
}

#formBox dl{
	padding:20px;
}

#formBox dl dt,
#formBox dl dd{
	text-align:left;
	padding:10px;
	float:left;
}

#formBox dl dt{
	width:25%;
}

#formBox dl dd{
	width:75%;
}

#formBox ol{
	width:100%;
}

/*　department table  PC用
--------------------------------------*/

.pc-table{
	display:block;
}

.sp-table{
	display:none;
}


/*　入力後の確認ページのCSS  PC用
--------------------------------------*/

.formTable{
	width:100%;
}

.formTable th{
	width:30%;
}

.formTable td{
	width:70%;
}

}

/* ロボット手術用CSS
------------------------------------------------------------------------------------------------------------ */
.robot_box_area{
	width: 100%;
	margin: 15px 0;
}
.robot_box_area img{
	width: 100%;
}