@charset "utf-8";

/*==========================================
 全デバイス共通［common］
===========================================*/
/* ================ Font */
body {
	font:13px/1.231 'Hiragino Kaku Gothic ProN', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Sans-serif;
	*font-size:small;
	*font:x-small;
	color:#000;
}
select, input, button, textarea {
	font:99% 'Hiragino Kaku Gothic ProN', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Sans-serif;
}
table {
	font-size:inherit;
	font:100%;
}
pre, code, kbd, samp, tt {
	font-family:monospace;
	*font-size:108%;
	line-height:100%;
}
/* ================ Link */
a:link {
	color: #009;
}
a:visited {
	color: #939;
}
a:hover {
	color:#c03;
	text-decoration:underline;
}
a:active {
	color: #f06;
}
/* ================ Clearfix */
.clearfix:before,
.clearfix:after {
	content:"";
	display:block;
	overflow:hidden;
}
.clearfix:after {
	clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.clearfix {
	zoom:1;
}

/*==========================================
 PC_960px_over
=========================================== */
/* ----------　Basic　---------- */
body {
	background: #fff;
	font-family: Meiryo, 'Hiragino Kaku Gothic ProN', 'MS PGothic', Sans-serif;
}
div {
	margin: 0;
	padding: 0;
}

/*======================= HEADER */
#header-wrap {
	width: 100%;
	margin: 0 0 0px;
	background: #ffffff;
}
#header {
	width: 960px;
	height: auto;
	margin: 0 auto;
	background: #fff;
}
/* ----------　Header_MDS　---------- */
#header-mds {
	float: left;
	width: 350px;
	height: 160px;
}

#header h1 {
	width: 348px;
	height: 120px;
	margin-top: 15px;
}
/* ----------　Header-right　---------- */
#header-right {
	float:right;
	width: 570px;
	height:auto;
}
#header-right p {
	text-align: right;
	margin: 30px 0 20px;
}
#header-right p strong {
	font-size: 138.5%;
	font-weight: normal;
}
#header-right p strong.sp {
	display: none;
}
ul.header-info {
	float: right;
	list-style: none;
	text-align: right;
	font-size: 93%;
	margin: 0 0 20px;
	border-top: solid 1px #ccc;
	border-left: solid 1px #ccc;
}
ul.header-info li {
	float: left;
	border-right: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
ul.header-info li a {
	display: block;
	padding: 10px 18px;
	text-decoration: none;
	background: #fff;
	color: #000;
}
ul.header-info li a:hover {
	font-weight: bold;
	background: #000;
	color: #fff;
}
ul.header-info li a.selected,
ul.header-info li a:hover.selected {
	background: #dcdcdc;
	color: #000;
	font-weight: normal;
	cursor: default;
}

/*======================= NAV */
#nav {
	float: right;
	width: 200px;
	height: auto;
	margin: 0 0 30px;
}
#nav label {
	display: none;
}
#nav input[type="checkbox"].on-off {
	display: none;
}

ul.nav-list {
	clear: both;
	list-style: none;
	border-top: solid 1px #ccc;
}
ul.nav-list li {
	float: left;
	width: 100%;
	height: auto;
}
ul.nav-list li a {
	display: block;
	text-align: left;
	margin: 0;
	padding: 20px 10px;
	border-bottom: solid 1px #ccc;
	text-decoration: none;
	color: #000;
}
ul.nav-list li.last a {
	width: 100%;
	border-right: none;
}
ul.nav-list li a.selected,
ul.nav-list li a:hover.selected {
	background: #dcdcdc;
	color: #000;
	font-weight: normal;
	cursor: default;
}
ul.nav-list li a:hover {
	background: #000;
	color: #fff;
	font-weight: bold;
}

/* ----------　home-main-photo　---------- */
#home-main-photo {
	width: 100%;
	height: auto;
	margin: 0 0 60px;
}
/* -------------- TOP［ループスライダー］ -------------- */
#loopslider {
	margin: 0 auto;
	width: 100%;
	height: 400px;
	text-align: left;
	position: relative;
	overflow: hidden;
}
#loopslider ul {
	height: 400px;
	float: left;
	display: inline;
	overflow: hidden;
}
#loopslider ul li {
	width: 600px;
	height: 400px;
	float: left;
	display: inline;
	overflow: hidden;
}

/* -----------ClearFixElements----------- */
#loopslider ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}
#loopslider ul {
	display: inline-block;
	overflow: hidden;
}

/*======================= MAIN */
#main {
	width: 960px;
	height: auto;
	margin: 0 auto;
}

/* ----------　contents　---------- */
#contents {
	float: left;
	width: 660px;
	height: auto;
	margin: 0 0 30px;
}
.section {
	width: 100%;
	height: auto;
	margin: 0 0 50px;
}
.section h2 {
	margin: 0 0 30px;
	font-size: 167%;
	font-weight: normal;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	letter-spacing: 0.075em;
}
.section h3.type-a {
	margin: 0 0 25px;
	padding: 1em 0 1em 1em;
	font-size: 116%;
	font-weight: normal;
	line-height: 1.8em;
	letter-spacing: 0.2em;
	border-left: solid 1px #333;
}
.section h3.type-b {
	margin: 0 0 25px;
	padding: 1em 0 1em;
	font-size: 116%;
	font-weight: normal;
	line-height: 1.8em;
	letter-spacing: 0.2em;
	text-align: center;
	border-bottom: solid 1px #999;
}
.section h3.type-c {
	margin: 0 0 25px;
	padding: 1em 0 1em;
	font-size: 116%;
	font-weight: normal;
	line-height: 1.8em;
	letter-spacing: 0.2em;
	text-align: left;
	border-bottom: solid 1px #999;
}
.section h4 {
	margin: 0 0 10px;
	padding: 0.8em 1em;
	font-size: 116%;
	font-weight: normal;
	line-height: 1.5em;
	border: solid 1px #999;
}
.section h4.type-h4-a {
	width: 4em;
	margin: 0 auto 15px;
	padding: 1em 0;
	font-size: 116%;
	font-weight: normal;
	line-height: 1.8em;
	text-align: center;
	border: solid 1px #999;
}
.section h4.type-h4-b {
	margin: 0 0 10px;
	padding: 0;
	font-size: 108%;
	font-weight: normal;
	line-height: 1.5em;
	border: none;
}
.section p {
	width: 100%;
	height: auto;
	margin: 0 0 30px;
	line-height: 1.8em;
	letter-spacing: 0.075em;
}
.section p.center {
	text-align: center;
}
.section p.p-cap {
	font-size: 85%;
	line-height: 1.5em;
}
.section p.cgi-data {
	margin: 0 0 10px;
}
.section ul {
	margin: 0 0 30px;
	padding: 0 0 0 1.5em;
	line-height: 1.8em;
	letter-spacing: 0.075em;
}
.section ol {
	margin: 0 0 30px;
	padding: 0 0 0 1.5em;
	line-height: 1.8em;
	letter-spacing: 0.075em;
}
.cgi-data-icon {
	margin-right:0.5em;
}

/* ----------　Basic Rayout　---------- */
.d-all {
	margin: 0 0 20px;
}
.d-left {
	float: left;
}
.d-right {
	float: right;
}
.w700 { width: 700px; }
.w310 { width: 310px; }
.w330 { width: 330px; }
.r-20 { margin-right: 20px; }
.b-0 { margin-bottom: 0; }
.b-10 { margin-bottom: 10px; }
.b-20 { margin-bottom: 20px; }
.b-30 { margin-bottom: 30px; }
.b-40 { margin-bottom: 40px; }
.b-50 { margin-bottom: 50px; }

.f-size-1539 {
	font-size: 153.9%;
}
.minc {
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.clmn {
	padding: 1em;
}
.dashed {
	border: dashed 1px #999;
}
strong.sp {
	display: none;
}

/* ----------　Topics　---------- */
.topics-list {
	margin: 0 0 30px;
	border-top: solid 1px #ccc;
}
.topics-list dt {
	width: 8em;
	float: left;
	color: #333;
}
.topics-list dt span {
	display: block;
	padding: 14px 0;
	line-height: 1.5em;
}
.topics-list dd {
	padding: 0 0 0 8em;
	border-bottom: solid 1px #ccc;
}
.topics-list dd a {
	display: block;
	padding: 14px 0;
	line-height: 1.5em;
}
.topics-list dd a img {
	margin-right: 0.5em;
}
/* 
　スタッフ紹介　---------- */
ul.staff {
	list-style: none;
	line-height: 2em;
}
ul.staff li span {
	font-size: 123.1%;
	padding-left: 1em;
}
ul.staff ul {
	list-style: none;
	margin: 0 0 0 3em;
}
ul.staff ul.b-20 {
	margin-bottom: 20px;
}

.p-gallery {
	
}
.p-gallery a {
	float: left;
	margin-right: 30px;
	margin-bottom: 30px;
}
.p-gallery a img {
	width: 120px;
	height: 80px;
}
#imagelightbox
{
	position: fixed;
	z-index: 9999;
}

/* こんな方におすすめ */
.section p.nayami {
	margin: 0 0 15px;
	padding: 1em;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-weight: bold;
	font-size: 116%;
	color: #333;
	background: #f5f5f5;
	line-height: 2em;
}

/* アトラス・オーソゴナルテクニック */
.section h3 .h3-info {
	font-size: 85%;
	line-height: 1.2em;
}
.section h3 .h3-info span {
	float: right;
}

/* 表組みA */
.table-a {
	margin: 0 0 20px;
	width: 100%;
}
.table-a th {
	font-weight: normal;
	line-height: 1.5em;
	padding: 0.5em 0 0.5em 0.5em;
}
.table-a td {
line-height: 1.5em;
	padding: 0.5em 0.5em 0.5em 0;
}
/* 表組みB */
.table-b {
	margin: 0 0 40px;
	width: 100%;
	border-top: solid 1px #c1c1c1;
}
.table-b td {
	text-align: center;
	line-height: 1.5em;
	padding: 0.8em;
	border-bottom: solid 1px #c1c1c1;
}
/* 表組みC */
.table-c {
	margin: 0 0 30px;
	width: 100%;
	border-top: solid 1px #c1c1c1;
}
.table-c td {
	text-align: center;
	line-height: 1.5em;
	padding: 0.6em;
	border-bottom: solid 1px #c1c1c1;
	border-left: solid 1px #c1c1c1;
	vertical-align: middle;
}
.table-c td.mds {
	border-left: none;
}
/* 表組みフォーム用 */
.table-form {
	margin: 0;
	width: 100%;
}
.table-form th {
	font-weight: normal;
	line-height: 1.5em;
	padding: 0.5em 0 0.5em 0.5em;
	vertical-align: top;
}
.table-form td {
line-height: 1.5em;
	padding: 0.5em 0.5em 0.5em 0;
}
.red {
	color: #c03;
}

/* Q&A */
.q_box p {
	position: relative;
	z-index: 3;
	width: 92%;
	margin: 0;
	padding: 0.3em 0 1em 8%;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-weight: bold;
	font-size: 123.1%;
	color: #333;
}
.q_box p:before {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	content: "Q";
	font-size: 40px;
	line-height: 1em;
	font-family: serif;
	font-weight: bold;
	color: #ccc;
}
.a_box p {
	position: relative;
	z-index: 3;
	width: 92%;
	margin: 0 0 40px;
	padding: 0 0 1em 8%;
}
.a_box p:before {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	content: "A";
	font-size: 40px;
	line-height: 1em;
	font-family: serif;
	font-weight: bold;
	color: #ccc;
}
/* お問い合わせ */
p.inq-tell strong {
	font-size: 138.5%;
	font-weight: normal;
}
.red-info {
	width: 94%;
	padding: 3%;
	border: dashed 1px #c03;
}
.red-info p {
	margin: 0;
}

/* 坐禅 */
.zazen {
	border-top: solid 1px #c1c1c1;
	border-bottom: solid 1px #c1c1c1;
	padding: 0.8em 0;
}

/*======================= FOOTER */

/* ----------　フッター［ページの先頭へ］　---------- */
#back-to-head {
	width: 960px;
	height: auto;
	margin: 0;
	padding: 0;
}
#back-to-head p {
	float: right;
	margin: 0;
	padding: 0;
	width: 200px;
}
#back-to-head p a {
	display: block;
	text-decoration: none;
	text-align:center;
	font-size: 93%;
	margin: 0;
	padding: 1em;
	background: #fff;
	color: #000;
	border-left: solid 1px #ccc;
	border-right: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
#back-to-head p a:hover {
	background: #000;
	color: #fff;
	font-weight: bold;
}

#footer-wrap {
	width: 100%;
	margin: 20px 0 0;
}
#footer {
	width: 960px;
	height: auto;
	margin: 0 auto;
	padding: 0;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
#footer h2 {
	padding: 0 0 20px;
	font-size: 138.5%;
	line-height: 1.5em;
	font-weight: normal;
}
#footer h2 span {
	font-size: 68%;
}
#footer p.address {
	margin: 0 0 30px;
	line-height: 1.6em;
}
.credit-in {
	width: 960px;
	margin: 0 auto;
	padding: 15px 0;
	color: #666;
	font-size: 85%;
}


/* -------------- 本文［パンクズリスト］ -------------- */
#bread-crumbs {
	margin: 20px 0;
	font-size: 85%;
	color: #000;
}


/* ==========================================
 TABLET_devices_640_959
=========================================== */
@media only screen and ( max-width: 959px ) {
	
}

/* ==========================================
 MOBILE_639px_within
=========================================== */
@media only screen and ( max-width: 639px ) {
	/* ----------　Basic　---------- */
	body {
		background: #fff;
	}
	
	/*======================= HEADER */
	#header-wrap {
		width: 94%;
		margin: 0 3% 0px;
		background: #ffffff;
	}
	#header {
		width: 100%;
		height: auto;
		margin: 0 auto;
		background: #fff;
	}
	/* ----------　Header_MDS　---------- */
	#header-mds {
		float: none;
		width: 100%;
		height: auto;
	}
	#header h1 {
		width: 300px;
		height: 103px;
		margin: 10px auto 15px;
	}
	#header h1 img {
		width: 300px;
		height: 103px;
	}
	/* ----------　Header-right　---------- */
	#header-right {
		float: none;
		width: 100%;
		height:auto;
	}
	#header-right p {
		text-align: center;
		margin: 10px 0 20px;
	}
	#header-right p span {
		display: block;
		text-align: center;
		padding: 3px;
	}
	#header-right p strong.sp {
		display: inline;
	}
	#header-right p strong.pc {
		display: none;
	}
	ul.header-info {
		float: none;
		width: 100%;
		list-style: none;
		text-align: center;
		font-size: 100%;
		margin: 0 0 20px;
		border-top: solid 1px #ccc;
		border-left: solid 1px #ccc;
	}
	ul.header-info li {
		float: left;
		width: 49.6%;
		border-right: solid 1px #ccc;
		border-bottom: solid 1px #ccc;
	}
	ul.header-info li a {
		display: block;
		padding: 10px 3px;
		text-decoration: none;
		background: #fff;
		color: #000;
	}
	ul.header-info li a:hover {
		background: #666;
		color: #fff;
	}
	
	/*======================= NAV */
	#nav {
		float: none;
		width: 100%;
		height: auto;
		margin: 0 0 30px;
	}
	ul.nav-list {
		clear: both;
		list-style: none;
		background: #fff;
	}
	ul.nav-list li {
		float: none;
		width: 100%;
		height: auto;
	}
	ul.nav-list li a {
		display: block;
		height: auto;
		text-align:center;
		margin: 0;
		padding: 12px 0;
		background: #444;
		text-decoration: none;
		font-size: 90%;
		font-weight: bold;
		border: none;
		border-bottom: solid 1px #fff;
		color: #fff;
	}
	ul.nav-list li.last a {
		width: 100%;
		border-right: none;
	}
	ul.nav-list li a:hover {
		background: #000;
		color: #fff;
		font-weight: bold;
	}
	/* =============================== NAV Accordion ===== */
	#nav label {
		background: #000 url(../image/sp_nav_tt.png) no-repeat 0 center;
			background-size:100% auto;
			-moz-background-size:100% auto;
			-webkit-background-size:100% auto;
		display: block;
		width: 100%;
		height: auto;
		margin: 0 0 2px;
		padding: 12px 0;
		z-index:0;
		font-weight: bold;
		font-size: 108%;
		text-align: center;
		color: #fff;
	}
	
	#nav input[type="checkbox"].on-off {
		display: none;
	}
	#nav .menu ul {
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	#nav input[type="checkbox"].on-off + ul {
		height: 0;
		overflow: hidden;
	}
	#nav input[type="checkbox"].on-off:checked + ul {
		height: 450px;
	}
	/* =============================== END__Accordion ===== */
	
	/* ----------　home-main-photo　---------- */
	#home-main-photo {
		width: 100%;
		height: auto;
		margin: 0 0 20px;
	}
	/* -------------- TOP［ループスライダー］ -------------- */
	#loopslider {
		margin: 0 auto;
		width: 100%;
		height: 200px;
		text-align: left;
		position: relative;
		overflow: hidden;
	}
	#loopslider ul {
		height: 200px;
		float: left;
		display: inline;
		overflow: hidden;
	}
	#loopslider ul li {
		width: 300px;
		height: 200px;
		float: left;
		display: inline;
		overflow: hidden;
	}
	#loopslider ul li img {
		width: 100%;
		height: auto;
	}
	/* -----------ClearFixElements----------- */
	#loopslider ul:after {
		content: ".";
		height: 0;
		clear: both;
		display: block;
		visibility: hidden;
	}
	#loopslider ul {
		display: inline-block;
		overflow: hidden;
	}
	
	
	/*======================= MAIN */
	#main {
		width: 94%;
		height: auto;
		margin: 0 3% 20px;
	}
	
	/* ----------　contents　---------- */
	#contents {
		float: none;
		width: 100%;
		height: auto;
		margin: 0 0 30px;
	}
	.section {
		margin: 0 0 40px;
	}
	.section h2 {
		margin: 0 0 20px;
		font-size: 138.5%;
		font-weight: normal;
	}
	.section p {
		margin: 0 0 30px;
		line-height: 1.8em;
		letter-spacing: 0.075em;
	}
	.section img {
		width: 100%;
		height: auto;
	}
	
	/* ----------　Basic Rayout　---------- */
	.d-all {
		margin: 0 0 20px;
	}
	.d-left {
		float: none;
	}
	.d-right {
		float: none;
	}
	.w700 { width: 100%; }
	.w310 { width: 100%; }
	.r-20 { margin-right: 0; }
	.b-0 { margin-bottom: 0; }
	.b-10 { margin-bottom: 10px; }
	.b-20 { margin-bottom: 20px; }
	.b-30 { margin-bottom: 30px; }
	.b-40 { margin-bottom: 40px; }
	.b-50 { margin-bottom: 50px; }
	
	strong.sp {
		display: inline;
	}
	strong.pc {
		display: none;
	}
	/* ----------　Topics　---------- */
	.topics-list {
		margin: 0 0 40px;
		border-top: solid 1px #ccc;
	}
	.topics-list dt {
		width: 100%;
		float: none;
		color: #333;
	}
	.topics-list dt span {
		display: block;
		padding: 10px 0 0;
		line-height: 1.5em;
	}
	.topics-list dd {
		padding: 0 0 0 1em;
		border-bottom: solid 1px #ccc;
	}
	.topics-list dd a {
		display: block;
		padding: 5px 0 10px;
		line-height: 1.8em;
	}
	.topics-list dd a img {
		margin-right: 0.5em;
	}
	
	/* 羽ギャラリー */
	.table-a {
		margin: 0 0 20px;
		width: 100%;
	}
	.table-a th {
		display: block;
		width: 100%;
		font-weight: normal;
		text-align: left;
		padding: 1em 0 0.3em;
	}
	.table-a td {
		display: block;
		width: 95%;
		padding: 0.3em 0 0.5em 5%;
		border-bottom: solid 1px #999;
	}
	
	/* 表組みフォーム用 */
	.table-form {
		margin: 0 0 20px;
		width: 100%;
		border-top: solid 1px #999;
	}
	.table-form th {
		display: block;
		width: 100%;
		font-weight: normal;
		text-align: left;
		padding: 1em 0 0.3em;
	}
	.table-form td {
		display: block;
		width: 95%;
		padding: 0.5em 0;
		border-bottom: solid 1px #999;
	}
	.table-form td textarea {
		width: 100%;
	}
	
	/* Q&A */
	.q_box p {
		width: 85%;
		margin: 0;
		padding: 0.3em 0 1em 15%;
	}
	.a_box p {
		width: 85%;
		padding: 0.3em 0 1em 15%;
	}
	
	/*======================= FOOTER */
	/* ----------　フッター［ページの先頭へ］　---------- */
	#back-to-head {
		width: 100%;
		margin: 0;
	}
	#back-to-head p {
		float: none;
		margin: 0;
		padding: 0;
		width: 100%;
	}
	#back-to-head p a {
		display: block;
		text-decoration: none;
		text-align: center;
		font-size: 100%;
		margin: 0;
		padding: 0.7em 2em 0.7em 0.2em;
		background: #eee;
		color: #000;
		border: solid 1px #ccc;
		border-top: none;
	}
	#back-to-head p a:hover {
		background: #000;
		color: #fff;
		font-weight: bold;
	}
	
	#footer-wrap {
		width: 100%;
		margin: 20px 0 0;
	}
	#footer {
		width: 94%;
		height: auto;
		margin: 0 3% 20px;
		padding: 0;
		border-top: solid 1px #ccc;
		border-bottom: solid 1px #ccc;
	}
	#footer h2 {
		padding: 0 0 20px;
		font-size: 138.5%;
		line-height: 1.5em;
		font-weight: normal;
	}
	#footer h2 span {
		font-size: 68%;
	}
	#footer p {
		margin: 0 0 30px;
		line-height: 1.6em;
	}
	.credit-in {
		width: 94%;
		margin: 0 3%;
		padding: 5px 0 10px;
		color: #666;
		font-size: 85%;
	}
}