/* -------------------------
// フォント拡張
------------------------- */
@import url(font-awesome.min.css);

/* -------------------------
// 期限対応
.infoBtn {
	display: none;
}
.topInfo .detailMail + dd {
	margin-bottom: 15px;
}
.menu_course .btn,
.menu_course .btn-blue {
	display: none!important;
}
------------------------- */

/* -------------------------
// 全般・及びBootstrapのリセット
------------------------- */
html{
	font-size: 10px;
	min-height: 100%;
	position: relative;
}
body {
	margin-bottom: 52px
}
@media only screen and (max-width: 767px){
	body {
		margin-bottom: 37px;
	}
}
p {
	margin: 0;
}
h1,h2,h3,h4,h5,h6{
	font-size: 1.2rem;
	margin: 0;
	padding: 0;
}
@media only screen and (min-width: 768px){
	.container {
		width: auto;
	}
}
small {
	color: inherit!important;
}
.row {
	margin-left: 0;
	margin-right: 0;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
	padding-left: 0;
	padding-right: 0;
}

/* navbar-custom */
.navbar-inverse {
	background-color: #94cee4;
	border-color: #94cee4;
	color: #ffffff;
	margin-bottom: 0;
	border-radius: 0;
	border-width: 0;
	font-size: 1.4rem;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:focus,
.navbar-inverse .navbar-nav > .active > a:hover {
	background-color: #BEE1EF;
	color: #ffffff;
}
.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-nav > li > a {
	color: #2D5663;
}
.navbar-inverse .navbar-toggle {
	border-color: #ffffff;
	border-radius: 0;
}
.navbar-inverse .navbar-nav>.open>a,
.navbar-inverse .navbar-nav>.open>a:focus,
.navbar-inverse .navbar-nav>.open>a:hover {
	color: #fff;
	background-color: #BEE1EF;
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
	margin-left: 15px;
}
.navbar-brand {
	padding: 8px 6px 8px 14px;
}
.navbar-nav > li > a {
	padding: 8px 6px;
}
.navbar-collapse {
	border-top: none;
}
@media only screen and (max-width: 767px){
	.container > .navbar-header,
	.container-fluid > .navbar-header,
	.container > .navbar-collapse,
	.container-fluid > .navbar-collapse {
		margin-left: 0;
	}
	.navbar-nav {
		margin: 0 -15px;
	}
}
.navbar-inverse .navbar-toggle,
.navbar-inverse .navbar-toggle:focus,
.navbar-inverse .navbar-toggle:hover {
	background-color: #ffffff;
}
.navbar-toggle {
	padding: 5px;
}
.navbar-toggle .icon-bar {
	height: 2px;
	border-radius: 0;
}
.navbar-toggle .icon-bar2 {
	color: #94cee4;
	font-size: 9px;
	line-height: 8px;
	display: block;
	text-align: center;
	padding-top: 2px;
}
.navbar-toggle .icon-bar+.icon-bar {
	margin-top: 3px;
}
.navbar-inverse .navbar-toggle .icon-bar {
	background-color: #94cee4;
}
.navbar .dropdown .caret {
	position: absolute;
	display: block;
	right: 3px;
	top: 22px;
}
@media only screen and (max-width: 767px){
	.navbar-inverse .navbar-nav .open .dropdown-menu,
	.navbar-inverse .navbar-nav .open .dropdown-menu {
		background-color: #fff;
	}
}

.nav-menu {
	margin: 0 20px 10px;
	border-radius: 10px;
	background-color: rgba(255,255,255,.8);
	font-size: 1.2rem;
	overflow: hidden;
}
.nav-menu > .list-unstyled {
	padding: 3px 0;
}
.nav-menu > .list-unstyled > li > a {
	color: #2D5663;
	display: block;
	padding: 3px 6px;
	font-weight: bold;
}
.nav-menu > .list-unstyled > li > a > small {
	font-size: 100%;
	font-weight: normal;
}
/* footer */
.footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	box-sizing: border-box;
	background-color: #555555;
	color: #fff;
	padding: 10px;
	text-align: right;
	font-size: 1.2rem;
	margin-top: 15px;
}
.footer small {
	font-size: 1.2rem;
}


/* -------------------------
// 汎用・共通クラス
------------------------- */
.widthFit {
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.main.container-fluid {
	margin-top: 15px;
}
@media only screen and (max-width: 767px){
	.main.container-fluid {
		margin-top: 0;
		padding: 0;
	}
}
/* gnav */
.navbar-brand[data-title],
.navbar-nav > li > a[data-title] {
	font-weight: bold;
	text-align: center;
	font-size: 12px;
	line-height: 1;
}
.navbar-brand[data-title]:after,
.navbar-nav > li > a[data-title]:after {
	content: attr(data-title);
	display: block;
	font-size: 10px;
	border-top: 1px solid #2d5663;
	margin-top: 2px;
	padding-top: 2px;
	line-height: 1;
}
.navbar-brand[data-title]:hover:after,
.navbar-nav > li > a[data-title]:hover:after {
	border-top: 1px solid #488ba1;
}
@media only screen and (max-width: 767px){
	.navbar-brand[data-title],
	.navbar-nav > li > a[data-title] {
		font-size: 16px;
	}
}


#navBrand {
	width: 5em;
}
#navMenu {
	width: 6em;
}
@media only screen and (max-width: 767px){
	#navBrand {
		width: auto;
		padding: 18px 6px 8px;
		font-size: 20px;
	}
	#navBrand .visible-xs {
		display: inline-block !important;
	}
	#navBrand:after {
		content: attr(data-title-sp);
		display: inline-block;
		border-top: none;
		font-size: 12px;
	}
}


/* affix */
#globalNav.affix{
	top:0;
	position:fixed;
	z-index: 50;
	right: 0;
	left: 0;
}
#globalNav.affix-top{
	position:static;
}



/* footer */
.footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	box-sizing: border-box;
	background-color: #94cee4;
	color: #fff;
	padding: 10px;
	text-align: right;
	font-size: 1.2rem;
	margin-top: 15px;
}
@media only screen and (max-width: 767px){
	.footer {
		margin-top: 0;
		text-align: center;
	}
	.footer small {
		font-size: 1.2rem;
	}
}

/* 汎用クラス */
.red {
	color: #ff0000;
}
.bold {
	font-weight: bold;
}

/* -------------------------
// index.html
------------------------- */
.mainHeadTitle {
	display: block;
	font-size: 1.6rem;
	margin: 0;
	padding: 0;
}

/* keyVisual */
.keyVisual {
	position: relative;
	background-color: #BEE1EF;
	overflow: hidden;
	width: 100%;
}
.keyVisual:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 5;
	background-image: url(../img/layer_gra_dark.png);
	background-repeat: repeat-x;
	background-position: bottom center;
}
.keyVisual .trans {
	position: absolute;
	left: 0;
	right: 0;
	width: auto;
	top: 0;
	bottom: 0;
	height: auto;
	background-repeat: no-repeat;
	-webkit-background-size: contain;
	background-size: cover;
	background-position: 50% 50%;
	z-index: 0;
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: opacity 4s linear 8s, -webkit-transform 13s linear 0s;
	transition: opacity 4s linear 8s, transform 13s linear 0s;
}
.keyVisual .trans.active {
	z-index: 4;
}
.keyVisual .trans.next {
	z-index: 3;
}

.keyVisual .trans.transparent {
	opacity: 0;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	-webkit-transition: opacity 4s linear 8s, -webkit-transform 13s linear 0s;
	transition: opacity 4s linear 8s, transform 13s linear 0s;
}
@media only screen and (max-width: 767px){
	.keyVisual .trans.transparent {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
}


.keyVisual .widthFit {
	position: relative;
	height: 240px;
	z-index: 5;
}
.keyVisual .titleSet {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: auto;
	color: #ffffff;
}
.keyVisual .titleSet .mainHeadTitle {
	font-size: 4rem;
	font-family: fantasy;
	padding: 10px 10px 4px;
	line-height: 1rem;
}
.keyVisual .titleSet .mainHeadTitle .logoHoo {
	max-width: 280px;
	width: 100%;
	display: block;
	height: auto;
}
.keyVisual .titleSet .mainHeadTitle small {
	display: block;
	font-size: 1.8rem;
	color: #ffffff;
}
.keyVisual .titleSet .mainHeadTitleDesc {
	font-size: 1.2rem;
	font-weight: bold;
	margin: 0;
	border-top: 1px solid #ffffff;
	padding: 4px 10px 10px;
}
@media only screen and (max-width: 767px){
	.keyVisual .widthFit {
		height: 170px;
	}
	.keyVisual .titleSet .mainHeadTitle .logoHoo {
		margin: 0 auto 0 -20px;
		max-width: 200px;
	}
	.keyVisual .titleSet .mainHeadTitle small {
		font-size: 1.4rem;
		text-align: left;
	}
	.keyVisual .titleSet .mainHeadTitleDesc {
		font-size: 1rem;
		text-align: left;
		font-weight: normal;
	}
}
.keyVisual .snsSet {
	position: absolute;
	top: 0;
	right: 0;
	padding: 10px;
}
.keyVisual .snsSet li {
	display: inline-block;
}
.keyVisual .snsSet li + li {
	margin-left: 5px;
}
.keyVisual .snsSet .fa {
	display: inline-block;
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	padding: 0.4rem;
	width: 2.8rem;
	text-align: center;
	border-radius: 20px;
	opacity: .5;
	transition: opacity 0.3s;
}
.keyVisual .snsSet .fa.fa-twitter {
	background-color: #1da1f3;
}
.keyVisual .snsSet .fa.fa-facebook {
	background-color: #3b5998;
}
.keyVisual .snsSet a:hover .fa {
	opacity: 1;
	transition: opacity 0.3s;
}
@media only screen and (max-width: 767px){
	.keyVisual .snsSet a .fa {
		opacity: 1;
	}
}

/* info */
.topInfo {
	margin: 0 10px 10px;
	border-radius: 5px;
	text-align: center;
	border: 1px solid  #2d5663;
}
.topInfo a:not(.btn) {
	color: #2d5663;
}
.topInfo .secHead {
	font-size: 1.6rem;
	line-height: 2.8rem;
	padding: 0 5px;
	background-color: #2d5663;
	color: #ffffff;
}
.topInfo .infoDetail {
	padding: 0;
	margin: 16px 8px 8px;
}
.topInfo .infoBtn {
	margin: 0 8px 16px;
}
.topInfo .infoDetail dt {
	display: none;
}
.topInfo .detailTel + dd,
.topInfo .detailTel + dd a{
	color: #2d5663;
	font-size: 2.4rem;
}
.topInfo .detailMail + dd,
.topInfo .detailMail + dd a{
	color: #2d5663;
}
.topInfo .shopDetailWrap {
	margin: 16px 16px 0;
}
.topInfo .shopDetail {
	color: #2d5663;
	text-align: left;
	line-height: 1.6rem;
	margin: 0 auto;
}
.topInfo .shopDetail dt {
	width: 7.2rem;
	padding-left: 8px;
}
.topInfo .shopDetail dd {
	margin: -2rem 0 1rem 0;
	padding-bottom: 1rem;
	padding-left:  7.6rem;
}
.topInfo .shopDetail dd:not(:last-child) {
	border-bottom: 1px solid #2d5663;
}
@media only screen and (max-width: 767px){
	.topInfo .shopDetail {
		width: auto;
	}
	.topInfo:first-child {
		margin-top: 10px;
	}
}

/* COURCE */
.topAsideList,
.topAsideList > li {
	display: block;
	margin: 0;
	padding: 0;
}
.topAsideList a {
	display: block;
}
.topAsideList {
	border-radius: 10px;
	margin: 10px 10px 0;
	overflow: hidden;
}
.topAsideList:last-child {
	margin-bottom: 10px;
}
.topAsideList > li {
	overflow: hidden;
	background-color: #ffffff;
}
.topAsideList > li img {
	width: 100%;
	height: auto;
	opacity: 1;
}
.topAsideList > li:hover img {
	opacity: 0.8;
}

/* SNS links */
.snsLinks {
	background-color: #eaeaea;
	padding: 10px;
	margin: 0 10px 10px;
	border-radius: 6px;
	overflow: hidden;
}
.snsLinkList {
	overflow: hidden;
	text-align: center;
}
.snsLinkList > .item {
	width: auto;
	display: inline-block;
	text-align: center;
	font-size: 1.4rem;
	margin: 0 3px;
	min-width: 60px;
}
.snsLinkList > .item > a {
	display: block;
	background-color: #fff;
	padding: 3px 6px;
	border: 1px solid #fff;
	border-radius: 6px;
}
.snsLinkList > .item > a:hover {
	border-color: #4ba6c9;
	transition: border-color 0.3s;
}
.snsLinkList > .item > a,
.snsLinkList > .item > a:hover,
.snsLinkList > .item > a:active {
	text-decoration: none;
}
.snsLinkList > .snsStaff img {
	max-width: 160px;
}
.snsLinkList > .snsFb> a {
	color: #3b5998;
}
.snsLinkList > .snsIs> a {
	color: #9b6954;
}
.snsLinkList > .snsTw {
	display: none;
}
.snsLinkList > .snsTw> a {
	color: #337ab7;
}
.snsLinkList .fa {
	font-size: 3rem;
	display: inline-block;
	vertical-align: middle;
}
.snsExplain {
	text-align: center;
}
@media only screen and (max-width: 767px) {
	.snsLinkList > .item {
		width: auto;
		display: inline-block;
		text-align: center;
		font-size: 1rem;
		margin: 0 3px;
		min-width: 60px;
	}
	.snsLinkList > .snsTw {
		display: inline-block;
	}
	.snsLinkList > .snsStaff {
		width: auto;
		display: block;
		margin: 0 auto 10px;
	}
	.snsLinkList > .snsStaff > a {
		display: inline-block;
		width: auto;
	}
	.snsLinkList .fa {
		font-size: 4rem;
		display: block;
	}
}

/* topnews */
.topSection .newsSection {
	border: 1px solid #B9632C;
	border-radius: 6px;
	overflow: hidden;
	margin-bottom: 10px;
	position: relative;
}
.topSection .newsSection .newsHead {
	color: #B9632C;
	font-size: 1.6rem;
	padding: 8px;
	border-bottom: 1px solid #B9632C;
	background: -moz-linear-gradient(45deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.66) 63%, rgba(185,99,44,1) 95%, rgba(185,99,44,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(255,255,255,0) 0%,rgba(255,255,255,0.66) 63%,rgba(185,99,44,1) 95%,rgba(185,99,44,1) 100%);
	background: linear-gradient(45deg, rgba(255,255,255,0) 0%,rgba(255,255,255,0.66) 63%,rgba(185,99,44,1) 95%,rgba(185,99,44,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#b9632c',GradientType=1 );
}
.topSection .newsSection .newsHead:before {
	content: "";
	background-image: url(/img/icn_hooDropBrown.png);
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	background-size: 100%;
	background-repeat: no-repeat;
	vertical-align: text-bottom;
	margin-right: 3px;
}
.topSection .newsSection .newsBody h2 {
	margin: 8px 8px 0;
	font-size: 1.6rem;
	font-weight: bold;
}
.topSection .newsSection .newsBody p {
	margin: 8px 8px 0;
}
.topSection .newsSection .newsFoot {
	margin-top: 8px;
	padding: 0 8px 4px;
	color: #888;
	text-align: right;
}

#newsList .newsSection:first-child {
	background-color: #b9632c;
	color: #fff;
}
#newsList .newsSection:first-child .newsHead {
	background-color: #fff;
}
#newsList .newsSection:first-child .newsBody {
	background-color: rgba(255,255,255,.75);
	color: #000;
	margin: 20px 20px 0;
	border-radius: 10px;
	padding: 10px 20px 20px;
}
#newsList .newsSection:first-child .newsFoot {
	color: #fff;
}

@media only screen and (max-width: 767px){
	.topSection .newsSection {
		border: 1px solid #B9632C;
		border-radius: 6px;
		overflow: hidden;
		margin: 0 10px 10px;
	}
	#newsList .newsSection:first-child .newsBody {
		margin: 10px 10px 0;
		border-radius: 10px;
		padding: 5px 5px 10px;
	}
}
/* special */
.topSection .newsSection.type_special {
	border-color: #3b94d9;
}
.topSection .newsSection.type_special .newsHead {
	color: #3b94d9;
	font-weight: bold;
	border-bottom: 1px solid #3b94d9;
	background: -moz-linear-gradient(45deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.66) 63%, rgba(59,148,217,1) 95%, rgba(59,148,217,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(255,255,255,1) 0%,rgba(255,255,255,0.66) 63%,rgba(59,148,217,1) 95%,rgba(59,148,217,1) 100%);
	background: linear-gradient(45deg, rgba(255,255,255,1) 0%,rgba(255,255,255,0.66) 63%,rgba(59,148,217,1) 95%,rgba(59,148,217,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#3b94d9',GradientType=1 );
}
.topSection .newsSection.type_special .newsHead:before {
	background-image: url(/img/icn_hooDrop.png);
}
.topSection .newsSection.type_special:before {
	position: absolute;
	content: "";
	background-image: url(/img/bg_sp1.jpg);
	background-size: cover;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.topSection .newsSection.type_special .newsBody {
	background-color: rgba(255,255,255,0.5);
	margin: 15px 15px 15px;
	padding: 15px;
	border-radius: 10px;
}
@media only screen and (max-width: 767px){
	.topSection .newsSection.type_special .newsBody {
		margin: 10px 10px 0;
		padding: 5px 5px 10px;
	}
}
@media only screen and (max-width: 767px){
	.mainSection {
		margin: 0 10px 10px;
	}
}

.twitterBox {
	width: auto;
	height: 450px;
	margin: 10px 10px 0;
	border-radius: 6px;
	overflow: hidden;
}
@media only screen and (max-width: 767px){
	.twitterBox {
		border-left: 16px solid #BEE1EF;
		border-right: 16px solid #BEE1EF;
	}
}


.main {
	font-size: 1.4rem;
}

#topConcept p,
#topMenu p {
	font-size: 1.5rem;
	margin: 10px 10px 0;
}
@media only screen and (max-width: 767px){
	#topConcept p,
	#topMenu p {
		font-size: 1.4rem;
		line-height: 1.4;
		margin: 5px 5px 0;
	}
}

.mainSection {
	background-image: url(../img/bg04.jpg);
	background-size: cover;
	background-position: center center;
	border-radius: 6px;
	overflow: hidden;
}
.secTitle {
	font-size: 3rem;
	width: 100%;
	font-family: serif;
	font-weight: bold;
	padding: 40px 15px;
	text-align: center;
	color: #fff;
	position: relative;
	background-image: url(../img/layer_dark.png);
}
.secBody:before {
	position: absolute;
	display: block;
	background-color: #fff;
	content: " ";
	background-image: url(../img/icn_hooDrop.png);
	background-repeat: no-repeat;
	background-size: 30px 30px;
	background-position: center center;
	left: 0;
	right: 0;
	width: 40px;
	top: -20px;
	margin: 0 auto;
	height: 40px;
	color: #825B29;
	text-align: center;
	font-size: 22px;
	border-radius: 20px;
	background-color: #fff;
}
.secBody {
	padding: 20px 10px 10px;
	position: relative;
	background-color: rgba(255, 255, 255, 0.6);
	font-size: 1.6em;
	line-height: 2.4rem;
	font-weight: 600;
}
.secBody p {

}
.secSubTitle {
	padding: 10px 10px 0;
	font-size: 2rem;
}
@media only screen and (max-width: 767px){
	.secTitle {
	}
	#topMenu {
		margin-top: 15px;
	}
}

/* -------------------------
// access.html
------------------------- */
.accessMap {
	border: 1px solid #b9632c;
	border-radius: 6px;
	margin-bottom: 10px;
	overflow: hidden;
}
.accessMap .secHead {
	color: #B9632C;
	font-size: 1.6rem;
	padding: 8px;
	border-bottom: 1px solid #B9632C;
	background: -moz-linear-gradient(45deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.66) 63%, rgba(185,99,44,1) 95%, rgba(185,99,44,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(255,255,255,0) 0%,rgba(255,255,255,0.66) 63%,rgba(185,99,44,1) 95%,rgba(185,99,44,1) 100%);
	background: linear-gradient(45deg, rgba(255,255,255,0) 0%,rgba(255,255,255,0.66) 63%,rgba(185,99,44,1) 95%,rgba(185,99,44,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#b9632c',GradientType=1 );
}
.accessMap .secFoot {
	background-color: #b9632c;
	padding: 6px 8px;
	color: #ffffff;
}
#map-detail {
	height: 300px;
	position: relative;
	overflow: hidden;
}
#map-detail > * {
	position: absolute;
	top: -150px;
}
.mapmark {
	width: 40px;
	height: auto;
	position: relative;
	left: -20px;
	top: -20px;
}

@media only screen and (max-width: 767px){
	.accessMap {
		margin: 0 10px 10px;
	}
}

/* -------------------------
// menu.html
------------------------- */
/* コースリスト */
.couseList {
	font-size: 1.2rem;
	margin: 5px 10px;
}
.couseList > li + li {
	border-top: 1px dotted #2d5663;
}
.couseList a {
	display: block;
	padding: 2px 0;
	font-weight: bold;
}
.couseList a small {
	font-weight: normal;
}
@media only screen and (min-width: 768px){
	.couseList a small {
		display: block;
	}
}
/* 各コースのボックス */
.menu_course {
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: #b9632c;
	border-radius: 10px;
	overflow: hidden;
	color: #ffffff;
	padding: 35px;
	position: relative;
}
.menu_course > * {
	position: relative;
	z-index: 1;
}
.menu_course + .menu_course {
	margin-top: 10px;
}
.menu_course:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	height: auto;
	left: 0;
	right: 0;
	width: auto;
	background-repeat: no-repeat;
	background-position: center top;
	-webkit-background-size: cover;
	background-size: 100% auto;
	z-index: 0;
	opacity: .8;
}
#menu_couse1:before,
#menu_couse2:before,
#menu_couse8:before,
#menu_couse9:before {
	background-image: url(/img/bg_course01.png);
}
#menu_couse3:before,
#menu_couse4:before,
#menu_couse6:before,
#menu_couse7:before {
	background-image: url(/img/bg_course02.png);
}
#menu_couse5:before {
	background-image: url(/img/bg_course03.png);
}
#menu_couse10:before {
	background-image: url(/img/bg_course10.png);
}
.menu_course .courseHead {
	font-size: 2.8rem;
	padding-bottom: 4px;
	margin: 0 0 4px;
	border-bottom: 1px dotted #fff;
}
#menu_couse10 .courseHead {
	border-bottom: none;
}

.menu_course .courseParts {
	padding: 0 0 8px;
	display: block;
	font-size: 1.2rem;
	font-weight: bold;
}
.menu_course .courseParts:before {
	content: "施術箇所：";
}
.menu_course .courseParts li{
	display: inline-block;
}
.menu_course .courseParts li + li:before {
	content: "、";
}
.menu_course .courseExplain {
	margin: 0 0 0;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius: 6px;
	padding: 20px;
	color: #452510;
	font-size: 1.6rem;
}
.menu_course .courseExplain p + p,
.menu_course .courseExplain p + .courseNotice {
	margin-top: 8px;
}
.menu_course .courseNotice {
	padding-top: 8px;
	border-top: 1px dotted #b9632c;
	margin-bottom: 0;
}
.menu_course .courseNotice li {
	font-size: 1.1rem;
	margin-left: 1em;
	text-indent: -1em;
	line-height: 1.1;
}
.menu_course .courseNotice li + li {
	margin-top: 8px;
}
.menu_course .courseNotice li:before {
	content: "※";
}
.menu_course .courseFee {
	margin: 10px 0 0;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius: 6px;
	padding: 20px;
	color: #452510;
	font-size: 1.4rem;
}
.menu_course .courseFeeTitle {
	font-size: 1.4rem;
	margin-bottom: 4px;
	padding-bottom: 4px;
	border-bottom: 1px solid #452510;
}
.menu_course .courseFeeList {
	margin-bottom: 0;
}
.menu_course .courseFeeList dt:not(:first-child){
	margin-top: 4px;
	padding-top: 4px;
	border-top: 1px dotted #452510;
}
.menu_course .tax {
	font-size: 1.2rem;
}
.menu_course .red {
	color: #e00;
}
.menu_course .btn-blue {
	display: block;
	border-color: #fff;
	margin-top: 15px;
}

.menu_course .wipe{
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background-color: #9D745D;
	text-align: center;
}
.menu_course .wipe img {
	display: block;
	max-width: 200px;
}
.menu_course .wipe figcaption{
	display: block;
	padding: 8px;
}
.menu_course .row .courseExplain {
	margin-left: 10px;
}
@media only screen and (max-width: 767px){
	.menu_course .wipe {
		margin-bottom: 10px;
	}
	.menu_course .wipe img {
		margin: 10px auto -5px;
		border-radius: 10px;
	}
	.menu_course .row .courseExplain {
		margin-left: 0;
	}
}



.bgblue {
	background-color: #0a86c2;
}
.bgblue .courseExplain {
	color: #103045;
}
.bgblue .courseNotice {
	border-top: 1px dotted #103045;
}
.bgblue .courseFee {
	color: #103045;
}
.bgblue .courseFeeTitle {
	border-bottom: 1px solid #103045;
}
.bgblue .courseFeeList {
	margin-bottom: 0;
}
.bgblue .courseFeeList dt:not(:first-child) {
	border-top: 1px dotted #103045;
}

.bgpink {
	background-color: #FDD8C2;
}
.bgpink .courseExplain {
	color: #75301B;
}
.bgpink .courseNotice {
	border-top: 1px dotted #75301B;
}
.bgpink .courseFee {
	color: #75301B;
}
.bgpink .courseFeeTitle {
	border-bottom: 1px solid #75301B;
}
.bgpink .courseFeeList {
	margin-bottom: 0;
}
.bgpink .courseFeeList dt:not(:first-child) {
	border-top: 1px dotted #75301B;
}

.bggreen {
	background-color: #d8fdC2;
}
.bggreen .courseHead {
	font-weight: 900;
	text-shadow: 0 0 3px #004411,0 0 5px #004411;
}
.bggreen .courseExplain {
	color: #75301B;
}
.bggreen .courseNotice {
	border-top: 1px dotted #75301B;
}
.bggreen .courseFee {
	color: #75301B;
}
.bggreen .courseFeeTitle {
	border-bottom: 1px solid #75301B;
}
.bggreen .courseFeeList {
	margin-bottom: 0;
}
.bggreen .courseFeeList dt:not(:first-child) {
	border-top: 1px dotted #75301B;
}
.bggreen .courseBody > p {
	margin: 20px auto 10px;
	text-align: center;
	color: #75301B
}

@media only screen and (max-width: 767px){
	.menu_course {
		margin: 0 10px 10px;
		padding: 10px;
	}
	.menu_course .courseHead {
		font-size: 1.8rem;
		font-weight: bold;
	}
	.menu_course .courseParts {
		padding-bottom: 0;
		margin-bottom: 10px;
	}
	.menu_course .courseExplain {
		padding: 10px;
		font-size: 1.4rem;
	}
	.menu_course .courseFee {
		padding: 10px;
		font-size: 1.2rem;
	}
	.menu_course .btn-blue {
		margin: 10px auto 0;
		width: 12em;
	}
}
.sp-herbal {
	margin-top: 10px;
}
.sp-herbal .fa {
	vertical-align: -1px;
}

#afNav.affix {
	width: 278px;
}
#afNav.affix {
	top: 10px;
	position:fixed;
}
#afNav.affix-top {
    position:static;
    top: 0;
}
@media only screen and (min-width: 768px) and (max-width: 899px) {
	#afNav.affix {
		width: 32%;
	}
}
@media only screen and (max-width: 767px){
	#afNav.affix-top,
	#afNav.affix {
		width: auto;
		position: static;
	}
}

/* -------------------------
// lomilomi.html
------------------------- */
.lomilomiBox {
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: #0072BC;
	border-radius: 10px;
	overflow: hidden;
	color: #ffffff;
	padding: 35px;
	position: relative;
}
.lomilomiBox > * {
	position: relative;
	z-index: 1;
}
.lomilomiBox:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	height: auto;
	left: 0;
	right: 0;
	width: auto;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	z-index: 0;
	opacity: .8;
	background-image: url(/img/bg_lomilomi.jpg);
}
.lomilomiBox .pageHead {
	font-size: 2.8rem;
	padding-bottom: 4px;
	margin: 0 0 4px;
	display: block;
	text-align: center;
}
.lomilomiBox .pageHead .img-responsive{
	max-width: 400px;
	width: 100%;
	display: block;
	margin: 0 auto;
}
.lomilomiBox .pageBlock {
	background-color: rgba(255,255,255,0.85);
	color: #333333;
	padding: 15px;
	font-size: 1.6rem;
	border-radius: 15px;
	margin: 15px 0 0;
}
.lomilomiBox .pageFigure {
	overflow: hidden;
	border-radius: 15px;
	margin: 15px 0 0 15px;
}
.lomilomiBox .pageFigure .img-responsive {
	width: auto;
}

@media only screen and (max-width: 767px){
	.lomilomiBox {
		margin: 0 10px 10px;
		padding: 10px;
	}
	.lomilomiBox {
		margin-top: 10px;
	}
	.lomilomiBox .pageFigure {
		margin: 15px 0 0 0;
	}
	#page_lomilomi .topInfo:first-child {
		margin-top: 0;
	}
}

/* -------------------------
// flow.html
------------------------- */
.flowHead {
	display: block;
	margin: 0 0 10px;
	border-radius: 10px;
	background-color: #7EDB89;
	color: #fff;
	font-size: 2rem;
	padding: 6px;
}
.flowBox > .item {
	text-align: center;
}
.flowBox > .item + .item:before {
	content: "\f13a";
	display: block;
	font-family: FontAwesome;
	font-size: 4rem;
	line-height: 1;
	color: #DBD67E;
	margin: 4px auto;
	width: auto;
}

.flowBox .itemInner {
	border-radius: 10px;
	overflow: hidden;
	padding: 6px;
	background-color: #DBD67E;
}
.flowBox .itemInner .itemImage {
	border-radius: 4px;
	overflow: hidden;
}
.flowBox .itemInner .itemCaption {
	margin-top: 6px;
	border-radius: 4px;
	overflow: hidden;
	background-color: #EEEDA2;
	padding: 10px;
	font-size: 1.6rem;
}
.flowBox .itemInner .notice {
	text-align: left;
	font-size: 1.1rem;
	border-top: 1px dotted #000;
	margin-top: 4px;
	padding-top: 4px;
}
.fEEEDA2 .itemInner .notice:before {
	content: "※";
}
.flowBox .itemInner .finish {
	font-family: fantasy;
	font-size: 3rem;
}
.flowBox .itemInner .finish:before {
	content: "";
	display: inline-block;
	width: 2.5rem;
	height: 2.5rem;
	margin: 0 .5rem;
	background-image: url(/img/icn_honu.png);
	background-size: 100%;
	background-repeat: no-repeat;
	vertical-align: middle;
}
.flowBox .itemInner .finish:after {
	content: "";
	display: inline-block;
	width: 2.5rem;
	height: 2.5rem;
	margin: 0 .5rem;
	background-image: url(/img/icn_honu2.png);
	background-size: 100%;
	background-repeat: no-repeat;
	vertical-align: middle;
}
.flowBox .itemInner p + p:not(.notice) {
	margin-top: 6px;
}
.flowBox .finished {
	position: relative;
}
.flowBox .finished .itemCaption {
	position: absolute;
	top: 0;
	bottom: 0;
	height: 5.4em;
	margin: auto;
	left: 6px;
	right: 6px;
	width: auto;
	background-color: rgba(255,255,255,0.8);
	border-radius: 0;
	font-weight: bold;
	overflow: visible;
}
.flowBox .finished .itemCaption:before {
	position: absolute;
	content: "";
	display: block;
	top: -20px;
	left: 0;
	right: 0;
	width: auto;
	height: 20px;
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,0.8) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,0.8) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ccffffff',GradientType=0 );
}
.flowBox .finished .itemCaption:after {
	position: absolute;
	content: "";
	display: block;
	bottom: -20px;
	left: 0;
	right: 0;
	width: auto;
	height: 20px;
	background: -moz-linear-gradient(top, rgba(255,255,255,0.8) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0.8) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0.8) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ccffffff', endColorstr='#00ffffff',GradientType=0 );
}
@media only screen and (max-width: 767px){
	.flowHead {
		margin: 10px;
	}
	.flowBox .itemInner {
		margin: 0 10px;
	}
	.flowBox .itemInner .itemCaption {
		font-size: 1.2rem;
	}
	.flowBox .itemInner:not(.finished) .itemCaption {
		text-align: left;
	}
	.flowBox .itemInner .finish {
		font-size: 2rem;
	}
	#page_flow .topInfo:first-child {
		margin-top: 0;
	}
}

/* -------------------------
// herbal.html
------------------------- */
.herbalBox {
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: #d9de8e;
	border-radius: 10px;
	overflow: hidden;
	color: #ffffff;
	padding: 35px;
	position: relative;
}
.herbalBox > * {
	position: relative;
	z-index: 1;
}
.herbalBox:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	height: auto;
	left: 0;
	right: 0;
	width: auto;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	z-index: 0;
	opacity: .8;
	background-image: url(/img/bg_herbal.jpg);
}
.herbalBox .pageHead {
	font-size: 2.8rem;
	padding-bottom: 4px;
	margin: 0 0 4px;
	display: block;
	text-align: center;
}
.herbalBox .pageHead .img-responsive{
	max-width: 400px;
	width: 100%;
	display: block;
	margin: 0 auto;
}
.herbalBox .pageBlock {
	background-color: rgba(237,255,213,0.85);
	background-image: url(/img/bg_herbal_onm.png);
	background-repeat: no-repeat;
	background-position: -45px -60px;
	color: #333333;
	padding: 15px;
	font-size: 1.6rem;
	border-radius: 15px;
	margin: 15px 0 0;
	position: relative;
	overflow: hidden;
}
.herbalBox .pageBlock:after {
	content: "";
	position: absolute;
	background-image: url(/img/bg_herbal_onm.png);
	background-repeat: no-repeat;
	background-position: -45px -60px;
	transform: rotateZ(180deg);
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}
.herbalBox .pageBlock > * {
	position: relative;
	z-index: 1;
}
.herbalBox .pageBlock > p + p {
	margin-top: 15px;
}
.herbalBox .pageFigure {
	overflow: hidden;
	border-radius: 15px;
	margin: 15px 0 0 15px;
}
.herbalBox .pageFigure .img-responsive {
	width: auto;
}

@media only screen and (max-width: 767px){
	.herbalBox {
		margin: 0 10px 10px;
		padding: 10px;
	}
	.herbalBox {
		margin-top: 10px;
	}
	.herbalBox .pageFigure {
		margin: 15px 0 0 0;
	}
	#page_herbal .topInfo:first-child {
		margin-top: 0;
	}
}

figure.thumnail {
	margin: 5px;
	width: auto;
	overflow: hidden;
	border-radius: 10px;
	position: relative;
}
figure.thumnail .img-responsive {
	width: 100%;
	height: auto;
}
figure.thumnail .caption {
	background-color: #c2ff73;
	padding: 10px;
}
figure.thumnail .caption .head {
	font-size: 14px;
	font-weight: bold;
	line-height: 24px;
}
figure.thumnail .caption .detail {
	font-size: 12px;
	line-height: 16px;
}
@media only screen and (max-width: 767px){
	figure.thumnail {
		max-width: 300px;
		margin: 5px auto;
	}
}
.herbalBox .secMessage {
	padding: 15px 30px 30px 30px;
}
.secMessage h2 {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	display: block;
	margin: 15px -15px 25px;
}
.secMessage h2 span {
	display: inline-block;
	line-height: 1;
}
.secMessage h2:before,
.secMessage h2:after {
	font-family: FontAwesome;
	color: #00a061;
	display: inline-block;
	font-size: 24px;
	vertical-align: middle;
}
.secMessage h2:before {
	content: "\f06c";
	margin-right: 10px;
	transform: scale(-1, 1);
}
.secMessage h2:after {
	content: "\f06c";
	margin-left: 10px;
}
.secMessage p {
	line-height: 1.5;
}
.secMessage p + p {
	margin-top: 15px;
}
@media only screen and (max-width: 895px){
	.secMessage h2 span {
		width: 11em;
		vertical-align: middle;
	}
}
@media only screen and (max-width: 360px){
	.secMessage h2:before,
	.secMessage h2:after {
		display: none;
	}
}
.secMessage .ptel,
.secMessage .ptel a {
	color: #3c763d;
}
.secMessage .ptelInner {
	font-size: 2.4rem;
}
.herbalBox .flow1Lists {
	padding: 5px;
	background-color: #f17a40;
	border-radius: 10px;
	position: relative;
}
.herbalBox .flow1Lists:after {
	content: "\f054";
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	font-family: FontAwesome;
	margin: auto -22px auto auto;
	width: 30px;
	height: 30px;
	line-height: 1;
	padding: 9px 0;
	border-radius: 15px;
	background-color: #227126;
	color: #fff;
	text-align: center;
	z-index: 3;
	box-sizing: border-box;
}
.herbalBox .flow1Lists > .item {
	background-color: #783616;
	color: #ffffff;
	font-weight: bold;
	font-size: 1.4rem;
	padding: 7px 5px;
	line-height: 1;
	border-radius: 5px;
}
.herbalBox .flow1Lists > .item + .item {
	margin-top: 5px;
}
.herbalBox .flow1Box {
	background-color: #ffffff;
	border-radius: 10px;
	padding: 5px;
	margin-left: 15px;
}
.herbalBox .flow1Box .head {
	display: block;
	text-align: center;
	font-size: 1.8rem;
	color: #333;
	font-weight: bold;
	padding: 5px 0 10px;
}
.herbalBox .flow1Box .head small {
	font-size: 1.4rem;
	display: block;
	color: #333;
	font-weight: normal;
}
.herbalBox .flow1Box_img {
	overflow: hidden;
}
.herbalBox .flow1Box_img figure {
	float: left;
	width: 49%;
	border-radius: 5px;
	overflow: hidden;
	position: relative;
}
.herbalBox .flow1Box_img figure:first-child {
	margin-right: 1%;
}
.herbalBox .flow1Box_img figure:last-child {
	margin-left: 1%;
}
.herbalBox .flow1Box_img figure img {
	position: relative;
	z-index: 1;
}
.herbalBox .flow1Box_img figure figcaption{
	position: absolute;
	display: block;
	z-index: 2;
	top: 12px;
	left: -26px;
	background-color: #ff0000;
	color: #ffffff;
	width: 100px;
	line-height: 1;
	text-align: center;
	padding: 4px 0;
	transform: rotateZ(-45deg);
	font-weight: bold;
}
.herbalBox .flow1Box .detail {
	color: #333333;
	padding: 5px;
	font-size: 1.2rem;
}
.herbalBox .flow1Box2 {
	margin-top: 15px;
	background-color: #ffffff;
	border-radius: 10px;
	position: relative;
	padding-bottom: 10px;
}
.herbalBox .flow1Box2:before {
	content: "\f078";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	font-family: FontAwesome;
	margin: -22px auto auto auto;
	width: 30px;
	height: 30px;
	line-height: 1;
	padding: 9px 0;
	border-radius: 15px;
	background-color: #227126;
	color: #fff;
	text-align: center;
	z-index: 3;
	box-sizing: border-box;
}
.herbalBox .flow1Box2 .head {
	display: block;
	text-align: center;
	font-size: 1.8rem;
	color: #333;
	font-weight: bold;
	padding: 10px 0 10px;
}
.herbalBox .flow1Box2 .head small {
	font-size: 1.4rem;
	display: block;
	color: #333;
	font-weight: normal;
	padding: 3px 0;
}
.herbalBox .flow1Box2 .detail {
	margin: 0 10px 10px;
}
.herbalBox .pageBlock > .head {
	text-align: center;
	font-size: 1.8rem;
	padding: 10px 10px 0;
	font-weight: bold;
}
.herbalBox .pageBlock > .figure {
	text-align: center;
	padding: 10px 5px 0;
}
.herbalBox .pageBlock > .figure > img {
	border-radius: 10px;
}
.herbalBox .pageBlock > .detail {
	font-size: 1.4rem;
	padding: 10px 10px 0;
}
.herbalBox .pageBlock > .detail p + p,
.herbalBox .pageBlock > .detail p + ul,
.herbalBox .pageBlock > .detail ul + p,
.herbalBox .pageBlock > .detail ul + ul {
	margin-top: 10px;
}
.herbalBox .pageBlock > .detail .list-notice {
	margin: 10px 5px;
	font-size: 1.2rem;
}
.herbalBox .pageBlock > .detail .list-notice li {
	padding-left: 1em;
	text-indent: -1em;
}
.herbalBox .pageBlock > .detail .list-notice li + li {
	margin-top: 5px;
}
.herbalBox .pageBlock > .detail .list-notice li:before {
	content: "・";
	font-family: monospace;
}

iframe {
	border: none;
}

.accessMap .caption p + p {
	margin-top: 5px;
}