@charset "utf-8";

.sub_wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.sub_wrap p {margin: 0;}
.sub_wrap .desc {
	font-size: 16px;
	line-height: 1.5;
}
.object {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.object .ob1,
.object .ob2,
.object .ob3,
.object .ob4,
.object .ob5 {position: absolute;}
@media all and (max-width: 767px) {
	.sub_wrap .desc {font-size: 14px;}
	.object {display: none;}
}

.greeting_wrap .txt {
	width: calc((100% - 15px)/2);
	float: left;
	margin-right: 15px;
	background: #fff;
	padding: 100px 50px;
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: -0.4px;
	z-index: 1;
	position: relative;
}
.greeting_wrap .txt .sign {
	font-size: 14px;
	margin-top: 100px;
	text-align: right;
}
.greeting_wrap .txt .sign img {
	margin-top: -10px;
	margin-left: 10px;
}
.greeting_wrap .img {
	width: calc((100% - 15px)/2);
	float: right;
	position: relative;
}
.greeting_wrap .object .left .ob1 {top: 80px;left: -100px;}
.greeting_wrap .object .left .ob2 {top: 180px;left: -280px;}
.greeting_wrap .object .left .ob3 {top: 420px;left: -250px;}
.greeting_wrap .object .left .ob4 {top: 550px;left: -120px;}
.greeting_wrap .object .right .ob1 {top: 50px;right: -220px;}
.greeting_wrap .object .right .ob2 {top: 280px;right: -280px;}
.greeting_wrap .object .right .ob3 {top: 320px;right: -100px;}
.greeting_wrap .object .right .ob4 {top: 500px;right: -180px;}
@media all and (max-width: 767px) {
	.greeting_wrap .txt {
		float: none;
		width: 100%;
		font-size: 14px;
		margin: 0 0 15px;
		padding: 40px;
	}
	.greeting_wrap .img {
		float: none;
		width: 100%;
	}
	.greeting_wrap .img p {
		font-size: 30px;
		width: 100%;
	}
	.greeting_wrap .txt .sign {
		font-size: 12px;
		margin-top: 50px;
	}
	.greeting_wrap .txt .sign img {width: 55px; height: 30px;}
}

.facilities_notice {
	color: #00bbb5;
	font-weight: bold;
	background: #fff;
	padding: 10px 20px;
	border: 1px solid #01c2ba;
	margin-bottom: 40px;
	font-size: 0;
	z-index: 1;
	position: relative;
}
.facilities_notice .ico {
	width: 25px;
	display: inline-block;
	vertical-align: top;
}
.facilities_notice .ico img {width: 16px; height: 16px;}
.facilities_notice .notice_txt {
	width: calc(100% - 25px);
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
}
.facilities_wrap .tab_menu li {
	float: left;
	margin-right: 25px;
}
.facilities_wrap .tab_menu li:last-child {margin-right: 0;}
.facilities_wrap .tab_menu li a {
	font-size: 20px;
	color: rgba(0,0,0,0.4);
	font-weight: bold;
	position: relative;
	padding: 0 3px;
	transition: all 0.3s;
}
.facilities_wrap .tab_menu li a::before {
	content: "";
	background: transparent;
	width: 6px;
	height: 6px;
	border-radius: 6px;
	display: inline-block;
	position: absolute;
	left: 5px;
	top: -10px;
}
.facilities_wrap .tab_menu li.select a, .facilities_wrap .tab_menu li a:hover {color: #222;}
.facilities_wrap .tab_menu li.select a::before {
	content: "";
	background: #01c2ba;
}

.facilities_wrap .contents {margin-top: 30px;}
.facilities_wrap .contents > div {display: none;}
.facilities_wrap .contents > div.select {display: block;}

@media all and (max-width: 767px) {
	.facilities_wrap .tab_menu li {margin-right: 15px;}
	.facilities_wrap .tab_menu li a {font-size: 16px;}
	.facilities_wrap .tab_menu li.select a span {height: 10px;}
	.facilities_wrap .contents {margin-top: 15px;}
}

.contact_wrap .left {
	float: left;
	width: calc((100% - 15px)/2);
	margin-right: 15px;
}
.contact_wrap .right {
	float: left;
	width: calc((100% - 15px)/2);
	background: #fff;
	padding: 50px;
	min-height: 592px;
}
.contact_wrap .right table {
	margin: 50px 0 35px;
	font-size: 16px;
	width: 100%;
}
.contact_wrap .right table th {
	width: 80px;
	vertical-align: top;
	padding-bottom: 15px;
}
.contact_wrap .right table td {
	vertical-align: top;
	padding-bottom: 15px;
}
.contact_wrap .right .transit {
	border-top: 1px solid #ddd;
	padding-top: 50px;
}
.contact_wrap .right .transit h3 {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 25px;
}
.contact_wrap .right .transit ul li {
	float: left;
	font-size: 16px;
	line-height: 1.8;
}
.contact_wrap .right .transit ul li::after {
	content: "→";
	display: inline-block;
	margin: 0 8px;
}
.contact_wrap .right .transit ul li:last-child::after {content: none;}
.contact_wrap .right .transit ul li .subway {
	width: 20px;
	height: 20px;
	background: #fa5f2c;
	font-size: 14px;
	font-family: "Roboto";
	font-weight: bold;
	line-height: 22px;
	text-align: center;
	display: inline-block;
	color: #fff;
	border-radius: 20px;
	margin-right: 5px;
}
.contact_wrap .right .transit ul li .bus {
	width: 30px;
	height: 20px;
	background: #4fa031;
	font-size: 12px;
	line-height: 20px;
	text-align: center;
	display: inline-block;
	color: #fff;
	border-radius: 3px;
	margin-right: 5px;
}
@media all and (max-width: 767px) {
	.contact_wrap .left {
		float: none;
		width: 100%;
		margin: 0 0 10px;
	}
	.contact_wrap .left iframe {height: 300px !important;}
	.contact_wrap .right {
		float: none;
		width: 100%;
		min-height: auto;
		padding: 30px;
	}
	.contact_wrap .right > img {display: none;}
	.contact_wrap .right table {
		margin: 0 0 20px;
		font-size: 14px;
	}
	.contact_wrap .right .transit {padding-top: 20px;}
	.contact_wrap .right table th, .contact_wrap .right table td {padding-bottom: 10px;}
	.contact_wrap .right .transit h3 {
		font-size: 14px;
		margin-bottom: 15px;
	}
	.contact_wrap .right .transit ul {overflow: hidden;}
	.contact_wrap .right .transit ul li {font-size: 14px;}
}

.program_confirm_wrap {
	background: #fff;
	padding: 50px 0 0;
	max-width: 600px;
	margin: 0 auto;
}
.program_confirm_wrap h3 {
	font-size: 24px;
	font-weight: bold;
	margin: 0 0 10px;
	text-align: center;
}
.program_confirm_wrap p {
	font-size: 16px;
	margin: 0 0 50px;
	text-align: center;
}
.program_confirm_wrap .form_group {
	overflow: hidden;
	margin-bottom: 15px;
	padding: 0 50px;
}
.program_confirm_wrap .form_group .control-label {
	font-size: 16px;
	margin: 0 0 10px;
	font-weight: bold;
}
.program_confirm_wrap .form_group .control-label .caution {
	font-size: 14px;
	font-weight: normal;
}
.program_confirm_wrap .form_group .form-control {
	font-size: 16px;
	color: #333;
	box-shadow: none;
	border: 1px solid #ddd;
	padding: 0 20px;
	height: 50px;
	line-height: 50px;
}
.program_confirm_wrap .form_group .form-control::placeholder {color: #888;}
.program_confirm_wrap button {
	width: 100%;
	height: 60px;
	line-height: 60px;
	background: #01c2ba;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	border: none;
	margin-top: 35px;
	color: #fff;
}
@media all and (max-width: 767px) {
	.program_confirm_wrap {padding-top: 30px;}
	.program_confirm_wrap h3 {font-size: 20px;}
	.program_confirm_wrap p {
		font-size: 14px;
		margin-bottom: 20px;
	}
	.program_confirm_wrap .form_group {padding: 0 30px;}
	.program_confirm_wrap .form_group .control-label {font-size: 14px;}
	.program_confirm_wrap .form_group .form-control {
		font-size: 14px;
		padding: 0 15px;
	}
	.program_confirm_wrap button {
		height: 50px;
		line-height: 50px;
		margin-top: 15px;
	}
}