@charset "shift_jis";

h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form{
	margin: 0px;
	padding: 0px;
}

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

img {
	border: none;
	display: block;
}

input,textarea,select {
	font-size: 1.2em;
}

form {
	margin: 0px;
}

table {
	border-collapse: separate;
	font-size: 100%;
	border-spacing: 1;
	text-align: left;
	line-height: 140%;
}
td {
	word-break: break-all;
	line-height: 1.7em;
}

a {
	color:#333333;
	text-decoration: none;
}

a:link {
	color:#333333;
	text-decoration: underline;
}
a:hover {
	color: #333333;
}
a:visited {
	color:#333333;
}
a:active {
	color:#333333;
}

/*IE6対応*/
*html #main .new dd img {
	margin-top:0.5em;
	vertical-align: baseline;
}

body {
	font-family: "メイリオ",　Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-seri;
	font-size: 1.2em;
	line-height: 1.7em;
	color: #333333;
	margin: 0px;
	padding: 0px;
	height: auto;
	width: 100%;
	text-align: center;
	-webkit-text-size-adjust: 100%;
	background-color: #F2FEBC;
	min-width: 1000px!important;
}
#main {
	width: 100%;
	max-width: 1400px;
	margin-right: auto;
	margin-left: auto;
	clear: both;
	background-image: url("../images/bg_top.png"),url("../images/bg_bottom.png");
	background-repeat: no-repeat;
	background-size: contain, contain;
	background-position: center top,center bottom;
	background-attachment: fixed;
}

#maininner {
	background-color: rgba(255,255,255,0.6);
	height: auto;
	width: 800px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 0px;
	
}

/*トータル設定ここまで
-------------------------------*/


/*ヘッダー
-------------------------------*/
#header {
	width: auto;
	margin-right: auto;
	margin-left: auto;
	}
#header h1 {
	height: 88px;
	width: auto;
	margin: 0px;
	}
#header h1 img {
	margin-right: auto;
	margin-left: auto;
	padding-top: 10px;
	}


/*コンテンツ
-------------------------------*/
#contents {
	height: auto;
	width: 800px;
	clear: both;
	box-sizing: border-box;
	padding: 40px 40px;
	opacity: 0.9;
}

#clinictitle {
	font-size: 2em;
	font-weight: bold;
	line-height: 1.1em;
	text-align: center;
	text-shadow: 1px 2px 0px rgba(255, 255, 255, 1);
	color: #1A461A;
	letter-spacing: 0.15em;
}
#clinictitle span{
	display: block;
	font-size: .8em;
	}
#headerinner {
	padding: 70px 0 0;
	margin: 0 auto;
}
#yoyaku {
	height: auto;
	width: 620px;
	margin: 0 auto;
	}

#information {
	clear: both;
	height: auto;
	width: 640px;
	margin: 0 auto;
	text-align: left;
}
#timeschedule {
	border-collapse: collapse;
}

#timeschedule td{
	border: solid 1px;
}

.timeTableTd{
	width: 88.5px;
	text-align: center;
}

.headerSunday{
	background-color: #FAD0DB;
	height: 33px;
}

.headerWeekday{
	background-color: #ACDBDB;
}

.headerSaturday{
	background-color: #C7DCF2;
}

.bodyWeekHeight{
	height: 53px;
}

.bodySunday{
	background-color: #FEF4F7;
}

.bodyWeekday{
	background-color: #F5F2E9;
}

.bodySaturday{
	background-color: #F4F8FD;
}



/*フッター
-------------------------------*/
.pagetop {
	height: auto;
	width: 150px;
	margin-bottom: 10px;
}
#footer {
	clear: both;
	width: auto;
	margin: 0 auto;
}
#footerinner {
	width: 800px;
	margin: 0 auto;
	clear: both;
	padding: 50px 0;
	background-color: rgba(255,255,255,0.6);
}
#footerinner img {
	margin: 0 auto;
}
#footerinner p {
}


.pageName{
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 30px;
	}

ul.btnArea{}
ul.btnArea li{
	margin-bottom: 30px;
	text-align: center;
	}
ul.btnArea li a{
	display: block;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 1.4em;
	text-decoration: none;
	border-radius: 10px;
	box-sizing: border-box;
	box-shadow: 3px 3px 1px 1px rgba(0, 0, 0, 0.3);
	padding: 25px 0;
	margin: 15px 0;
	transition-duration: .2s;
	}
ul.btnArea li:last-child a{
	margin-bottom: 0;
	}
ul.btnArea li a:hover{
	opacity: .7;
	transition-duration: .2s;
	}

ul.btnArea li a span{
	display: block;
	font-size: 18px;
	font-weight: normal;
	}

a.btnBlue{
	color: #032872;
	background-color: #CDECEB;
	}
a.btnYellow{
	color: #7C4418;
	background-color: #FBEDA8;
	}
a.btnPink{
	color: #8E0000;
	background-color: #F8D3E4;
	}
a.btnGreen{
	color: #134615;
	background-color: #E2F9A1;
	}
a.btnGray{
	color: #12271E;
	background-color: #C4DACD;
	}
a.btnBeige{
	color: #594A31;
	background-color: #E7D0A9;
	}

.bgWhite{
	background-color: rgba(255,255,255,0.6);
	}
.bgBlue{
	background-color: #CDECEB;
	}
.bgYellow{
	background-color: #FBEDA8;
	}
.bgPink{
	background-color: #F8D3E4;
	}
.bgGreen{
	background-color: #E2F9A1;
	}
.bgGray{
	background-color: #C4DACD;
	}
.bgBeige{
	background-color: #E7D0A9;
	}

/*待合*/
.explanation{
	width: 500px;
	box-sizing: border-box;
	margin: 0 auto;
	text-align: left;
	}

hr{
	border: none;
	background-color: #fff;
	border-width: 1px 0 0 0;
	border-color: black;
	border-style: solid;
	margin: 40px 0;
	}


/*事前登録*/
table.mail{
	width: 550px;
	margin: 20px auto 50px;
	table-layout: fixed;
	border-collapse: collapse;
	}
table.mail th,
table.mail td{
	border: #999 2px solid;
	box-sizing: border-box;
	padding: 10px 10px;
	}	
table.mail th{
	width: 150px;
	font-size: 20px;
	font-weight: normal;
	text-align: center;
	background-color: #efefef;
	}
table.mail td input[type="text"]{
	width: 100%;
	box-sizing: border-box;
	padding: 5px 5px;
	}

ul.ast{}
ul.ast li{
	list-style-type: none;
	text-indent: -1em;
	padding-left: 1em;
	}
ul.ast li::before{
	content: "※";
	}


.submitArea{
	display: flex;
	justify-content: center;
	}
.submitArea > *{
	margin: 0 10px;
	}


/* Media Query ================================================================================*/
.pc{display: block!important;}
.sp{display: none!important;}


@media only screen and (max-width : 599px){
	.pc{display: none!important;}
	.sp{display: block!important;}
	
	body{
		min-width:inherit!important;
		font-size: 5vw;
		}
	#main{
		max-width:inherit;
		background-size: 150%, 150%;
		}
	#headerinner{
		width: 94%;
		padding: 10% 0;
		}
	#clinictitle{
		font-size: 7vw;
		letter-spacing: 0;
		}
	#clinictitle span{
		font-size: 5vw;
		}
	
	#maininner{
		width: 94%;
		}
	#contents{
		width: 100%;
		box-sizing: border-box;
		padding: 10% 4%;
		margin: 0 auto;
		}
	ul.btnArea li a{
		font-size: 4.8vw;
		letter-spacing: 0;
		padding: 4% 2%;
		}
	ul.btnArea li a span{
		display: block;
		font-size: 3.5vw;
		margin: 0;
		}
	
	#information{
		width: 100%;
		font-size: 4.5vw;
		}
	.pageName{
		font-size: 6vw;
		}
	
	#footerinner{
		width: 94%;
		padding: 15% 0;
		margin: 0 auto;
		}
	
	
	/*待合*/
	.explanation{
		width: 100%;
		padding: 10% 0;
		}
	
	hr{
		margin: 10% 0;
		}
	
	
	/*事前登録*/
	table.mail{
		width: 100%;
		margin: 5% auto 10%;
		}
	table.mail th,
	table.mail td{
		display: block;
		width: 100%;
		
		border: none;
		}	
	table.mail th{
		color: #FFF;
		font-size: 5vw;
		text-align: left;
		padding: 2% 5%;
		background-color: #565656;
		}
	table.mail td{
		padding: 2% 0 6%;
		}
	table.mail td input[type="text"]{
		width: 100%;
		box-sizing: border-box;
		}

	
	.submitArea{
		flex-direction: column;
		}
	.submitArea > *{
		margin: 0 0 10%;
		}
	
	
	/*スクロール
	　予約済一覧*/
	.scroll::before{
		display: block;
		width: 100%;
		content: "横にスクロールできます → ";
		font-size: 16px;
		text-align: left;
		}
	.scroll{
		overflow-x: scroll;
		padding: 20px 0;
		}
	.scroll > table{
		width: auto;
		}
	
	
	/*予約カレンダー*/
	#yoyaku{
		width: 100%;
		}
	#yoyaku img{
		display: block;
		width: 100%;
		}
	table#timeschedule{
		width: 100%!important;
		font-size: 4vw;
		}
	
	table#timeschedule td.timeTableTd.bodyWeekday p font,
	table#timeschedule td.timeTableTd.bodySaturday p font,
	table#timeschedule td.timeTableTd.bodySunday p font{
		font-size: initial!important
		}
	
	table#timeschedule td.timeTableTd.bodyWeekday span{
		display: inline-block;
		}
	
	
	/*段落ちtable
	予約の確認・取消、再診情報入力欄、初診情報入力欄*/
	table#timeschedule.ssk_sp{
		border: #000 1px solid;
		box-sizing: border-box;
		}
	table#timeschedule.ssk_sp td{

		display: block;
		width: 100%!important;
		height: auto!important;
		box-sizing: border-box!important;
		border: none;
		border-bottom: #000 1px solid;
		}
	table#timeschedule.ssk_sp td:nth-child(even){
		background-color: #FFF;
		padding: 10px 10px!important;
		}
	table#timeschedule.ssk_sp td input[type="text"],
	table#timeschedule.ssk_sp td input[type="password"],
	table#timeschedule.ssk_sp td textarea{
		width: 100%!important;
		margin-left: 0!important;
		box-sizing: border-box;
		}
	
	table#timeschedule.ssk_sp td input[type="button"]{
		margin-left: auto!important;
		}

	table#timeschedule.ssk_sp td select{
		margin-left: 0!important;
		}

	table#timeschedule.ssk_sp col.headerWeekday,
	table#timeschedule.ssk_sp col.headerSaturday{
		width: 100%!important;
		}
	
	table.ssk_sp:not(#timeschedule) td{
		display: block;
		width: 100%!important;
		box-sizing: border-box!important;
		}
	
}