@charset "UTF-8";

.bubble canvas,
.sub-bubble canvas {}
#loader {
	background: #546e7b;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	display: block;
	z-index: 999;
	width: 100%;
	height: 100vh;
}
#loader img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -49%);
	-ms-transform: translate(-50%, -49%);
	transform: translate(-50%, -49%);
	width: 4em;
}

/**==============================================**/
/*
/*			共通設定
/*
/**==============================================**/

body {
	opacity: 1;
}

header .h-logo-wrap {
	display: none;
}



/* main-img-wrap */
.main-img-wrap {
	position: relative;
}
.catch-wrap {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -49%);
	-ms-transform: translate(-50%, -49%);
	transform: translate(-50%, -49%);
	z-index: 9;
}
.catch-wrap .logo {
	position: relative;
	margin-right: auto;
	margin-left: auto;
}
.catch-wrap .logo:before {
	content: "";
	display: block;
	padding-top: 87.8%;
}
.catch-wrap h1 {
	margin-right: auto;
	margin-left: auto;
}
.catch-wrap h1 img {
	display: block;
	max-width: 100%;
	width: 100%;
}



.headd-wrap {
	text-align: center;
}



/* about */
.about-wrap {
	position: relative;
}
.about-wrap .about-inner {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.about-wrap .txt-wrap {
	position: relative;
	background-image: url(../img/top/about-bg-01.jpg);
}
.about-wrap .txt-wrap .txt {
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.about-wrap .bg-link {
	position: absolute;
	left: 50%;
	bottom: 0;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 9;
}
.about-wrap .img-wrap {
	background-image: url(../img/top/about-bg-02.jpg);
}



/* topics */
.topics-wrap {}
.topics-wrap .headd-wrap {
	animation-delay: 0s;
}
.topics-wrap .headd-wrap h1 {
	position: relative;
	display: inline-block;
}
.topics-wrap .headd-wrap h1:before,
.topics-wrap .headd-wrap h1:after {
	content: "";
	position: absolute;
	top: 0;
	display: block;
	width: 1px;
	height: 100%;
	background: #231815;
}
.topics-wrap .headd-wrap h1:before {
	left: 0;
}
.topics-wrap .headd-wrap h1:after {
	right: 0;
}
.topics-wrap .headd-wrap h1 span {
	font-weight: normal;
	display: block;
}
.topics-wrap .headd-wrap,
.topics-list div.cat {
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}
.topics-list a {
	display: block;
}
.topics-list div.cat p {
	color: #fff;
	text-align: center;
}
.topics-list .cat.event p {
	background: #c52d1c;
}
.topics-list .cat.yoga p {
	background: #2d377b;
}
.topics-list .cat.notice p {
	background: #4ba22f;
}
.topics-list .img-wrap {
	position: relative;
	background-position: 50% 50%;
	background-size: 100% auto;
	background-repeat: no-repeat;
	box-shadow: 0 0 10px 5px rgba(180, 179, 179, 0.1);
}
.topics-list .img-wrap:before {
	content: "";
	display: block;
	padding-top: 69.8%;
}



/* guide */
.guide-wrap {
	position: relative;
	background: url(../img/top/guide-bg.jpg) 50% 50% / cover no-repeat;
}
.guide-wrap .headd-wrap {
	color: #fff;
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	animation-delay: .5s;
}
.guide-wrap .headd-wrap h1 span {
	font-weight: normal;
}
.guide-wrap .txt-wrap {
	box-sizing: border-box;
	background: rgba(255,255,255,.8);
	animation-delay: .8s;
}



/* contact */
.contact-wrap {}
.contact-wrap p {
	position: relative;
	z-index: 2;
	animation-delay: .5s;
}



/**==============================================**/
/*
/*			SP
/*
/**==============================================**/

@media screen and (max-width:639px) {

	/* main-img-wrap */
	.main-img-wrap {}
	.catch-wrap {
		-webkit-transform: translate(-50%, -59%);
		-ms-transform: translate(-50%, -59%);
		transform: translate(-50%, -59%);
	}
	.catch-wrap .logo {
		width: 76px;
		margin: 0 auto 18%;
	}
	.catch-wrap h1 {
		width: 77.17%;
		max-width: 140px;
		margin: auto;
	}



	/* about */
	.about-wrap .txt-wrap .txt p.sp.tab {
		font-size: 3.541vw;
		line-height: 2;
	}



	/* topics */
	.topics-wrap {
		padding: 15% 0;
	}
	.topics-wrap .headd-wrap h1 {
		box-sizing: border-box;
		width: 90%;
		margin: 0 auto 10%;
		padding: 5%;
	}
	.topics-wrap .headd-wrap h1 img {
		display: block;
		width: 100%;
		height: auto;
	}
	.topics-wrap .headd-wrap h1 span {
		font-size: 1.6rem;
		margin-top: 3%;
	}
	.topics-wrap .topics-list li {
		margin-bottom: 15%;
	}
	.topics-list div.cat {
		margin-bottom: 3%;
	}
	.topics-list .cat * {
		font-size: 1.5rem;
		line-height: 1.8;
	}
	.topics-list .cat span {
		float: right;
	}
	.topics-list .cat p {
		float: left;
		min-width: 90px;
	}
	.topics-list .img-wrap {
		margin-bottom: 5%;
	}
	.topics-list li h3 {
		font-size: 1.5rem;
		line-height: 1.64;
	}



	/* guide */
	.guide-wrap {}
	.guide-wrap .headd-wrap h1 {}
	.guide-wrap .headd-wrap h1 strong {
		font-size: 2rem;
	}
	.guide-wrap .headd-wrap h1 span {
		display: block;
		font-size: 1.6rem;
		margin-top: 10px;
	}
	.guide-wrap .txt-wrap {
		padding: 25px 30px;
		position: absolute;
		top: 90%;
		right: 0;
		left: 0;
		z-index: 9;
		box-shadow: 0 0 10px 5px rgba(0,0,0,.1);
	}
	.guide-wrap .txt-wrap p {
		font-size: 15px;
		line-height: 1.94;
		display: inline-block;
		text-align: left;
	}
	.guide-wrap .bg-link {
		margin-top: 8%;
	}
	.guide-wrap .bg-link a {
		max-width: 100%;
	}



	/* contact */
	.contact-wrap {
		padding-bottom: 15%;
	}
	.contact-wrap p {
		font-size: 1.5rem;
		line-height: 1.8;
		max-width: 784px;
		margin: 15% auto 10%;
		width: 90%;
	}



}



@media screen and (min-width:480px) and (max-width:639px) {

	/* about */
	.about-wrap .txt-wrap .txt p.sp.tab {
		font-size: 1.6rem;
	}


}



/*
@media screen and (min-width:640px) and (max-width:1069px) and (max-height: 639px) {}
*/

/**==============================================**/
/*
/*			sp-l ～ tab
/*
/**==============================================**/

@media screen and (min-width:640px) and (max-width:1069px) {

	/* main-img-wrap */
	.main-img-wrap {}
	.catch-wrap {
		-webkit-transform: translate(-50%, -59%);
		-ms-transform: translate(-50%, -59%);
		transform: translate(-50%, -59%);
	}
	.catch-wrap .logo {
		width: 76px;
		margin: 0 auto 18%;
	}



	/* about */
	.about-wrap .txt-wrap .txt p.sp.tab {
		font-size: 17px;
		line-height: 2.2;
	}



	/* topics */
	.topics-wrap {
		padding: 76px 0;
	}
	.topics-wrap .headd-wrap h1 {
		padding: 17px 35px 18px;
		margin-bottom: 46px;
	}
	.topics-wrap .headd-wrap h1 span {
		font-size: 16px;
		margin-top: 16px;
	}
	.topics-wrap .topics-list {
		margin-bottom: 38px;
	}
	.topics-wrap .topics-list li {
		float: left;
		width: 46%;
		margin-top: 46px;
	}
	.topics-wrap .topics-list li:nth-child(even) {
		float: right;
	}
	.topics-list div.cat {
		margin-bottom: 6px;
	}
	.topics-list .cat * {
		font-size: 15px;
		line-height: 24px;
	}
	.topics-list .cat span {
		float: right;
	}
	.topics-list .cat p {
		float: left;
		min-width: 90px;
		line-height: 24px;
	}
	.topics-list .img-wrap {
		margin-bottom: 8px;
	}
	.topics-list li h3 {
		font-size: 15px;
		line-height: 1.64;
	}



	/* guide */
	.guide-wrap {}
	.guide-wrap .headd-wrap h1 span {
		display: block;
		font-size: 16px;
		margin-top: 10px;
	}
	.guide-wrap .txt-wrap {
		padding: 25px 30px;
		position: absolute;
		top: 90%;
		right: 0;
		left: 0;
		z-index: 9;
		box-shadow: 0 0 10px 5px rgba(0,0,0,.1);
	}
	.guide-wrap .txt-wrap p {
		font-size: 15px;
		line-height: 1.94;
		display: inline-block;
		text-align: left;
	}



	/* contact */
	.contact-wrap {
		padding-bottom: 80px;
	}
	.contact-wrap p {
		font-size: 15px;
		line-height: 2.06;
		max-width: 784px;
		margin-bottom: 46px;
		width: 80%;
	}



}



/**==============================================**/
/*
/*			sp tab 共通
/*
/**==============================================**/

@media screen and (max-width:1069px) {

	/* about */
	.about-wrap {}
	.about-wrap > div.about-inner {
		height: 60vh;
	}
	.about-wrap .txt-wrap .txt {
		width: 90%;
		-webkit-transform: translate(-50%, -60%);
		-ms-transform: translate(-50%, -60%);
		transform: translate(-50%, -60%);
		text-align: center;
	}
	.about-wrap .txt-wrap .txt p.sp.tab {
		display: inline-block !important;
		text-align: left;
	}
	.about-wrap .img-wrap {
		background-position: 50% 100%;
	}
	.about-wrap .bg-link {
		top: 50%;
		margin-top: -34px;
	}



	/* topics */
	.topics-wrap .topics-list {
		width: 87.5%;
		margin-right: auto;
		margin-left: auto;
	}



	/* guide */
	.guide-wrap {
		position: relative;
		z-index: 2;
	}
	.guide-wrap:before {
		content: "";
		display: block;
		padding-top: 59.1%;
	}
	.guide-wrap .headd-wrap {
		text-align: center;
		width: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.guide-wrap .txt-wrap {
		width: 90%;
		text-align: center;
		margin-right: auto;
		margin-left: auto;
		box-sizing: border-box;
		position: absolute;
		right: 0;
		left:	0;
		margin: auto;
	}



	/* contact */
	.contact-wrap {
		box-sizing: border-box;
		text-align: center;
		height: auto;
	}
	.contact-wrap > p {
		display: inline-block;
		text-align: left;
	}



}



/**==============================================**/
/*
/*			PC
/*
/**==============================================**/
@media print, screen and (min-width:1070px){

	/* main-img-wrap */
	.main-img-wrap {}
	.catch-wrap {
		-webkit-transform: translate(-50%, -49%);
		-ms-transform: translate(-50%, -49%);
		transform: translate(-50%, -49%);
	}
	.catch-wrap .logo {
		width: 76px;
		margin: 0 auto 18%;
	}



	/* about */
	.about-wrap {}
	.about-wrap > div.about-inner {
		width: 50%;
		height: 100vh;
		float: right;
	}
	.about-wrap .txt-wrap {}
	.about-wrap .txt-wrap .txt {
		-webkit-transform: translate(-50%, -60%);
		-ms-transform: translate(-50%, -60%);
		transform: translate(-50%, -60%);
	}
	.about-wrap .bg-link {
		bottom: 10%;
	}



	/* topics */
	.topics-wrap {
		padding: 76px 0;
	}
	.topics-wrap .headd-wrap h1 {
		padding: 17px 35px 18px;
		margin-bottom: 92px;
	}
	.topics-wrap .headd-wrap h1 span {
		font-size: 16px;
		margin-top: 16px;
	}
	.topics-wrap .topics-list {
		margin-bottom: 38px;
	}
	.topics-wrap .topics-list li {
		float: left;
		width: 31.5%;
		margin-bottom: 46px;
	}
	.topics-wrap .topics-list li:nth-child(-n+3) {
		margin-bottom: 46px;
	}
	.topics-wrap .topics-list li:not(:nth-child(3n)) {
		margin-right: 2.75%;
	}
		.topics-list div.cat {
		margin-bottom: 6px;
	}
	.topics-list .cat * {
		font-size: 15px;
		line-height: 24px;
	}
	.topics-list .cat span {
		float: right;
	}
	.topics-list .cat p {
		float: left;
		min-width: 90px;
		line-height: 24px;
	}
	.topics-list .img-wrap {
		margin-bottom: 8px;
		-webkit-transition-duration: .8s;
		-ms-transition-duration: .8s;
		transition-duration: .8s;
	}
	.topics-list li h3 {
		font-size: 15px;
		line-height: 1.64;
	}
	.topics-list a:hover .img-wrap {
		background-size: 120% auto;
	}
	.topics-list a:hover h3 {
		text-decoration: underline;
	}



	/* guide */
	.guide-wrap {
		height: 100vh;
	}
	.guide-wrap .headd-wrap {
		position: absolute;
		top: 50%;
		right: 9.6%;
		-webkit-transform: translateY(-88.2%);
		-ms-transform: translateY(-88.2%);
		transform: translateY(-88.2%);
	}
	.guide-wrap .headd-wrap h1 {
		position: relative;
	}
	.guide-wrap .headd-wrap h1 span {
		position: absolute;
		top: 50%;
		right: 164%;
		display: block;
		font-size: 16px;
		min-width: 6em;
	}
	.guide-wrap .txt-wrap {
		position: absolute;
		top: 50%;
		left: 50%;
	}
	.guide-wrap .txt-wrap {
		width: 310px;
		padding: 25px 30px 32px;
		-webkit-transform: translate(-162%, -43%);
		-ms-transform: translate(-162%, -43%);
		transform: translate(-162%, -43%);
	}
	.guide-wrap .txt-wrap p {
		font-size: 15px;
		line-height: 1.8;
		line-height: 1.94;
		margin-bottom: 20px;
	}



	/* contact */
	.contact-wrap {
		text-align: center;
		padding: 90px 0;
		padding: 90px 0;
		height: 844px;
		box-sizing: border-box;
	}
	.contact-wrap > p {
		font-size: 15px;
		line-height: 2.06;
		display: inline-block;
		width: 784px;
		text-align: left;
		margin-bottom: 46px;
	}



}



/**==============================================**/
/*
/*			print
/*
/**==============================================**/

@media print {



}


