main {
	margin-top: 0;
	overflow: hidden;
}
.en {
	font-family: 'Quattrocento', serif !important;
}

/*================================
	Page Header
================================*/
main #pageheader {
	position: relative;
}
main #pageheader figure img{
	width: 100%;
}
main .pageheader_logo{
	position: absolute;
	top: 30px;
	left: 70px;
	width: 104px;
	z-index: 1100;
}
main .mv_title {
	width: 90%;
	max-width: 1078px;
	margin: 0 auto;
	position: absolute;
	top: 7px;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	flex-direction: column;
	z-index: 1100;
}
main .mv_title img {
	width: 490px;
	display: block;
}
main .mv_title span {
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: .15em;
	display: block;
	margin: 17px 0 0 2px;
}
main .mv_img {
	overflow: hidden;
}
main .mv_img figure {
	float: left;
}
main .mv_btn {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1100;
}
main .mv_btn a {
	display: block;
	width: 260px;
	background: #BF963A;
	color: #fff;
	font-size: 16px;
	letter-spacing: .05em;
	font-weight: 500;
	text-align: center;
	padding: 21px 10px 25px;
	transition: opacity .3s;
}
main .mv .slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 23px;
	z-index: 1100;
	margin: 0;
	display: flex;
	justify-content: center;
}
main .mv .slick-dots li {
	margin: 0 5px;
}
main .mv .slick-dots button::before {
	width: 7px;
	height: 7px;
	background: #fff;
}
main .mv .slick-dots li.slick-active button::before {
	background: #269A6F;
}
@media screen and (max-width:859px) {
	main .pageheader_logo{
		top: 20px;
		left: 5.3333%;
		width: 74px;
	}
	main .mv_title {
		width: 85.0666%;
		top: 0;
		bottom: 12.5333vw;
		left: 2.6666vw;
	}
	main .mv_title img {
		width: 100%;
	}
	main .mv_title span {
		font-size: 5.0666vw;
		margin: 3.2vw 0 0 2px;
	}
	main .mv_btn a {
		width: 150px;
		font-size: 11px;
		padding: 17px 5px 16px;
	}
	main .mv .slick-dots {
		bottom: 19px;
	}
}


/*================================
	ブライダルフェアとは？
================================*/
main .about {
	display: flex;
	padding: 90px 0 117px;
	position: relative;
	background: url(../img/about_bg.svg) no-repeat calc(50% + 38px) -17px;
}
main .about::before {
	content: '';
	display: block;
	width: 516px;
	height: 250px;
	background: url(../img/bg_01.png) left top / 37px auto;
	position: absolute;
	top: 0;
	left: 0;
}
main .about_img {
	width: 48.9019%;
	position: relative;
}
main .about_img figure:first-child {
	width: 92.8144%;
}
main .about_img figure:last-child {
	width: 52.3952%;
	margin: -50px 0 0 auto;
}
main .about_txt {
	width: 558px;
	padding: 8.5% 177px 0 40px;
	position: relative;
}
main .about_txt p {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 2;
}
main .about_txt figure {
	width: 342px;
	margin: 95px -30px 0 auto;
}
main .about_title {
	color: #269A6F;
	font-weight: bold;
	font-size: 30px;
	writing-mode: vertical-rl;
	position: absolute;
	top: 0;
	right: -5px;
	line-height: 1.4;
	letter-spacing: .2em;
}
@media screen and (max-width:859px) {
	main .about {
		display: block;
		padding: 100px 0 25px;
		background: none;
	}
	main .about::before,
	main .about_txt::before,
	main .about_txt::after {
		width: 46.4vw;
		height: 45.8666vw;
		background: url(../img/course_bg_02.svg) no-repeat left top / 100% auto;
		left: -13.0666vw;
		top: 100px;
		margin-top: 70.4vw;
	}
	main .about_txt::before,
	main .about_txt::after {
		content: '';
		display: block;
		left: auto;
		position: absolute;
		right: -10.6666vw;
		top: 42.9333vw;
		margin-top: 0;
	}
	main .about_txt::after {
		right: 12.5333vw;
		top: 86.6666vw;
	}
	main .about_img {
		width: auto;
	}
	main .about_img figure:first-child {
		width: 89.3333%;
	}
	main .about_img figure:last-child {
		width: 53.3333%;
		margin: -11.7333% 0 0 auto;
	}
	main .about_txt {
		width: auto;
		padding: 19.4666vw 5.3333vw 0 0;
	}
	main .about_txt p {
		font-size: 3.4666vw;
		margin-left: 41.0666vw;
		position: relative;
		z-index: 10;
	}
	main .about_txt figure {
		width: 80.2666vw;
		margin: 22px 0 0 11.2vw;
		position: relative;
		z-index: 10;
		mix-blend-mode: multiply;
	}
	main .about_title {
		font-size: 6.4vw;
		top: 2.9333vw;
		right: auto;
		left: 6.1333vw;
		line-height: 1.55;
		letter-spacing: .16em;
		z-index: 10;
	}
}


/*================================
	day
================================*/
main .day {
	margin: -123px 0 0;
	padding: 128px 0 5px;
	position: relative;
}
main .day::before,
main .day::after {
	content: '';
	display: block;
	width: 370px;
	height: 250px;
	position: absolute;
	top: 28px;
	right: 0;
	background: url(../img/bg_01.png) left top / 37px auto;
}
main .day::after {
	top: auto;
	bottom: 0;
	right: auto;
	left: 0;
}
main .day_title {
	position: relative;
	text-align: center;
	margin-bottom: 49px;
	z-index: 10;
}
main .day_title::after {
	content: '';
	display: block;
	width: 121px;
	height: 120px;
	background: url(../img/day_title_img.svg) no-repeat left top / 100% auto;
	position: absolute;
	left: 50%;
	top: -75px;
	margin-left: -453px;
}
main .day_title::before {
	content: '';
	display: block;
	height: 1px;
	background: #269A6F;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
}
main .day_title span {
	display: inline-block;
	color: #269A6F;
	font-size: 30px;
	letter-spacing: .15em;
	font-weight: bold;
	background: #fff;
	position: relative;
	padding: 0 40px 0 48px;
}
main .day_list {
	max-width: 1086px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 10;
}
main .day_list li {
	width: 30.0184%;
	position: relative;
}
main .day_list li + li::before {
	content: '';
	display: block;
	width: 37px;
	height: 37px;
	background: url(../img/day_icon_arrow.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: 180px;
	left: -50px;
}
main .day_list li figure {
	width: 254px;
	height: 254px;
	border-radius: 50%;
	border: 1px solid #269A6F;
	margin: 0 auto 21px;
	display: flex;
	justify-content: center;
	align-items: center;
}
main .day_list li figure img {
	width: 123px;
}
main .day_list li h3 {
	text-align: center;
	color: #269A6F;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: .05em;
	margin-bottom: 11px;
}
main .day_list li h3 .en {
	font-weight: 500;
	display: block;
	font-size: 15px;
	margin-bottom: 4px;
	letter-spacing: .15em;
}
main .day_list li p {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 2;
}
@media screen and (max-width:859px) {
	main .day {
		margin: 0;
		padding: 8.5333vw 0 0;
	}
	main .day::before,
	main .day::after {
		width: 38.6666vw;
		height: 53.3333vw;
		position: absolute;
		top: 0;
		right: 0;
		background: url(../img/bg_01.png) left top / 30px auto;
	}
	main .day::after {
		width: 47.2vw;
		top: 188.5333vw;
		bottom: auto;
		right: auto;
		left: 0;
	}
	main .day_title {
		margin-bottom: 56px;
	}
	main .day_title::after {
		width: 18.1333vw;
		height: 18.1333vw;
		left: 2.9333vw;
		top: -7.4666vw;
		margin-left: 0;
	}
	main .day_title::before {
		display: none;
	}
	main .day_title span {
		font-size: 5.6vw;
		background: none;
		padding: 0;
		white-space: nowrap;
	}
	main .day_title span::before,
	main .day_title span::after {
		content: '';
		display: inline-block;
		width: 24vw;
		height: 1px;
		background: #269A6F;
		vertical-align: middle;
		margin: 0 4vw 0 0;
	}
	main .day_title span::after {
		margin: 0 0 0 4vw;
	}
	main .day_list {
		display: block;
		padding-bottom: 28vw;
	}
	main .day_list::before,
	main .day_list::after {
		content: '';
		display: block;
		width: 46.4vw;
		height: 45.8666vw;
		background: url(../img/course_bg_02.svg) no-repeat left top / 100% auto;
		position: absolute;
		right: -17.0666vw;
		bottom: -6.9333vw;
	}
	main .day_list::after {
		right: 9.0666vw;
		bottom: 34.4vw;
	}
	main .day_list li {
		width: 78.6666%;
		margin: 0 auto;
		position: relative;
		z-index: 10;
	}
	main .day_list li + li {
		margin-top: 20.2666vw;
	}
	main .day_list li + li::before {
		width: 9.8666vw;
		height: 9.8666vw;
		transform: rotate(90deg);
		top: -16vw;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	main .day_list li figure {
		width: 55.4666vw;
		height: 55.4666vw;
	}
	main .day_list li figure img {
		width: 26.9333vw;
	}
	main .day_list li h3 {
		font-size: 5.3333vw;
	}
	main .day_list li h3 .en {
		font-size: 4vw;
	}
	main .day_list li p {
		font-size: 3.4666vw;
	}
}


/*================================
	おすすめスポット
================================*/
main .recommend {
	padding: 127px 20px 0;
	position: relative;
}
main .recommend::before {
	content: '';
	display: block;
	background: #FAF7F3;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 350px;
}
main .recommend::after {
	content: '';
	display: block;
	width: 989px;
	height: 1534px;
	background: url(../img/recommend_bg_03.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: -72px;
	left: 0;
	right: 25px;
	margin: 0 auto;
}
main .recommend_title {
	text-align: center;
	font-size: 30px;
	font-weight: 500;
	letter-spacing: .15em;
	margin-bottom: 71px;
}
main .recommend_title::before {
	content: '';
	display: block;
	width: calc(100% - 40px);
	max-width: 1096px;
	height: 131px;
	position: absolute;
	top: 54px;
	left: 0;
	right: 0;
	margin: 0 auto;
	background: url(../img/recommend_icon_01.png) no-repeat left top / 132px auto;
	pointer-events: none;
}
main .recommend_title .en {
	display: block;
	font-size: 16px;
	color: #269A6F;
	letter-spacing: .15em;
	margin-bottom: 10px;
}
main .recommend_list {
	max-width: 1106px;
	margin: 0 auto 5px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
main .recommend_list::before,
main .recommend_list::after {
	content: '';
	display: block;
	width: 301px;
	height: 301px;
	background: url(../img/recommend_bg_01.svg) no-repeat left top / 100% auto;
	position: absolute;
	right: -119px;
	top: -240px;
}
main .recommend_list::after {
	width: 397px;
	height: 312px;
	background-image: url(../img/recommend_bg_02.svg);
	right: auto;
	left: -146px;
	top: auto;
	bottom: -27px;
}
main .recommend_list li {
	width: 30.2893%;
	position: relative;
	z-index: 10;
	margin-bottom: 88px;
}
main .recommend_list li figure {
	transform: rotate(-3deg);
	margin-bottom: 43px;
}
main .recommend_list li:nth-child(3n+2) figure {
	transform: rotate(3deg);
}
main .recommend_list li:nth-child(3)::before {
	content: '';
	display: block;
	width: 78px;
	height: 65px;
	background: url(../img/recommend_icon_02.png) no-repeat left top / 100% auto;
	position: absolute;
	right: -8px;
	bottom: -9px;
}
main .recommend_list li:nth-child(4)::before {
	content: '';
	display: block;
	width: 74px;
	height: 61px;
	background: url(../img/recommend_icon_03.png) no-repeat left top / 100% auto;
	position: absolute;
	left: -29px;
	top: 0;
	margin-top: 62.3881%;
	z-index: 10;
}
main .recommend_num {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: 2px solid #269A6F;
	position: absolute;
	top: -33px;
	left: 0;
	font-size: 26px;
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #269A6F;
	z-index: 10;
}
main .recommend_list li:nth-child(3n+2) .recommend_num,
main .recommend_list li:nth-child(3n) .recommend_num {
	left: 10px;
}
main .recommend_list h3 {
	text-align: center;
	font-weight: bold;
	color: #269A6F;
	font-size: 14px;
	letter-spacing: .05em;
	margin-bottom: 18px;
}
main .recommend_list h3 span {
	font-size: 17px;
	letter-spacing: .05em;
	vertical-align: -.1em;
}
main .recommend_list h3 .en {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: .15em
}
main .recommend_list p {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 2;
}
main .recommend_link {
	margin: 10px 0 0 5px;
}
main .recommend_link a {
	font-size: 13px;
	color: #269A6F;
	font-weight: 500;
	letter-spacing: .15em;
}
main .recommend_link a img {
	width: 19px;
	margin-right: 7px;
	vertical-align: -5px;
}
main .recommend_img {
	display: flex;
	position: relative;
	margin: 0 -20px;
}
main .recommend_img figure {
	width: 32.7965%;
}
main .recommend_img figure:nth-child(2) {
	width: 34.407%;
}
@media screen and (max-width:859px) {
	main .recommend {
		padding: 18.6666vw 0 0;
		background: #FAF7F3;
		position: relative;
		z-index: 10;
	}
	main .recommend::before {
		display: none;
	}
	main .recommend::after {
		width: 89.3333vw;
		height: 974.6666vw;
		background-image: url(../img/recommend_bg_03-sp.svg);
		top: -24.8vw;
		left: 5.6vw;
		right: auto;
		margin: 0;
	}
	main .recommend_title {
		font-size: 5.8666vw;
		margin-bottom: 14.9333vw;
	}
	main .recommend_title::before {
		width: 22.5333vw;
		height: 32.1333vw;
		top: -14.4vw;
		left: 6.1333vw;
		right: auto;
		margin: 0;
		background: url(../img/recommend_icon_01-sp.png) no-repeat left top / 100% auto;
	}
	main .recommend_title .en {
		font-size: 4vw;
		margin-bottom: 2.1333vw;
	}
	main .recommend_list {
		margin: 0 auto;
		display: block;
	}
	main .recommend_list::before,
	main .recommend_list::after {
		display: none;
	}
	main .recommend_list li {
		width: 89.3333%;
		margin: 0 auto;
		margin-bottom: 21.3333vw;
	}
	main .recommend_list li:last-child {
		margin-bottom: 65px;
	}
	main .recommend_list li figure {
		margin-bottom: 8.5333vw;
	}
	main .recommend_list li:nth-child(4) figure {
		margin-bottom: 11.4666vw;
	}
	main .recommend_list li:nth-child(3)::before {
		width: 18.6666vw;
		height: 15.4666vw;
		right: 8vw;
		bottom: auto;
		top: -13.3333vw;
		z-index: 10;
	}
	main .recommend_list li:nth-child(4)::before {
		width: 19.7333vw;
		height: 16.2666vw;
		left: auto;
		right: 12.5333vw;
		top: 129.6vw;
		margin-top: 0;
	}
	main .recommend_num {
		width: 13.3333vw;
		height: 13.3333vw;
		top: -8.8vw;
		font-size: 6.9333vw;
	}
	main .recommend_list li:nth-child(3n+2) .recommend_num,
	main .recommend_list li:nth-child(3n) .recommend_num {
		left: 2.6666vw;
	}
	main .recommend_list h3 {
		font-size: 3.7333vw;
		margin-bottom: 4vw;
	}
	main .recommend_list h3 span {
		font-size: 4.5333vw;
	}
	main .recommend_list h3 .en {
		font-size: 4.8vw;
	}
	main .recommend_list p {
		width: 94.0298%;
		margin: 0 auto;
		font-size: 3.4666vw;
	}
	main .recommend_list .recommend_link {
		margin: 2.6666vw 0 0 2.6666vw;
	}
	main .recommend_link a {
		font-size: 3.4666vw;
	}
	main .recommend_link a img {
		width: 5.0666vw;
		margin-right: 1.8666vw;
		vertical-align: -1.3333vw;
	}
	main .recommend_img {
		display: block;
		margin: 0;
	}
	main .recommend_img figure {
		width: auto;
		float: left;
		margin: 0 1.3333vw;
	}
	main .recommend_img figure:nth-child(2) {
		width: auto;
	}
}


/*================================
	おすすめスポット
================================*/
main .course {
	padding: 135px 20px 95px;
	position: relative;
	overflow: hidden;
}
main .course::before {
	content: '';
	display: block;
	width: 340px;
	height: 130px;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/bg_01.png) left top / 46px auto;
}
main .course::after {
	content: '';
	display: block;
	width: 309px;
	height: 331px;
	position: absolute;
	top: 11px;
	left: 50%;
	margin-left: 294px;
	background: url(../img/course_bg_01.svg) left top / 100% auto;
}
main .course_title {
	text-align: center;
	font-size: 30px;
	font-weight: 500;
	letter-spacing: .15em;
	margin-bottom: 86px;
	position: relative;
	z-index: 10;
}
main .course_title::before {
	content: '';
	display: block;
	width: 69px;
	height: 70px;
	background: url(../img/course_icon_01.png) no-repeat left top / 100% auto;
	position: absolute;
	left: 50%;
	top: -20px;
	margin-left: 371px;
}
main .course_title .en {
	display: block;
	font-size: 16px;
	color: #B76580;
	letter-spacing: .15em;
	margin-bottom: 10px;
}
main .course_item {
	position: relative;
	z-index: 10;
}
main .course_item:nth-of-type(1)::before {
	content: '';
	display: block;
	width: 370px;
	height: 250px;
	position: absolute;
	right: -20px;
	top: 145px;
	background: url(../img/bg_01.png) left top / 37px auto;
}
main .course_item + .course_item {
	margin-top: 105px;
}
main .course_item_inner {
	max-width: 1086px;
	margin: 0 auto 33px;
	display: flex;
	position: relative;
}
main .course_item:nth-of-type(2) .course_item_inner {
	margin-bottom: 50px;
}
main .course_item:nth-of-type(3) .course_item_inner {
	margin-bottom: 57px;
}
main .course_item:nth-of-type(1) .course_item_inner::before {
	content: '';
	display: block;
	width: 174px;
	height: 172px;
	background: url(../img/course_bg_02.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: 0;
	left: 105px;
}
main .course_item:nth-of-type(1) .course_item_inner::after {
	content: '';
	display: block;
	width: 66px;
	height: 73px;
	background: url(../img/course_icon_02.png) no-repeat left top / 100% auto;
	position: absolute;
	top: 423px;
	right: -31px;
}
main .course_item:nth-of-type(2) .course_item_inner::before {
	content: '';
	display: block;
	width: 261px;
	height: 351px;
	background: url(../img/course_bg_03.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: -126px;
	left: -153px;
}
main .course_item:nth-of-type(2) .course_item_inner::after {
	content: '';
	display: block;
	width: 174px;
	height: 172px;
	background: url(../img/course_bg_02.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: 231px;
	right: 35px;
}
main .course_item:nth-of-type(3) .course_item_inner::after {
	content: '';
	display: block;
	width: 174px;
	height: 172px;
	background: url(../img/course_bg_02.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: 178px;
	right: -130px;
}
.course_img {
	width: 50%;
	order: 1;
	position: relative;
	z-index: 10;
}
main .course_item:nth-of-type(2n) .course_img {
	order: -1;
}
.course_item_text {
	flex: 1;
	padding: 31px 70px 0 82px;
	position: relative;
	z-index: 10;
}
main .course_item:nth-of-type(2n) .course_item_text {
	padding: 20px 35px 0 118px;
}
main .course_item:nth-of-type(2) .course_item_text::before,
main .course_item:nth-of-type(2) .course_item_text::after {
	content: '';
	display: block;
	width: 57px;
	height: 74px;
	background: url(../img/course_icon_03.png) no-repeat left top / 100% auto;
	position: absolute;
	top: 20px;
	right: 100px;
}
main .course_item:nth-of-type(2) .course_item_text::after {
	width: 71px;
	height: 65px;
	background-image: url(../img/course_icon_04.png);
	top: auto;
	bottom: -55px;
	right: 52px;
}
main .course_item:nth-of-type(3) .course_item_text::before,
main .course_item:nth-of-type(3) .course_item_text::after {
	content: '';
	display: block;
	width: 69px;
	height: 75px;
	background: url(../img/course_icon_05.png) no-repeat left top / 100% auto;
	position: absolute;
	top: -8px;
	right: 88px;
}
main .course_item:nth-of-type(3) .course_item_text::after {
	width: 74px;
	height: 67px;
	right: auto;
	top: auto;
	left: -15px;
	bottom: -282px;
	background-image: url(../img/course_icon_06.png);
	z-index: 10;
}
.course_item_text h3 {
	color: #B76580;
	font-size: 30px;
	font-weight: 500;
	border-bottom: 2px solid #B76580;
	letter-spacing: .15em;
	padding-bottom: 12px;
	margin: 0 17px 27px 0;
}
.course_item_text h3::before {
	content: '';
	display: block;
	width: 66px;
	height: 66px;
	background: url(../img/course_title_img.svg) no-repeat left top / 100% auto;
	margin: 0 0 12px -5px;
}
.course_item_text p {
	font-size: 14px;
	letter-spacing: .05em;
	font-weight: 500;
	line-height: 2;
}
.course_list {
	position: relative;
}
main .course_item:nth-of-type(2) .course_list::after {
	content: '';
	display: block;
	width: 185px;
	height: 250px;
	position: absolute;
	right: -20px;
	top: 235px;
	background: url(../img/bg_01.png) left top / 37px auto;
	z-index: -1;
}
.course_list::before {
	content: '';
	display: block;
	width: calc(50% + 563px);
	height: 370px;
	border-radius: 0 185px 185px 0;
	background: #FAF7F3;
	position: absolute;
	top: 109px;
	left: -20px;
}
main .course_item:nth-of-type(2n) .course_list::before {
	top: 76px;
	left: auto;
	right: -20px;
	border-radius: 185px 0 0 185px;
	width: calc(50% + 563px);
}
main .course_item:nth-of-type(3) .course_list::before {
	top: 68px;
}
.course_list_inner {
	max-width: 968px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 10;
}
.course_list_item {
	width: 28.9256%;
}
.course_list_item figure {
	width: 235px;
	margin: 0 auto;
}
.course_list_item h4 {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #B76580;
	letter-spacing: .15em;
	margin: 24px 0 13px;
}
.course_list_item p {
	font-size: 14px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: .05em;
	min-height: 155px;
}
@media screen and (max-width:859px) {
	main .course {
		padding: 28.2666vw 0 31.4666vw;
	}
	main .course::before {
		width: 39.2vw;
		height: 21.8666vw;
		background: url(../img/bg_01.png) left top / 9.8666vw auto;
	}
	main .course::after {
		display: none;
	}
	main .course_title {
		font-size: 5.8666vw;
		margin-bottom: 14.9333vw;
	}
	main .course_title::before {
		display: none;
	}
	main .course_title .en {
		font-size: 4vw;
		margin-bottom: 2.6666vw;
	}
	main .course_item:nth-of-type(1)::before {
		display: none;
	}
	main .course_item + .course_item {
		margin-top: 10.6666vw;
	}
	main .course_item_inner {
		margin: 0 auto 6.1333vw;
		display: block;
	}
	main .course_item:nth-of-type(2) .course_item_inner,
	main .course_item:nth-of-type(3) .course_item_inner {
		margin: 0 auto 6.1333vw;
	}
	main .course_item:nth-of-type(1) .course_item_inner::before {
		width: 46.4vw;
		height: 45.8666vw;
		top: 50.6666vw;
		right: auto;
		left: -4.8vw;
	}
	main .course_item:nth-of-type(1) .course_item_inner::after {
		width: 14.1333vw;
		height: 16.2666vw;
		top: 237.3333vw;
		right: 9.3333vw;
		z-index: 10;
	}
	main .course_item:nth-of-type(2) .course_item_inner::before {
		display: none;
	}
	main .course_item:nth-of-type(2) .course_item_inner::after {
		width: 46.4vw;
		height: 45.8666vw;
		top: 50.6666vw;
		right: auto;
		left: -4.8vw;
	}
	main .course_item:nth-of-type(3) .course_item_inner::after {
		width: 46.4vw;
		height: 45.8666vw;
		top: 50.6666vw;
		right: auto;
		left: -4.8vw;
	}
	.course_img {
		width: auto;
	}
	.course_item_text {
		width: 92%;
		margin: 0 0 0 auto;
		padding: 13.3333vw 0 0;
	}
	main .course_item:nth-of-type(2n) .course_item_text {
		padding: 13.3333vw 0 0;
	}
	main .course_item:nth-of-type(2) .course_item_text::before {
		display: none;
	}
	main .course_item:nth-of-type(2) .course_item_text::after {
		width: 17.0666vw;
		height: 16vw;
		top: 170.6666vw;
		bottom: auto;
		right: 10.1333vw;
	}
	main .course_item:nth-of-type(3) .course_item_text::before,
	main .course_item:nth-of-type(3) .course_item_text::after {
		width: 16.5333vw;
		height: 18.1333vw;
		top: 204.5333vw;
		right: 10.6666vw;
	}
	main .course_item:nth-of-type(3) .course_item_text::after {
		display: none;
	}
	.course_item_text h3 {
		font-size: 6.4vw;
		padding: 0 0 2.6666vw 16.8vw;
		margin: 0 0 4vw;
		position: relative;
	}
	.course_item_text h3::before {
		width: 13.3333vw;
		height: 13.3333vw;
		margin: 0;
		position: absolute;
		left: 0;
		bottom: 10px;
	}
	.course_item_text p {
		font-size: 3.4666vw;
		margin-right: 8vw;
	}
	main .course_item:nth-of-type(2) .course_list::after {
		display: none;
	}
	.course_list::before {
		width: 94.6666vw;
		height: 101.3333vw;
		border-radius: 0 51vw 51vw 0;
		top: 22.6666vw;
		left: 0;
	}
	main .course_item:nth-of-type(2n) .course_list::before {
		top: 22.6666vw;
		left: auto;
		right: 0;
		border-radius: 51vw 0 0 51vw;
		width: 94.6666vw;
	}
	main .course_item:nth-of-type(3) .course_list::before {
		top: 22.6666vw;
	}
	.course_list_inner {
		display: block;
		min-height: 265px;
	}
	.course_list_inner .slick-next,
	.course_list_inner .slick-prev {
		width: 7.4666vw;
		height: 7.4666vw;
		border-radius: 50%;
		background: #B76580;
		top: 53.3333vw;
		left: 6.6666vw;
		padding: 0;
	}
	.course_list_inner .slick-next {
		right: 6.6666vw;
		left: auto;
	}
	.course_list_inner .slick-next::before,
	.course_list_inner .slick-prev::before {
		content: '';
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 1.3333vw 0 1.3333vw 2.1333vw;
		border-color: transparent transparent transparent #fff;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	.course_list_inner .slick-prev::before {
		border-width: 1.3333vw 2.1333vw 1.3333vw 0;
		border-color: transparent #fff transparent transparent;
	}
	.course_list_item {
		width: auto;
		float: left;
	}
	.course_list_item figure {
		width: 50.6666vw;
	}
	.course_list_item h4 {
		font-size: 4.2666vw;
		margin: 4vw 0 3.4666vw;
	}
	.course_list_item p {
		width: 62.4vw;
		margin: 0 auto;
		font-size: 3.4666vw;
		min-height: 0;
	}
}


/*================================
	NARA EVENT
================================*/
main .event {
	height: 520px;
	background: url(../img/event_bg.jpg) no-repeat center center / cover;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
main .event_inner {
	width: 545px;
}
main .event_title {
	font-size: 30px;
	font-weight: 500;
	text-align: center;
	letter-spacing: .15em;
	margin-bottom: 25px;
}
main .event_title::before,
main .event_title::after {
	content: '';
	display: inline-block;
	width: 80px;
	height: 1px;
	background: #fff;
	vertical-align: middle;
	margin: 0 38px;
}
main .event_text {
	font-size: 14px;
	letter-spacing: .05em;
	line-height: 2;
	text-align: center;
}
main .event_btn {
	margin-top: 40px;
}
main .event_btn a {
	width: 246px;
	display: block;
	margin: 0 auto;
	background: #fff;
	color: #269A6F;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: .05em;
	text-align: center;
	border-radius: 24px;
	padding: 14px 10px 12px;
	transition: opacity .3s;
}
@media screen and (max-width:859px) {
	main .event {
		height: 138.6666vw;
		padding-top: 5.3333vw;
		background-image: url(../img/event_bg-sp.jpg);
	}
	main .event_inner {
		width: auto;
	}
	main .event_title {
		font-size: 6.4vw;
		white-space: nowrap;
		margin-bottom: 8vw;
	}
	main .event_title::before,
	main .event_title::after {
		width: 21.3333vw;
		margin: 0 5.3333vw;
		vertical-align: 2.1333vw;
	}
	main .event_text {
		width: 84vw;
		margin: 0 auto;
		font-size: 3.4666vw;
	}
	main .event_btn {
		margin-top: 5.8666vw;
	}
	main .event_btn a {
		width: 65.6vw;
		font-size: 3.7333vw;
		border-radius: 6.4vw;
		padding: 3.7333vw 2.6666vw 3.2vw;
	}
}


/*================================
	動画
================================*/
main .movie {
	padding: 66px 40px 80px;
}
@media screen and (max-width:859px) {
	main .movie {
		padding: 16vw 0;
	}
	main .movie img {
		width: 100%;
		height: 100vw;
		object-fit: cover;
	}
}


/*================================
	ブライダルフェア
================================*/
main .fair {
	background: #FAF7F3;
	padding: 100px 0 84px;
}
main .fair_title {
	font-size: 30px;
	letter-spacing: .15em;
	font-weight: 500;
	text-align: center;
	margin-bottom: 51px;
}
main .fair_title .en {
	font-size: 16px;
	letter-spacing: .15em;
	display: block;
	color: #269A6F;
	margin-bottom: 10px;
}
main .fair_inner {
	display: flex;
	align-items: center;
}
main .fair_img {
	width: 50%;
}
main .fair_text {
	width: 563px;
	padding: 0 20px 20px 99px;
}
main .fair_text h3 {
	font-size: 20px;
	letter-spacing: .05em;
	font-weight: bold;
	color: #269A6F;
	line-height: 1.6;
	margin-bottom: 15px;
}
main .fair_text dl {
	display: flex;
	flex-wrap: wrap;
	color: #269A6F;
	font-weight: bold;
	margin-bottom: 12px;
}
main .fair_text dl dt {
	width: 59px;
	font-size: 14px;
	line-height: 2;
	letter-spacing: .05em;
	margin-bottom: 0;
}
main .fair_text dl dd {
	font-size: 14px;
	line-height: 2;
	letter-spacing: .05em;
	width: calc(100% - 59px);
	margin-bottom: 0;
}
main .fair_text p {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 2;
}
main .fair_btn {
	width: 430px;
	margin: 35px 0 0 -10px;
}
main .fair_btn a {
	display: block;
	background: #269A6F;
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: .05em;
	border-radius: 30px;
	text-align: center;
	padding: 17px 32px 17px 17px;
	position: relative;
	transition: opacity .3s;
}
main .fair_btn a::before {
	content: '';
	display: block;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto 0;
}
main .fair_btn a::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #269A6F;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 26px;
	margin: auto 0;
}
@media screen and (max-width:859px) {
	main .fair {
		padding: 16.8vw 0 16vw;
	}
	main .fair_title {
		font-size: 5.8666vw;
		margin-bottom: 10.1333vw;
	}
	main .fair_title .en {
		font-size: 4vw;
		margin-bottom: 2.6666vw;
	}
	main .fair_inner {
		display: block;
	}
	main .fair_img {
		width: auto;
	}
	main .fair_text {
		width: 84%;
		margin: 0 auto;
		padding: 9.3333vw 0 0;
	}
	main .fair_text h3 {
		font-size: 4.2666vw;
		line-height: 1.75;
		margin-bottom: 2.1333vw;
	}
	main .fair_text dl {
		margin-bottom: 12px;
	}
	main .fair_text dl dt {
		width: 15.7333vw;
		font-size: 3.7333vw;
	}
	main .fair_text dl dd {
		font-size: 3.7333vw;
		width: calc(100% - 15.7333vw);
	}
	main .fair_text p {
		font-size: 3.4666vw;
	}
	main .fair_btn {
		width: 84vw;
		margin: 5.8666vw auto 0;
	}
	main .fair_btn a {
		font-size: 3.7333vw;
		border-radius: 8vw;
		padding: 19px 32px 19px 6px;
	}
	main .fair_btn a::before {
		width: 5.6vw;
		height: 5.6vw;
		right: 4vw;
	}
	main .fair_btn a::after {
		border-width: 1.0666vw 0 1.0666vw 1.6vw;
		right: 5.6vw;
	}
}


/*================================
	菊水楼について
================================*/
main .kikusuiro {
	padding: 130px 40px 105px;
	position: relative;
	overflow: hidden;
}
main .kikusuiro::before {
	content: '';
	display: block;
	width: 370px;
	height: 250px;
	position: absolute;
	right: 0;
	bottom: 226px;
	background: url(../img/bg_01.png) left top / 37px auto;
}
main .kikusuiro_inner {
	display: flex;
	justify-content: flex-end;
	position: relative;
	z-index: 10;
}
main .kikusuiro_img {
	width: 50%;
	order: 1;
}
main .kikusuiro_text {
	width: 542px;
	position: relative;
}
main .kikusuiro_text::before,
main .kikusuiro_text::after {
	content: '';
	display: block;
	width: 174px;
	height: 172px;
	background: url(../img/course_bg_02.svg) no-repeat left top / 100% auto;
	position: absolute;
	top: -172px;
	left: -82px;
}
main .kikusuiro_text::after {
	top: -45px;
	left: 74px;
}
main .kikusuiro_text h2 {
	font-size: 30px;
	font-weight: 500;
	letter-spacing: .15em;
	margin-bottom: 16px;
	position: relative;
	z-index: 10;
}
main .kikusuiro_text h2 .en {
	display: block;
	font-size: 16px;
	letter-spacing: .15em;
	color: #269A6F;
	margin: 0 0 9px 7px;
}
main .kikusuiro_text p {
	font-size: 14px;
	letter-spacing: .05em;
	font-weight: 500;
	line-height: 2;
	position: relative;
	z-index: 10;
}
main .kikusuiro_text p + p {
	margin-top: 19px;
}
main .kikusuiro_text p a[href^="tel:"] {
	pointer-events: none;
}
main .kikusuiro_btn {
	width: 186px;
	margin-top: 20px;
	position: relative;
	z-index: 10;
}
main .kikusuiro_btn a {
	display: block;
	border-bottom: 1px solid #6DA591;
	color: #269A6F;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: .05em;
	padding: 9px 0;
	position: relative;
	transition: opacity .3s;
}
main .kikusuiro_btn a::before {
	content: '';
	display: block;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: #269A6F;
	position: absolute;
	right: 0;
	bottom: 9px;
}
main .kikusuiro_btn a::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 4px;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	bottom: 16px;
	right: 9px;
}
main .kikusuiro_instagram {
	width: 227px;
	margin: 135px auto 0;
}
main .kikusuiro_instagram a {
	display: block;
	color: #269A6F;
	font-size: 16px;
	border-bottom: 1px solid #6DA591;
	text-align: center;
	letter-spacing: .15em;
	padding: 46px 0 18px;
	background: url(../img/icon_instagram.svg) no-repeat center top / 32px auto;
	position: relative;
	transition: opacity .3s;
}
main .kikusuiro_instagram a::before {
	content: '';
	display: block;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: #269A6F;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	margin: 0 auto;
}
main .kikusuiro_instagram a::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 4px;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	left: 2px;
	right: 0;
	bottom: -3px;
	margin: 0 auto;
}
@media screen and (max-width:859px) {
	main .kikusuiro {
		padding: 16vw 5.3333vw 26.6666vw;
	}
	main .kikusuiro::before {
		display: none;
	}
	main .kikusuiro_inner {
		display: block;
		position: static;
	}
	main .kikusuiro_img {
		width: auto;
		margin-bottom: 11.2vw;
	}
	main .kikusuiro_text {
		width: 84vw;
		margin: 0 auto;
		position: static;
	}
	main .kikusuiro_text::before,
	main .kikusuiro_text::after {
		width: 46.4vw;
		height: 45.8666vw;
		top: 88.8vw;
		left: -4.2666vw;
	}
	main .kikusuiro_text::after {
		top: 134.6666vw;
		left: auto;
		right: -6.9333vw;
	}
	main .kikusuiro_text h2 {
		text-align: center;
		font-size: 6.4vw;
		margin-bottom: 4.2666vw;
	}
	main .kikusuiro_text h2 .en {
		font-size: 4vw;
		margin: 0 0 2.6666vw;
	}
	main .kikusuiro_text p {
		font-size: 3.4666vw;
	}
	main .kikusuiro_text p + p {
		margin-top: 4vw;
	}
	main .kikusuiro_text p a[href^="tel:"] {
		pointer-events: all;
	}
	main .kikusuiro_btn {
		width: 84vw;
		margin: 5.6vw auto 0;
	}
	main .kikusuiro_btn a {
		border: 1px solid #269A6F;
		border-radius: 8vw;
		text-align: center;
		font-size: 3.4666vw;
		padding: 3.7333vw 0;
	}
	main .kikusuiro_btn a::before {
		width: 5.6vw;
		height: 5.6vw;
		right: 4vw;
		top: 0;
		bottom: 0;
		margin: auto 0;
	}
	main .kikusuiro_btn a::after {
		border-width: 1.0666vw 0 1.0666vw 1.6vw;
		top: 0;
		bottom: 0;
		margin: auto 0;
		right: 5.6vw;
	}
	main .kikusuiro_instagram {
		width: 55.4666vw;
		margin: 21.8666vw auto 0;
	}
	main .kikusuiro_instagram a {
		font-size: 4vw;
		padding: 10.6666vw 0 5.8666vw;
		background: url(../img/icon_instagram.svg) no-repeat center top / 6.9333vw auto;
	}
	main .kikusuiro_instagram a::before {
		width: 5.6vw;
		height: 5.6vw;
		bottom: -2.6666vw;
	}
	main .kikusuiro_instagram a::after {
		border-width: .8vw 0 .8vw 1.0666vw;
		left: .5333vw;
		bottom: -.8vw;
	}
}


/*================================
	地図
================================*/
main .map iframe {
	width: 100%;
	display: block;
	border: 0;
	height: 460px;
}
@media screen and (max-width:859px) {
	main .map iframe {
		height: 122.6666vw;
	}
}


/*================================
	footer
================================*/
.footer-nav {
	padding: 40px 0 30px;
}
.footer-nav .logo {
	margin-bottom: 27px;
}
footer .copyright {
	background: none;
	color: #fff;
	font-size: 11px;
	letter-spacing: .1em;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
}
@media screen and (max-width:859px) {
	.footer-nav {
		padding: 12vw 0 2.6666vw;
	}
	.footer-nav .logo {
		margin-bottom: 4.5333vw;
	}
	footer .copyright {
		font-size: 2.9333vw;
	}
}