@charset "utf-8";
/*
Theme Name:STUDIO　FHILTER
Theme URI: http://wordpress.org/
Description:【023】ヨガスタジオ
Author:STUDIO　FHILTER
Version: 1.0
License: GNU General Public License
License URI: license.txt
Tags:ヨガスタジオ
*/
@import url("css/sanitize.css");
@import url("css/hamburgers.css");

:root {
	font-size: 62.5%;
	color: #222222;
	background: #ffffff;
}

* {
	margin: 0;
	padding: 0;
	outline: none;
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0.5);
}

html,
body {
	font-size: 14px;
	font-size: 1.4rem;
	width: 100%;
	overflow-x: hidden;
}

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

	html,
	body {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

body {
	font-family: 'メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	line-height: 160%;
}

.min {
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.gf {
	letter-spacing: 0em;
	font-family: 'Libre Baskerville', 'serif', "Times Roman", "Times New Roman", 'メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}

/*****************************************************************************
common
*****************************************************************************/
.none {
	display: none;
}

a {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

figure {
	margin: 0;
}

li {
	list-style: none;
}

h1,
h2,
h3 {
	position: relative;
	text-align: center;
	font-weight: normal;
	line-height: 150%;
	margin: 0;
	word-break: break-all;
}

hr {
	border: none;
	border-top: 1px solid #d7cebd;
}

button {}

address {
	font-size: 12px;
	font-size: 1.2rem;
	font-style: normal;
	line-height: 160%;
	width: 100%;
	padding: 1.5em 0;
	text-align: center;
}

address p {}

.stress {
	color: #ec727f;
}

.shadow {
	box-shadow: 0px 1px 1px 1px rgba(30, 30, 30, 0.2);
}

.white {
	color: #ffffff;
}

.green {
	color: #000000;
}

.red {
	color: #dd0000;
}

.purple {
	color: #9a9a9a;
}

.col {
	height: auto;
}

.bold {
	font-weight: bold;
}

.tc {
	text-align: center;
}

.tl {
	text-align: left;
}

.tr {
	text-align: right;
}

.ib {
	display: inline-block;
}

.f_cc {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.nowrap {
	white-space: nowrap;
}

.none {
	display: none;
}

.lh100 {
	line-height: 100%;
}

.mr1 {
	margin-right: 1em;
}

.mr2 {
	margin-right: 2em;
}

.mb1 {
	margin-bottom: 1em;
}

.mt1 {
	margin-top: 1em;
}

.ma {
	margin-left: auto;
	margin-right: auto;
}

.pa1 {
	padding: 0 1em 1em 1em;
}

span.tri {
	display: block;
	-webkit-transform: scale(0.6) rotate(90deg);
	transform: scale(0.6) rotate(90deg);
}

/*****************************************************************************
button gimic
*****************************************************************************/
.btn,
#sb_instagram #sbi_load .sbi_load_btn {
	position: relative;
	display: block;
	font-size: 12px;
	font-size: 1.2rem;
	color: #ffffff;
	padding: 1em !important;
	text-align: center;
	-webkit-transition: all 0.1s ease;
	-ms-transition: all 0.1s ease;
	transition: all 0.1s ease;
	width: 200px;
	background: #000000;
	border-radius: 0 !important;
}

.btn.kv {
	color: #222222;
	background: #ffffff;
}

.btn.main.r {
	background: #dd0000;
}

.btn.main:hover,
a.btn.main.opp:hover {
	opacity: 0.6;
}

.btn.main:hover:after,
a.btn.main.opp:hover:after {
	color: #ffffff;
}

.btn.top.contact {
	background: #ec727f;
}

.btn.main.contact {
	margin: 0 0.2em;
}

.btn.main img {
	width: 1.2em;
}

.btn.main img.opp {
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1);
}

.btn.main.wide {
	max-width: 300px;
	width: 100%;
	margin: 2em auto 0 auto;
}

p+a {
	margin-top: 2em;
}

.toTop {
	position: fixed;
	width: 60px;
	height: 60px;
	z-index: 99;
	display: none;
	text-align: center;
}

.toTop {
	right: 4em;
	bottom: 8em;
}

@media screen and (max-width:767px) {
	.toTop {
		right: 1em;
		bottom: 7em;
	}

	.toTop img {
		width: inherit;
	}

	.btn.main {
		width: 100%;
	}

	.btn.main.single {
		width: 140px;
	}
}

/*****************************************************************************
	Instagram Button
*****************************************************************************/

#sb_instagram #sbi_load .sbi_load_btn:after {
	content: "";
	margin-left: -5px;
	margin-top: 3px;
	position: absolute;
	background: url(./img/common/arrow.png) center center /1.2em 1.2em no-repeat;
	;
	width: 15px;
	height: 15px;
}

/*****************************************************************************
	Header
*****************************************************************************/
header {
	width: 100%;
	background: #ffffff;
	position: fixed;
	z-index: 10;
}

header h1 {
	line-height: 100%;
	margin: 0 auto;
}

.navigation {
	padding: 0;
	position: relative;
	z-index: 10;
}

@media screen and (max-width:767px) {
	header {
		padding: 0;
		width: 100%;
		height: 60px;
		z-index: 100;
	}

	header .tel {
		width: 60px;
		height: 60px;
		background: #000000;
		margin: 0 0 0 auto;
	}

	header .toggle {
		width: 60px;
		height: 60px;
		background: #dd0000;
		position: absolute;
		top: 0;
		right: 0;
	}

	header section,
	header section article {
		height: 100%;
		padding: 0;
	}

	header .sp.navi {
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100;
		background: #ffffff;
		height: 60px;
		padding: 0 0 0 0.5em;
		box-shadow: 0px 1px 1px 1px rgba(30, 30, 30, 0.2);
		background: url(./img/mv_sp.jpg) left center / cover no-repeat;
	}

	header #logo {
		margin: 0;
	}

	header .sp.navi img {
		max-height: 50px;
		max-width: 150px;
	}
}

@media screen and (min-width:768px) {
	header {
		min-width: 768px;
		border-top: 6px solid #000000;
		background: #000000;
	}

	header {
		min-height: 40px;
	}

	header h1 {
		width: 100%;
	}

	header.home .head {
		position: relative;
		padding: 0;
		height: 140px;
		-webkit-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
		background: url(./img/mv.jpg) center center / cover no-repeat;
	}

	header.home .head a.instagram {
		color: #ffffff;
		position: absolute;
		right: 0.4em;
		bottom: 0.2em;
		font-size: 3rem;
	}

	header.home .head.active {
		height: 0;
	}

	header.home .head article {
		height: inherit;
	}

	header.home .head.active article {
		opacity: 0;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}

	header .head .logo {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: auto;
		z-index: 0;
	}

	header.home .head .logo {
		height: 100%;
	}

	header .head .logo img {
		max-height: 100px;
		max-width: 300px;
		margin: 0.5em 0;
	}

	header.home .guide {
		padding: 1em 0;
		position: relative;
		z-index: 1;
	}

	header.home .open {
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 140%;
	}

	header .tel {
		font-size: 18px;
		font-size: 1.8rem;
		margin: 0.5em 0 1em 0;
		font-weight: bold;
	}

	header.home nav .logo {
		display: none;
	}

	header nav .logo {}

	header nav {
		max-width: 1000px;
		margin: 0 auto;
	}

	header .navigation {
		width: 100%;
		position: relative;
		background: #ffffff;
		z-index: 1;
		border-top: 1px solid #bebebe;
		border-bottom: 1px solid #bebebe;
		webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		background: rgb(221, 0, 0);
		color: #ffffff;
	}

	header .navigation.fixed {
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100;
		margin: 0;
		background: rgba(255, 255, 255, 0.9);
	}
}

@media screen and (max-width: 1200px) {
	header.home .head {
		background: url(./img/mv.jpg) center center / 170% auto no-repeat;
	}
}

@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
	header.home .head {
		background: url(./img/mv.jpg) left -470px center / cover no-repeat;
	}
}

/*****************************************************************************
	Navigation / MENU
*****************************************************************************/
nav.menu {
	height: inherit;
}

nav.menu a {
	font-size: 12px;
	font-size: 1.2rem;
	position: relative;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

/* SP Navigation */
@media screen and (max-width:767px) {
	nav.menu {
		width: 100%;
		-webkit-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	nav>h1 {
		padding: 0 1em;
		max-width: 50%;
	}

	nav>h1 img {
		width: 100%;
	}

	header nav.menu.active {
		top: 0px;
	}

	header nav.menu {
		position: fixed;
		left: 0;
		top: -100px;
		z-index: 99;
		margin-top: 60px;
		padding: 0em 0;
		background: rgba(255, 255, 255, 1);
		line-height: 150%;
		height: calc(100vh - 60px);
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
		/*-webkit-transform-origin:100% 0;
		-webkit-transform:scale3d(0, 1, 1) ;
				transform:scale3d(0, 1, 1) ;*/
	}

	header.home nav.menu .gnav {
		min-width: 50%;
		overflow-y: scroll;
		height: 100%;
		padding: 3em 0;
	}

	header nav.menu.active {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}

	nav.menu a {
		font-size: 16px;
		font-size: 1.6rem;
		display: block;
		width: 100%;
		position: relative;
		padding: 1em 0;
		text-align: center;
	}

	footer nav.menu {
		/* width: 50%;
		margin-left: 1em; */
		padding: 3rem 0 0rem;
		width: 100%;
	}

	nav.menu a {
		font-size: 14px;
		font-size: 1.4rem;
		width: 100%;
		position: relative;
		padding: 0 0 1em 0;
		text-align: center;
		border-bottom: none;
	}

	nav.menu a span {}

	.gnav>li>a:not(:last-child) {
		padding-bottom: 0;
	}

	.gnav li ul {
		margin-bottom: 1em;
	}

	.gnav li ul li a {
		text-align: left;
		display: block;
		padding: 0.5em 1em;
		border-bottom: 1px solid #fff;
	}
}

/* PC Navigation */
@media screen and (min-width:768px) {
	nav.menu {
		max-width: 1000px;
		height: 100%;
	}

	.gnav {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	nav.menu a {
		text-align: center;
	}

	header.home nav.menu div {
		width: inherit;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
	}

	header .navigation nav.menu a {
		height: inherit;
	}

	header.home nav.menu a {
		padding: 1em;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
		word-break: break-all;
	}

	header.home nav.menu .gnav>li:last-child a {
		color: #ffffff;
		background: #111111;
	}

	header nav.menu a.active,
	header nav.menu a:hover {
		background: #ff2f27;
	}

	footer nav.menu a {
		font-size: 12px;
		font-size: 1.2rem;
		padding: 0 2em;
	}

	footer nav {
		margin: 3em 0 1em 0;
	}

	footer nav a {
		padding: 0.2em 2.7em;
	}

	footer nav a:not(:last-child) {
		border-right: 1px solid #666666;
	}

	footer nav.menu a:hover {
		background: rgba(221, 0, 0, 0.3);
	}

	.gnav li {
		position: relative;
	}

	.gnav li ul {
		width: 200px;
		position: absolute;
		font-size: 12px;
		font-size: 1.2rem;
		top: calc(2em * 1.8 + 24px);
		left: 0;
		z-index: 1;
		visibility: hidden;
		opacity: 0;
		transition: all 0.3s ease-in-out;
	}

	.gnav li ul li {
		padding: 0;
		background: #111111;
		transition: all 0.3s ease-in-out;
	}

	.gnav li ul li a {
		text-align: left;
		display: block;
		padding: 1em;
		border-bottom: 1px solid #fff;
	}

	.gnav li:hover ul {
		visibility: visible;
		opacity: 1;
	}

	.gnav li ul>li:last-child a {
		border: none;
	}

	.gnav li ul>li:hover {
		background: rgba(255, 255, 255, 0.9);
	}

	.gnav li ul>li:hover a {
		color: #111;
	}
}

@media screen and (min-width:1000px) {
	header .navigation nav.menu a {}
}

/*****************************************************************************
	Key Visual
*****************************************************************************/
#kv img {
	width: 100%;
	display: inline-block;
}

#kv {
	padding: 0;
	position: relative;
	z-index: 0;
}

#kv figcaption {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 5;
	left: 0;
	top: 0;
}

#kv.index figcaption {
	height: 100%;
}

#kv.index figure figcaption {
	position: relative;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	opacity: 0;
}

#kv.index figure figcaption:hover {
	opacity: 1;
}

#kv.index figure figcaption div {
	text-align: left;
	font-size: 12px;
	font-size: 1.2rem;
	max-width: 300px;
	line-height: 150%;
}

@media screen and (max-width:767px) {
	#kv>figcaption>h2 {
		font-size: 20px;
		white-space: nowrap;
		width: 100%;
	}
}

@media screen and (max-width:767px) {
	#kv.index {
		min-height: 220px;
	}

	#kv.index img {
		height: 100%;
	}
}

@media screen and (min-width:768px) {
	#kv.index {
		min-height: 600px;
	}
}

/*****************************************************************************
	Key Visual Background Setting
*****************************************************************************/
@media screen and (max-width:767px) {
	#kv figure {
		display: none;
	}

	#kv.index {
		display: none;
	}
}

@media screen and (min-width:768px) {
	#kv figure.a {
		background: url(./img/index/kv_01.jpg) center top / cover no-repeat;
	}

	#kv figure.a figcaption {
		background: rgba(221, 0, 0, 0.8);
	}

	#kv figure.b {
		background: url(./img/index/kv_05.jpg) center top /cover no-repeat;
	}

	#kv figure.b figcaption {
		background: rgba(0, 0, 0, 0.8);
	}

	#kv figure.c {
		height: 300px;
		min-height: 50%;
		background: url(./img/index/kv_06.jpg) left top /cover no-repeat;
	}

	#kv figure.c figcaption {
		background: rgba(221, 0, 0, 0.8);
	}

	#kv figure.d {
		height: 300px;
		min-height: 50%;
		background: url(./img/index/kv_07.jpeg) left top /cover no-repeat;
	}

	#kv figure.d figcaption {
		background: rgba(0, 0, 0, 0.8);
	}
}

/*****************************************************************************
icon
*****************************************************************************/
.social {
	width: 80px;
}

.social a {
	color: #333333;
	font-size: 3em;
}

header .social {
	position: relative;
	z-index: 1;
}

.social img {}

/*****************************************************************************
	Map
*****************************************************************************/
.gmap {
	position: relative;
	width: 100%;
	height: 350px;
}

.gmap.index {
	margin: 3em 0;
}

.gmap+a {
	display: block;
	padding: 1em 2em;
	text-align: center;
	font-size: 12px;
	font-size: 1.2rem;
	margin: 0 auto;
}

/*****************************************************************************
	ul / dl
*****************************************************************************/
ul.access {
	font-size: 13px;
	font-size: 1.3rem;
	margin-top: 1em;
}

ul.access>li {
	margin: 1em 0;
}

ul.access>li>p:first-child {
	font-weight: bold;
	margin-right: 0.5em;
	width: 100px;
}

dl.access {
	font-size: 13px;
	font-size: 1.3rem;
}

dl.access dt {
	width: 30%;
	padding-right: 0.5em;
}

dl.access dd {
	width: 70%;
}

dl.access dt:nth-child(1),
dl.access dd:nth-child(2) {
	padding-top: 0;
	border-top: none;
}

dl.staff dt {
	font-size: 14px;
	font-size: 1.4rem;
	color: #000000;
	font-weight: bold;
	margin-bottom: 0.5em;
}

dl.staff>dd.name {
	font-size: 28px;
	font-size: 2.8rem;
	padding: 0 0 0.5em 0;
	margin-bottom: 0.5em;
	border-bottom: 1px solid #000000;
}

dl.staff>dd {
	margin-bottom: 1.5em;
}

ul.staff li p:first-child {
	min-width: 4em;
	font-weight: bold;
}

ul.staff li {
	margin-bottom: 1em;
}

ul.menu {
	padding: 1em 1.5em;
	margin-bottom: 4em;
}

ul.menu li {
	padding: 1em 0;
}

ul.menu li {
	border-bottom: 1px solid #bebebe;
}

ul.menu p {
	margin-right: 0.5em;
}

ul.menu p:nth-child(2) {
	white-space: nowrap;
}

@media screen and (max-width:767px) {
	ul.list {
		padding: 1em 0;
	}

	ul.access li p:first-child {
		min-width: 90px;
	}
}

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

	dl.access dt,
	dl.access dd {
		padding: 0.5em 1em 0em 0;
	}
}

/*****************************************************************************
	Section / Article
*****************************************************************************/
section {
	width: 100%;
	position: relative;
}

section.np {
	padding: 0;
}

section.nptop {
	padding-top: 0;
}

section.npbtm {
	padding-bottom: 0;
}

section>article {
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
}

main {
	padding-top: 190px;
}

@media screen and (max-width:767px) {
	main {
		padding-top: 60px;
	}

	section {
		padding: 3em 0;
	}

	section>article {
		width: 100% !important;
		padding: 0 1.2em;
	}

	section.nptop>article {
		padding-top: 2em;
	}
}

@media screen and (min-width:768px) {
	section {
		padding: 6.5em 0;
	}

	section>article.lead {
		padding-top: 2em;
	}
}

/*****************************************************************************
	background
*****************************************************************************/
section.bg_index {
	padding: 1.5em 0;
}

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

@media screen and (min-width:768px) {
	section.bg_index:hover:after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(255, 255, 255, 0.5);
		z-index: 0;
	}

	section.bg_index figure {
		display: none;
	}

	.bg_index.a {
		background: url(./img/index/bg_index_a.jpg) center top / cover no-repeat;
	}

	.bg_index.b {
		/* background: url(./img/index/bg_index_b.jpg) center top / cover no-repeat; */
		background: url(./img/blog/kv_instructor-2.png) center top / cover no-repeat;
	}

	.bg_index.c {
		background: url(./img/index/bg_index_c.jpg) center top / cover no-repeat;
	}
}

/*****************************************************************************
	Title Decoration
*****************************************************************************/
h2 {
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 100%;
	color: #ffffff;
}

h2.green {
	border-bottom: 1px solid #000000;
}

h2.red {
	border-bottom: 1px solid #dd0000;
}

h2.purple {
	border-bottom: 1px solid #9a9a9a;
}

h2.nb {
	border: none;
}

h2 span {
	font-size: 12px;
	font-size: 1.2rem;
	text-shadow: none;
	color: #333333;
}

#kv h2 span {
	color: #ffffff;
	font-weight: bold;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.9);
}

h2+p {
	color: #333333;
	padding: 1em 0;
}

p.program {
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	margin: -0.5em auto 1.5em auto;
	padding: 1em 0;
	border-radius: 3em;
	border: 2px solid #333333;
	font-weight: bold;
	max-width: 300px;
}

p.program.green {
	color: #000000;
	border-color: #000000;
}

p.program.red {
	color: #dd0000;
	border-color: #dd0000;
}

p.program.purple {
	color: #9a9a9a;
	border-color: #9a9a9a;
}

p.program.news {
	margin-top: 3rem;
	max-width: 380px;
	position: relative;
}

p.program.news::after {
	display: block;
	content: "";
	width: 10px;
	height: 10px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	transform: rotate(45deg);
	position: absolute;
	top: 39%;
	right: 25px;
}


#kv h2 {
	font-size: 36px;
	font-size: 3.6rem;
	letter-spacing: 0.2em;
	line-height: 60%;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}

#kv.index h2 {
	font-size: 18px;
	font-size: 1.8rem;
	border: none;
	line-height: 140%;
	text-shadow: none;
	padding-bottom: 0.5em;
}

#kv h2 span {
	letter-spacing: 0;
}

#kv.index h2 span {
	letter-spacing: 0;
	color: #ffffff;
}

#kv h2+p {
	margin: 0 2em 2em 2em;
	color: #ffffff;
}

h2.title {
	margin-bottom: 1.5em;
}

h3.title {
	margin-top: 0.5em;
	text-align: left;
	font-weight: bold;
}

h3.title+p {
	text-align: left;
	margin: 0.5em 0 2em 0;
}

h4 {
	font-size: 20px;
	font-size: 2.0rem;
	color: #00b7ee;
	padding: 0.5em 0;
}

@media screen and (max-width:767px) {
	h2.title {}
}

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

/*****************************************************************************
	figure
*****************************************************************************/
figure {
	position: relative;
	overflow: hidden;
	text-align: center;
}

figure.catch {
	width: 200px;
	position: absolute;
	z-index: 0;
	bottom: 1em;
	left: 1em;
}

#kv figure.catch img {
	width: initial;
	max-width: 100%;
}

figure.staff {
	max-width: 220px;
	height: auto;
	margin-bottom: 2em;
}

figure.blog.index {
	padding: 0;
	width: 150px;
	min-width: 150px;
	height: 100px;
	margin-right: 0.5em;
}

figure.concept {
	height: 200px;
}

figure.concept+p {
	margin: 1em 0 2em 0;
}

figure img {
	max-width: 100%;
	height: auto;
}

@media screen and (max-width:767px) {
	figure {
		width: 100%;
	}

	figure img {
		width: 100%;
		height: auto;
	}

	figure.index {
		padding: 1em 0;
	}

	figure {
		margin-bottom: 1em;
	}

	figure#kv {
		width: 100%;
		height: 65px;
		margin: 0;
	}

	figure#kv img {
		/* max-width: initial;
		width: initial;
		height: 100%; */
		width: 100%;
		height: auto;
	}

	figure.catch {
		width: 100px;
	}
}

@media screen and (min-width:768px) {
	figure.lead {
		text-align: right;
		position: absolute;
		right: 0;
		top: 0;
		z-index: -1;
	}
}

/* Image Fill Gray */
figure:after,
picture:after {
	/* use copy
	content:"";
	*/
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #9a9a9a;
}

.bg_index.a,
.bg_index.b,
.bg_index.c {
	/* use copy
	background:#9a9a9a;
	*/
}

/*****************************************************************************
	index
*****************************************************************************/
div.circle {
	position: relative;
	margin: auto 0;
	width: 380px;
	height: 380px;
	border-radius: 100%;
	background: #ffffff;
	z-index: 2;
}

@media screen and (max-width:767px) {
	div.circle {
		width: 100%;
		height: auto;
		border-radius: 0;
	}
}

p>.date {
	font-size: 12px;
	font-size: 1.2rem;
	color: #000000;
	padding: 0;
}

p>.category {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 100%;
	margin-left: 0.5em;
}

/*****************************************************************************
	Under
*****************************************************************************/
.class {
	text-align: center;
	padding: 1em;
	color: #333333;
	border-radius: 1em;
	margin-bottom: 2em;
}

.class h3 {
	color: #ffffff;
	font-size: 18px;
	font-size: 1.8rem;
	padding: 0.5em 0 0.3em 0;
	border-radius: 2em;
	line-height: 100%;
	font-weight: bold;
}

.class h3~div {
	margin: 1.5em auto;
	font-weight: bold;
}

.class p {
	line-height: 120%;
}

.class h3~div p.sub {
	font-size: 20px;
	font-size: 2.0rem;
	margin-right: 0.3em;
	color: #333333;
}

.class h3~div p {
	font-size: 34px;
	font-size: 3.4rem;
	line-height: 100%;
	color: #dd0000;
}

.class.green {
	border: 2px solid #000000;
}

.class.green h3 {
	background: #000000;
}

.class.red {
	border: 2px solid #dd0000;
}

.class.red h3 {
	background: #dd0000;
}

.class.purple {
	border: 2px solid #9a9a9a;
}

.class.purple h3 {
	background: #9a9a9a;
}


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

@media screen and (min-width:768px) {
	.class.w30l {
		margin: 0 2em 2em 0;
	}

	.class.w30l:nth-of-type(3n) {
		margin-right: 0;
	}

	.class.w50s {
		margin: 0 2em 2em 0;
	}

	.class.w50s:nth-of-type(2n) {
		margin-right: 0;
	}
}

/******************************************************************************
	CTA
******************************************************************************/
#cta {
	padding: 0;
	position: fixed;
	bottom: 0;
	z-index: 100;
}

.cta>div {
	width: 50%;
}

.cta>div>a {
	padding: 1.5em 0;
	position: relative;
	width: 100%;
	text-align: center;
}

.cta .tel {
	background: #000000;
	color: #ffffff;
}

.cta .tel h3 {
	color: #ffffff;
}

.cta .web {
	background: #dd0000;
	color: #ffffff;
}

.cta .web h3 {
	color: #ffffff;
}

.cta .web a:after {
	content: ">";
	position: absolute;
	color: #ffffff;
	right: 0;
	top: 35%;
	width: 1em;
	height: 100%;
	font-weight: bold;
	z-index: 1;
}

.cta h3 {
	font-size: 24px;
	font-size: 2.4rem;
}

.cta .tel img {
	width: 0.6em;
}

@media screen and (max-width:767px) {
	.cta {
		font-size: 12px;
		font-size: 1.2rem;
	}

	.cta>div>a {
		padding: 1.5em 0;
	}

	.cta div {
		width: 100%;
	}

	.cta h3 {
		font-size: 18px;
		font-size: 1.8rem;
	}

	.cta h3 span {
		font-size: 14px;
		font-size: 1.4rem;
	}

	.cta .web a:after {
		display: none;
	}
}

@media screen and (min-width:768px) {
	.cta>div>a {
		max-width: 500px;
	}
}

/*****************************************************************************
	footer
*****************************************************************************/

.f_school {
	background: #f7f7f7;
	padding: 6rem 0 !important;
	margin-bottom: 3rem;
}

.f_school .f_school_btn {
	display: flex;
	justify-content: space-between;
	width: 60%;
	margin: 3rem auto 0;
}

.f_school_lead {
	text-align: center;
	margin: 3rem 0 4rem;
}

.f_school .f_school_btn a {
	background: #000;
	color: #fff;
	padding: 2rem 0;
	width: 250px;
	text-align: center;
}

footer {
	margin-top: 1em;
	margin-bottom: 110px;
}

footer .logo img {
	max-height: 100px;
}

footer .logo_wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #dd0000;
	padding-bottom: 3rem;
}

footer .logo_wrapper h1 {
	width: 60%;
}

footer .logo_wrapper address {
	width: 40%;
	display: block;
	text-align: left;
}

footer .logo_wrapper address p:first-child {
	margin-bottom: 1rem;
}

footer .logo_wrapper address span {
	font-weight: bold;
}

p.copy {
	background: #222222;
	color: #ffffff;
	padding: 1.5em 0;
	text-align: center;
	font-size: 12px;
	font-size: 1.2rem;
}

footer .social {
	margin: 0.5em auto;
}

.copyright {
	text-align: center;
	font-size: 11px;
	margin: 1rem 0;
}

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

	footer {
		margin-bottom: 90px;
	}

	.f_school .f_h_center {
		display: block;
	}

	.f_school .f_school_btn {
		flex-wrap: wrap;
		width: 100%;
	}

	.f_school .f_school_btn a {
		padding: 1.5rem 0;
		width: 100%;
	}

	.f_school .f_school_btn a:first-child {
		margin-bottom: 1rem;
	}

	footer address {
		padding-bottom: 3em;
	}

	/* footer article {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
	} */

	/* footer article>* {
		width: 50%;
	} */

	footer article.f_h_center {
		display: block;
	}

	footer .logo_wrapper {
		display: block;
		width: 100%;
		padding-bottom: 4rem;
	}

	footer .logo_wrapper h1 {
		max-width: 100%;
		margin: 0 auto;
	}

	footer .logo img {
		width: 100%;
	}

	footer .logo_wrapper address {
		text-align: center;
		width: 100%;
		padding-bottom: 0;
	}

	footer .logo_wrapper address p:first-child {
		margin-bottom: 2rem;
	}

	.copyright {
		width: 100%;
		margin: 0.5rem 0;
	}
}

@media screen and (min-width:768px) {
	footer address {
		width: 1000px;
		margin: 0 auto;
	}
}

/******************************************************************************
	Post
******************************************************************************/
#post {
	margin-bottom: 2em;
}

#post .blog a {
	width: 300px;
	display: block;
	margin-bottom: 2em;
}

#post .blog.index a {
	width: 100%;
	padding: 0 0 1.5em 0em;
	margin-bottom: 0em;
}

#post .blog a:hover {
	background: rgba(221, 0, 0, 0.1);
}

#post h3.tl {
	font-size: 14px;
	font-size: 1.4rem;
	height: 4em;
	padding: 0.5em;
	color: #333333;
}

#post .list a {
	max-width: 500px;
	height: auto;
}

#post .new {
	position: absolute;
	z-index: 1;
}

@media screen and (min-width: 768px) {
	#post .blog a {}

	#post .list a:not(:nth-of-type(2n)) {
		margin-right: 0.9em;
	}
}

@media screen and (max-width: 767px) {
	#post .list a {
		width: 100%;
		height: auto;
	}
}

/* #post .side */
#post .side ul {
	margin-bottom: 2em;
}

#post .side h3 {
	font-size: 24px;
	font-size: 2.4rem;
	text-align: left;
	letter-spacing: 0;
	color: #000000;
	border-bottom: 1px solid #000000;
}

#post .side li a:hover {
	background: rgba(221, 0, 0, 0.1);
}

#post .side li a {
	display: block;
	padding: 1em;
}

#post .side li {
	position: relative;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 100%;
	border-bottom: 1px dotted #bebebe;
}

/* Recent */
#recent li a {
	font-size: 12px;
	font-size: 1.2rem;
	padding: 1.5em 0;
}

#recent p {
	line-height: 200%;
}

#recent figure {
	text-align: center;
	min-width: 100px;
	width: 100px;
	height: 100px !important;
	margin: 0 1em 0 0;
	border-radius: 100px;
	overflow: hidden;
}

/* Archive */
#post .side #archive li a {
	display: block;
	padding: 1em 0 1em 1.2em;
}

#post .side #archive li:before {
	color: #cfa972;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 1em;
	line-height: 300%;
}

/* Search */
#post #search .s {
	display: block;
	padding: 0.5em 0.5em 0.5em 3em;
	border: 1px solid #9e9e9e;
	width: 100%;
	z-index: 1;
	background: url(./img/icon/search.png) 1em 0.5em no-repeat;
	background-size: 20px 20px;
	margin-top: 1em;
}

#post #search .searchsubmit {
	display: none;
}

/******************************************************************************
	Post:Single
******************************************************************************/
#post .content {
	font-size: 14px;
	font-size: 1.4rem;
	padding-top: 1em;
	min-height: 300px;
}

#post .content img {
	max-width: 100%;
	height: auto;
}

#post.single h2 {
	font-size: 26px;
	font-size: 2.6rem;
	line-height: 140%;
	margin: 1em 0;
	padding-bottom: 0.5em;
	color: #333333;
}

/************************************************************************************
	single paging
************************************************************************************/
.single_paging {
	width: 100%;
	border: 0px solid #b09d7c;
	margin: 20px 0 20px 0;
	padding: 0;
	font-size: 12px;
	font-size: 1.2rem;
}

.single_paging>a {
	width: 50%;
	padding: 0em;
	border: 1px solid #b09d7c;
	margin-bottom: 1em;
}

.single_paging>a:hover {
	background: #f3f1e9;
}

.single_paging figure {
	text-align: center;
	min-width: 100px;
	width: 100px;
	height: 100px !important;
	margin: 1em;
	border-radius: 100px;
	overflow: hidden;
}

.single_paging .page-numbers.current {
	background-color: #e7f3e9;
}

@media screen and (max-width:767px) {
	.single_paging>a {
		width: 100%;
	}
}

/******************************************************************************
	Pager
******************************************************************************/
#pager .pages {
	display: none;
}

#pager .wp-pagenavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#pager .wp-pagenavi * {
	padding: 0;
	min-width: 3em;
	height: 3em;
	margin: 0 1px;
	text-align: center;
	border: 1px solid #000000;
	color: #000000;
	line-height: 3em;
	font-size: 14px;
	font-size: 1.4rem;
}

#pager .current,
.wp-pagenavi>*:hover,
#pager .wp-pagenavi a:hover {
	border: 1px solid #000000;
	color: #000000;
	background: rgba(221, 0, 0, 0.3);
}

.wp-pagenavi .page {}

.wp-pagenavi .current {}

.wp-pagenavi .previouspostslink {
	border: none;
	margin-right: 40px;
}

.wp-pagenavi .nextpostslink {
	border: none;
	margin-left: 40px;
}

#pager .wp-pagenavi a {
	display: block;
	line-height: 140%;
	padding: 0.8em;
	text-align: center;
	background: #ffffff;
	margin-bottom: 0.2em;
}

/************************************************************************************
	bread
************************************************************************************/
nav#bread {
	width: 100%;
	overflow: hidden;
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 120%;
	z-index: 2;
	bottom: 0;
}

nav#bread ol {
	width: 1000px;
	margin: 0 auto;
	padding: 1em 0;
}

nav#bread ol li {
	padding-top: 0px;
	white-space: nowrap;
	min-height: 0;
	margin: 0;
}

nav#bread ol li a {}

nav#bread ol li:after {
	content: ">";
	padding-left: 1em;
	padding-right: 1em;
}

nav#bread ol li:first-child:before {
	content: "";
}

nav#bread ol li:nth-of-type(1):before {
	content: "";
}

nav#bread ol li:last-child {}

nav#bread ol li:last-child:after {
	content: "";
	padding: 0;
}

@media screen and (min-width:768px) {
	nav#bread ol li:first-child {}
}

@media screen and (max-width:767px) {
	nav#bread ol {
		width: 100%;
		margin: 0 auto;
		padding: 0.5em 1em;
	}
}

/************************************************************************************
 contact
************************************************************************************/
#contact {
	font-size: 16px;
	font-size: 1.6rem;
}

#contact dl {
	margin: 0 auto;
}

#contact dt {
	width: 100%;
	padding: 0.5em 0;
	margin-right: 2em;
}

#contact dt span,
#contact li .label span {
	font-size: 12px;
	font-size: 1.2rem;
	background: #000000;
	color: #ffffff;
	padding: 0.3em 1em;
	margin-right: 0.5em;
	line-height: 140%;
	height: 2em;
}

#contact dt span.nn,
#contact li .label span.nn {
	background: #ededed;
	color: #666666;
}

.mw_wp_form_confirm li span {
	display: none;
}

#contact dt p {
	font-size: 12px;
	font-size: 1.2rem;
	color: #f79783;
}

#contact dd {
	width: 100%;
	margin-bottom: 1em;
}

#contact li .label {
	margin-bottom: 0.8em;
	line-height: 1.7;
}

#contact li .label a {
	text-decoration: underline;
	color: #dd0000;

}

#contact .memo {
	width: 100%;
	font-weight: bold;
	padding: 0 0 1em 0;
}

#contact input[type="date"],
#contact input[type="tel"] {
	width: 50%;
	padding: 0.5em 1em;
}

#contact input[type="text"],
#contact input[type="email"],
#contact textarea {
	font-size: 14px;
	font-size: 1.4rem;
	width: 100%;
	padding: 0.5em 1em;
	resize: none;
	border: 1px solid #cccccc;
	background: rgba(255, 255, 255, 0.8);
	font-family: sans-serif;
}

#contact textarea[name="textarea-306"],
#contact textarea[name="textarea-0"] {
	height: 100px;
}


#contact input:focus,
#contact textarea:focus {
	content: "";
	border: 1px solid #666666;
}

#contact input[type="submit"] {
	cursor: pointer;
	border: none;
	width: 100%;
}

#contact p {
	line-height: 170%;
}

#contact .send .wpcf7-spinner {
	display: none;
}

#contact .send p {
	width: 200px;
	text-align: center;
	background: #dd0000;
	padding: 1rem 0;
	margin: 0 auto;
	color: #fff;
	cursor: pointer;
}

@media screen and (max-width:767px) {
	.tc {
		text-align: left;
	}

	#contact input[type="date"],
	#contact input[type="tel"] {
		width: 100%;
	}
}

#contact .confirm,
.sending,
.backform {
	cursor: pointer;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
	width: 200px;
	height: 45px;
	margin-top: 5px;
	background: #888;
}

.mw_wp_form_confirm .send {
	display: none;
}

p.message {
	display: none;
}

.mw_wp_form_input p.message:nth-child(1) {
	display: block;
}

.mw_wp_form_confirm p.message:nth-child(2) {
	display: block;
}

/*****************************************************************************
	Flex Box
*****************************************************************************/
/***********
horizon
************/
.f_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.f_item {
	-webkit-flex: 1 0 auto;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
}

.f_h_start {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

.f_h_center {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content: center;
}

.f_h_end {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.f_h_sb {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.f_h_sa {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}

.f_wrap {
	-webkit-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 1rem;
}

/***********
vertical
************/
.f_column {
	-webkit-box-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.f_start {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.f_end {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.f_center {
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.f_baseline {
	-webkit-align-items: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}

.f_stretch {
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

/*****************************************************************************
	Gimic with jQuery
*****************************************************************************/
.trans {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.zoom {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.zoom:hover {
	-webkit-transform: scale3d(1.1, 1.1, 1);
	transform: scale3d(1.1, 1.1, 1);
}

/*  Scrolling Appear */
.scroll[data-type="up"] {
	-webkit-transition: all 1s ease;
	transition: all 1s ease;
	-webkit-transform: translate3d(0, 100px, 0);
	transform: translate3d(0, 100px, 0);
	opacity: 0.01;
}

.scroll[data-type="up"].active,
.scroll[data-type="down"].active,
.scroll[data-type="left"].active,
.scroll[data-type="right"].active {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	opacity: 1;
}

/*****************************************************************************
	common media
*****************************************************************************/
@media screen and (max-width:767px) {

	/* for Mobile */
	.f_res {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.col {
		width: 100%;
	}

	div.blank {
		height: 25px;
	}

	div.blankx2 {
		height: 50px;
	}

	.pc {
		display: none;
	}

	.order_top {
		-webkit-order: -1;
		-ms-order: -1;
		order: -1;
	}

	.order_1 {
		-webkit-order: 1;
		-ms-order: 1;
		order: 1;
	}

	address {
		text-align: center;
	}
}

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

	/* for Tablet and PC */
	.f_res {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}

	div.blank {
		height: 50px;
	}

	div.blankx2 {
		height: 100px;
	}

	div.blankx3 {
		height: 150px;
	}

	.sp {
		display: none;
	}

	.w10 {
		width: -webkit-calc(10%);
		width: calc(10%);
		min-width: calc(10%);
	}

	.w15 {
		width: -webkit-calc(15%);
		width: calc(15%);
		min-width: calc(15%);
	}

	.w20 {
		width: -webkit-calc(20%);
		width: calc(20%);
		min-width: calc(20%);
	}

	.w20s {
		width: -webkit-calc(20% - 1em);
		width: calc(20% - 1em);
		min-width: calc(20% - 1em);
	}

	.w20l {
		width: -webkit-calc(20% + 1em);
		width: calc(20% + 1em);
		min-width: calc(20% + 1em);
	}

	.w25 {
		width: -webkit-calc(25%);
		width: calc(25%);
		min-width: calc(25%);
	}

	.w25s {
		width: -webkit-calc(25% - 1em);
		width: calc(25% - 1em);
	}

	.w33 {
		width: -webkit-calc(100% / 3);
		width: calc(100% / 3);
	}

	.w33s {
		width: -webkit-calc(100% / 3 - 0.5em);
		width: calc(100% / 3 - 0.5em);
	}

	.w30 {
		width: -webkit-calc(30%);
		width: calc(30%);
		min-width: calc(30%);
	}

	.w30s {
		width: -webkit-calc(30% - 1em);
		width: calc(30% - 1em);
		min-width: -webkit-calc(30% - 1em);
		min-width: calc(30% - 1em);
	}

	.w30l {
		width: -webkit-calc(30% + 1em);
		width: calc(30% + 1em);
	}

	.w35 {
		width: -webkit-calc(35%);
		width: calc(35%);
		min-width: calc(35%);
	}

	.w40 {
		width: -webkit-calc(40%);
		width: calc(40%);
		min-width: calc(40%);
	}

	.w40s {
		width: -webkit-calc(40% - 1em);
		width: calc(40% - 1em);
		min-width: calc(40% - 1em);
	}

	.w45 {
		width: -webkit-calc(45%);
		width: calc(45%);
		min-width: calc(45%);
	}

	.w45s {
		width: -webkit-calc(45% - 1em);
		width: calc(45% - 1em);
		min-width: calc(45% - 1em);
	}

	.w45s {
		width: -webkit-calc(45% - 1em);
		width: calc(45% - 1em);
		min-width: calc(45% - 1em);
	}

	.w45l {
		width: -webkit-calc(45% + 1em);
		width: calc(45% + 1em);
		min-width: calc(45% + 1em);
	}

	.w60 {
		width: -webkit-calc(60%);
		width: calc(60%);
		min-width: calc(60%);
	}

	.w60s {
		width: -webkit-calc(60% - 1em);
		width: calc(60% - 1em);
	}

	.w66 {
		width: -webkit-calc(66%);
		width: calc(66%);
	}

	.w50s {
		width: -webkit-calc(50% - 1em);
		width: calc(50% - 1em);
	}

	.w50 {
		width: -webkit-calc(50%);
		width: calc(50%);
		min-width: calc(50%);
	}

	.w50l {
		width: -webkit-calc(50% + 1em);
		width: calc(50% + 1em);
	}

	.w55 {
		width: -webkit-calc(55%);
		width: calc(55%);
		min-width: calc(55%);
	}

	.w55s {
		width: -webkit-calc(55% - 1em);
		width: calc(55% - 1em);
		min-width: calc(55% - 1em);
	}

	.w65 {
		width: 65%;
		min-width: 65%;
	}

	.w65s {
		width: -webkit-calc(65% - 1em);
		width: calc(65% - 1em);
		min-width: calc(65% - 1em);
	}

	.w75 {
		width: -webkit-calc(75%);
		width: calc(75%);
	}

	.w75s {
		width: -webkit-calc(75% - 1em);
		width: calc(75% - 1em);
	}

	.w70 {
		width: -webkit-calc(70%);
		width: calc(70%);
	}

	.w70s {
		width: -webkit-calc(70% - 1em);
		width: calc(70% - 1em);
	}

	.w70l {
		width: -webkit-calc(70% + 1em);
		width: calc(70% + 1em);
	}

	.w80 {
		width: -webkit-calc(80%);
		width: calc(80%);
	}

	.w80s {
		width: -webkit-calc(80% - 1em);
		width: calc(80% - 1em);
	}

	.w80l {
		width: -webkit-calc(80% + 1em);
		width: calc(80% + 1em);
	}

	.w90 {
		width: 90%;
	}

	.w95 {
		width: 95%;
	}
}

ul.menu li.memo {
	border: none;
}

a.btn.main.footer {
	margin: 0.5em;
	width: initial;
}

@media screen and (max-width: 767px) {
	footer article>address {
		width: 100%;
	}
}

dl.staff>dd.name span {
	font-size: 0.5em;
	padding-bottom: 0.5em;
	display: inline-block;
}

table.schedule {
	max-width: 1000px;
	width: 100%;
	border: 1px solid #333333;
	text-align: center;
}

table.schedule th,
table.schedule td {
	border: 1px solid #333333;
	padding: 0.5em;
}

.comment {
	margin-top: 0.5em;
}

table.schedule th {
	background: #666666;
	color: #ffffff;
}

.mark {
	background: -webkit-gradient(linear, left top, left bottom, from(#00B900), to(#64C846));
	background: #cecece;
}

.mark.sample {
	display: inline-block;
	padding: 0.8em 1.5em;
}

a.amb {
	color: #00B900;
	text-decoration: underline;
}

@media screen and (max-width:767px) {
	/*table.schedule {
		transform-origin:left top;
		transform:scale(0.55);
	}
	.comment {
		margin-top:-30em;
	}*/
}

#post h3.tl.instructor {
	height: auto;
	line-height: 100%;
	margin-left: 0.5em;
}

#post span.instructor {
	display: inline-block;
	line-height: 100%;
	background: rgb(221, 0, 0);
	padding: 0.3em 0.5em 0.2em 0.5em;
	color: #ffffff;
	margin: 0;
}

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

	table.schedule th,
	table.schedule td {
		width: 14%;
	}
}

@media screen and (max-width:767px) {
	.scheduleWrap {
		overflow: auto;
		white-space: nowrap;
	}
}

#contact li .label span.any {
	background-color: #cccccc;
}

#contact select {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.5;
	width: 100%;
	padding: 0.5em 1em;
	border: 1px solid #cccccc;
	background: rgba(255, 255, 255, 0.8);
	font-family: sans-serif;
}

/************************************************************************************
	school btn
************************************************************************************/

#snewtown,
#chiba_lesson,
#chiba_price,
#newtown,
#skashiwa,
#kashiwa_lesson,
#kashiwa_price,
#kashiwa {
	padding-top: 100px;
	margin-top: -100px;
}

.school_btn {
	text-align: center;
	margin: 7rem auto 0px;
	width: 300px;
}

.school_btn a {
	display: block;
	background: #000000;
	color: #fff;
	padding: 2rem 3rem;
}

/************************************************************************************
	introduction
************************************************************************************/

.sp_only {
	display: none;
}

#introduction+p {
	line-height: 2.0;
	max-width: 80%;
	margin: 0 auto;
}

#introduction+p span {
	font-size: 20px;
	font-weight: bold;
	color: #dd0000;
	text-align: center;
	display: block;
	margin-top: 1rem;
}

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

	.sp_only {
		display: block;
	}

	#introduction+p {
		line-height: 1.7;
		max-width: 100%;
	}
}

/************************************************************************************
	プライバシーポリシー
************************************************************************************/

.privacy h2 {
	color: #222222;
	margin: 4rem 0 1rem;
	text-align: left;
	font-weight: bold;
}

.privacy ul {
	padding-left: 2rem;
	margin-bottom: 1rem;
}

.privacy ul li {
	list-style: disc;
}

.privacy a {
	text-decoration: underline;
}

.privacy dl {
	display: flex;
}

.privacy dl dt {
	font-weight: bold;
}