/********* dropzone  *********/
.dropzone {
	letter-spacing: -.4em;
	padding: 12px 12px !important;
}
	.dropzone > *{
		letter-spacing: normal;
	}
	.dropzone .dz-preview {
		margin: 8px !important;
		letter-spacing: normal;
	}
		.dropzone .dz-preview .dz-image {
		}
/********* dropzone  *********/


/********* index  *********/
div.search_result_text{
	background-color: #f9f9f9;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding: 0.5em;
	border-bottom: 1px solid #ededed;
}
	div.search_result_text p{
		border-bottom: 0 solid #cccccc;
		padding-bottom: 0.3em;
		margin: 0;
		color: #808080;

		display: inline-block;
		zoom: 1;
		*display: inline;
	}
		div.search_result_text p a{
			margin: 0;
			margin-left: 1.5em;
			padding: 0.2em 0.8em;
			background-color: #dddddd;
			color: #fff;
			font-size: 80%;
			text-decoration: none;
			position: relative;
			padding-left: 2.8em;
			border-radius: 2px; 
			-webkit-border-radius: 2px;
			-moz-border-radius: 2px;

			display: inline-block;
			zoom: 1;
			*display: inline;
		}
			div.search_result_text p a:before{
				font-family: "FontAwesome";
				font-size: 150%;
				position: absolute;
				margin: auto;
				height: auto;
				left: 0.5em;
				top: 50%;
				transform: translateY(-50%);
				font-weight: normal !important;
				content: "\f021";
				color: #fff;
			}
			div.search_result_text p a:hover{
				filter: alpha(opacity=75);
				opacity:0.75;
			}





/* ############### page top search button ############### */
div.search_button > ul{
	overflow: hidden;
	padding: 0;
	margin: 0;
	margin-bottom: 0;
}
	div.search_button > ul > li{
		list-style-type: none;
		margin-bottom: 0.5em;
		margin-left: 0;
		margin-right: 0.6em;
		padding: 0;
		font-size: 90%;

		display: inline-block;
		zoom: 1;
		*display: inline;
	}
		div.search_button > ul > li > a{
			background: #e6e6e6;
			color: #777777;
			padding: 0.3em 1em;
			text-decoration: none;
			display: block;
			width: 100%;
			height: 100%;
			border-radius: 4px; 
			-webkit-border-radius: 4px;
			-moz-border-radius: 4px;
		}
		div.search_button > div.course_more > a{
			text-decoration: none;
			background-color: #f9f9f9;
			color: #777777;
			padding: 0.4em 0.6em;
			display: inline-block;
			zoom: 1;
			*display: inline;
			border-radius: 4px; 
			-webkit-border-radius: 4px;
			-moz-border-radius: 4px;
		}
			div.search_button > div.course_more > a:before,
			div.search_button > div.course_more > a:after{
				font-family: "FontAwesome";
			}
			div.search_button > div.course_more > a:before{
				margin-right: 0.5em;
				content: "\f055";
			}
			div.search_button > div.course_more > a:after{
			}
			div.search_button > div.course_more > a.open:before{
				content: "\f056";
			}
			div.search_button > div.course_more > a.open:after{
				margin-left: 0.5em;
				content: "\f063";
			}

			div.search_button > div.course_more_wrap > ul > li > a.open,
			div.search_button > div.course_more_wrap > ul > li > a:hover,
			div.search_button > div.course_more > a.open,
			div.search_button > div.course_more > a:hover,
			div.search_button > ul > li > a.on,
			div.search_button > ul > li > a:hover{
				background: #b3b3b3;
				color: #f2f2f2;
			}

			div.search_button > ul > li > a.on{
				position: relative;
			}

		/* Promotion Link */
		div.search_button > ul > li.promotion > a{
			position: relative;
			background: #e6e4cf;
			color: #797000;
		}
		div.search_button > ul > li.promotion > a:before{
			font-family: "FontAwesome";
			margin-right: 0.5em;
			font-weight: normal !important;
			content: "\f155";
		}
			div.search_button > ul > li.promotion > a.on,
			div.search_button > ul > li.promotion > a:hover{
				background-color: #797000;
				color: #fff;
			}
		/* Trial Link */
		div.search_button > ul > li.trial > a{
			background: #bfddc1;
			color: #326c11;
		}
		div.search_button > ul > li.trial > a:before{
		}
			div.search_button > ul > li.trial > a.on,
			div.search_button > ul > li.trial > a:hover{
				background-color: #8cc06c;
				color: #fff;
			}

		/* 全コース表示ボタン */
		div.search_button > div.course_more{
			margin-bottom: 0.4em;
		}
		/* 最初は非表示 */
		div.search_button > div.course_more_wrap{
			display: none;
			margin-bottom: 2em;
			padding: 0.5em;
			animation: couse_more 0.5s linear 0s;
			background-color: #f9f9f9;
			border-radius: 3px; 
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
		}
		@keyframes couse_more{
			from{
				opacity: 0;
			}
			to{
				opacity: 1;
			}
		}
		/* 全コース一覧 */
		div.search_button > div.course_more_wrap > ul{
			overflow: hidden;
			padding: 0;
			padding-top: 1.2em;
			margin: 0;
			margin-bottom: 0;
			position: relative;
		}
			div.search_button > div.course_more_wrap > ul > li{
				list-style-type: none;
				margin-bottom: 0.5em;
				margin-left: 0;
				margin-right: 0.6em;
				padding: 0;
				font-size: 90%;

				display: inline-block;
				zoom: 1;
				*display: inline;
			}
				div.search_button > div.course_more_wrap > ul > li.course_title{
					position: absolute;
					font-size: 80%;
					color: #b3b3b3;
					top: 0;
					left: 0;
				}
				div.search_button > div.course_more_wrap > ul > li > a{
					background: #e6e6e6;
					color: #777777;
					padding: 0.3em 1em;
					text-decoration: none;
					display: block;
					width: 100%;
					height: 100%;
					border-radius: 4px; 
					-webkit-border-radius: 4px;
					-moz-border-radius: 4px;
				}
					div.search_button > div.course_more_wrap > li{
						font-size: 80%;
					}

/* ############### page top search button ############### */


/* ############### post button ############### */
div.post_button{
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding: 0;
	overflow: hidden;
}
	div.post_button ul {
		letter-spacing: -.4em;
		margin: 0;
		padding: 0;
		text-align: right;
	}
	div.post_button ul li{
		letter-spacing: normal;
		margin: 0;
		padding: 0;
		list-style-type: none;
		font-size: 90%;

		display: inline-block;
		zoom: 1;
		*display: inline;
	}
	div.post_button ul li a{
		padding: 0.5em 1.5em;
		background: #57b1af;
		color: #fff;
		display: block;
		text-decoration: none;
		display: block;
		width: 100%;
		height: 100%;

		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.post_button ul li a:before{
			font-family: FontAwesome;
			content: "\f044";
			margin-right: 1em;
		}
		div.post_button ul li a:hover{
			filter: alpha(opacity=75);
			opacity:0.75;
		}



/* ############### post button ############### */



/* ############### edit/delete button 共通 ############### */
div.edit_btn_wrap
}
	div.edit_btn_wrap > ul{
	}
		div.edit_btn_wrap > ul > li{
			list-style-type: none;
		}


/* ############### edit/delete button ############### */


h4.sTitle{
	background-color:#f5f5f5;
	border-bottom: 1px solid #b5b5b5;
	font-weight: bold;
	margin: 0;
	margin-top: 0.4em;
	margin-bottom: 0.4em;
	padding: 0.4em;
	padding-left: 0.6em;
	font-size: 110%;
}
	h4.sTitle:first-child{
		margin-top: 0;
	}

/* ############### detail page ############### */
div.detailBox{
	margin-top: 0.8em;
	margin-bottom: 1em;
	overflow: auto;
	width: 100%;
}
	div.note_wrap{
		clear: both;
		padding: 0.5em 1em;
		margin: 1.5em 0;
		background-color: #fff0f4;
		border: 2px dashed #ff0000;

		padding-left: 5em;
		position: relative;

		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.note_wrap:before{
			margin: 0;
			padding: 0;
			display: block;
			font-family: FontAwesome;
			content: "\f05a";
			font-size: 2rem;
			position: absolute;
			left: 1em;
			line-height: 100%;
			top: 50%;
			margin-top: -0.5em;
			content: "\f05a";
			color: #ffb4b7;
		}
		div.note_wrap > h5{
			position: absolute;
			left: 1em;
			top: -1.2em;
			margin: 0;
			line-height: 1em;
			padding: 0.4em 0.5em;
			border: 1px solid #ff0000;
			color: #ff0000;
			background-color: #fff;
			border-radius: 1px; 
			-webkit-border-radius: 1px;
			-moz-border-radius: 1px;
		}


	div.detailBox div.school_header {
		margin-top: 1em;
		margin-bottom: 1em;
		background-color: #f2f3f3;
		overflow: hidden;
		position: relative;
		height: auto;
		width: 100%;
		display: block;

		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
			div.detailBox div.school_header:before {
				content:"";
				display: block;
				padding-top: 30%;
			}
			div.detailBox div.school_header:after{
				z-index: 10;
				background-color: black;
				height: 100%;
				width: 100%;
				content: "";
				opacity: 0.2;
				position: absolute;
				left: 0;
				top: 0;
				display: block;
			}

			div.detailBox div.school_header img{
				z-index: 1;
				width: 120%;
				position: absolute;
				top: 50%;
				left: 50%;
				-webkit-transform: translate(-50%, -50%);
				-ms-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
			}

		div.detailBox div.school_header div.header_title{
			z-index: 99;
			position: absolute;
			top: 40%;
			left: 50%;
			width: 100%;
			padding: 0.6em;
			display: block;
			text-align: center;
			background-color: rgba(191,191,191,0.6);
			-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
		}
			div.detailBox div.school_header div.header_title h3{
				font-size: 140%;
				text-align: center;
				color: #fff;
				margin: 0;
				padding: 0;
				line-height: 1.4em;
				padding-top: 0.2em;
				border-top: 1px solid #e6e6e6;
				display: inline-block;
				zoom: 1;
				*display: inline;

				text-shadow: 
				        #a6a6a6 1px 1px 3px, #cccccc -1px -1px 3px,
				        #a6a6a6 -1px 1px 3px, #a6a6a6 1px -1px 3px,
				        #a6a6a6 0px 1px 3px, #a6a6a6  0-1px 3px,
				        #a6a6a6 -1px 0 3px, #a6a6a6 1px 0 3px;
			}
				div.detailBox div.school_header div.header_title h3 > span{
					padding-right: 1em;
					margin-right: 0.5em;
					position: relative;
				}
					div.detailBox div.school_header div.header_title h3 > span:after{
						content: "|";
						font-size: 80%;
						position: absolute;
						right: 0;
						top: 50%;
						-webkit-transform: translateY(-50%);
						-ms-transform: translateY(-50%);
						transform: translateY(-50%);

					}

			div.detailBox div.school_header div.header_title p.city{
				font-size: 85%;
				margin: 0;
				line-height: 1em;
				padding-bottom: 0.2em;
				color: #333333;
				text-align: center;
			}

			/* 日付 */
			div.detailBox div.school_header div.header_title div.title_date{
				margin-bottom: 1em;
				font-weight: bold;
				font-size: 110%;
				letter-spacing: 0.2em;
				line-height: 1.5em;
				white-space: nowrap;

				display: inline-block;
				zoom: 1;
				*display: inline;
			}
				div.detailBox div.header_cont_wrap div.title_date > span.month{
					display: block;
					margin-left: 1em;
					font-size: 0.80rem;
					color: #ff5b3a;
					font-weight: normal;
					white-space: nowrap;
				}
				div.detailBox div.header_cont_wrap div.title_date > span.day{
					font-size: 180%;
					margin: 0;
					white-space: nowrap;
				}
				div.detailBox div.header_cont_wrap div.title_date > span.week{
					font-size: 0.80rem;
					color: #999999;
					white-space: nowrap;
					font-weight: normal;
				}
				div.detailBox div.header_cont_wrap div.title_date.saturday,
				div.detailBox div.header_cont_wrap div.title_date.saturday > span.week{
					color: #0033cc;
				}
				div.detailBox div.header_cont_wrap div.title_date.sunday,
				div.detailBox div.header_cont_wrap div.title_date.sunday > span.week{
					color: #cc3300;
				}




			/* カテゴリ／タイトル／費用など */
			div.detailBox div.header_cont_wrap div.title_cont{
			}
				div.detailBox div.header_cont_wrap div.title_cont p.category{
					font-size: 85%;
					margin: 0;
					color: #afafaf;
				}
				div.detailBox div.header_cont_wrap div.title_cont h3{
					margin: 0;
					line-height: 1.3em;
				}

				div.detailBox div.header_cont_wrap div.title_cont ul{
					position: absolute;
					display: block;
					text-align: right;
					margin: 0;
					width: calc(40% - 1.4em);
					padding: 0;
					right: 1em;
					bottom: 0.5em;
					list-style: none;
				}
					div.detailBox div.header_cont_wrap div.title_cont ul > li{
						margin: 0;
						padding-left: 1.4em;
						position: relative;
						color: #979ca2;

						display: inline-block;
						zoom: 1;
						*display: inline;

					}
						div.detailBox div.header_cont_wrap div.title_cont ul > li:first-child{
							margin-right: 1em;
						}

						div.detailBox div.header_cont_wrap div.title_cont ul > li:before {
							font-family: FontAwesome;
							font-size: 100%;
							position: absolute;
							font-weight: normal !important;
							left: 0;
							top: 50%;
							-webkit-transform: translateY(-50%);
							-ms-transform: translateY(-50%);
							transform: translateY(-50%);
						}
						div.detailBox div.header_cont_wrap div.title_cont ul > li.fee:before {
							content: "\f09d";
						}
						div.detailBox div.header_cont_wrap div.title_cont ul > li.location:before {
							top: 40%;
							font-size: 120%;
							content: "\f041";
						}



	/* ポイント１２３ */
	div.detailBox div.point_wrap{
		margin-top: 1em;
		margin-bottom: 1em;
		overflow: hidden;
		padding: 1em;
		padding-top: 3em;
		margin-bottom: 0.5em;
		background-color: #fcf7f4;
		position: relative;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.detailBox div.point_wrap:before{
			content: "おすすめポイント！";
			position: absolute;
			right: 0.5em;
			top: 0.5em;
			background-color: #fcafaa;
			padding: 0.4em 0.8em;
			color: #fff;
			border-radius: 3px; 
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
		}
		div.detailBox div.point_wrap > ul{
			list-style: none;
			letter-spacing: -.4em;
			margin: 0;
		}
			div.detailBox div.point_wrap > ul > li{
				letter-spacing: normal;
				display: inline-block;
				zoom: 1;
				*display: inline;
				position: relative;
				margin-right: 2em;
				font-size: 110%;
				padding-left: 2em;
			}
			div.detailBox div.point_wrap > ul > li:before{
				font-family: FontAwesome;
				font-weight: normal !important;
				font-size: 140%;
				margin-right: 0.5em;
				color: #fc846b;
				content: "\f00c";
				position: absolute;
				left: 0;
				top: -0.4em;
			}


	/* 画像 */
	div.detailBox > div.photo_wrap{
		margin-top: 1em;
		margin-bottom: 1em;
	}
		div.detailBox > div.photo_wrap > ul{
			letter-spacing: -.4em;
			width: 100%;
			margin: 0;
			padding: 0;
			font-size: 0;
			text-align: center;
		}
			div.detailBox > div.photo_wrap > ul > li{
				letter-spacing: normal;
				list-style-type: none;
				width: calc((100% / 4) - 1%);
				height: auto;

				margin-left: 0.5%;
				margin-right: 0.5%;
				padding: 4px;
				overflow: hidden;
				vertical-align: top;

				background-color: #f9f9f9;
				border: 1px solid #f9f9f9;

				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;


				display: inline-block;
				zoom: 1;
				*display: inline;
			}
				div.detailBox > div.photo_wrap > ul > li:hover{
					border: 1px solid #00a0dd;
				}

			div.detailBox > div.photo_wrap > ul > li.img_size_2{
				width: calc((100% / 2) - 1%);
			}
			div.detailBox > div.photo_wrap > ul > li.img_size_3{
				width: calc(((100% / 3) - 0.1px) - 1%);
			}
			div.detailBox > div.photo_wrap > ul > li.img_size_4{
				width: calc((100% / 4) - 1%);
			}
			div.detailBox > div.photo_wrap > ul > li.img_size_5{
				width: calc(((100% / 5) - 0.1px) - 1%);
			}

			div.detailBox > div.photo_wrap > ul > li:before{
			}
			div.detailBox > div.photo_wrap > ul > li img{
				max-width: 100%;
				height: auto;
				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}

			div.detailBox > div.photo_wrap > ul > li a{
				display: block;
				width: 100%;
				height: 100%;
			}

				div.detailBox > div.photo_wrap > ul > li a:hover{
					filter: alpha(opacity=75);
					opacity:0.75;
				}



	div.updateDate{
		margin-top: 3em;
		text-align: right;
	}
		div.updateDate p{
			color: #a6a6a6;
			border-bottom: 6px solid #f7f7f7;
			padding-bottom: 0;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}


	/* お問合せボタン */
	div.detailBox p.contact_button{
		background-color: #006699;
		padding: 0;
		position: relative;
		display: block;
		margin-top: 1em;
		margin-bottom: 1em;
		margin-left: 10%;
		margin-right: 10%;

		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.detailBox p.contact_button::before{
			font-family: "FontAwesome";
			font-size: 200%;
			margin: auto;
			height: auto;
			font-weight: normal !important;
			content: "\f0e0";
			color: #fff;
			position: absolute;
			top: 0.2em;
			left: 50%;
			-webkit-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
			transform: translateX(-50%);
		}
		div.detailBox p.contact_button a{
			text-decoration: none;
			font-weight: bold;
			text-align: center;
			display: block;
			color:#FFF;
			padding-left: 0.5em;
			padding-right: 0.5em;
			padding-top: 3.5em;
			padding-bottom: 0.5em;
		}
			div.detailBox p.contact_button a:hover {
				filter: alpha(opacity=75);
				opacity:0.75;
			}





	/* コンタクト アクション */
	div.contact_action_wrap{
		overflow: hidden;
		padding: 0;
		margin: 0;
		margin-top: 0.5em;
		margin-bottom: 0.5em;
		border-bottom: 1px solid #f1f1f1;
	}
		div.contact_action_wrap > ul{
			width: 100%;
			letter-spacing: -.4em;
			padding: 0;
			margin: 0;
			text-align: center;
		}
			div.contact_action_wrap > ul > li{
				letter-spacing: normal;
				margin: 0;
				margin-bottom: 0.5em;
				margin-right: 2em;
				padding: 0;
				position: relative;
				white-space: nowrap;
				display: inline-block;
				zoom: 1;
				*display: inline;
			}
			div.contact_action_wrap > ul > li:last-child{
				margin-right: 0;
			}
				div.contact_action_wrap > ul > li:before,
				div.contact_action_wrap > ul > li > a:before{
					font-family: FontAwesome;
					font-size: 100%;
					font-weight: normal !important;
					margin-right: 0.5em;
					color: #8c8c8c;
				}
				/*
				div.contact_action_wrap > ul > li.phone{
					padding: 0.2em 1em;
					color: #8c8c8c;
					text-decoration: none;
					background-color: #f4f4f4;
					border-radius: 4px; 
					-webkit-border-radius: 4px;
					-moz-border-radius: 4px;
				}
				*/
				div.contact_action_wrap > ul > li.author{
					font-weight: bold;
				}
					div.contact_action_wrap > ul > li.author:before{
						content: "\f007";
					}
					div.contact_action_wrap > ul > li.counselor:before{
						content: "\f007";
					}
					div.contact_action_wrap > ul > li.phone:before{
						content: "\f095";
					}
					div.contact_action_wrap > ul > li.web:before{
						content: "\f282";
					}
					div.contact_action_wrap > ul > li.communication:before{
						content: "\f27b";
					}

				div.contact_action_wrap > ul > li.contact{
					text-align: center;
				}
					div.contact_action_wrap > ul > li.contact > a{
						display: block;
						padding: 0.2em 1em;
						color: #8c8c8c;
						text-decoration: none;
						background-color: #f4f4f4;
						border-radius: 4px; 
						-webkit-border-radius: 4px;
						-moz-border-radius: 4px;
					}
					div.contact_action_wrap > ul > li.contact > a:before{
						content: "\f0e0";
					}
					div.contact_action_wrap > ul > li.contact > a:hover{
						background-color: #e6e6e6;
						/*
						filter: alpha(opacity=75);
						opacity:0.75;
						*/
					}





	/* カテゴリリンク */
	div.selection_item_wrap{
		letter-spacing: -.4em;
	}

	div.selection_items{
		letter-spacing: normal;
		width: 50%;
		white-space: nowrap;
		padding: 0;
		padding-bottom: 0.2em;
		margin: 0;
		margin-top: 0.5em;
		margin-bottom: 0.5em;
		border-bottom: 1px solid #f1f1f1;

		display: inline-block;
		zoom: 1;
		*display: inline;
	}
		div.selection_items > ul{
			padding: 0;
			margin: 0;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}

		div.selection_items > ul:before{
			content: attr(content-title) "";
			margin-right: 0.6em;
			color: #777777;
			padding: 0.3em 1em;
			text-decoration: none;
			border-bottom: 3px solid #f1f1f1;
			font-weight: bold;

			display: inline-block;
			zoom: 1;
			*display: inline;
		}

		div.selection_items > ul > li{
			position: relative;
			list-style-type: none;
			margin: 0;
			margin-left: 0;
			margin-right: 1em;
			margin-bottom: 0.5em;
			padding: 0;

			display: inline-block;
			zoom: 1;
			*display: inline;
		}
		/* カテゴリ用 矢印 */
		div.selection_items.category > ul > li:first-child:after{
			content: "";
			position: absolute;
			top: 50%; 
			margin-top: -0.6em;
			border-top: 0.6em solid transparent;
			border-bottom: 0.6em solid transparent;
			border-left: 0.6em solid #e6e6e6;
			right: -1em;
		}

		div.selection_items > ul > li > a{
			background: #e6e6e6;
			color: #777777;
			padding: 0.3em 1em;
			text-decoration: none;
			display: block;
			width: 100%;
			height: 100%;
			margin: 0;
			border-radius: 4px; 
			-webkit-border-radius: 4px;
			-moz-border-radius: 4px;
		}

			div.selection_items > ul > li > a:hover{
				background: #b3b3b3;
				color: #f2f2f2;
			}


		/* エリアの州名 */
		div.selection_items.area > ul > li{
			position: relative;
		}
			div.selection_items.area > ul > li > a + span{
				font-size: 70%;
				position: absolute;
				top: -1em;
				left: 0.2em;
				margin: 0;
				padding: 0;
				color: #a5a5a5;
				text-shadow: 1px 1px 0 #fff,
				             1px 1px 0 #fff,
				             1px 1px 0 #fff,
				             1px 1px 0 #fff;

			}

	/* 紹介文 */
	div.detailBox div.description_field{
		margin: 0;
		margin-top: 2em;
		margin-bottom: 3em;
		padding: 1em;
		overflow: hidden;
	}
		div.detailBox div.description_field h3{
			color: #0063a4;
			border-bottom: 1px #abc7ca solid;
			margin-top: 0.5em;
			margin-bottom: 0.5em;
			padding: 6px 0 4px 2%;
			background-color: #efefef;
		}
		div.detailBox div.description_field h4{
			position: relative;
			padding: .3em 0.5em .2em 0.5em;
			border-top: 1px solid #3e9eda;
			border-bottom: 3px double #3e9eda;
			margin-top: 0.5em;
			margin-bottom: 0.5em;
			color: #3e9eda;
		}
		div.detailBox div.description_field div.iframe{
			width: 100%;
			display: block;
			position: relative;
			height: auto;
			overflow: hidden;
			padding-bottom: 56.25%;
			border: 3px solid #ddd;
			background: #f8f8f8;
		}

		div.detailBox div.description_field div.iframe iframe {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

		div.detailBox div.description_field p.center{
			text-align: center;
		}

	/* 枠なし */
	div.detailBox div.content_box_wrap{
		overflow: hidden;
		padding: 1em;
		margin-bottom: 0.5em;
		background-color: #f5f5f5;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.detailBox div.content_box_wrap h4{
			margin: 0;
			margin-bottom: 0.5em;
		}

	div.detailBox div.basic_info_wrap{
		overflow: hidden;
		padding: 0.5%;
		margin-top: 0.5em;
		margin-bottom: 2em;
	}

	/* 枠付き */
	div.detailBox div.div_box_wrap{
		overflow: hidden;
		padding: 0.5%;
		margin-bottom: 0.5em;
		letter-spacing: -.4em;
		border: 1px solid #e5e5e5;
	}
		div.detailBox div.div_box{
			letter-spacing: normal;
			display: block;
			vertical-align: top;
			width: 50%;

			display: inline-block;
			zoom: 1;
			*display: inline;
		}
			/* width:100%; */
			div.detailBox div.div_box.wf{
				display: block;
				width: 100%;
				padding: 0 !important;
			}
		div.detailBox div.div_box.block{
			letter-spacing: normal;
			width: auto;
			display: block;
		}
		div.detailBox div.div_box:nth-child(odd){
			padding-right: 0.5%;
		}


	/* 国籍のグラフ */
	div.detailBox div.graph_wrap{
		width: 80%;
		display: block;
	}
		div.detailBox div.graph_wrap > dl{
			width: 100%;
		}
			div.detailBox div.graph_wrap > dl > dt,
			div.detailBox div.graph_wrap > dl > dd{
				min-height: 2.5em ;
				line-height: 2.5em ;
				display: block;
				font-size: 90%;
			}
			div.detailBox div.graph_wrap > dl > dt{
				width: 10rem;
				text-align: right;
				padding-right: 0.5rem;
				clear: left;
				float: left;
			}
			div.detailBox div.graph_wrap > dl > dd{
				margin-left: 10rem;
				background-color: #e5e5e5;
				margin-bottom: 0.5em;
			}
			div.detailBox div.graph_wrap > dl > dd > span{
				display: block;
				padding-left: 0.5rem;
				height: 100%;
				color: #404040;
				overflow: visible;
				background-color: #008cbf;
				white-space: nowrap;

			}

	/*セレクトボックスなど選択項目*/
	div.detailBox div.check_item_wrap{
		margin: 0;
		padding: 0;
		display: block;
/*
		background-color: #f9f9f9;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
*/
	}
		div.detailBox div.check_item_wrap ul{
			padding: 0;
			margin: 1rem;
			letter-spacing: -.4em;
	}
			div.detailBox div.check_item_wrap ul li{
				letter-spacing: normal;
				white-space: nowrap;
				font-size: 90%;
				list-style-type: none;
				margin: 0;
				margin-right: 1em;
				margin-bottom: 0.4em;
				padding: 0.2em 0.5em;
				color: #d8d8d8;
				background-color: #eaeaea;

				display: inline-block;
				zoom: 1;
				*display: inline;

				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
			div.detailBox div.check_item_wrap ul li.checked{
				color: #8c8c8c;
				background-color: #dddddd;

			}
	/*セレクトボックスなど選択項目*/




	div.detailBox div.photo{
			width: 80%;
			height: auto;
			max-width: 100%;
			margin: auto;
			position: relative;
	}
			div.detailBox div.photo::before{
				content: "";
				display: block;
				padding-top: 100%;
			}

	div.detailBox div.photo img{
			z-index: 120;
			width: 100%;
			height: auto;
			line-height: 0;
			position: absolute;
			bottom: 0;

			border: 1px solid #ddd;
			padding: 3px;
			height: auto;
			background: #f8f8f8;
	}


	div.detailBox div.sCont{
		padding: 0.3em 0.6em;
		overflow: hidden;
	}
		div.detailBox div.sCont p{
			margin-top: 0.1em;
			margin-bottom: 0.1em;
			padding: 0;
		}


	/* Google map */
	div.detailBox div.map_wrap{
		margin-top: 0.5em;
		border: 3px solid #ddd;
	}
	div.gmap{
		width: 100%;
		display: block;
		position: relative;
		padding-bottom: 40%; /* 縦横比 */
		height: 0;
		overflow: hidden;
		background: #f8f8f8;
	}

	div.detailBox div.map_wrap > ul.address_map{
		margin: 0;
		list-style: none;
		background-color: #f9f9f9;
		padding: 0.5em 0.2em;
	}

		div.detailBox div.map_wrap > ul.address_map > li{
			padding: 0;
			margin-right: 1em;
			padding-left: 1.8em;
			position: relative;

			display: inline-block;
			zoom: 1;
			*display: inline;
		}
			div.detailBox div.map_wrap > ul.address_map > li:before {
				font-family: FontAwesome;
				font-size: 100%;
				position: absolute;
				left: 0;
				top: -0.1em;
				color: #8c8c8c;
				font-weight: normal !important;
			}
			div.detailBox div.map_wrap > ul.address_map > li.map:before {
				content: "\f278";
			}
			div.detailBox div.map_wrap > ul.address_map > li.address:before {
				content: "\f041";
				left: 0.2em;
			}



	/* ############### edit / delete button base ############### */
	div.edit_btn_box p{
		text-align: center;
	}
		div.edit_btn_box div.edit_btn_wrap{
			letter-spacing: normal;
			overflow: hidden;
			margin: 0;
			position: relative;
			text-align: center;
		}
			div.edit_btn_box div.edit_btn_wrap > ul{
				margin: 0;
				margin-top: 1em;
				margin-bottom: 1em;
				position: relative;
				left: 50%;
				float: left;
			}
				div.edit_btn_box div.edit_btn_wrap > ul > li{
					margin-top: 0.4em;
					margin-bottom: 0.4em;
					margin-left: 0;
					margin-right: 2em;
					padding: 0;
					list-style-type: none;
					position: relative;
					left: -50%;
					float: left;
				}
				div.edit_btn_box div.edit_btn_wrap > ul > li:last-child{
					margin-right: 0;
				}
					div.edit_btn_box div.edit_btn_wrap > ul > li > form{
					}
					div.edit_btn_box div.edit_btn_wrap > ul > li > form > button{
					}


/* ############### detail page ############### */

/* ############### school list ############### */
div.index_school_wrap{
	overflow: hidden;
}
	div.index_school_wrap > ul.school_list{
		margin: 0;
		padding: 0;
	}
	div.index_school_wrap > ul.school_list > li{
	/*	min-height: 20em; */
		list-style-type: none;
		position: relative;
		height: auto;
		display: block;
		margin: 0;
		margin-bottom: 2em;
		border-bottom: 1px solid #f3f3f3;
		background-color: #f9f9f9;
		border: solid 1px #f4f4f4;
		padding: 0.5em;
		overflow: hidden;
		letter-spacing: -.4em;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
	}
		/* NEW Text */
		div.index_school_wrap > ul.school_list > li.new_text * h2:after{
			content: "New";
			color: red;
			font-weight: normal;
			font-size: 75%;
			vertical-align: top;
			margin-left: 0.4em;
			position: absolute;
			left: 0;
			top: -0.8em;
		}

	/* 画像 右サイド */
	div.index_school_wrap > ul.school_list > li > div.index_school_photo{
		letter-spacing: normal;
		width: 30%;
		height: auto;
		margin: 0;
		vertical-align: top;
		border: 3px solid #d9d9d9;
		background: #d9d9d9;
		overflow: hidden;
		position: relative;
		display: inline-block;
		zoom: 1;
		*display: inline;

		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.index_school_wrap > ul.school_list > li > div.index_school_photo:before{
			content:"";
			display: block;
			padding-top: 100%;
		}
		div.index_school_wrap > ul.school_list > li > div.index_school_photo * img{
			z-index: 1;
			vertical-align: bottom;
			position: absolute;
			max-width: none; /* max-width:100%; をリセット */
			height: 150%;
			width: auto;
			top: 50%;
			left: 50%;
			-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
		}

		div.index_school_wrap > ul.school_list > li.private > div.index_school_photo:after{
			letter-spacing: normal;
			z-index: 999;
			position: absolute;
			top: 0.3em;
			right: 0.3em;
			content: "非公開";
			margin: 0;
			padding: 0.1em 1em;
			background-color: #ed87ad;
			font-size: 90%;
			color: #fff;
			display: inline-block;
			zoom: 1;
			*display: inline;
			border-radius: 2px; 
			-webkit-border-radius: 2px;
			-moz-border-radius: 2px;
		}


	/* コンテンツ 左サイド */
	div.index_school_wrap > ul.school_list > li > div.index_school_content{
		letter-spacing: normal;
		width: 70%;
		padding: 1em;
		display: inline-block;
		zoom: 1;
		*display: inline;
	}
	div.index_school_wrap > ul.school_list > li * h2{
		margin-top: 0.4em;
		margin-bottom: 0;
		position: relative;
	}
	div.index_school_wrap > ul.school_list > li * h2 > a{
		text-decoration: none;
		color: #4d4d4d;
		padding: 0em 0.5em;
		display: inline-block;
		zoom: 1;
		*display: inline;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		background-color: #ededed;

	}
		div.index_school_wrap > ul.school_list > li * h2 > a:hover{
			background: #f0f0f0;
			filter: alpha(opacity=75);
			opacity:0.75;
		}

	div.index_school_wrap > ul.school_list > li * ul.point_text_wrap{
		letter-spacing: -.4em;
		margin: 0;
		margin-top: 0.2em;
		margin-bottom: 0.8em;
		padding: 0;
	}
		div.index_school_wrap > ul.school_list > li * ul.point_text_wrap > li{
			letter-spacing: normal;
			margin-right: 1em;
			margin-bottom: 0.2em;
			padding: 0;
			color: #fcafaa;
			border-radius: 3px; 
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
			div.index_school_wrap > ul.school_list > li * ul.point_text_wrap > li:before{
				font-family: FontAwesome;
				font-weight: normal !important;
				content: "\f00c";
				font-size: 100%;
				margin-right: 0.4em;
			}


		div.index_school_wrap > ul.school_list > li * ul.top_items{
			margin: 0;
			padding: 0;
			letter-spacing: -.4em;
		}
		div.index_school_wrap > ul.school_list > li * ul.top_items > li{
			letter-spacing: normal;
			list-style-type: none;
			display: inline-block;
			zoom: 1;
			*display: inline;
			margin: 0;
			margin-right: 1em;
			margin-bottom: 0.6em;
			padding: 0;
		}
		div.index_school_wrap > ul.school_list > li * ul.top_items > li > a{
			margin: 0;
			padding-left: 0.6em;
			padding-right: 0.6em;
			padding-top: 0.4em;
			padding-bottom: 0.4em;
			background-color: #ededed;
			font-size: 90%;
			color: #4d4d4d;
			text-align: center;
			text-decoration: none;
			border-radius: 3px;
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;

			filter: alpha(opacity=75);
			opacity:0.75;
		}
			div.index_school_wrap > ul.school_list > li * ul.top_items > li > a:hover{
				background: #e6e6e6;
			}


		/* 共通 */
		div.index_school_wrap > ul.school_list > li * ul.top_items > li > a{
		}
			div.index_school_wrap > ul.school_list > li * ul.top_items > li > a:before{
				font-family: FontAwesome;
				font-weight: normal !important;
				font-size: 100%;
				margin-right: 0.4em;
			}
			/* location */
			div.index_school_wrap > ul.school_list > li * ul.top_items > li.location > a:before{
				content: "\f041";
			}
			/* size */
			div.index_school_wrap > ul.school_list > li * ul.top_items > li.size > a:before{
				content: "\f0c0";
			}
			/* japanese */
			div.index_school_wrap > ul.school_list > li * ul.top_items > li.japanese > a:before{
				content: "\f0e6";
			}


		div.index_school_wrap > ul.school_list > li * ul.top_items > li >  a.cat{
			position: relative;
			margin-right: 1em;
		}
		div.index_school_wrap > ul.school_list > li * ul.top_items > li >  a.cat:after{
			content: "";
			position: absolute;
			top: 50%; 
			margin-top: -0.6em;
			border-top: 0.6em solid transparent;
			border-bottom: 0.6em solid transparent;
			border-left: 0.6em solid #e6e6e6;
			right: -0.8em;
		}



	div.index_school_wrap > ul.school_list > li * p.desc {
		padding: 0;
		display: block;
		padding: 0.2em 0.6em;
		color: #999999;
	}
	div.index_school_wrap > ul.school_list > li * p.promotion_text {
		margin-left: 1em;
		color: #797000;
	}
		div.index_school_wrap > ul.school_list > li * p.promotion_text:before{
			font-family: FontAwesome;
			font-size: 90%;
			margin-right: 0.6em;
			background-color: #797000;
			padding: 0.3em 0.6em;
			font-weight: normal !important;
			content: "\f155";
			color: #fff;
			border-radius: 50%;
			-webkit-border-radius: 50%;
			-moz-border-radius: 50%;
		}

	div.index_school_wrap p.post_date {
		z-index: 99;
		margin: 0;
		padding: 0;
		display: block;
		white-space: nowrap;
		position: absolute;
		right: 0.2em;
		bottom: 0.2em;
		font-size: 94%;
		padding-left: 1.5em;
		color: #e2e2e2;
	}
		div.index_school_wrap  p.post_date:before {
			font-family: FontAwesome;
			font-size: 120%;
			position: absolute;
			padding: 0;
			margin: 0;
			left: 0;
			top: -0.2em;
			font-weight: normal !important;
			content: "\f017";
		}

			/* review box adjust */
			div.index_school_wrap > ul.school_list > li * div.reviews_view_wrap{
				margin-top: 0.6em;
				margin-bottom: 0.6em;
			}
			div.index_school_wrap * div.reviews_view_wrap > div.reviews_view{
				width: auto;
				padding-left: 0;
			}
			div.index_school_wrap * div.reviews_view_wrap > div.reviews_view:before{
				content: none;
			}
			div.index_school_wrap * div.reviews_view_wrap > div.reviews_view > div.stars {
				background-color: #f2f2f2;
				padding: 0.5em;
				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
				display: inline-block;
				zoom: 1;
				*display: inline;
			}
			div.index_school_wrap * div.reviews_view_wrap > div.reviews_view > div.stars > label {
				cursor: default;
			}
			div.index_school_wrap * div.reviews_view_wrap > div.reviews_view > div.stars > span{
				float: left;
				margin: 0;
				padding: 0;
				color: #c6c6c6;
			}





		/* ############### edit / delete button ############### */
		div.index_list_wrap dl.index_list dt div.edit_btn_wrap{
			letter-spacing: normal;
			overflow: hidden;
			position: absolute;
			right: 0;
			top: -0.2em;
			z-index: 555;
		}
			div.index_list_wrap dl.index_list dt div.edit_btn_wrap > ul{
				margin: 0 !important;
				padding: 0 !important;
			}
				div.index_list_wrap dl.index_list dt div.edit_btn_wrap > ul > li{
					list-style-type: none;
					padding: 0 !important;
					margin: 0 0 0 0.2em !important;
					float: left;
				}
					div.index_list_wrap dl.index_list dt div.edit_btn_wrap > ul > li > form{
						margin: 0;
					}
					div.index_list_wrap dl.index_list dt div.edit_btn_wrap > ul > li > form > button{
						margin: 0 !important;
						padding: 0.2em 0.8em;
					}


/* ############# Tab Contents ############# */
div.tab_wrap{
	clear: both;
	margin-top: 2em;
}
	div.tab_wrap ul{
		margin: auto;
		padding: 0;
		clear: both;
	}
		div.tab_wrap ul.tabs li{
			padding: 0.5em 1em;
			text-align: center;
			margin: 0;
			cursor: pointer;
			font-size: 90%;
			background-color: #e6e6e6;
			color: #4d4d4d;
			border-bottom: #0063a4 solid 0px;
			display: inline-block;
			zoom: 1;
			*display: inline;

			border-top-left-radius: 3px; 
			border-top-right-radius: 3px; 
			-webkit-border-top-left-radius: 3px;
			-webkit-border-top-right-radius: 3px;
			-moz-border-radius-topleft: 3px;
			-moz-border-radius-topright: 3px;

			box-shadow:inset 0px 10px 5px 2px #eaeaea;
			-webkit-box-shadow:inset 0px 10px 5px 2px #eaeaea;
			-moz-box-shadow:inset 0px 10px 5px 2px #eaeaea;
		}
		div.tab_wrap ul.tabs li a{
			text-decoration: none;
			color: #808080;
		}
			div.tab_wrap ul.tabs li.pic a{
				position: relative;
				padding-left: 2em;
			}
			div.tab_wrap ul.tabs li.pic a:before{
				font-family: "FontAwesome";
				font-size: 120%;
				position: absolute;
				margin: auto;
				height: auto;
				left: 0;
				top: 50%;
				transform: translateY(-50%);
				font-weight: normal !important;
				content: "\f030";
			}

		div.tab_wrap ul.tabs li:hover,
		div.tab_wrap ul.tabs li.active{
			background-color: #c1c1c1;
			border-bottom: #c1c1c1 solid 1px;

			box-shadow:inset 0px 10px 5px 2px #cccccc;
			-webkit-box-shadow:inset 0px 10px 5px 2px #cccccc;
			-moz-box-shadow:inset 0px 10px 5px 2px #cccccc;
		}
			div.tab_wrap ul.tabs li:hover a,
			div.tab_wrap ul.tabs li.active a{
				color: #ffffff;
			}


	div.tabCont{
		display: none;
		border-top: #c1c1c1 solid 2px !important;
	/*
		border-left: #e8e8e8 solid 1px !important;
		border-bottom: #e8e8e8 solid 1px !important;
		border-right: #e8e8e8 solid 1px !important;
	*/
		padding-top: 1.5em;
		padding-bottom: 1.5em;
		margin-top: 0 !important;
		border-top-left-radius: 0 !important; 
		border-top-right-radius: 0 !important; 
		-webkit-border-top-left-radius: 0 !important; /* Safari,Google Chrome用 */  
		-webkit-border-top-right-radius: 0 !important; /* Safari,Google Chrome用 */  
		-moz-border-radius-toptomleft: 0 !important; /* Firefox用 */  
		-moz-border-radius-toptomright: 0 !important; /* Firefox用 */  
	}

/* ############# Tab Contents ############# */


/* ############### Form Box ############### */

h2.form_cont_title{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0;
	padding: 0;
	line-height: 100px;
	font-size: 140%;
	font-weight: bold;
	text-align: center;
	color: #808080;

}







/* レビュー一覧表示 */

/* -- ########### Collapser ########### -- */
.show-class{
}
.hide-class{
}
	.show-class a,
	.hide-class a{
		background-color: #ebebeb;
		color: #808080;
		text-decoration: none;
		padding: 0.1em 0.6em;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
	.show-class a:hover,
	.hide-class a:hover{
		filter: alpha(opacity=75);
		opacity:0.75;
	}
	.show-class a:before,
	.hide-class a:before{
		font-family: FontAwesome;
		margin-right: 0.8em;
	}
	.show-class a:before{
		content: "\f056";
	}

	.hide-class a:before{
		content: "\f055";
	}
/* -- ########### Collapser ########### -- */



div.review_list_wrap{
	overlow: hidden;
}
	div.review_list_wrap > div.review_list{
		overlow: hidden;
		position: relative;
		display: block;
		color: #737373;
		padding: 1.4em 1em 1em 1em;
		margin-left: 0;
		margin-right: 0;
		margin-bottom: 1em;
		padding-bottom: 1.5em;
		background-color: #f4f4f4;

		border-radius: 2px; 
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
	}

	/*コンテンツ*/
	div.review_list_wrap > div.review_list > div.rep_content{
		overflow: hidden;
		max-height: 10em;
	}
	div.review_list_wrap > div.review_list > p{
		border-top: 1px solid #f1f1f1;
		padding-top: 1em;
		margin-top: 1em;
	}

	/* 学校レビューアイテム */
	div.review_list > div.school_item_wrap{
		display: block;
		margin-top: 1em;
		margin-bottom: 1em;
		border-bottom: 0 solid #f1f1f1;
	}
		div.review_list > div.school_item_wrap > ul{
			width: 100%;
			margin: 0;
			padding: 0;
			letter-spacing: -.4em;
		}
			div.review_list > div.school_item_wrap > ul > li{
				letter-spacing: normal;
				vertical-align: top;
				line-height: 1.2em;
				position: relative;
				margin: 0;
				padding: 0;
				padding-left: 10em;
				margin-bottom: 0.5em;
				width: 50%;
				color: #9e9e9e;
				font-weight: normal;
				list-style: none;
				display: inline-block;
				zoom: 1;
				*display: inline;
			}
				div.review_list > div.school_item_wrap > ul > li:before{
					position: absolute;
					left: 0;
					top: 0;
					content: attr(title) "";
					font-weight: bold;
				}

				div.review_list > > div.school_item_wrap > ul > li.author{
					margin-right: 1em;
				}
					div.review_list > div.school_item_wrap > ul > li:before,
					div.review_list > div.school_item_wrap > ul > li > a,
					div.review_list > div.school_item_wrap > ul > li > a:before{
						color: #9e9e9e;
					}


	/* 返信用コンタクト アクション */
	div.review_list > div.contact_action_wrap{
		margin-bottom: 0;
		border-bottom: 0 solid #f1f1f1;
	}
		div.review_list > div.contact_action_wrap > ul{
			width: auto;
			position: absolute;
			right: 0.2em;
			bottom: 0.2em;
		}
			div.review_list > div.contact_action_wrap > ul > li{
				margin-bottom: 0;
				color: #9e9e9e;
				font-weight: normal;
			}
				div.review_list > > div.contact_action_wrap > ul > li.author{
					margin-right: 1em;
				}
					div.review_list > div.contact_action_wrap > ul > li:before,
					div.review_list > div.contact_action_wrap > ul > li > a,
					div.review_list > div.contact_action_wrap > ul > li > a:before{
						color: #9e9e9e;
					}



	div.review_list > span.update {
		position: absolute;
		display: block;
		top: -4px;
		right: -4px;
		text-align: center;
		font-size: 80%;
		color: #808080;
		margin-left: 2em;
		padding: 0.2em 1em;
		background-color: #c6c6c6;

		border-top-left-radius: 1px; 
		border-top-right-radius: 1px; 
		border-bottom-left-radius: 1px; 
		-webkit-border-top-left-radius: 1px;
		-webkit-border-top-right-radius: 1px;
		-webkit-border-bottom-left-radius: 1px;
		-moz-border-radius-topleft: 1px;
		-moz-border-radius-topright: 1px;
		-moz-border-radius-bottomleft: 1px;
	}
		div.review_list > span.update:after {
			position: absolute;
			border: none;
			border-bottom: solid 4px transparent;
			content: '';
			position: absolute;
			right: 0;
			border-left: solid 4px #808080;
			bottom: -4px;
		}






	/* ############### edit / delete button for reply ############### */
	div.review_list > div.edit_btn_wrap{
		letter-spacing: normal;
		overflow: hidden;
		position: absolute;
		right: 0.2em;
		top: 1.5em;
		z-index: 555;
	}
		div.review_list > div.edit_btn_wrap > ul{
			margin: 0 !important;
			padding: 0 !important;
		}
			div.review_list > div.edit_btn_wrap > ul > li{
				list-style-type: none;
				padding: 0 !important;
				margin: 0 0 0 0.2em !important;
				float: left;
			}
				div.review_list > div.edit_btn_wrap > ul > li > form{
					margin: 0;
				}
				div.review_list > div.edit_btn_wrap > ul > li > form > button{
					margin: 0 !important;
					padding: 0.2em 0.8em;
				}




/* ############### レビュー平均用（追加） ############### */
div.reviews_avg_wrap{
	margin-top: 0;
	margin-bottom: 1.6em;
	text-align: center;
}
	div.reviews_avg_wrap > div.reviews_view{
		width: auto;
		padding-left: 0;
		font-size: 130%;
	}
	div.reviews_avg_wrap > div.reviews_view:before{
		content: none;
	}
	div.reviews_avg_wrap > div.reviews_view > div.stars {
		background-color: #f7f7f7;
		padding: 0.5em;
		margin: auto;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		display: inline-block;
		zoom: 1;
		*display: inline;
	}
	div.reviews_avg_wrap > div.reviews_view > div.stars > label {
		cursor: default;
	}
	div.reviews_avg_wrap > div.reviews_view > div.stars span{
		float: left;
		margin: 0;
		margin-left: 1em;
		padding: 0;
		color: #c6c6c6;
	}
	div.reviews_avg_wrap > div.reviews_view > div.stars a:hover > span{
		color: #6b6b6b;
	}


/* ############### レビュー公開用 ############### */
div.reviews_view_wrap{
	letter-spacing: -.4em;
}
div.reviews_view{
	letter-spacing: normal;
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
	position: relative;
	padding-left: 11em;
	color: #a6a6a6;

	width: 50%;
	display: inline-block;
	zoom: 1;
	*display: inline;
}
	div.reviews_view:before{
		content: attr(rev_tit) "";
		display: block;
		margin: 0;
		padding: 0;
		position: absolute;
		left: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	div.reviews_view > div.stars{
		margin: 0;
		padding: 0;
		display: inline-block;
		zoom: 1;
		*display: inline;
	}

		div.reviews_view > div.stars > label {
			float: left;
			margin: 0;
			padding: 0;
			line-height: 1.1em;
			font-size: 1.4em;
			margin-right: 0.4em;
			color: #c6c6c6;
			transition: all .2s;
			cursor: pointer;
		}
		div.reviews_view > div.stars > label.checked:before {
			content: "\f005";
			color: #FD4;
			transition: all .25s;
		}
		div.reviews_view > div.stars > label:last-child.checked ~ label:before {
			color: #FD4;
			text-shadow: 0 0 10px #952;
		}
		div.reviews_view > div.stars > input.star1:checked ~ label:before {
			color: #F62;
		}
		div.reviews_view > div.stars > label:hover{
			transform: rotate(10deg) scale(1.3);
		}
		div.reviews_view > div.stars > label:before{
			content: "\f006";
			font-family: "FontAwesome";
		}

/* ############### レビュー編集用 ############### */
div.reviews_form{
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
	position: relative;
	padding-left: 12em;
	color: #a6a6a6;
	font-size: 1.1em;
}
	div.reviews_form:before{
		content: attr(rev_tit) "";
		display: block;
		margin: 0;
		margin-top: 2px;
		padding: 0;
		line-height: 1em;
		width: 10em;
		font-weight: bold;
		position: absolute;
		left: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
		text-align: right;
	}

	div.reviews_form > div.stars{
		margin: 0;
		padding: 0;
		display: inline-block;
		zoom: 1;
		*display: inline;
	}

		div.reviews_form > div.stars > input{
			display: none;
			margin: 0;
		}
		div.reviews_form > div.stars > label {
			float: right;
			margin: 0;
			padding: 0;
			margin-right: 0.4em;
			line-height: 1.8em;
			font-size: 1.8em;
			color: #444;
			transition: all .2s;
			cursor: pointer;
		}
		div.reviews_form > div.stars > input:checked ~ label:before {
			content: "\f005";
			color: #FD4;
			transition: all .25s;
		}
		div.reviews_form > div.stars > input.star5:checked ~ label:before {
			color: #FD4;
			text-shadow: 0 0 10px #952;
		}
		div.reviews_form > div.stars > input.star1:checked ~ label:before {
			color: #F62;
		}
		div.reviews_form > div.stars > label:hover{
			transform: rotate(10deg) scale(1.3);
		}
		div.reviews_form > div.stars > label:before{
			content: "\f006";
			font-family: "FontAwesome";
		}

/* ############### レビュー ############### */

/* レビュー投稿用ボタン */
div.review_button_wrap{
	margin-top: 1em;
	margin-bottom: 1em;
	padding: 0;
	position: relative;
	overflow: hidden;
}
	div.review_button_wrap ul {
		letter-spacing: -.4em;
		margin: 0;
		padding: 0;
		text-align: center;
	}
	div.review_button_wrap ul li{
		letter-spacing: normal;
		margin: 0.5em;
		margin-left: 10%;
		margin-right: 10%;
		padding: 0;
		list-style-type: none;
		font-weight: bold;
		display: block;

	}
	div.review_button_wrap ul li a{
		font-size: 120%;
		padding: 1.5em;
		background: #ebebeb;
		border: 1px solid #e2e2e2;
		color: #777777 !important;
		display: block;
		text-decoration: none;
		display: block;
		width: 100%;
		height: 100%;

		box-shadow:inset 0px 2em 0.2em 0.2em #efefef;
		-webkit-box-shadow:inset 0px 2em 0.2em 0.2em #efefef;
		-moz-box-shadow:inset 0px 2em 0.2em 0.2em #efefef;

		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
		div.review_button_wrap ul li a:before{
			font-family: FontAwesome;
			content: "\f040";
			margin-right: 1em;
		}
		div.review_button_wrap ul li a:hover{
			filter: alpha(opacity=75);
			opacity:0.75;
		}

		/* 無効の場合のメッセージ */
		div.review_button_wrap.disable ul li{
			font-size: 120%;
			color: red;
			font-weight: normal;
		}



/* ############### Contact mail box ############### */
div.FormBoxWrap{
	width: 40%;
	display: block;
	margin: 40px auto;
}
	div.FormBoxWrap.wide{
		width: 80%;
	}
	div.FormBox{
		position: relative;
		margin: 10px 0;
		padding: 3em;
		min-height: 200px;
		vertical-align: middle;
		border: 1px solid #fefefe;
		box-shadow: 0 0px 20px rgba(0,0,0,0.2);
		background-color: #fff;

		border-radius: 10px; 
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
	}
	h2.FormBoxTitle{
		background-color: rgba(255,255,255,0.5);
		position: absolute;
		z-index: 99;
		top: 0.8em;
		left: 0;
		right: 0;
		margin: 0;
		padding: 0;
		font-size: 110%;
		font-weight: bold;
		text-align: center;
		color: #262626;

	}
	h2.bbs_title{
		margin: 0;
		padding: 0;
		font-size: 110%;
		font-weight: bold;
		text-align: center;
		color: #bfbfbf;
		position: relative;
	}
		h2.bbs_title:before{
			font-family: "FontAwesome";
			content: "\f064";
			font-size: 200%;
/*
			position: absolute;
			left: 0.5em;
			top: 50%;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
*/
		}




	/*写真分の高さの padding 追加 */
	div.FormBox div.form_reg.form_first{
		margin-top: 13em;
	}

	/********* input forms *********/
	div.FormBox input{
		width: 100%;
		font-weight: normal;
	}
	div.FormBox textarea{
		height: 10em;
		font-weight: normal;
	}
	div.FormBox div.confirm_wrap,
	div.FormBox div.input_wrap{
		margin-top: 1em;
	}
	div.FormBox div.div_wrap{
		margin-top: 5em;
	}
	div.FormBox div.confirm_wrap{
		margin-top: 2em;
	}
	div.FormBox p.text_note{
		text-align: center;
		margin-top: 0.3em;
		margin-bottom: 0.3em;
	}

		div.FormBox div.confirm_wrap > p.confirm_cont,
		div.FormBox div.input_wrap textarea.form_text,
		div.FormBox div.input_wrap select.form_text,
		div.FormBox div.input_wrap input.form_text{
			border:none !important;
			border-top: 0;
			border-right: 0;
			border-left: 0;
			border-bottom: 1px solid #bfbfbf !important;
		}
			div.FormBox div.confirm_wrap > p.confirm_label{
				font-size: 90%;
				margin-top: 1em;
				margin-bottom: 0;
			}
			div.FormBox div.confirm_wrap > p.confirm_cont{
				margin-top: 0;
				background-color: #efefef;
				padding: 0.5em;
				min-height: 2.5em;
			}


		div.FormBox div.input_wrap > label{
			z-index: 10;
			position: relative;
			bottom: -0.2em;
			padding: 0;
			display: inline-block;
			zoom: 1;
			*display: inline;

		}
		div.FormBox div.input_wrap > label.err_txt{
			color: red;
			font-weight: bold;
		}








	div.FormBox div.school_header {
		margin-top: 0;
		background-color: #f2f3f3;
		overflow: hidden;
		position: relative;
		height: auto;
		width: 100%;
		display: block;

		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
			div.FormBox div.school_header:before {
				content:"";
				display: block;
				padding-top: 30%;
			}
			div.FormBox div.school_header:after{
				z-index: 10;
				background-color: black;
				height: 100%;
				width: 100%;
				content: "";
				opacity: 0.2;
				position: absolute;
				left: 0;
				top: 0;
				display: block;
			}

			div.FormBox div.school_header img{
				z-index: 1;
				width: 120%;
				position: absolute;
				top: 50%;
				left: 50%;
				-webkit-transform: translate(-50%, -50%);
				-ms-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
			}

		div.FormBox div.school_header div.header_title{
			z-index: 99;
			position: absolute;
			top: 40%;
			left: 50%;
			width: 100%;
			padding: 0.6em;
			display: block;
			text-align: center;
			background-color: rgba(191,191,191,0.6);
			-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
		}
			div.FormBox div.school_header div.header_title h3{
				font-size: 140%;
				text-align: center;
				color: #fff;
				margin: 0;
				padding: 0;
				line-height: 1.4em;
				padding-top: 0.2em;
				border-top: 0 solid #e6e6e6;
				display: inline-block;
				zoom: 1;
				*display: inline;

				text-shadow: 
				        #a6a6a6 1px 1px 3px, #cccccc -1px -1px 3px,
				        #a6a6a6 -1px 1px 3px, #a6a6a6 1px -1px 3px,
				        #a6a6a6 0px 1px 3px, #a6a6a6  0-1px 3px,
				        #a6a6a6 -1px 0 3px, #a6a6a6 1px 0 3px;
			}
				div.FormBox div.school_header div.header_title h3 > span{
					padding-right: 1em;
					margin-right: 0.5em;
					position: relative;
				}
					div.FormBox div.school_header div.header_title h3 > span:after{
						content: "|";
						font-size: 80%;
						position: absolute;
						right: 0;
						top: 50%;
						-webkit-transform: translateY(-50%);
						-ms-transform: translateY(-50%);
						transform: translateY(-50%);

					}

			div.FormBox div.school_header div.header_title p.city{
				font-size: 85%;
				margin: 0;
				line-height: 1em;
				padding-bottom: 0.2em;
				color: #333333;
				text-align: center;
			}

/*
	div.FormBox div.photo_wrap{
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,-10%);
		width: 16em;
		margin: auto;
	}

		div.FormBox div.photo{
			width: 100%;
			height: auto;
			margin: auto;
			max-width: 100%;
			position: relative;

		}
				div.FormBox div.photo::before{
					content: "";
					display: block;
					padding-top: 100%;
				}

			div.FormBox div.photo > p.admin_name{
				background-color: rgba(255,255,255,0.5);
				position: absolute;
				z-index: 99;
				bottom: 0.8em;
				left: 0;
				right: 0;
				margin: 0;
				padding: 0.2em 0.2em;
				font-size: 110%;
				font-weight: bold;
				text-align: center;
				color: #404040;
			}

		div.FormBox div.photo img{
			z-index: 98;
			width: 100%;
			height: auto;
			line-height: 0;
			position: absolute;
			bottom: 0;

			border: 1px solid #ddd;
			padding: 3px;
			height: auto;
			background: #f8f8f8;

			border-radius: 50%; 
			-webkit-border-radius: 50%;
			-moz-border-radius: 50%;
		}

*/

		/* dl 追加情報 */
		div.FormBox div.contact_addition_wrap{
			margin-top: 2em;
			background-color: #f7f7f7;
			padding: 1em;
			padding-top: 2em;
			position: relative;

			border-radius: 1em; 
			-webkit-border-radius: 1em;
			-moz-border-radius: 1em;
		}
			div.FormBox div.contact_addition_wrap > p.contact_addition_title{
				margin: 0;
				font-size: 110%;
				color: #bfbfbf;
				font-weight: bold;
				text-align: center;
				position: absolute;
				top: 0.5em;
				left: 50%;
				transform: translateX(-50%);
			}

		div.FormBox div.contact_addition_wrap > div.contact_addition{
			background-color: #efefef;
			font-size: 90%;
			padding: 0.4em;
			position: relative;
			margin-top: 1.5em;
			padding-left: 6.5em;
			border-radius: 2px; 
			-webkit-border-radius: 2px;
			-moz-border-radius: 2px;
		}
			div.FormBox div.contact_addition_wrap > div.contact_addition > span.tit{
				padding: 0.2em 0.8em;
				color: #fff;
				font-size: 90%;
				background-color: #bfbfbf;
				position: absolute;
				display: block;
				top: -10px;
				left: -4px;
				width: 6em;
				text-align: center;

				border-top-left-radius: 1px; 
				border-top-right-radius: 1px; 
				border-bottom-right-radius: 1px; 
				-webkit-border-top-left-radius: 1px;
				-webkit-border-top-right-radius: 1px;
				-webkit-border-bottom-right-radius: 1px;
				-moz-border-radius-topleft: 1px;
				-moz-border-radius-topright: 1px;
				-moz-border-radius-bottomright: 1px;
			}

			div.FormBox div.contact_addition_wrap > div.contact_addition > span.tit::before{
				position: absolute;
				border: none;
				border-bottom: solid 4px transparent;
				content: '';
				position: absolute;
				left: 0;
				border-right: solid 4px #808080;
				bottom: -4px;
			}


			div.FormBox div.contact_addition_wrap > div.contact_addition > ul{
				margin: 0;
				padding: 0;
				list-style: none;
			}

				div.FormBox div.contact_addition_wrap > div.contact_addition > ul > li{
					margin-left: 0;
					padding: 0;
					padding-left: 1.5em;
					position: relative;
				}
					div.FormBox div.contact_addition_wrap > div.contact_addition > ul > li:before {
						font-family: FontAwesome;
						font-size: 120%;
						position: absolute;
						left: 0;
						top: -0.2em;
						color: #ffbcbc;
						content: "\f06a";
						font-weight: normal !important;
					}










	div.FormBox div.returnBtn a{
		color: #7e5454;
		padding: 10px 20px;
		display: block;
		width: 80%;
		margin: 20px auto;
		text-align: center;
		text-decoration: none;

		border-radius: 4px; 
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
	}
		div.FormBox div.returnBtn a{
			background: #cecece;
			border: 1px solid #adadad;

		 	box-shadow:inset 0px 15px 2px 2px #d8d8d8;
		 	-webkit-box-shadow:inset 0px 15px 2px 2px #d8d8d8;
		 	-moz-box-shadow:inset 0px 15px 2px 2px #d8d8d8;
		}
		div.FormBox div.returnBtn a:hover{
			filter: alpha(opacity=75);
			opacity:0.75;
		}

/* ############### Contact mail box ############### */

/* ############### reply form ############### */

div.rep_form_wrap{
	padding: 1em;
	border: 3px solid #d9d9d9;
	background-color: #f4f4f4;
	border-radius: 3px; 
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
	div.rep_form_wrap > h3{
		text-align: center;
		padding: 0.5em;
		margin-top: 0;
		margin-bottom: 0;
		background-color: #efefef;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}




	/* ############### mypage link button ############### */
	div.mypage_button_wrap{
		margin-top: 1em;
		margin-bottom: 1.5em;
		text-align: center;
	}
		div.mypage_button_wrap > p{
			text-align: center;
			margin: 0.4em;
			clear: both;
		}

		/*アカウント名*/
		div.mypage_button_wrap > p.account_button{
			margin: 0;
			padding: 0;
		}
		div.mypage_button_wrap > p.account_button > span{
			font-size: 130%;
			color: #a3a3a3;

			display: inline-block;
			zoom: 1;
			*display: inline;

			border-radius: 3px; 
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
		}
			div.mypage_button_wrap > p.account_button > span:before{
				font-size: 140%;
				font-family: FontAwesome;
				content: "\f007";
				margin-right: 0.6em;
			}


		/*マイページログインボタン*/
		div.mypage_button_wrap > p.mypage_link_button{
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
			div.mypage_button_wrap > p.mypage_link_button > a{
				background-color: #3198cf;
				color: #fff;
				text-decoration: none;
				padding: 0.5em 1em;
				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
	/*
			div.mypage_button_wrap > p.mypage_link_button > a:before{
				font-family: FontAwesome;
				content: "\f007";
				margin-right: 0.6em;
			}
	*/
				div.mypage_button_wrap > p.mypage_link_button > a:hover{
					filter: alpha(opacity=75);
					opacity:0.75;
				}



/* ############### Visa Support Text ############### */
div.visa_support_wrap{
	overflow: hidden;
	margin-bottom: 1em;
	padding: 1em;
	padding-left: 5em;
	background-color: #f5f5f5;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	position: relative;
}
	div.visa_support_wrap:before{
		margin: 0;
		padding: 0;
		display: block;
		font-family: "Font Awesome 5 Free";
		font-style: normal;
		font-weight: 600;
		content: "\f02c";
		font-size: 1.8rem;
		position: absolute;
		top: 50%;
		left: 1em;
		color: #26374a;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);

		transform-origin: center center;
		animation: scale-up 3s infinite;
	}
	@keyframes scale-up {
		0%, 92% {
			transform: translateY(-50%) scale(1);
		}
		93%, 100% {
			transform: translateY(-50%) scale(1.2);
		}
	}

	div.visa_support_wrap p{
		color: #26374a;
	}

/* ############### Promotion List ############### */
div.promotion_wrap{
	overflow: hidden;
	margin-top: 1em;
	margin-bottom: 1em;
	padding: 1em;
	padding-top: 0;
	background-color: #fcf9fc;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
	div.promotion_wrap > h3{
		margin-top: 1em;
		margin-bottom: 1em;
		font-size: 160%;
		text-align: center;
		color: #f2dbdd;
	}
	div.promotion_wrap > div.promotion_content_wrap{
		overflow: hidden;
		padding: 0;
		margin-bottom: 0.5em;
		background-color: #fff2f4;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		position: relative;
	}
		div.promotion_wrap > div.promotion_content_wrap > h4{
			margin: 0;
			position: relative;
		}
			div.promotion_wrap > div.promotion_content_wrap > h4.private:after{
				content: "非公開";
				margin: 0;
				position: absolute;
				top: 0.2rem;
				right: 0.2rem;
				padding: 0.1em 1em;
				background-color: #ed87ad;
				font-size: 0.8rem;
				font-weight: normal;
				color: #fff;
				display: inline-block;
				zoom: 1;
				*display: inline;
				border-radius: 2px; 
				-webkit-border-radius: 2px;
				-moz-border-radius: 2px;
			}
			div.promotion_wrap > div.promotion_content_wrap > h4 > a{
				width: 100%;
				padding: 0.5em;
				padding-left: 2em;
				text-decoration: none;
				display: block;
				color: #d16366;
				position: relative;
				background-color: #ffe8ea;
			}
			div.promotion_wrap > div.promotion_content_wrap > h4 > a:before{
				font-family: FontAwesome;
				content: "\f055";
				margin-right: 0.6em;
				position: absolute;
				left: 0.5em;
				top: 50%;
				-webkit-transform: translateY(-50%);
				-ms-transform: translateY(-50%);
				transform: translateY(-50%);
			}
			div.promotion_wrap > div.promotion_content_wrap > h4 > a.open:before{
				content: "\f056";
			}
				div.promotion_wrap > div.promotion_content_wrap > h4 > a:hover{
					filter: alpha(opacity=75);
					opacity:0.75;
				}
		div.promotion_wrap > div.promotion_content_wrap > div.promotion_content h5{
			margin-top: 1.5em;
			margin-bottom: 1em;
			font-size: 160%;
			text-align: center;
			color: #d1d1d1;
		}

		div.promotion_wrap > div.promotion_content_wrap > div.promotion_content h6{
			margin: 0;
			font-size: 1rem;
		}

		div.promotion_wrap > div.promotion_content_wrap > div.promotion_content > div.promotion_detail{
			padding: 1em;

		}
			div.promotion_wrap > div.promotion_content_wrap > div.promotion_content > div.promotion_detail > p.promo_description{
			}
			div.promotion_wrap > div.promotion_content_wrap > div.promotion_content > div.promotion_detail > p.promo_date{
				color: #bfbfbf;
				margin-top: 0;
				margin-bottom: 0;
				border-bottom: 1px dashed #e0e0e0;
				display: inline-block;
				zoom: 1;
				*display: inline;
			}
			div.promotion_wrap > div.promotion_content_wrap > div.promotion_content > div.promotion_detail > p.promo_date:before{
				font-family: FontAwesome;
				content: "\f073";
				margin-right: 0.5em;
			}

		/*最初は非表示*/
		div.promotion_wrap > div.promotion_content_wrap > div.promotion_content{
			display: none;
			padding: 1em;
			animation: show 0.5s linear 0s;
		}

		@keyframes show{
			from{
				opacity: 0;
			}
			to{
				opacity: 1;
			}
		}




		/* ############### edit / delete button ############### */
		div.promotion_wrap div.edit_btn_wrap{
			letter-spacing: normal;
			overflow: hidden;
			position: absolute;
			right: 0.5em;
			top: 0.5em;
			z-index: 555;
		}
			div.promotion_wrap div.edit_btn_wrap > ul{
				margin: 0 !important;
				padding: 0 !important;
			}
				div.promotion_wrap div.edit_btn_wrap > ul > li{
					list-style-type: none;
					padding: 0 !important;
					margin: 0 0 0 0.2em !important;
					float: left;
				}
					div.promotion_wrap div.edit_btn_wrap > ul > li > form{
						margin: 0;
					}
					div.promotion_wrap div.edit_btn_wrap > ul > li > form > button{
						margin: 0 !important;
						padding: 0.2em 0.8em;
					}



/* ############### Course List ############### */
div.course_wrap{
	overflow: hidden;
	margin-top: 1em;
	margin-bottom: 1em;
}
	div.course_wrap > h3.course_title{
		margin-top: 1.5em;
		margin-bottom: 1em;
		font-size: 160%;
		text-align: center;
		color: #d1d1d1;
	}
	div.course_wrap > div.course_content_wrap{
		overflow: hidden;
		padding: 0;
		margin-bottom: 0.5em;
		background-color: #f5f5f5;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		position: relative;
	}
		div.course_wrap > div.course_content_wrap > h4{
			margin: 0;
			line-height: 1.2em;
			position: relative;
		}
			div.course_wrap > div.course_content_wrap > h4.private:after{
				content: "非公開";
				margin: 0;
				position: absolute;
				top: 0.2rem;
				right: 0.2rem;
				padding: 0.1em 1em;
				background-color: #ed87ad;
				font-size: 0.8rem;
				font-weight: normal;
				color: #fff;
				display: inline-block;
				zoom: 1;
				*display: inline;
				border-radius: 2px; 
				-webkit-border-radius: 2px;
				-moz-border-radius: 2px;
			}
			div.course_wrap > div.course_content_wrap > h4 > a > span.course_sub_wrap,
			div.course_wrap > div.course_content_wrap > h4 > a > span.course_cat{
				font-size: 0.8rem !important;
				margin: 0.4em 0;
				line-height: 0.8em;
				display: block;
				font-weight: normal;
				z-index: 999;
			}
				div.course_wrap > div.course_content_wrap > h4 > a > span.course_sub_wrap > span{
					margin: 0 0.5em;
					border-bottom: 1px dashed #d3d3d3;
				}

			div.course_wrap > div.course_content_wrap > h4 > a{
				width: 100%;
				padding: 0.6em;
				padding-left: 2em;
				text-decoration: none;
				display: block;
				color: #4d4d4d;
				position: relative;
				background-color: #e8e8e8;
			}
			div.course_wrap > div.course_content_wrap > h4 > a:before{
				font-family: FontAwesome;
				content: "\f054";
				margin-right: 0.6em;
				position: absolute;
				left: 0.5em;
				top: 50%;
				-webkit-transform: translateY(-50%);
				-ms-transform: translateY(-50%);
				transform: translateY(-50%);
			}
			div.course_wrap > div.course_content_wrap > h4 > a.open:before{
				content: "\f078";
			}
				div.course_wrap > div.course_content_wrap > h4 > a:hover{
					filter: alpha(opacity=75);
					opacity:0.75;
				}
		div.course_wrap > div.course_content_wrap > div.course_content h5{
			margin-top: 1.5em;
			margin-bottom: 1em;
			font-size: 160%;
			text-align: center;
			color: #d1d1d1;
		}

		div.course_wrap > div.course_content_wrap > div.course_content h6{
			margin: 0;
			font-size: 1rem;
		}

		div.course_wrap > div.course_content_wrap > div.course_content > div.course_category{
			text-align: right;
		}
			div.course_wrap > div.course_content_wrap > div.course_content > div.course_category > p{
				background-color: #efefef;
				border-bottom: none;
				padding: 0.4em 0.6em;
				margin: 0;

				display: inline-block;
				zoom: 1;
				*display: inline;
				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
				div.course_wrap > div.course_content_wrap > div.course_content > div.course_category > p:before{
					font-family: FontAwesome;
					content: "\f02b";
					margin-right: 0.6em;
					font-size: 120%;
				}

		div.course_wrap > div.course_content_wrap > div.course_content > div.course_description{
			margin: 1em 0;
			padding: 0 1em;
			border-bottom: 1px dashed #e0e0e0;
		}
		div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap{
			letter-spacing: -.4em;
			margin-bottom: 1em;
		}
			div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div{
				vertical-align: top;
				width: calc(100% / 2);
				letter-spacing: normal;
				position: relative;
				display: inline-block;
				zoom: 1;
				*display: inline;
				padding-left: 0.5em;
				padding-right: 0.5em;
				margin-bottom: 1em;
			}
			div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div.full{
				width: 100%;
			}
				div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div > p{
					margin: 0;
				}

				/* スタート日 */
				div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div > div.start_dates{
					overflow: hidden;
				}
				div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div > div.start_dates > ul{
					margin: 0;
					padding: 0;
					padding-left: 5em;
					letter-spacing: -.4em;
					position: relative;
				}
					div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div > div.start_dates > ul:before{
						letter-spacing: normal;
						content: attr(month_data) "";
						position: absolute;
						left: 0;
						top: 0.2em;
						background-color: #e5e5e5;
						border-bottom: none;
						padding: 0 0.6em;
						margin: 0;
						border-radius: 3px; 
						-webkit-border-radius: 3px;
						-moz-border-radius: 3px;

					}
					div.course_wrap > div.course_content_wrap > div.course_content > div.course_items_wrap > div > div.start_dates > ul > li{
						letter-spacing: normal;
						margin: 0;
						padding: 0;
						padding: 0.1em 0;

						list-style-type: none;
						margin-right: 0.5em;
						margin-bottom: 0.2em;
						border-bottom: 1px solid #e5e5e5;
						display: inline-block;
						zoom: 1;
						*display: inline;
						/*
						background-color: #efefef;
						border-radius: 3px; 
						-webkit-border-radius: 3px;
						-moz-border-radius: 3px;
						*/
					}


		/* CO-OP、OFF Campus、Post Graduation など */
		div.course_wrap > div.course_content_wrap > div.course_content * div.selected_item_wrap{
			margin: 0;
			padding: 0;
			display: block;
		}
			div.course_wrap > div.course_content_wrap > div.course_content * div.selected_item_wrap ul{
				padding: 0;
				margin: 0;
				letter-spacing: -.4em;
		}
				div.course_wrap > div.course_content_wrap > div.course_content * div.selected_item_wrap ul li{
					letter-spacing: normal;
					white-space: nowrap;
					font-size: 90%;
					list-style-type: none;
					margin: 0;
					margin-right: 1em;
					margin-bottom: 0.4em;
					padding: 0.2em 0.5em;
					color: #8c8c8c;
					background-color: #efefef;

					display: inline-block;
					zoom: 1;
					*display: inline;

					border-radius: 3px; 
					-webkit-border-radius: 3px;
					-moz-border-radius: 3px;
				}
				div.course_wrap > div.course_content_wrap > div.course_content * div.selected_item_wrap ul li:before{
					font-family: FontAwesome;
					font-size: 120%;
					color: #ffbcbc;
					font-weight: bold;
					content: "\f00d";
					margin-right: 0.5em;
				}
				div.course_wrap > div.course_content_wrap > div.course_content * div.selected_item_wrap ul li.checked:before{
					content: "\f10c";
					color: #5984bd;
				}





		/* 料金 */
		div.course_wrap > div.course_content_wrap > div.course_content > div.course_fee{
			margin-bottom: 1em;
		}


		/* 追加情報 INFO */
		div.course_wrap > div.course_content_wrap > div.course_content p.text_info,
		div.course_wrap > div.course_content_wrap > div.course_content p.text_notice{
			margin: 0;
			color: #a6a6a6;
			padding-left: 1.8em;
			position: relative;
			font-size: 90%;
		}
		div.course_wrap > div.course_content_wrap > div.course_content p.text_notice{
			color: #ffbcbc;
		}
			div.course_wrap > div.course_content_wrap > div.course_content p.text_info:before,
			div.course_wrap > div.course_content_wrap > div.course_content p.text_notice:before{
				font-family: FontAwesome;
				content: "\f05a";
				font-size: 120%;
				position: absolute;
				left: 0;
				top: -0.2em;
			}
			div.course_wrap > div.course_content_wrap > div.course_content p.text_notice:before{
				content: "\f06a";
			}
		/* 授業料未登録テキスト */
		div.course_wrap > div.course_content_wrap > div.course_content p.req_contact{
			margin-top: 1em;
			margin-bottom: 1em;
			color: #bfbfbf;
		}

		/* 授業料 DL */
		ul.tuition {
			margin: 1em auto;
			overflow: hidden;
			width: 100%;
			height: auto;
			margin: 0;
			padding: 0;
			letter-spacing: -.4em;
/*
			background-color: #e6e6e6;
			border: solid 1px #d9d9d9;

			border-radius: 3px; 
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
*/
		}
			ul.tuition > li{
				letter-spacing: normal;
				width: 25%;
				display: inline-block;
				zoom: 1;
				*display: inline;
				margin: 0;
				margin-bottom: 1px;
				padding: 0.5em;
			}
			ul.tuition > li.week{
				background-color: #e8e8e8;
				color: #737373;
				text-align: center;
				border-radius: 3px; 
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
			ul.tuition > dt,
			ul.tuition > dd {
				border-top: 1px solid  #d9d9d9;
				color: #737373;
				color: #737373;
			}
			ul.tuition > dt:first-child,
			ul.tuition > dt:first-child + dd  {
				border-top: none;
			}
			ul.tuition > dt {
				width: 15%;
				float: left;
				display: block;
				text-align: center;
				padding: 0.5em;
				font-weight: bold;
			}
			ul.tuition > dd {
				width: 50%;
				display: block;
				color: #737373;
				padding: 0.5em;
				background-color: #f4f4f4;
				margin-left: 0;
				margin-right: 0;
				margin-left: 15%;
				padding-bottom: 0.5em;
				box-sizing: border-box;
			}



		/*最初は非表示*/
		div.course_wrap > div.course_content_wrap > div.course_content{
			display: none;
			padding: 1em;
			animation: show 0.5s linear 0s;
		}
		@keyframes show{
			from{
				opacity: 0;
			}
			to{
				opacity: 1;
			}
		}




	p.courseUpdateDate{
		margin-top: 3em;
		text-align: right;
		color: #a6a6a6;
	}
		p.courseUpdateDate > span:before {
			font-family: FontAwesome;
			font-size: 110%;
			padding: 0;
			margin: 0;
			margin-right: 0.4em;
			content: "\f017";
		}







		/* ############### edit / delete button ############### */
		div.course_wrap div.edit_btn_wrap{
			letter-spacing: normal;
			overflow: hidden;
			position: absolute;
			right: 0.5em;
			top: 0.5em;
			z-index: 555;
		}
			div.course_wrap div.edit_btn_wrap > ul{
				margin: 0 !important;
				padding: 0 !important;
			}
				div.course_wrap div.edit_btn_wrap > ul > li{
					list-style-type: none;
					padding: 0 !important;
					margin: 0 0 0 0.2em !important;
					float: left;
				}
					div.course_wrap div.edit_btn_wrap > ul > li > form{
						margin: 0;
					}
					div.course_wrap div.edit_btn_wrap > ul > li > form > button{
						margin: 0 !important;
						padding: 0.2em 0.8em;
					}



/* ############### Register form ############### */
div.form_cont{
	position: relative;
	overflow: hidden;
	margin: 10px 0;
}
	/* フォームタイトル */
	div.form_cont h3.form_title{
		margin-top: 1.5em;
		font-size: 160%;
		text-align: center;
		color: #d1d1d1;
	}

	div.form_cont div.optional_form_wrap{
		margin-top: 1.5em;
		padding: 1em;
		background-color: #f4f4f4;
		border-radius: 3px; 
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;

	}
		div.form_cont div.optional_form_wrap h3.option_title{
			margin-top: 0;
			margin-bottom: 1.5em;
			font-size: 160%;
			text-align: center;
			color: #d1d1d1;
		}
	div.form_cont input{
	}
	div.form_cont input:disabled{
		color: #c6cccc;
	}
	div.form_cont textarea{
		height: 200px;
	}
		div.form_cont textarea.height_s{
			height: 100px;
		}
		div.form_cont textarea.height_auto{
			height: auto;
		}
	div.form_cont div.confirm_wrap,
	div.form_cont div.input_wrap{
		position: relative;
		margin-top: 1.5em;
	}
	div.form_cont div.div_wrap{
		margin-top: 5em;
	}

	div.form_cont div.confirm_wrap > p.confirm_cont,
	div.form_cont div.input_wrap textarea.form_text,
	div.form_cont div.input_wrap select.form_text,
	div.form_cont div.input_wrap input.form_text{
		border:none !important;
		border-top: 0;
		border-right: 0;
		border-left: 0;
		border-bottom: 1px solid #bfbfbf !important;
	}
	div.form_cont div.input_wrap input.form_text.indent1{
		padding-left: 1.5em;
	}
			div.form_cont div.confirm_wrap > p.confirm_label{
				font-size: 90%;
				margin-top: 1em;
				margin-bottom: 0;
			}

			div.form_cont div.confirm_wrap > p.confirm_cont{
				margin-top: 0;
				background-color: #efefef;
				padding: 0.5em;
				min-height: 2.5em;
			}

	div.form_cont  div.input_wrap > label{
		z-index: 10;
		position: relative;
		bottom: -0.1em;
		padding: 0;
		font-weight: bold;
	}
	div.form_cont div.input_wrap > label.err_txt{
		color: red;
		font-weight: bold;
	}
	div.form_cont div.input_wrap > input.form_text.err_form,
	div.form_cont div.input_wrap > textarea.form_text.err_form{
		border: 1px solid red !important;
	}
	div.form_cont select > option:disabled{
		background-color: #ffffff;
		font-size: 120%;
		font-weight: bold;
		color: #00a0dd;
	}
	div.form_cont select > optgroup{
		background-color: #e5edef;
	}

	/*Input 内に文字乗せる */
	div.form_cont div.input_wrap div.text_ext{
		position: relative;
		z-index: 9;
	}
		div.form_cont div.input_wrap div.text_ext:before,
		div.form_cont div.input_wrap div.text_ext:after{
			position: absolute;
			top: 50%;
			z-index: 10;
			color: #b3b3b3;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
			div.form_cont div.input_wrap div.text_ext:before{
				content: attr(text_data_l) "";
				left: 0.5em;
			}
			div.form_cont div.input_wrap div.text_ext:after{
				content: attr(text_data_r) "";
				right: 0.5em;
			}
		div.form_cont div.input_wrap div.text_ext input{
			position: relative;
		}



	/* 2分割（7対3） */
	div.form_cont div.inline7_3{
		letter-spacing: -.4em;
	}
		div.form_cont div.inline7_3 div{
			letter-spacing: normal;
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
		div.form_cont div.inline7_3 div:first-child{
			width: calc(70% - 2px);
			margin-right: 2px;
		}
		div.form_cont div.inline7_3 div:last-child{
			width: 30%;
		}
	/* 2分割（8対2） */
	div.form_cont div.inline8_2{
		letter-spacing: -.4em;
	}
		div.form_cont div.inline8_2 div{
			letter-spacing: normal;
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
		div.form_cont div.inline8_2 div:first-child{
			width: calc(80% - 2px);
			margin-right: 2px;
		}
		div.form_cont div.inline8_2 div:last-child{
			width: 20%;
		}

	/* 4分割 */
	div.form_cont div.inline4{
		letter-spacing: -.4em;
	}
		div.form_cont div.inline4 > div{
			width: calc(((100% / 4) - 0.1px) - 2px);
			letter-spacing: normal;
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
			margin-right: 2px;
		}
			div.form_cont div.inline4 > div:last-child{
				width: calc((100% / 4) - 0.1px);
				margin-right: 0;
			}
	/* 3分割 */
	div.form_cont div.inline3{
		letter-spacing: -.4em;
	}
		div.form_cont div.inline3 > div{
			width: calc(((100% / 3) - 0.1px) - 2px);
			letter-spacing: normal;
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
			margin-right: 2px;
		}
			div.form_cont div.inline3 > div:last-child{
				width: calc((100% / 3) - 0.1px);
				margin-right: 0;
			}
	/* 2分割 */
	div.form_cont div.inline2{
		letter-spacing: -.4em;
	}
		div.form_cont div.inline2 > div{
			width: calc((100% / 2) - 2px);
			letter-spacing: normal;
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
			margin-right: 2px;
		}
			div.form_cont div.inline2 > div:last-child{
				width: calc(100% / 2);
				margin-right: 0;
			}





	/* Range Slide Bar */
	div.form_cont div.input_range_list{
		width: 100%;
		position: relative;
		padding-top: 3em;
	}
		div.form_cont div.input_range_list > div.range_total{
			z-index: 1;
			color: #c9c9c9;
			font-size: 400%;
			font-weight: bold;
			position: absolute;
			top: 50%;
			left: 50%;
			-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
			filter: alpha(opacity=40);
			opacity:0.40;
		}


		div.form_cont div.input_range_list > ul{
			z-index: 10;
			position: relative;
			padding: 0;
			margin: 0;

		}
			div.form_cont div.input_range_list > ul > li{
				padding: 0.4em 0;
				margin: 0;
				list-style-type: none;
				position: relative;
			}
				/* MS Edge のみ */
				@supports (-ms-ime-align: auto) {
					div.form_cont div.input_range_list > ul > li{
						padding: 0;
					}
				}
		div.form_cont div.input_range_list > ul > li > span{
			width: 20%;
			display: block;
			font-size: 80%;
			color: #757575;
			position: absolute;
			top: 50%;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
		div.form_cont div.input_range_list > ul > li > span.nationality_text{
			padding-right: 0.5em;
			text-align: right;
			left: 0;
		}
		div.form_cont div.input_range_list > ul > li > span.range_value{
			padding-left: 0.5em;
			text-align: left;
			right: 0;
		}

		div.form_cont div.input_range_list > ul > li > input.form_range[type=range]{
			width: 60%;
			display: block;
			margin: 0 auto;
			padding: 0;
			filter: alpha(opacity=40);
			opacity:0.40;
		}

	/* 2分割 + 矢印 */
	div.form_cont div.inline2_arrow{
		letter-spacing: -.4em;
	}
		div.form_cont div.inline2_arrow div{
			letter-spacing: normal;
			width: calc(50% - 2em);
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
		div.form_cont div.inline2_arrow div:first-child:after{
			height: 2px;
			background: #bfbfbf;
			content: "";
			position: absolute;
			width: 1em;
			right: -2em;
			top: 50%;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
		div.form_cont div.inline2_arrow div:first-child:before{
			content: "";
			position: absolute;
			border-top: 0.6em solid transparent;
			border-bottom: 0.6em solid transparent;
			border-left: 0.6em solid #bfbfbf;
			right: -2.5em;
			top: 50%;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
		div.form_cont div.inline2_arrow div:last-child{
			margin-left: 4em;
		}




	/* スタート日 */
	div.form_cont div.start_date_wrap{
		position: relative;
	}
		div.form_cont div.start_date_wrap textarea#start_date{
			height: 3em;
			margin: 0;
			padding-left: 6em;
		}
		/* カレンダー表示ボタン */
		div.form_cont div.start_date_wrap .ui-datepicker-trigger{
			position: absolute;
			top: 0;
			left: 0;
			margin: 0;
			padding: 0.2em 0.6em;
			font-size: 90%;
			border: none;
			background-color: #57b1af;
			color: #fff;
			height: 100%;

			border-radius: 0 !important; 
			-webkit-border-radius: 0 !important;
			-moz-border-radius: 0 !important;
		}

	/* メールアドレス */
	div.form_cont div.email_form_wrap{
		letter-spacing: -.4em;
	}
		div.form_cont div.email_form_wrap div{
			letter-spacing: normal;
			width: calc(50% - 2px);
			position: relative;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
/*
		div.form_cont div.email_form_wrap div:first-child:after{
			height: 4px;
			background: #bfbfbf;
			content: "";
			position: absolute;
			top: 50%;
			right: -6em;
			width: 2em;
		}
		div.form_cont div.email_form_wrap div:first-child:before{
			height: 4px;
			background: #bfbfbf;
			content: "";
			position: absolute;
			top: 60%;
			right: -6em;
			width: 2em;
		}
*/
		div.form_cont div.email_form_wrap div:last-child{
			margin-left: 4px;
		}


	/* gmap */
	div.form_cont div.address_wrap{
		position: relative;
		margin: 0;
		padding: 0;
	}
		div.form_cont div.address_wrap input{
			margin: 0;
		}
		div.form_cont div.address_wrap button{
			position: absolute;
			margin: 0;
			right: 0;
			height: 100%;
			background-color: #999999;
			color: #fff;
			padding: 0.2em 0.6em;
			border: none;
			font-size: 90%;

			border-radius: 0 !important; 
			-webkit-border-radius: 0 !important;
			-moz-border-radius: 0 !important;
		}
	div.form_cont div#func_map_wrap{
		margin-top: 0.5em;
		border: 3px solid #ddd;
		position: relative;
	}
	div.form_cont div#func_map_wrap div#error{
		color: #ff0000;
		text-align: center;
		width: 100%;
		margin: 0;
		padding: 0.5em;
		z-index: 999;
		font-size: 120%;
		font-weight: bold;
		position: absolute;
		left: 0;
		top: 10%;
	}
		div.form_cont div#func_map_wrap div#error > span{
			color: #5aad6d;
		}

	div.form_cont div#func_map_wrap div.gmap{
		width: 100%;
		display: block;
		position: relative;
		padding-bottom: 56.25%; /* 縦横比 */
		height: 0;
		overflow: hidden;
		background: #f8f8f8;
	}
	div.form_cont div#func_map_wrap div.lat_lng_wrap{
		margin: 0;
		padding: 0;
		letter-spacing: -.4em;
		background-color: #e5eaea;
	}
		div.form_cont div#func_map_wrap div.lat_lng_wrap label{
			letter-spacing: normal;
			display: block;
			width: 15%;
			text-align: center;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}
		div.form_cont div#func_map_wrap div.lat_lng_wrap input{
			letter-spacing: normal;
			width: 35%;
			background-color: transparent !important;
			border: none !important;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}


	/********* Cover pic Selection *********/
	div.cover_pic_wrap {
		width: 100%;
		margin: 0;
		padding: 0;
		overflow: hidden;
	}
		div.cover_pic_wrap ul {
			width: 100%;
			margin: 0;
			padding: 0;
			font-size: 0;
		}
		div.cover_pic_wrap ul li {
			list-style-type: none;
			width: calc(100% / 18);
			height: auto;
			position: relative;
			overflow: hidden;
			letter-spacing: normal;
			margin: 0;
			vertical-align: top;
			border: 1px solid #ddd;
			display: inline-block;
			zoom: 1;
			*display: inline;
			border-radius: 3px;
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;

		}

			div.cover_pic_wrap label.img_wrap {
				content:"";
				display: block;
				padding-top: 100%;
			}

			div.cover_pic_wrap label.img_wrap img {
				z-index: 5;
				pointer-events: none; /*画像クリックイベントを拾うため*/
				vertical-align: bottom;
				position: absolute;
				width: 150%;
				max-width: none;
				height: auto;
				top: 50%;
				left: 50%;
				-webkit-transform: translate(-50%, -50%);
				-ms-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
				filter: alpha(opacity=70);
				opacity:0.70;
			}
			div.cover_pic_wrap label.img_wrap input[type=radio]{
				z-index: 99;
				transform: scale(1.2);
				position: absolute;
				margin: 0;
				right: 4px;
				top: 4px;
			}
			div.cover_pic_wrap label.img_wrap input[type=radio]:checked + img {
				filter: alpha(opacity=100);
				opacity: 1;
			}








	/* 画像アップロード  */
	/* カバー写真 */
	div.form_cont div.cover_photo {
		margin-top: 1em;
		height: auto;
		width: 100%;
		max-height: auto;
		position: relative;
		overflow: hidden;
	}
		div.form_cont div.cover_photo:before {
			content:"";
			display: block;
			padding-top: 50%;
		}
		div.form_cont div.cover_photo:after {
			z-index: 888;
			content: '';
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			box-shadow: inset 0 0 0 0.5em rgba(255,255,255,0.6);
		}
		div.form_cont div.cover_photo img{
			position: absolute;
			top: 50%;
			left: 50%;
			-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
		}
	/* カバー写真 */

	#cover_photo span.del_btn{
		z-index: 1000;
		width: 1.5em;
		height: 1.5em;
		position: absolute;
		right: 0.5em;
		top: 0.5em;
		font-size: 140%;
		text-align: center;
	}
		#cover_photo span.del_btn a{
			display: block;
			width: 100%;
			height: 100%;
			text-decoration: none;
			background-color: #fff;

			border-radius: 0.75em; 
			-webkit-border-radius: 0.75em;
			-moz-border-radius: 0.75em;

		}
		#cover_photo span.del_btn a:hover{
			filter: alpha(opacity=85);
			opacity:0.85;
		}

	/********* File upload button *********/
	label.label_attach + input.form_attach{
		display: none;
	}

	label.label_attach {
		display: block;
		padding: 10px;
		margin: auto;
		width: 100%;
		color: #fff;
		text-align: center;
		background-color: #00a0dd;
		cursor: pointer;
	}
		label.label_attach:hover {
			filter: alpha(opacity=85);
			opacity:0.85;
		}



/* 公開・非公開 */
div.publication_wrap{
	border: 1px solid #d9d9d9;
	margin-top: 5em !important;
	padding: 3em;
	background-color: #f4f4f4;
	border-radius: 3px; 
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}


select#city,
select#state{
	width: 100%;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-size: 16px 11px;
	background-position: center center;
}

/********* admin top edit delete button *********/
div.admin_edit_btn{
	margin-top: 5px;
}
/********* photo mg *********/
div.photo_mg_wrap{
	overflow: hidden;
	width: 100%;
	padding: 20px;
}






/********* p note *********/
p.text_note{
	margin-top: 0.3em;
	margin-bottom: 0.3em;
}
	p.text_note.center{
		text-align: center;
	}
p.input_rule{
	margin-top: 0em;
	font-size: 90%;
	color: #c1c1c1;
}
p.login_info_text{
	margin-top: 0.2em;
	margin-bottom: 0.2em;
	border-bottom: 1px solid #eaeaea;
	padding-bottom: 0.5em;
}
div.login_form_cookie{
	text-align: center;
	margin: 0.8em;
}
	div.login_form_cookie > label{
		font-size: 90%;
	}

div#updete_done > p{
	font-size: 120%;
	text-align: center;
	color: red;
}


/********* Label  *********/
div.input_wrap label{
	z-index: 10;
	position: relative;
	bottom: -0.1em;
	padding: 0;
	font-weight: bold;

	filter: alpha(opacity=75);
	opacity: 0.75;

	border-radius: 6px; 
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
div.input_wrap label.err_txt{
	color: red;
	font-weight: bold;
}

/* サーチ用 ロケーション */
div.element_wrap > label.location{
	font-size: 90%;
	color: #f4f4f4 !important;
	background-color: #cccccc;
	padding: 0.2em 1em !important;
	margin-bottom: 2px !important;


	border-top-left-radius: 3px; 
	border-top-right-radius: 3px; 
	-webkit-border-top-left-radius: 3px;
	-webkit-border-top-right-radius: 3px;
	-moz-border-radius-topleft: 3px;
	-moz-border-radius-topright: 3px;
}
	div.element_wrap > label.location:before{
		font-family: FontAwesome;
		content: "\f041";
		margin-right: 0.5em;
	}

/* 日本語スタッフラジオボタン */
div.element_wrap > div.inputCheckWrap > ul.chkbox.jp_speak{
	font-size: 90%;
}
	div.element_wrap > div.inputCheckWrap > ul.chkbox.jp_speak:before{
		content: "日本語スタッフ";
		float: left;
		display: inline-block;
		zoom: 1;
		*display: inline;
		padding-top: 0.4em;
		padding-bottom: 0.4em;
		margin-right: 0.2em;
	}
	div.element_wrap > div.inputCheckWrap > ul.chkbox.jp_speak > li{
		padding-right: 0;
	}
		div.element_wrap > div.inputCheckWrap > ul.chkbox.jp_speak > li > label{
		}


#prof_pic{
	padding: 0;
	margin: auto;
	position: relative;
	display: block;
	width: 30%;
}
	#prof_pic p{
		text-align: center;
		color: red;
	}
	#prof_pic img{
		border: 1px solid #ddd;
		padding: 3px;
		background: #f8f8f8;
	}
	#prof_pic span.del_btn{
		width: 1.5em;
		height: 1.5em;
		position: absolute;
		right: 0.5em;
		top: 0.5em;
		font-size: 140%;
		text-align: center;
	}
		#prof_pic span.del_btn a{
			display: block;
			width: 100%;
			height: 100%;
			text-decoration: none;
			background-color: #fff;

			border-radius: 0.75em; 
			-webkit-border-radius: 0.75em;
			-moz-border-radius: 0.75em;

		}
		#prof_pic span.del_btn a:hover{
			filter: alpha(opacity=85);
			opacity:0.85;
		}






/********* Photo management thumbnail and checkbox *********/
div.form_thumb_wrap {
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	letter-spacing: -.4em;
	text-align: center;
}
	div.form_thumb_wrap > div.form_thumb {
		letter-spacing: normal;
		position: relative;
		font-size: 1rem;
		margin: 0.5%;
		list-style-type: none;
		width: calc(((100% / 3) - 0.1px) - 1%);
		height: auto;
		vertical-align: top;

		display: inline-block;
		zoom: 1;
		*display: inline;
	}
		div.form_thumb_wrap > div.form_thumb > img {
			max-width: auto;
			max-height: auto;

			border: 1px solid #ddd;
			padding: 3px;
			background: #f8f8f8;
		}
		div.form_thumb_wrap > div.form_thumb > span{
			width: 2em;
			height: 2em;
			line-height: 2em;
			position: absolute;
			font-size: 90%;
			font-weight: bold;
			right: 0.5em;
			top: 0.5em;
			text-align: center;
		}
			div.form_thumb_wrap > div.form_thumb > span > a{
				display: block;
				width: 100%;
				height: 100%;
				text-decoration: none;
				background-color: #fff;

				border-radius: 50%;
				-webkit-border-radius: 50%;
				-moz-border-radius: 50%;

			}
			div.form_thumb_wrap > div.form_thumb > span > a:hover{
				filter: alpha(opacity=85);
				opacity:0.85;
			}




/********* File upload button *********/
label.label_attach + input.form_attach{
	display: none;
}

label.label_attach {
	display: block;
	padding: 10px;
	margin: auto;
	width: 30%;
	color: #fff;
	text-align: center;
	background-color: #00a0dd;
	cursor: pointer;
}





/* ############# images ############# */
div.article_field img{
	border: 1px solid #ddd;
	padding: 3px;
	background: #f8f8f8;
	margin-top: 1em;
	margin-bottom: 1em;
	width: 100%;
	display: block;
}
	div.article_field img.right{
		float: right;
	}
	div.article_field img.left{
		float: left;
	}
	div.article_field img.center{
		margin-left: auto;
		margin-right: auto;
	}

	div.article_field img.w30,
	div.article_field img.w40,
	div.article_field img.w50{
		margin: 1%;

		display: inline-block;
		zoom: 1;
		*display: inline;
	}
	div.article_field img.w30{
		width: calc((100% / 3) - 2%);
	}
	div.article_field img.w40{
		width: 38%;
	}
	div.article_field img.w50{
		width: calc((100% / 2) - 2%);
	}
	div.article_field p.center{
		text-align: center;
	}
		div.article_field p.center img{
			display: inline-block;
			zoom: 1;
			*display: inline;
		}

/* ############# images ############# */


/* ############# form ############# */
div.form_reg textarea.cmt_form{
	width: 100%;
	height: 10em;
}
/* ############# form ############# */

