@charset "utf-8";

/*-------------------
base.css
-------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0; padding: 0; border: 0; outline: 0;}
img { margin: 0; padding: 0; border: 0; line-height:0; font-size:0; vertical-align:top;}
html { width:100%; height: 100%; overflow-x:hidden;}
ul, li { list-style: none;}
p, th, td, dd { font-style:normal; font-weight:0; word-break: break-all;}
dd { word-break: break-all;}
a { margin: 0; padding: 0; border: 0;}
table { border-collapse: collapse; border-spacing: 0;}
 
/*layout style*/
body {
	font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', HiraKakuPro-W3, Osaka, verdana, arial, sans-serif;
}

@font-face {
	font-family: 'gothambook';
	src: url('../font/gothambook_regular.eot');
	src: url('../font/gothambook_regular.eot?#iefix') format('embedded-opentype'),
         url('../font/gothambook_regular.woff2') format('woff2'),
         url('../font/gothambook_regular.woff') format('woff');
	font-weight: 500;
	font-style: normal;
} 

.en{font-family: 'gothambook', Sans-Serif; font-weight: 500;}

@media screen and (min-width : 769px){

	.pc{ display: block; }
	.sp{ display: none; }

	.fitness_header{
		position: fixed;
		top: 0; left: 0;
		z-index: 999;
		background-color: #ffffff;
	}

	body a:hover{
		opacity: 0.8;
		-webkit-transition: all .3s;
		transition: all .3s;
		text-decoration: none;
	}

	/*-------------------
	共通
	-------------------*/

	div.inner{
		width: 1200px;
		margin: 0 auto;
	}

	#wrap { width:100%; text-align:center; overflow:hidden; padding-top:100px;}

	/*-------------------
	main
	-------------------*/
	#main{
		background-image: url(../img/main_bg.jpg);background-repeat: repeat;background-position: top center;background-size: auto auto;
		height: 750px;
	}

	#main h2{
		width: 555px;
		margin: 0 auto;
		padding: 130px 0 0 0;
	}


	/*-------------------
	campaign
	-------------------*/
	#campaign{
		/*background-image: url(../img/campaign_bg.jpg);background-repeat: no-repeat;background-position: top center;background-size: auto auto;*/
		background-color: #06448f;
		height: 831px;
		position: relative;
		}
		#campaign::before{
			content: '';
			display: block;
			width: -webkit-calc(((100vw - 1200px) / 2) + 818px);
			width: calc(((100vw - 1200px) / 2) + 818px);
			height: 2px;
			background-color: #c01920;
			position: absolute;
			top: 126px; left: 0;
			z-index: 2;
			transform: scale(0, 1);
			transform-origin: left top;
			}
			#campaign.appear::before{
				transform: scale(1, 1);
				-webkit-transition-delay: 0.4s;transition-delay: 0.4s;
				-webkit-transition-duration: 0.8s;transition-duration: 0.8s;
			}

		#campaign::after{
			content: 'RENEWAL CAMPAIGN';
			font-family: 'gothambook', Sans-Serif;
			font-weight: bold;
			display: block;
			color: #0c51a4;
			line-height: 1;
			font-size: 200px;
			white-space: nowrap;
			position: absolute;
			bottom: -20px; left: 0; right: 0;
			margin: 0 auto;
		}


	#campaign div.container{
		width: 1200px;
		margin: 0 auto;
		padding: 80px 50px;
		background-color: #ffffff;
		text-align: left;
		position: absolute;
		z-index: 1;
		top: -74px; left: 0; right: 0;
		margin: 0 auto;
	}

	#campaign div.container h3{
		font-size: 74px;
		color: #06448f;
		margin: 0 0 100px 0;
	}
	#campaign div.container h3 span{
		color: #c01920;
		margin: 0 20px 0 0;
	}

	#campaign div.container p.obj{
		width: 992px;
		margin: 0 0 26px 0;
	}

	#campaign div.container ul{
	}
	#campaign div.container ul li{
		font-size: 13px;
		letter-spacing: 0.5px;
		}
		#campaign div.container ul li:nth-of-type(n+2){
			margin: 6px 0 0 0;
		}

	#campaign div.container p.btn{
		text-align: center;
		margin: 18px 0 0 0;
	}
	#campaign div.container p.btn a{
		display: inline-block;
		vertical-align: top;
		width: 450px;
		padding: 20px 0;
		margin: 0 auto;
		color: #ffffff;
		background-color: #000000;
		font-size: 30px;
		line-height: 1;
		text-decoration: none;
		position: relative;
	}
	#campaign div.container p.btn a::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 8px;
		height: 10px;
		background-image: url(../img/ico_arrow_wh.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
		position: absolute;
		top: 30px; left: 30px;
		letter-spacing: 0.5px;
	}

	/*-------------------
	topics
	-------------------*/
	#topics{
		background-image: url(../img/topics_bg.jpg);background-repeat: repeat-x;background-position: top center;background-size: auto auto;
		height: 2774px;
		position: relative;
		}
		#topics::before{
			content: 'RENEWAL TOPICS';
			font-family: 'gothambook', Sans-Serif;
			font-weight: bold;
			display: block;
			color: #f0f3f6;
			line-height: 1;
			font-size: 200px;
			white-space: nowrap;
			position: absolute;
			top: 835px;
			left: -webkit-calc(((100vw - 3600px) / 2) + 125px);
			left: calc(((100vw - 3600px) / 2) + 125px);
			-webkit-transform: rotate(90deg);
			transform: rotate(90deg);
		}

		#topics::after{
			content: 'FACILITIES';
			font-family: 'gothambook', Sans-Serif;
			font-weight: bold;
			display: block;
			color: #f0f3f6;
			line-height: 1;
			font-size: 200px;
			white-space: nowrap;
			position: absolute;
			top: 850px;
			right: -webkit-calc(((100vw - 2000px) / 2) - 280px);
			right: calc(((100vw - 2000px) / 2) - 280px);
		}

	#topics h3{
		position: relative;
		}
		#topics h3::before{
			content: '';
			display: block;
			width: -webkit-calc(((100vw - 1200px) / 2) + 684px);
			width: calc(((100vw - 1200px) / 2) + 684px);
			height: 2px;
			background-color: #c01920;
			position: absolute;
			top: 126px; left: 0;
			z-index: 2;
			transform: scale(0, 1);
			transform-origin: left top;
			}
			#topics h3.appear::before{
				transform: scale(1, 1);
				-webkit-transition-delay: 0.4s;transition-delay: 0.4s;
				-webkit-transition-duration: 0.8s;transition-duration: 0.8s;
			}

	#topics h3 p{
		font-size: 74px;
		color: #06448f;
		margin: 120px auto;
		width: 1200px;
		text-align: left;
	}

	#topics div.inner{
		position: absolute;
		top: 200px; left: 0; right: 0;
		z-index: 1;
		margin: 0 auto;
		height: 2450px;
	}

	#topics div.inner div.panel{
		background-color: #06448f;
		background-repeat: no-repeat;
		background-position: 15px 15px;
		background-size: 150px auto;
		color: #ffffff;
		display: inline-block;
		vertical-align: top;
		text-align: left;
		position: absolute;
	}
	#topics div.inner div.panel.n1{
		padding: 64px 50px 50px 50px;
		background-image: url(../img/topics_01_bg.png);
		top: 0; left: 0;
	}
	#topics div.inner div.panel:nth-of-type(n+2){
		padding: 64px 0 0 50px;
		height: 270px;
		box-sizing: border-box;
	}
	#topics div.inner div.panel.n2{
		background-image: url(../img/topics_02_bg.png);
		bottom: 0; left: 0;
		width: 550px;
	}
	#topics div.inner div.panel.n3{
		background-image: url(../img/topics_03_bg.png);
		bottom: 0; right: 0;
		width: 500px;
		-webkit-transition-delay: 0.3s;transition-delay: 0.3s;
	}
	#topics div.inner div.panel.n3 a,
	#topics div.inner div.panel.n3 a:hover,
	#topics div.inner div.panel.n3 a:visited{
		color: #ffffff;
		text-decoration: underline;
	}

	#topics div.inner div.panel h4{
		font-size: 50px;
		position: relative;
		padding: 0 0 25px 0;
		margin: 0 0 30px 0;
		}

		#topics div.inner div.panel h4::after{
			content: '';
			display: block;
			width: 40px;
			height: 5px;
			background-color: #c01920;
			position: absolute;
			bottom: 0; left: 0;
		}

	#topics div.inner div.panel p{
		font-size: 17px;
		line-height: 1.6;
		letter-spacing: 0.5px;
	}

	#topics div.inner div.each{
		position: absolute;
		}
		#topics div.inner div.each.n1 {
			top: 0; right: 0;
			padding: 0 0 160px 0;
		}
		#topics div.inner div.each.n2 {
			top: 370px; left: 0;
			padding: 160px 0 0 0;
		}
		#topics div.inner div.each.n3 {
			top: 800px; right: 0;
			padding: 180px 0 0 0;
		}
		#topics div.inner div.each.n4 {
			top: 1100px; left: 0;
			padding: 160px 0 0 0;
		}
		#topics div.inner div.each.n5 {
			top: 1550px; right: 0;
			padding: 0 0 0 320px;
		}

	#topics div.inner div.each div.caption{
		position: absolute;
		text-align: left;
		border-style: solid;
		border-color: #000000;
		}
		#topics div.inner div.each.n1 div.caption{
			bottom: 0; right: 0;
			border-width: 0 1px 1px 0;
			padding: 97px 50px 40px 11px;
		}
		#topics div.inner div.each.n2 div.caption{
			top: 0; left: 0;
			border-width: 1px 0 0 1px;
			padding: 40px 11px 97px 50px;
		}
		#topics div.inner div.each.n3 div.caption{
			top: 0; right: 0;
			border-width: 1px 1px 0 0;
			padding: 40px 50px 97px 100px;
		}
		#topics div.inner div.each.n4 div.caption{
			top: 0; left: 0;
			border-width: 1px 0 0 1px;
			padding: 40px 11px 97px 50px;
		}
		#topics div.inner div.each.n5 div.caption{
			bottom: 0; left: 0;
			border-width: 0 0 1px 1px;
			padding: 60px 150px 40px 50px;
		}

	#topics div.inner div.each div.caption p{
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 0.5px;
	}

	#topics div.inner div.each.n1 div.photo{width: 738px;}
	#topics div.inner div.each.n2 div.photo{width: 734px;}
	#topics div.inner div.each.n3 div.photo{width: 714px;}
	#topics div.inner div.each.n4 div.photo{width: 484px;}
	#topics div.inner div.each.n5 div.photo{width: 634px;}

	#topics div.inner div.each h4{
		font-size: 60px;
		line-height: 1;
		margin: 0 0 20px 0;
	}


	/*-------------------
	hotyoga
	-------------------*/
	#hotyoga{
		background-image: url(../img/hotyoga_bg.png);
		background-repeat: no-repeat;
		background-position: -webkit-calc(((100vw - 2000px) / 2) - 1110px) 238px;
		background-position: calc(((100vw - 2000px) / 2) - 1110px) 238px;
		background-size: auto auto;
		height: 2585px;
		position: relative;
		padding: 120px 0 0 0;
		}
		#hotyoga::before{
			content: 'ABOUT YOGA';
			font-family: 'gothambook', Sans-Serif;
			font-weight: bold;
			display: block;
			color: #f4f6f8;
			line-height: 1;
			font-size: 200px;
			white-space: nowrap;
			position: absolute;
			top: 700px;
			right: -webkit-calc(((100vw - 2000px) / 2) - 446px);
			right: calc(((100vw - 2000px) / 2) - 446px);
			-webkit-transform: rotate(90deg);
			transform: rotate(90deg);
		}

	#hotyoga h3{
		position: relative;
		}
		#hotyoga h3::before{
			content: '';
			display: block;
			width: -webkit-calc(((100vw - 1200px) / 2) + 710px);
			width: calc(((100vw - 1200px) / 2) + 710px);
			height: 2px;
			background-color: #c01920;
			position: absolute;
			top: 126px; left: 0;
			z-index: 2;
			transform: scale(0, 1);
			transform-origin: left top;
			}
			#hotyoga h3.appear::before{
				transform: scale(1, 1);
				-webkit-transition-delay: 0.4s;transition-delay: 0.4s;
				-webkit-transition-duration: 0.8s;transition-duration: 0.8s;
			}
	#hotyoga h3 p{
		font-size: 74px;
		color: #06448f;
		margin: 0 auto 120px auto;
		width: 1200px;
		text-align: left;
	}

	#hotyoga div.inner{
		position: absolute;
		top: 320px; left: 0; right: 0;
		z-index: 1;
		margin: 0 auto;
		height: 2200px;
	}

	#hotyoga div.inner p.lead{
		text-align: left;
		line-height: 1.8;
		font-size: 17px;
		font-weight: bold;
		letter-spacing: 0.5px;
	}

	#hotyoga div.inner div.panel{
		background-color: #06448f;
		background-repeat: no-repeat;
		background-position: 15px 15px;
		background-size: 130px auto;
		padding: 50px;
		box-sizing: border-box;
		color: #ffffff;
		display: inline-block;
		vertical-align: top;
		text-align: left;
		position: absolute;
		}
		#hotyoga div.inner div.merit div.panel{
			width: 400px;
			right: 150px;
			top: -50px;
		}
		#hotyoga div.inner div.reccomended div.panel{
			width: 550px;
			left: 0;
			top: -285px;
		}
	#hotyoga div.inner div.panel h4{
		font-size: 50px;
		position: relative;
		padding: 0 0 24px 0;
		margin: 0 0 24px 0;
		}

		#hotyoga div.inner div.panel h4::after{
			content: '';
			display: block;
			width: 40px;
			height: 5px;
			background-color: #c01920;
			position: absolute;
			bottom: 0; left: 0;
		}

	#hotyoga div.inner div.panel p{
		font-size: 17px;
		line-height: 1.6;
		letter-spacing: 0.5px;
	}


	#hotyoga div.inner div.merit{
		position: relative;
		height: 1330px;
	}
	#hotyoga div.inner div.merit dl{
		border: 1px solid #000000;
		display: inline-block;
		vertical-align: top;
		width: 550px;
		box-sizing: border-box;
		position: absolute;
		}
		#hotyoga div.inner div.merit dl:nth-of-type(odd){
			left: 0;
		}
		#hotyoga div.inner div.merit dl:nth-of-type(even){
			right: 0;
		}
		#hotyoga div.inner div.merit dl.n1{
			top: 100px;
		}
		#hotyoga div.inner div.merit dl.n2{
			top: 300px;
		}
		#hotyoga div.inner div.merit dl.n3{
			top: 545px;
		}
		#hotyoga div.inner div.merit dl.n4{
			top: 745px;
		}


	#hotyoga div.inner div.merit dl dt{
		text-align: left;
		font-size: 0;
		margin: 10px 0 0 0;
		position: relative;
		}
		#hotyoga div.inner div.merit dl dt::after{
			content: '';
			display: block;
			width: 540px;
			height: 1px;
			background-color: #000000;
			position: absolute;
			bottom: 0; left: 0;
		}

	#hotyoga div.inner div.merit dl dt p.jp{
		display: inline-block;
		vertical-align: middle;
		width: 400px;
		padding: 10px 0 20px 40px;
		box-sizing: border-box;
		font-size: 30px;
		border-right: 1px solid #000000;
		letter-spacing: 0.5px;
	}

	#hotyoga div.inner div.merit dl dt p.en{
		display: inline-block;
		vertical-align: middle;
		font-size: 24px;
		color: #c01920;
		padding: 10px 20px 20px 22px;
		text-align: center;
		letter-spacing: 0.5px;
	}

	#hotyoga div.inner div.merit dl dd{
		padding: 20px 9px 9px 9px;
		text-align: left;
	}

	#hotyoga div.inner div.merit dl dd p.comment{
		position: relative;
		padding: 10px 15px;
		margin: 0 0 0 65px;
		border-radius: 20px;
		background-color: #bfc3c7;
		color: #ffffff;
		display: inline-block;
		vertical-align: top;
		letter-spacing: 0.5px;
	}
	#hotyoga div.inner div.merit dl dd p.comment::before{
		content: "";
		position: absolute;
		top: 100%;
		left: 50%;
		margin-left: -15px;
		border: 15px solid transparent;
		border-top: 15px solid #bfc3c7;
	}

	#hotyoga div.inner div.merit dl dd ul{
		margin: 30px 0 30px 65px;
	}

	#hotyoga div.inner div.merit dl dd ul li{
		letter-spacing: 0.5px;
		}
		#hotyoga div.inner div.merit dl dd ul li::before{
			content: '';
			display: inline-block;
			vertical-align: top;
			width: 15px;
			height: 15px;
			margin: 0 5px 0 0;
			border-radius: 100%;
			background-color: #bfc3c7;
		}
		#hotyoga div.inner div.merit dl dd ul li:nth-of-type(n+2){
			margin: 12px 0 0 0;
		}

	#hotyoga div.inner div.merit dl dd p.point{
		background-color: #c01920;
		padding: 20px 60px;
		color: #ffffff;
		line-height: 1.8;
		letter-spacing: 0.5px;
	}


	#hotyoga div.inner div.reccomended{
		height: 700px;
		position: relative;
	}
	#hotyoga div.inner div.reccomended ul{
		font-size: 0;
	}

	#hotyoga div.inner div.reccomended ul li{
		display: inline-block;
		vertical-align: top;
		width: 550px;
		text-align: left;
		}
		#hotyoga div.inner div.reccomended ul li:nth-of-type(2){
			margin: 0 0 0 100px;
			-webkit-transition-delay: 0.3s;transition-delay: 0.3s;
		}

	#hotyoga div.inner div.reccomended ul li p.photo{
		width: 100%;
	}
	#hotyoga div.inner div.reccomended ul li p.photo img{
		width: 100%;
	}

	#hotyoga div.inner div.reccomended ul li dl{
		margin: 30px 0 0 0;
	}

	#hotyoga div.inner div.reccomended ul li dl dt{
		font-size: 21px;
		font-weight: bold;
		letter-spacing: 0.5px;
		padding: 0 0 15px 0;
		margin: 0 0 20px 0;
		border-bottom: 1px solid #000000;
	}

	#hotyoga div.inner div.reccomended ul li dl dd{
		line-height: 1.8;
		letter-spacing: 0.5px;
		font-size: 17px;
	}

	#hotyoga div.inner div.reccomended p.btn{
		text-align: center;
		margin: 160px 0 0 0;
	}
	#hotyoga div.inner div.reccomended p.btn a{
		display: inline-block;
		vertical-align: top;
		width: 500px;
		padding: 20px 0 18px 0;
		margin: 0 auto;
		color: #ffffff;
		background-color: #c01920;
		font-size: 24px;
		line-height: 1;
		text-decoration: none;
		position: relative;
	}
	#hotyoga div.inner div.reccomended p.btn a::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 8px;
		height: 10px;
		background-image: url(../img/ico_arrow_wh.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
		position: absolute;
		top: 26px; left: 30px;
		letter-spacing: 0.5px;
	}

	/*-------------------
	entry
	-------------------*/
	#entry{
		background-image: url(../img/entry_bg.jpg);
		background-repeat: no-repeat;
		background-position: top center;
		/*background-size: auto auto;*/
		background-size: cover;
		height: 549px;
		padding: 110px 0 100px 0;
		box-sizing: border-box;
		color: #ffffff;
	}

	#entry h3{
		margin: 0 0 40px 0;
	}
	#entry h3 p.main{
		font-size: 70px;
		line-height: 1;
		margin: 0 0 20px 0;
	}
	#entry h3 p.sub{
		font-size: 19px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1.5px;
	}

	#entry p.btn{
		text-align: center;
		margin: 0 0 60px 0;
	}
	#entry p.btn a{
		display: inline-block;
		vertical-align: top;
		width: 545px;
		padding: 24px 0 21px 0;
		margin: 0 auto;
		border: 2px solid #ffffff;
		color: #ffffff;
		background-color: rgba(0,0,0,0.55);
		font-size: 30px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
		position: relative;
		letter-spacing: 1.5px;
	}
	#entry p.btn a::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 8px;
		height: 10px;
		background-image: url(../img/ico_arrow_wh.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
		position: absolute;
		top: 33px; left: 30px;
		letter-spacing: 0.5px;
	}

	#entry p.n1{
		font-size: 18px;
		letter-spacing: 1.5px;
		margin: 0 0 24px 0;
	}
	#entry p.n1 span{
		color: #fcff00;
	}

	#entry p.n2{
		font-size: 11px;
		letter-spacing: 1.5px;
	}

	/*-------------------
	trial
	-------------------*/
	#trial{
		padding: 100px 0;
	}

	#trial h3{
		margin: 0 0 40px 0;
	}
	#trial h3 p.main{
		font-size: 70px;
		line-height: 1;
		margin: 0 0 20px 0;
		color: #06448f;
	}
	#trial h3 p.sub{
		font-size: 19px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1.5px;
	}

	#trial div.bnr{
		width: 1000px;
		margin: 0 auto;
	}




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

	.pc{ display: none; }
	.sp{ display: block; }


	.fitness_header{
		position: fixed;
		top: 0; left: 0;
		z-index: 999;
	}

	.fitness_header_main{
		height: auto;
	}

	.fitness_header_nav-info_item{
		height: auto;
	}

	.fitness_header_nav-info_item.nav-info-3{
		width: 16vw;
	}


	/*-------------------
	共通
	-------------------*/

	div.inner{
		width: 100%;
		margin: 0 auto;
		overflow: hidden;
	}

	#wrap { width:100%; text-align:center; overflow:hidden;}

	/*-------------------
	main
	-------------------*/
	#main{
		background-image: url(../img/main_bg_sp.jpg);
		background-repeat: repeat;
		background-position: top center;
		background-size: 100% auto;
		height: 120vw;
	}

	#main h2{
		width: 72vw;
		margin: 0 auto;
		padding: 32vw 0 0 0;
	}


	/*-------------------
	campaign
	-------------------*/
	#campaign{
		background-image: url(../img/campaign_bg_sp.jpg);background-repeat: no-repeat;background-position: bottom center;background-size: 100% auto;
		background-color: #06448f;
		height: 230vw;
		position: relative;
		}
		#campaign::before{
			content: '';
			display: block;
			width: 80vw;
			height: 2px;
			background-color: #c01920;
			position: absolute;
			top: 25vw; left: 0;
			z-index: 2;
			transform: scale(0, 1);
			transform-origin: left top;
			}
			#campaign.appear::before{
				transform: scale(1, 1);
				-webkit-transition-delay: 0.4s;transition-delay: 0.4s;
				-webkit-transition-duration: 0.8s;transition-duration: 0.8s;
			}

	#campaign div.container{
		width: 90vw;
		margin: 0 auto;
		padding: 8vw 6vw;
		box-sizing: border-box;
		background-color: #ffffff;
		text-align: left;
		position: absolute;
		z-index: 1;
		top: -10vw; left: 0; right: 0;
		margin: 0 auto;
	}

	#campaign div.container h3{
		font-size: 10vw;
		color: #06448f;
		margin: 0 0 15vw 0;
	}
	#campaign div.container h3 span{
		color: #c01920;
	}

	#campaign div.container p.obj{
		width: 100%;
		margin: 0 0 8vw 0;
	}

	#campaign div.container ul{
	}
	#campaign div.container ul li{
		font-size: 3vw;
		letter-spacing: 0.3vw;
		line-height: 1.6;
		}
		#campaign div.container ul li:nth-of-type(n+2){
			margin: 1vw 0 0 0;
		}

	#campaign div.container p.btn{
		text-align: center;
		margin: 8vw 0 0 0;
	}
	#campaign div.container p.btn a{
		display: inline-block;
		vertical-align: top;
		width: 68vw;
		padding: 4vw 0;
		margin: 0 auto;
		color: #ffffff;
		background-color: #000000;
		font-size: 5vw;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
		position: relative;
		letter-spacing: 0.5vw;
	}
	#campaign div.container p.btn a::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 2vw;
		height: 3vw;
		background-image: url(../img/ico_arrow_wh.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
		position: absolute;
		top: 5.2vw; left: 5vw;
	}

	/*-------------------
	topics
	-------------------*/
	#topics{
		background-image: url(../img/topics_bg_sp.jpg);background-repeat: repeat-x;background-position: top center;background-size: 100% auto;
		height: 774vw;
		padding: 12vw 0 0 0;
		box-sizing: border-box;
		position: relative;
		}

	#topics h3{
		position: relative;
		}
		#topics h3::before{
			content: '';
			display: block;
			width: 94vw;
			height: 2px;
			background-color: #c01920;
			position: absolute;
			top: 25vw; left: 0;
			z-index: 2;
			transform: scale(0, 1);
			transform-origin: left top;
			}
			#topics h3.appear::before{
				transform: scale(1, 1);
				-webkit-transition-delay: 0.4s;transition-delay: 0.4s;
				-webkit-transition-duration: 0.8s;transition-duration: 0.8s;
			}
	#topics h3 p{
		font-size: 10vw;
		color: #06448f;
		margin: 0 auto 15vw auto;
		width: 86vw;
		text-align: left;
	}

	#topics div.inner{
		/*position: absolute;*/
		/*top: 200px; left: 0; right: 0;*/
		/*z-index: 1;*/
		margin: 0 auto;
		width: 100%;
		/*height: 2450px;*/
	}

	#topics div.inner div.panel{
		background-color: #06448f;
		background-repeat: no-repeat;
		background-position: 3vw 3vw;
		background-size: 21vw auto;
		width: 86vw;
		margin: 0 auto;
		padding: 10vw 4vw 8vw 6vw;
		box-sizing: border-box;
		color: #ffffff;
		text-align: left;
		/*position: absolute;*/
	}
	#topics div.inner div.panel.n1{
		background-image: url(../img/topics_01_bg.png);
		margin-bottom: 8vw;
	}
	#topics div.inner div.panel.n2{
		background-image: url(../img/topics_02_bg.png);
		margin-top: 15vw;
	}
	#topics div.inner div.panel.n3{
		background-image: url(../img/topics_03_bg.png);
		margin-top: 8vw;
	}
	#topics div.inner div.panel.n3 a,
	#topics div.inner div.panel.n3 a:hover,
	#topics div.inner div.panel.n3 a:visited{
		color: #ffffff;
		text-decoration: underline;
	}

	#topics div.inner div.panel h4{
		font-size: 9vw;
		position: relative;
		padding: 0 0 5vw 0;
		margin: 0 0 6vw 0;
		}
		#topics div.inner div.panel:nth-of-type(n+2) h4{
			font-size: 8vw;
		}
		#topics div.inner div.panel h4::after{
			content: '';
			display: block;
			width: 8vw;
			height: 1vw;
			background-color: #c01920;
			position: absolute;
			bottom: 0; left: 0;
		}

	#topics div.inner div.panel p{
		font-size: 3.6vw;
		line-height: 1.8;
		letter-spacing: 0.3vw;
	}

	#topics div.inner div.each{
		position: relative;
		}
		#topics div.inner div.each:nth-of-type(n+2){
		margin: 9vw 0 0 0;
		}
		#topics div.inner div.each.n1 {
			padding: 0 0 36vw 0;
		}
		#topics div.inner div.each.n2 {
			padding: 0 0 36vw 0;
		}
		#topics div.inner div.each.n3 {
			padding: 0 0 36vw 0;
		}
		#topics div.inner div.each.n4 {
			padding: 0 0 36vw 0;
		}
		#topics div.inner div.each.n5 {
			padding: 0 0 36vw 0;
		}

	#topics div.inner div.each div.caption{
		position: absolute;
		text-align: left;
		border-style: solid;
		border-color: #000000;
		}
		#topics div.inner div.each:nth-of-type(odd) div.caption{
			bottom: 0; right: 6vw;
			border-width: 0 1px 1px 0;
		}
		#topics div.inner div.each:nth-of-type(even) div.caption{
			bottom: 0; left: 6vw;
			border-width: 0 0 1px 1px;
		}

		#topics div.inner div.each.n1 div.caption{
			padding: 15vw 10vw 5vw 6vw;
		}
		#topics div.inner div.each.n2 div.caption{
			padding: 15vw 6vw 5vw 10vw;
		}
		#topics div.inner div.each.n3 div.caption{
			padding: 15vw 10vw 5vw 6vw;
		}
		#topics div.inner div.each.n4 div.caption{
			padding: 15vw 6vw 5vw 10vw;
		}
		#topics div.inner div.each.n5 div.caption{
			padding: 15vw 10vw 5vw 6vw;
		}

	#topics div.inner div.each div.caption p{
		font-size: 3.2vw;
		line-height: 1.8;
		letter-spacing: 0.3vw;
	}

	#topics div.inner div.each div.photo{
		width: 86vw;
		}
		#topics div.inner div.each:nth-of-type(odd) div.photo{
			margin: 0 auto 0 0;
		}
		#topics div.inner div.each:nth-of-type(even) div.photo{
			margin: 0 0 0 auto;
		}

	#topics div.inner div.each h4{
		font-size: 10vw;
		line-height: 1;
		margin: 0 0 4vw 0;
	}


	/*-------------------
	hotyoga
	-------------------*/
	#hotyoga{
		padding: 12vw 0 0 0;
	}

	#hotyoga h3{
		position: relative;
		}
		#hotyoga h3::before{
			content: '';
			display: block;
			width: 94vw;
			height: 2px;
			background-color: #c01920;
			position: absolute;
			top: 25vw; left: 0;
			z-index: 2;
			transform: scale(0, 1);
			transform-origin: left top;
			}
			#hotyoga h3.appear::before{
				transform: scale(1, 1);
				-webkit-transition-delay: 0.4s;transition-delay: 0.4s;
				-webkit-transition-duration: 0.8s;transition-duration: 0.8s;
			}
	#hotyoga h3 p{
		font-size: 10vw;
		color: #06448f;
		margin: 0 auto 12vw auto;
		width: 86vw;
		text-align: left;
	}

/*	#hotyoga div.inner{
		position: absolute;
		top: 20vw; left: 0; right: 0;
		z-index: 1;
		margin: 0 auto;
		height: 2200px;
	}
*/
	#hotyoga div.inner p.lead{
		text-align: left;
		line-height: 1.8;
		font-size: 3.2vw;
		font-weight: bold;
		letter-spacing: 0.3vw;
		width: 86vw;
		margin: 0 auto 8vw auto;
	}

	#hotyoga div.inner div.panel{
		background-color: #06448f;
		background-repeat: no-repeat;
		background-position: 3vw 3vw;
		background-size: 21vw auto;
		width: 86vw;
		margin: 0 auto 8vw auto;
		padding: 10vw 4vw 8vw 6vw;
		box-sizing: border-box;
		color: #ffffff;
		text-align: left;
		}

	#hotyoga div.inner div.panel h4{
		font-size: 9vw;
		position: relative;
		padding: 0 0 5vw 0;
		margin: 0 0 6vw 0;
		}
		#hotyoga div.inner div.panel h4::after{
			content: '';
			display: block;
			width: 8vw;
			height: 1vw;
			background-color: #c01920;
			position: absolute;
			bottom: 0; left: 0;
		}

	#hotyoga div.inner div.panel p{
		font-size: 3.6vw;
		line-height: 1.8;
		letter-spacing: 0.3vw;
	}


	#hotyoga div.inner div.merit{
	}
	#hotyoga div.inner div.merit dl{
		border: 1px solid #000000;
		width: 86vw;
		margin: 0 auto;
		box-sizing: border-box;
		}
		#hotyoga div.inner div.merit dl:nth-of-type(n+2){
			margin-top: 10vw;
		}

	#hotyoga div.inner div.merit dl dt{
		text-align: left;
		font-size: 0;
		margin: 2vw 0 0 0;
		position: relative;
		}
		#hotyoga div.inner div.merit dl dt::after{
			content: '';
			display: block;
			width: 86vw;
			height: 1px;
			background-color: #000000;
			position: absolute;
			bottom: 0; left: 0;
		}

	#hotyoga div.inner div.merit dl dt p.jp{
		display: inline-block;
		vertical-align: middle;
		width: 58vw;
		padding: 2vw 0 4vw 4vw;
		box-sizing: border-box;
		font-size: 4.8vw;
		font-weight: bold;
		border-right: 1px solid #000000;
		letter-spacing: 0.3vw;
	}

	#hotyoga div.inner div.merit dl dt p.en{
		display: inline-block;
		vertical-align: middle;
		font-size: 3.6vw;
		color: #c01920;
		padding: 2vw 4vw 4vw 5vw;
		text-align: center;
		letter-spacing: 0.3vw;
	}

	#hotyoga div.inner div.merit dl dd{
		padding: 4vw 2vw 2vw 2vw;
		text-align: left;
	}

	#hotyoga div.inner div.merit dl dd p.comment{
		position: relative;
		padding: 2vw 3vw;
		margin: 0 0 0 3vw;
		border-radius: 5vw;
		background-color: #bfc3c7;
		color: #ffffff;
		font-size: 3.6vw;
		display: inline-block;
		vertical-align: top;
		letter-spacing: 0.3vw;
	}
	#hotyoga div.inner div.merit dl dd p.comment::before{
		content: "";
		position: absolute;
		top: 100%;
		left: 50%;
		margin-left: -3vw;
		border: 3vw solid transparent;
		border-top: 3vw solid #bfc3c7;
	}

	#hotyoga div.inner div.merit dl dd ul{
		margin: 6vw 0 6vw 3vw;
	}

	#hotyoga div.inner div.merit dl dd ul li{
		letter-spacing: 0.3vw;
		font-size: 3.6vw;
		}
		#hotyoga div.inner div.merit dl dd ul li::before{
			content: '';
			display: inline-block;
			vertical-align: top;
			width: 3vw;
			height: 3vw;
			margin: 0 1vw 0 0;
			border-radius: 100%;
			background-color: #bfc3c7;
		}
		#hotyoga div.inner div.merit dl dd ul li:nth-of-type(n+2){
			margin: 3vw 0 0 0;
		}

	#hotyoga div.inner div.merit dl dd p.point{
		background-color: #c01920;
		padding: 4vw;
		font-size: 3.6vw;
		color: #ffffff;
		line-height: 1.8;
		letter-spacing: 0.3vw;
	}


	#hotyoga div.inner div.reccomended{
		margin: 15vw 0 0 0;
	}
	#hotyoga div.inner div.reccomended ul{
	}

	#hotyoga div.inner div.reccomended ul li{
		width: 86vw;
		margin: 0 auto;
		text-align: left;
		}
		#hotyoga div.inner div.reccomended ul li:nth-of-type(2){
			margin-top: 10vw;
		}

	#hotyoga div.inner div.reccomended ul li p.photo{
		width: 100%;
	}
	#hotyoga div.inner div.reccomended ul li p.photo img{
		width: 100%;
	}

	#hotyoga div.inner div.reccomended ul li dl{
		margin: 6vw 0 0 0;
	}

	#hotyoga div.inner div.reccomended ul li dl dt{
		font-size: 4vw;
		font-weight: bold;
		letter-spacing: 0.3vw;
		padding: 0 0 3vw 0;
		margin: 0 0 4vw 0;
		border-bottom: 1px solid #000000;
	}

	#hotyoga div.inner div.reccomended ul li dl dd{
		line-height: 1.8;
		letter-spacing: 0.3vw;
		font-size: 3.6vw;
	}

	#hotyoga div.inner div.reccomended p.btn{
		text-align: center;
		margin: 12vw 0;
	}
	#hotyoga div.inner div.reccomended p.btn a{
		display: inline-block;
		vertical-align: top;
		width: 86vw;
		padding: 4vw 0 3.8vw 0;
		margin: 0 auto;
		color: #ffffff;
		background-color: #c01920;
		font-size: 4.5vw;
		line-height: 1;
		text-decoration: none;
		position: relative;
	}
	#hotyoga div.inner div.reccomended p.btn a::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 2vw;
		height: 3vw;
		background-image: url(../img/ico_arrow_wh.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
		position: absolute;
		top: 5.2vw; left: 6vw;
		letter-spacing: 0.3vw;
	}

	/*-------------------
	entry
	-------------------*/
	#entry{
		background-image: url(../img/entry_bg.jpg);
		background-repeat: no-repeat;
		background-position: top center;
		/*background-size: auto auto;*/
		background-size: cover;
		height: 100vw;
		padding: 11vw 0;
		box-sizing: border-box;
		color: #ffffff;
	}

	#entry h3{
		margin: 0 0 8vw 0;
	}
	#entry h3 p.main{
		font-size: 10vw;
		line-height: 1;
		margin: 0 0 4vw 0;
	}
	#entry h3 p.sub{
		font-size: 4vw;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 0.5vw;
	}

	#entry p.btn{
		text-align: center;
		margin: 0 0 8vw 0;
	}
	#entry p.btn a{
		display: inline-block;
		vertical-align: top;
		width: 86vw;
		padding: 5vw 0 4vw 0;
		margin: 0 auto;
		border: 2px solid #ffffff;
		color: #ffffff;
		background-color: rgba(0,0,0,0.55);
		font-size: 5vw;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
		position: relative;
		letter-spacing: 0.5vw;
	}
	#entry p.btn a::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 3vw;
		height: 5vw;
		background-image: url(../img/ico_arrow_wh.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
		position: absolute;
		top: 6vw; left: 5vw;
		letter-spacing: 0.5vw;
	}

	#entry p.n1{
		font-size: 3.6vw;
		letter-spacing: 0.5vw;
		margin: 0 0 5vw 0;
		line-height: 1.6;
	}
	#entry p.n1 span{
		color: #fcff00;
	}

	#entry p.n2{
		font-size: 3.2vw;
		letter-spacing: 0.5vw;
		line-height: 1.6;
	}

	/*-------------------
	trial
	-------------------*/
	#trial{
		padding: 12vw 0;
	}

	#trial h3{
		margin: 0 0 8vw 0;
	}
	#trial h3 p.main{
		font-size: 10vw;
		line-height: 1;
		margin: 0 0 4vw 0;
		color: #06448f;
	}
	#trial h3 p.sub{
		font-size: 4vw;
		font-weight: bold;
		line-height: 1.6;
		letter-spacing: 0.5vw;
	}

	#trial div.bnr{
		width: 86vw;
		margin: 0 auto;
	}



}