
#key {
	background: url(../img/course/bg_key.png) no-repeat center top;
	min-height: 672px;
	position: absolute;
	top: 82px;
	left: 0;
	width: 100%;
}

#key .key_ttl {
	position: absolute;
	top: 498px;
	right: 54px;
}

#lead {
	position: relative;
	background: url(../img/course/bg_lead.jpg) no-repeat center/cover;
	padding: 47px 0 34px;
	color: #fff;
}

#lead:before {
	background: url(../img/index/bg_line1.png) repeat-x center top;
	height: 33px;
	position: absolute;
	top: -17px;
	left: 0;
	right: 0;
	content: '';
}

#lead h2 {
	position: absolute;
	top: 0;
	right: 56px;
}

#lead .txt {
	width: 300px;
	height: 720px;
	padding: 50px 0 0 526px;
}

#lead .txt .col { margin-top: -10px; }

#lead ul {
	position: absolute;
	top: 20px;
	left: -314px;
}

.sec_ct:after { background: url(../img/index/bg_line1.png) repeat-x center top; }

#sec1 { position: relative; }

#sec1 h2 { padding-top: 64px; }

#sec1:before {
	background: url(../img/course/bg_sk_01.png) no-repeat center top;
	position: absolute;
	top: -46px;
	left: 0;
	right: 0;
	height: 1886px;
	content: '';
	z-index: 1;
	pointer-events: none;
}

#sec1:after {
	background: url(../img/course/bg_sk_02.png) no-repeat center top;
	position: absolute;
	top: 1838px;
	left: 0;
	right: 0;
	height: 1720px;
	content: '';
	z-index: 1;
	pointer-events: none;
}

#sec1 .group1 {
	background: url(../img/course/bg_box1.png) no-repeat center top;
	padding: 66px 35px 153px;
	position: relative;
	color: #fff;
	margin-left: -35px;
	margin-right: -35px;
}

#sec1 .group1 .txt { padding: 10px 0 83px; }

#sec1 .group1 .item {
	width: 402px;
	height: 402px;
	border-radius: 50%;
	background: #6e0b23;
	position: relative;
}

#sec1 .group1 .item ul { line-height: 21px; }

#sec1 .group1 .item ul li {
	padding-bottom: 15px;
	position: relative;
}

#sec1 .group1 .item ul li:before {
	background: url(../img/course/icon.png) no-repeat center top;
	width: 10px;
	height: 9px;
	position: absolute;
	top: 5px;
	left: -14px;
	content: '';
}

#sec1 .group1 .item .col1 {
	width: 144px;
	padding-left: 86px;
}

#sec1 .group1 .item .col2 { width: 150px; }

#sec1 .group1 .item h4 {
	font-size: 21px;
	line-height: 54px;
	letter-spacing: 0.5px;
	border-bottom: 4px solid #fff;
	text-align: center;
	padding: 54px 0 19px;
	width: 330px;
	margin: 0 auto 16px;
}

#sec1 .group1 .item h4 span { font-size: 35px; }

#sec1 .group1 .item .price {
	position: absolute;
	top: -96px;
	left: -57px;
}

#sec1 .group1 .item.fl { margin-left: 70px; }

#sec1 .group1 .item.fr { margin-right: 70px; }

#sec1 .group1 .photo1 {
	position: absolute;
	top: -93px;
	right: -113px;
}

#sec1 .group1 .photo2 {
	position: absolute;
	top: -73px;
	left: -198px;
}

#sec1 .price {
	background: url(../img/course/bg_price.png) no-repeat left top;
	text-align: center;
	font-size: 34px;
	font-weight: bold;
	line-height: 30px;
	letter-spacing: 0.5px;
	padding: 60px 0 53px;
	width: 527px;
}

#sec1 .price span { font-size: 50px; }

#sec1 .group2 {
	background: url(../img/course/bg_box2.png) no-repeat center top;
	position: relative;
	margin-left: -35px;
	margin-right: -35px;
	padding: 0 35px;
}

#sec1 .group2 h3 { padding: 61px 0 19px; }

#sec1 .group2 .list1 {
	position: relative;
	margin-bottom: 70px;
}

#sec1 .group2 .list1 dl {
	width: 528px;
	position: relative;
	text-align: center;
	margin-left: 14px;
	float: left;
}

#sec1 .group2 .list1 dl dt { color: #fff; }

#sec1 .group2 .list1 dl + dl {
	margin-right: -30px;
	margin-left: 29px;
}

#sec1 .group2 .list1 dl dd { padding-right: 40px; }

#sec1 .group2 .list1 .data1 {
	color: #fff;
	position: absolute;
	top: 104px;
	left: -27px;
	width: 100%;
}

#sec1 .group2 .list1 .data1 p {
	display: inline-block;
	width: 84px;
	height: 84px;
	line-height: 84px;
	border-radius: 50%;
	background: #6e0b23;
	margin: 0 5px;
}

#sec1 .group2 .list1 .data1 p span {
	font-size: 24px;
	font-weight: bold;
}

#sec1 .listmenu1 .toggle-link { margin-bottom: 47px; }

#sec1 .listmenu1 dl {
	margin-left: 40px;
	line-height: 22px;
	margin-right: 40px;
	padding-bottom: 34px;
}

#sec1 .listmenu1 dl dt {
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	font-weight: bold;
	font-size: 16px;
	padding: 4px 0 3px 9px;
}

#sec1 .listmenu1 dl dd { padding: 10px 0 0 10px; }

#sec1 .listmenu1 dl dd p + p { padding-top: 6px; }

#sec1 .listmenu1 .style2 p {
	padding-top: 8px;
	padding-bottom: 16px;
}

#sec1 .listmenu1 .style2 p span {
	border: 1px solid #000;
	line-height: 20px;
	text-align: center;
	padding: 0 10px;
	display: inline-block;
	margin-bottom: 3px;
}

#sec1 .listmenu1 .style3 {
	margin-top: -12px;
	margin-bottom: 8px;
}

#sec1 .listmenu1 .fr.w_504 .style2 {
	margin-top: -19px;
	padding-bottom: 5px;
}

#sec1 .listmenu1 .style1 { padding-bottom: 24px; }

#sec1 .listmenu1 .style1 dd { padding-top: 20px; }

#sec1 .listmenu1 .style1 dd p {
	position: relative;
	padding-left: 13px;
}

#sec1 .listmenu1 .style1 dd p span {
	position: absolute;
	top: 0;
	left: 0;
}

#sec1 .listmenu1 .style1 dd p + p {
	margin-top: 16px;
	padding-top: 0;
}

#sec1 .bg_sk {
	background: url(../img/course/bg_sk_03.png) no-repeat center top;
	position: absolute;
	bottom: 939px;
	left: 0;
	right: 0;
	height: 1036px;
	content: '';
	z-index: 1;
	pointer-events: none;
}

#sec1 .group3 {
	position: relative;
	padding: 59px 0 72px;
}

#sec1 .group3 h3 {
	margin-left: -23px;
	margin-right: -23px;
}

#sec1 .group3 .price {
	position: absolute;
	top: -67px;
	left: 13px;
	color: #fff;
}

#sec1 .group3 .info1 { position: relative; }

#sec1 .group3 .info1 h4 { margin-left: -203px; }

#sec1 .group3 .info2 {
	position: relative;
	margin-left: 60px;
	margin-right: -60px;
}

#sec1 .group3 .info2 .price { left: -34px; }

#sec1 .group3 .info2 h4 { margin-right: -203px; }

#sec1 .group3 .text {
	padding-top: 12px;
	padding-left: 18px;
}

#sec1 .group4 { padding-bottom: 113px; }

#sec1 .group4 h3 {
	margin-left: -23px;
	margin-right: -23px;
	padding-bottom: 18px;
}

#sec1 .group4 .price { color: #fff; }

#sec1 .group4 .info3 { position: relative; }

#sec1 .group4 .info3 .price {
	position: absolute;
	top: 21px;
	left: 15px;
}

#sec1 .group4 .info3 .text {
	position: absolute;
	bottom: -9px;
	right: 18px;
	text-align: right;
}

#sec1 .group4 .info3 h4 { margin-left: -260px; }

#sec1 .group4 .info4 { position: relative; }

#sec1 .group4 .info4 .price {
	position: absolute;
	top: 22px;
	left: 30px;
}

#sec1 .group4 .info4 h4 { margin-right: -260px; }

#sec1 .group4 .info4 .text { padding: 6px 0 0 83px; }

#sec1 .group5 { background: url(../img/course/bg_sec1_bt.jpg) no-repeat center/cover; }

#sec1 .group5 h3 { padding: 164px 0 151px; }

#sec1 .group5 .cm1 {
	position: absolute;
	top: -136px;
	left: -79px;
}

#sec1 .group5 .cm2 {
	position: absolute;
	top: -69px;
	right: -12px;
}

#other {
	background: url(../img/party/floor_bg.jpg) repeat center top;
	position: relative;
	color: #fff;
	padding: 134px 0 74px;
}

#other .note1 {
	padding: 10px 0 53px;
	line-height: 27px;
}

#other .info {
	background: url(../img/course/bg_box3.png) no-repeat center top;
	width: 540px;
	height: 490px;
	position: relative;
}

#other .info1 h3 {
	position: absolute;
	top: -10px;
	left: 0;
}

#other .info1 .price2 {
	font-weight: bold;
	font-size: 26px;
	line-height: 27px;
	text-align: center;
	padding: 98px 21px 27px 0;
}

#other .info1 .price2 span { font-size: 44px; }

#other .info1 h4 {
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	font-size: 18px;
	font-weight: bold;
	width: 391px;
	margin: 0 0 0 63px;
	text-align: center;
	line-height: 37px;
}

#other .info1 ul {
	padding-top: 20px;
	padding-left: 99px;
	line-height: 27px;
}

#other .info1 ul li {
	width: 191px;
	float: left;
	position: relative;
}

#other .info1 ul li:before {
	background: url(../img/course/icon2.png) no-repeat center top;
	width: 10px;
	height: 10px;
	position: absolute;
	top: 9px;
	left: -11px;
	content: '';
}

#other .info2 { margin-right: -16px; }

#other .info2 h3 {
	top: -10px;
	right: 30px;
	position: absolute;
}

#other .info2 h4 {
	font-size: 26px;
	font-weight: bold;
	line-height: 27px;
	border-bottom: 2px solid #fff;
	text-align: center;
	padding: 96px 0 30px;
	width: 393px;
	margin-left: 63px;
}

#other .info2 h4 span { font-size: 44px; }

#other .info2 .txt1 {
	font-weight: bold;
	font-size: 15px;
	line-height: 27px;
	padding: 17px 0 17px;
}

#other .info2 ul {
	padding-top: 2px;
	padding-left: 99px;
	line-height: 27px;
}

#other .info2 ul li {
	float: left;
	width: 161px;
	padding-right: 41px;
	position: relative;
}

#other .info2 ul li:before {
	background: url(../img/course/icon2.png) no-repeat center top;
	width: 10px;
	height: 10px;
	position: absolute;
	top: 9px;
	left: -11px;
	content: '';
}

#other .info2 ul li span { float: right; }

#other .info2 ul li:nth-child(2n) { width: 146px; }

#other .info2 .note2 { padding-top: 21px; }

#other .info3 {
	background: url(../img/course/bg_box4.png) no-repeat center top;
	padding: 51px 36px 100px;
	margin-left: -36px;
	margin-right: -36px;
}

#other .info3 .txt2 {
	padding: 11px 0 48px 273px;
	text-align: left;
	width: 607px;
	font-size: 16px;
	line-height: 30px;
}

#other .info3 .txt2 p {
	position: relative;
	padding-left: 18px;
}

#other .info3 .txt2 p span {
	position: absolute;
	top: 0;
	left: 0;
}

#other .info3 .txt2 p .style {
	position: static;
	font-size: 14px;
	line-height: 22px;
	padding-left: 6px;
}

#other .info3 .txt2 .lh_25 { line-height: 25px; }
