@charset "utf-8";
/* CSS Document */
.photo{
	float:right;
	margin-right:2%;
	max-width:480px;
	height:auto;
}

.mainPhoto{
	margin-bottom:30px;
}

#heading{
	margin:0 0 30px 0;
	text-align:center;
	/*width:480px;*/
}

#table{
	width:96%;
	margin:0 2%;
	overflow:hidden;
}

thead th{
	background:#666;
	color:#fff;
}

tbody th{
	width:5em;
}

th,td{
	padding:1% 1% 0.5%;
	border:1px solid #eee;
	font-weight:normal;
}

.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
margin-bottom:1%;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 2%;
left: 2%;
width: 96%;
height: 96%;

}

#lessonWrap{
	margin:0 10px;
	overflow:hidden;
}
.lesson{
	float:left;
	width:475px;
	margin:0 10px 20px;
	background:#fff8f2;
	padding:15px 0 0;
}

.lesson h4{
	float:left;
	margin-right:1em;
}

.day{
	float:left;
	margin-bottom:0;
}

.catch{
	clear:both;
}
.lesson:last-child{
	margin:0 0 20px;
}

.addBox{
	clear:both;
	text-align:center;
	border:1px solid #ddd;
	padding:10px;
}

#info{
	float:left;
	margin-right:40px;
}

#map{
	max-width:45%;
	height:auto;
	float:left;
}


#attentionBox{
	margin:5px 0;
	font-size:86%;
	padding:5px;
	border:1px solid #ddd;
}

#attentionBox p{
	margin:0;
	padding:0;
}

#formWrap{
	width:800px;
	margin:20px auto 40px;
}

#form{
	width:770px;
	margin:0 auto 20px;
}

#form th{
	width:18em;
	text-align:left;
	background:#666;
	color:#fff;
	padding:1% 2% 0.5%;
	vertical-align:text-bottom;
}

input.required, select.required {
    background: #FDD;
}

input:focus{
	background:#F3E5C6;
}

.m-alert{
	padding:0 5px;
	float:right;
	background:#d16cac;
	color:#fff;
	margin:0 0 0 0;
	font-weight:normal;
	font-size:90%;
	border-radius: 3px;
   -moz-border-radius: 3px;
   -webkit-border-radius: 3px;
   -o-border-radius: 3px;
   -ms-border-radius: 3px;
}

.error{
	margin-bottom:0;
	margin-left:0;
	color:#FF6699;
}

@media screen and (max-width: 768px){
.photo{
	float:none;
	margin-bottom:5%;
	max-width:100%;
	height:auto;
}

.mainPhoto{
	max-width:100%;
	height:auto;
	margin-bottom:5%;
}

#heading{
	margin-bottom:5%;
	width:100%;
	text-align:left;
}

#lessonWrap{
	margin:0;
	overflow:hidden;
}
.lesson{
	float:none;
	width:96%;
	margin:0 2% 5%;
	background:#fff8f2;
	padding:15px 0 0;
	overflow:hidden;
}

.lesson h4{
	float:left;
	margin-right:1em;
}

.day{
	float:left;
	margin-bottom:0;
}

.catch{
	clear:both;
}
.lesson:last-child{
	margin:0 2% 5%;
}

.addBox{
	clear:both;
	text-align:left;
	border:1px solid #ddd;
	padding:10px;
}

#table{
	display: block;
	width:96%;
	margin:0 2%;
}
#table thead{
	display: none;
}
#table tbody{
	display: block;
}
#table tbody tr{
	display: block;
	margin-bottom: 1.5em;
}
#table tbody th,
#table tbody td{
	display: list-item;
	border: none;
	list-style:none;
}
#table tbody th{
	margin-bottom: 3%;
	list-style-type: none;
	color: #fff;
	background: #666;
	width:98%;
	text-align:center;
	padding-left:2%;
}
#table tbody td{
	margin:0 2% 2%;
	padding: 0;
}
#table tbody td:nth-of-type(1):before { content: "[日時]\A";white-space: pre; }
#table tbody td:nth-of-type(2):before { content: "[場所]\A";white-space: pre; }
#table tbody td:nth-of-type(3):before { content: "[講師]\A";white-space: pre; }
#table tbody td:nth-of-type(4):before { content: "[内容]\A";white-space: pre; }

#info{
	float:none;
	margin:0 0 2%;
	text-align:center;
}

#map{
	max-width:100%;
	height:auto;
	float:none;
}

#formWrap{
	width:100%;
	margin:0 auto 5%;
}


#form{
	margin:0;
	width:97%;
}

#form th,
#form td{
	display:block;
	width:97%;
	text-align:left;
	border:none;
	margin:0;
}

#form th{
	background:#666;
	color:#fff;
	margin-bottom:1%;
}

#form td{
	margin-bottom:2%;
}

.half input[type="text"]{
	width:30%;
}

input[type="text"] {
	width:100%;
	font-size:120%;
	padding:5px;
}

textarea{
	width:100%;
	font-size:120%;
	padding:5px;
	height:50px;

}
/*input, button, textarea, select {
	-webkit-appearance: none;
	border-radius: 0;
}*/

select{
	width:100%;
}

input[type="submit"],
input[type="reset"],
input[type="button"]{
	width: 40%;
	margin: 0;
	padding: 5px;
	background:#F27300;
	color: #FFF;
	border-radius: 5px;
	border:none;
}

#attentionBox{
	width:100%;
	height:100%;
	overflow:inherit;
	margin:1% 0;
	font-size:86%;
	padding:1%;
	border:1px solid #ddd;
}

#attentionBox p{
	margin:0;
	padding:0;
}

}