/* -----------------------------------------------------------------
  styles.css Document
  Description:  デザインのテーマ
  Version: 1.0
 ----------------------------------------------------------------- */
/* 初期設定
-------------------------------------------------- */
/* Foundation 強制css指定 */
.off-canvas-content { box-shadow:none !important; }
.thumbnail { margin-bottom:2.0% !important; }

/* Webフォント 読み込み */
/*
@font-face {
    font-family: 'rounded x-mplus 1m medium';
    src:url('../fonts/rounded-x-mplus-1m-medium.ttf');
    src:url('../fonts/rounded-x-mplus-1m-medium.ttf') format('truetype');
}
*/
/* IEのSVG対策 */
.header-name img[src$=".svg"],
.header-name img[src$=".svgz"],
footer img[src$=".svg"],
footer img[src$=".svgz"] {
  width: 100%;
}
/* リンクをスマートフォン端末以外では無効にする（jQuery併用：commons/js/jquery_config.js内に記載） */
a[href^="tel:"] { cursor: default; }
/* カラムマージン設定 */
.columns-margin { display:inline; margin-bottom:3.5%; }
/* Firefoxのみ */
@-moz-document url-prefix(http) {
	.columns-margin { display:inline; margin-bottom:20px; }
}
/* Edgeのみ */
@supports (-ms-ime-align:auto) {
	.columns-margin { display:inline; margin-bottom:20px; }
}
/* NEWアイコン */
span.new {
	margin:0;
	padding:2px 5px;
	font-size:80%;
	color:#fff;
	background-color:#ea5504;
	border-radius: 2px;
}
/* 点滅 ここから */
@-webkit-keyframes pulse {
	from { opacity: 1.0;/*透明度100%*/ }
	to { opacity: 0.5;/*透明度50%*/ }
}
.blinking{
	-webkit-animation-name: pulse;/* 実行する名前 */
	-webkit-animation-duration: 0.5s;/* 0.5秒かけて実行 */
	-webkit-animation-iteration-count:infinite;/* 何回実行するか。infiniteで無限 */
	-webkit-animation-timing-function:ease-in-out;/* イーズインアウト */
	-webkit-animation-direction: alternate;/* alternateにするとアニメーションが反復 */
	-webkit-animation-delay: 0s; /* 実行までの待ち時間 */
}
/* 点滅 ここまで */


/* ul li  */
ul.hang {
  list-style-type: none; /* リストスタイルを消去 */
  margin:0 ;
  padding: 0; /* 余分なパディングを消去 */
}
 
ul.hang li {
  padding-left: 1em; /* 1文字分の左パディング */
  text-indent: -.6em; /* 最初の行だけを1文字分左に */
  margin-bottom:2%;
}

/* ヘッダー
*****************************************************/
table.TableStyle01 tr th {
    width:30%;
}


/*ヘッダー　トップページ*/
#header {
	background:#f8f7f3;
	width:100%;
	margin:0 auto;
}

.calender-buttan {
	width: 100%;
	margin:1% auto;
	text-align: center;
}
.calender-buttan img {
	margin:auto;
	width: 18%;
	padding: 3% 0;
}

.top-first-box {
	font-size:120%;
	font-weight:bold;
	margin: 20px 0px 40px 0px;
	padding: 30px 30px 20px 30px;
	border: 10px solid #d2b97c;
	text-align: center;
}

.top-text {
	text-align: center;
	margin-bottom:5%;
}
.price {
	padding:2%;
	background: #fde8c5;
	border-radius: 5px;
}
.link-b {
}
.link-b a:visited {
	color: #0E1BBB;
	text-decoration: none;
}
.link-b a:hover{
	text-decoration: underline;
}

.link-old {
	text-align: right;
}
.link-old a:visited {
	color: #0E1BBB;
	text-decoration: none;
}
.link-old a:hover {
	text-decoration: underline;
}

.link-blue {
	text-align: right;
}
.link-blue a:visited {
	color: #0E1BBB;
	text-decoration: underline;
}
.link-blue a:hover {
	text-decoration: underline;
}

.link-blue a {
	color: #0E1BBB;
}
.link-blue a:link,
.link-blue a:visited {
	color: #0E1BBB;
	text-decoration: underline;
}
.link-blue a:hover,
.link-blue a:active {	
	text-decoration:none;
}

ul.four-Box {
	max-width:62rem;
	margin:0 auto;
	margin-bottom:0.4em;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	font-size:140%;
	font-family: "Gothic MB101 Bold";
	font-weight:700;
}
ul.four-Box li {
	margin:1%;
	padding:1%;
	width:22%;
	text-align:center;
	color:#fff;
	background: #036eb8;
	border-radius: 50px;
	letter-spacing: 2px;
}
ul.four-Box li:nth-child(4) {
	margin-right:0;
}
.Wrap {
	position: relative;
	width:100%;
	text-align: center;
}
h1.title-img {
	margin:0 auto;
}

h1.title-img img {
	margin:0 auto;
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	z-index:99;
	max-width:62rem;
}
.textimg img {
	position: absolute;
	margin:0 auto;
	right:15%;
	bottom:2%;
	z-index:99;
	width:40%;
}

.flow-box {
	padding:2%;
	background: #EFEFEF;
	margin-bottom:5%;
}

.box-4 {
	margin:0;
	margin-bottom:0.4em;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
}
.box-4 .box-4-inner {
	position: relative;
	margin:1%;
	padding:2%;
	width:20%;
	background: #ffffff;
	border: 2px solid #3A72B9;
}
.box-4 .box-4-inner:after, .box-4 .box-4-inner:before {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.box-4 .box-4-inner:after {
	border-color: rgba(194, 225, 245, 0);
	border-left-color: #3A72B9;
	border-width: 21px;
	margin-top: -21px;
}
.box-4 .box-4-inner:nth-child(2) {
	width:30%;
	background: #FEF1E5;
}
.box-4 .box-4-inner:last-child {
	margin-right:0;
}
.box-4 .box-4-inner:last-child:after {
	left: 0;
	top: 0;
	border: none;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.box-4 .box-4-inner:last-child:after {
	border-width: 0;
	margin-top: 0;
}
p.step1 {
	font-weight:bold;
	padding:1%;
	color:#ffffff;
	background: #E60012;
	text-align: center;
	display: inline-block;
}
.step2 {
	font-weight:bold;
	padding:1%;
	color:#ffffff;
	background: #E60012;
	text-align: center;
	display: inline-block;
}
p.step-no {
	padding:1%;
	color:#ffffff;
	background: #9FA0A0;
	text-align: center;
	display: inline-block;
}
.step-caption {
	width: 910px;
	margin:1% auto;
	color:#cc0000;
	font-weight:bold;
}

.more-detail {
	font-size:120%;
	margin-top:0;
	margin-left:7%;
}

ul.list-style-none {
	font-size:120%;
	list-style:none;
	margin-top:0;
	margin-left:7%;
}
ul.list-style {
	font-size:120%;
	margin-top:0;
	margin-left:7%;
}
.please {
	padding:2%;
	font-family:'新ゴ B','Shin Go Medium','Mplus 1p';
	font-weight:900;
	font-size:110%;
	border:solid 5px #cc0000;;
	border-radius: 10px;
}
ul.box-3 {
	margin:0 auto;
	margin-top:1em;
	padding:1%;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	width:100%;
	max-width:1100px;
}
ul.box-3 li {
	position: relative;
	margin-right:2%;
	padding:1%;
	width:32%;
	color:#0080ff;
}
ul.box-3 li:last-child {
	margin-right:0;
}
ul.box-3 li img {
	margin-bottom:2%;
}
ul.box-2 {
	margin:0;
	margin-top:1em;
	padding:1%;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	border:solid 7px #32b184;
	border-radius: 10px;
}
ul.box-2 li {
	position: relative;
	margin:2%;
	padding:1%;
	width:70%;
	font-family:'新ゴ B','Shin Go Medium','Mplus 1p';
	font-weight:900;
	font-size:140%;
}
ul.box-2 li:nth-child(odd) {
	width:20%;
}
.puro-box {
	padding:2%;
	margin-top:7%;
	margin-bottom:3%;
	border: 2px solid #ccc;
}
.guidebook-box {
	padding:2%;
	margin-top:7%;
	margin-bottom:3%;
	border: 5px solid #f39800;
}
ul.voise-box {
	margin:0;
	margin-top:2%;
	margin-bottom:0.4em;
	padding:2%;
	list-style:none;
	border:7px solid #369b50;
	border-radius: 10px;
	display:flex;
	flex-wrap:wrap;
}
ul.voise-box li {
	position: relative;
	margin:2%;
	padding:1%;
	width:75%;
	font-family:'新ゴ B','Shin Go Medium','Mplus 1p';
	font-weight:900;
	font-size:105%;
}
ul.voise-box li:nth-child(even) {
	width:15%;
}

.place {
	font-size:210%;
	font-weight:900;
	padding-top:3%;
	margin-bottom:1%;
	text-align:center;
	font-weight:700;
}
.places {
	font-size:150%;
	font-weight:900;
	padding-top:3%;
	padding-left:5%;
	padding-right:5%;
	padding-bottom:3%;
	margin-bottom:1%;
	font-weight:700;
	border: solid 3px #ccc;
}

.btn-circle-stitch {
font-size:140%;
	font-weight:900;
  display: inline-block;
  text-decoration: none;
  background: #87befd;
  color: #FFF;
  width: 120px;
  height: 120px;
  line-height: 120px;
  border-radius: 50%;
  text-align: center;
  overflow: hidden;
  box-shadow: 0px 0px 0px 5px #87befd;
  border: dashed 1px #FFF;
  transition: .4s;
}
.btn-circle-stitch a {
 color: #FFF;
 }

.btn-circle-stitch:hover {
  background: #668ad8;
  box-shadow: 0px 0px 0px 5px #668ad8;
}

.btn-stitch:hover {
  border: dotted 1px #FFF;
}
.voise-box {
	margin:0;
	margin-top:2%;
	margin-bottom:0.4em;
	padding:2%;
	font-size:120%;
	font-weight:700%;
	border:7px solid #ccc;
	border-radius: 10px;
}

.book-box {
	padding:2%;
	margin-bottom:3%;
	border: 1px solid #ccc;
}

h2.title {
	border-bottom: 6px double #000;
	text-align:center;
	font-family:'新ゴ B','Shin Go Medium','Mplus 1p';
	font-weight:900;
	font-size:170%;
	padding:2%;
}
h2.th-title {
	text-align:center;
	font-family:'新ゴ B','Shin Go Medium','Mplus 1p';
	font-weight:900;
	font-size:170%;
	padding:2%;
}

div.footer-copyright {
	margin:1.5% 0 0 0;
	padding:0.4%;
	font-size:80%;
	color:#ffffff;
	background-color:#6eb94f;
	width:100%;
}

.subtitle {
	padding: 0.4em 0.5em;/*文字の上下 左右の余白*/
	color: #494949;/*文字色*/
	background: #f4f4f4;/*背景色*/
	border-left: solid 5px #7db4e6;/*左線*/
	border-bottom: solid 3px #d7d7d7;/*下線*/
	width:100%;
	font-size:120%;
	font-weight:bold;
	margin:5% 0 2% 0;
}
.schedule-title {
	font-size:120%;
	font-weight:bold;
	position: relative;
	padding-left: 1em;
}
.schedule-title:after {
	position: absolute;
	top: 50%;
	left:0;
	transform:translateY(-50%);
	content: '';
	width: 10px;
	height:10px;
	border: solid 3px #cc0000;
	border-radius:100%;
}
.more-detail-box {
	margin-bottom:5%;
}
.more-detail-box p {
	margin-left:3%;
}

table.time-schedule {
	border: 1px solid #ccc;
}

ul.content4 {
    margin: 0;
    margin-top:1em;
    margin-bottom: 1em;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}

ul.content4 li {
	margin:0;
	padding:2%;
	width:25%;
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	border-left:1px solid #ccc;
	text-align: center;
}
ul.content4 li:last-child {
	border-right:1px solid #ccc;
}
ul.content4 li img {
	text-align: center;
}
ul.content4 li p {
	text-align: left;
	margin-top:2%;
	margin-bottom:0;
}
.scheduleBox dl dd.sfDate {
    width: 30%;
}
.scheduleBox dl dd.sfTime {
	width: 20%;
	}
	@media only screen and (max-width: 40em){
.scheduleBox dl dd.sfDate,
.scheduleBox dl dd.sfTime,
.scheduleBox dl dd.sfSeat {
    width: 100%;
	display: inherit;
	text-align: center;
}
ul.content4 li {
		width:98%;
		border-top:none;
		border-bottom:1px solid #ccc;
		border-left:none;
	}
	ul.content4 li:last-child {
		border-right:none;
		border-bottom:1px solid #ccc;
	}
}


.trainer-box {

}
.trainer-box ul li {
	font-size:90%;
	margin-left:3%;
}
.seminar-flow {
	margin:0;
	margin-bottom:0.4em;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
}
.seminar-flow .seminar-flow-inner {
	position: relative;
	margin:1%;
	padding:2%;
	width:23%;
	background: #ffffff;
	border: 2px solid #3A72B9;
}
.seminar-flow .seminar-flow-inner:after, .seminar-flow .seminar-flow-inner:before {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.seminar-flow .seminar-flow-inner:after {
	border-color: rgba(194, 225, 245, 0);
	border-left-color: #3A72B9;
	border-width: 21px;
	margin-top: -21px;
}

.seminar-flow .seminar-flow-inner:last-child {
	margin-right:0;
}
.seminar-flow .seminar-flow-inner:last-child:after {
	left: 0;
	top: 0;
	border: none;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.seminar-flow .seminar-flow-inner:last-child:after {
	border-width: 0;
	margin-top: 0;
}

/* フッター
*****************************************************/
#fPageTop {
	margin:0 auto;
	text-align: right;
	padding-right: 5%;
}
#footer {
	background:#fff;
	border-top:1px solid #E6E6E6;
}
#footerInner {
	width:1000px;
	margin:0 auto;
	margin-top:20px;
	margin-bottom:20px;
	overflow:hidden;
	height:100%;
}

#footerNav {
	overflow:hidden;
	height:100%;
	float:left;
	/*width:700px;*/
}
#footerNav p {
	font-weight:bold;
	font-size:13px;
	border-bottom:1px dotted #ccc;
	margin-bottom:12px;
	padding-bottom:4px;
}
#fnBox01 {
	float:left;
	width:480px;
	margin-right:20px;
}
#fnBox02 {
	float:left;
	width:500px;
}

#footerNav ul {
	font-size:11px;
	float:left;
	list-style: none;
	margin: 0;
	padding: 0;
}
#footerNav ul.listCol1 {
	margin-right: 20px;
}
#footerNav ul#fn01 {
	margin-right:40px;
}
#footerNav ul#fn02 {
}
#footerNav ul#fn03 {
}
#footerNav ul li {
	margin-bottom:0.75em;
}
#footerNav ul li:before {
	content:"> ";
	font-size:9px;
}
#footerFacebook {
	float:right;
	width:240px;
}

#footerBottom {
	border-top:1px solid #E6E6E6;
	background:#f2f2f2;
}
#footerBottomInner {
	width:1000px;
	margin:0 auto;
	position:relative;
	overflow:hidden;
	height:100%;
}
#footerLogo {
	margin-top:6px;
	margin-bottom:6px;
	float:left;
}
#footerLogo {
	width: 336px;
	height: 42px;
}
#footerBottom ul {
	position:absolute;
	right:0px;
	top:5px;
	list-style: none;
	margin: 0;
	padding: 0;
}
#footerBottom ul li {
	background:#fff;
	border:1px solid #ccc;
	line-height:1;
	float:left;
	font-size:11px;
	padding:6px 7px 4px 7px;
	margin: 0;
	margin-left:5px;
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	-ms-border-radius:5px;
	-o-border-radius:5px;
}
#footerCopy {
	position:absolute;
	bottom:5px;
	right:0px;
	font-size:10px;
	text-align:right;
	color:#999;
}

/* フッターメニューバー */
.footerMenu{
	position:fixed;
	z-index:10;
	right:0;
	bottom:0;
	left:0;
	display:none;
}
.footerMenu_list{
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-direction:row;
	-ms-flex-direction:row;
	flex-direction:row;
	width:100%;
	height:60px;
	height:4.5rem;
	background-color:#49b5b5;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
}
.footerMenu_item{
	font-size:24px;
	font-size:2.4rem;
	width:50%;
	text-align:center;
	color:#fff;
	border-right:1px solid #96d2c4;
	border-right:.1rem solid #96d2c4;
}
.footerMenu_item a{
	color:#fff;
}
.footerMenu_item a:hover{
	text-decoration:none;
}
.footerMenu_item:last-child{
	border-right:0;
}
.footerMenu_item span>span,.footerMenu_item a>span{
	font-size:7px;
	font-size:.7rem;
	display:block;
	margin-top:-5px;
	margin-top:-.5rem
}
.footertime{
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-direction:row;
	-ms-flex-direction:row;
	flex-direction:row;
	width:100%;
	height:25px;
	height:2rem;
	background-color:#ccc;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	padding:1%;
}
@media screen and (max-width:767px){
	.footerMenu{
		display:block
	}
}

.scheduleBox {
	border: 1px solid #09F;
	width: 98%;
	margin-bottom:24px;
	position:relative;
	z-index: 1;
	top: -5px;
	padding-top:20px;
}
.scheduleBox p.place {
	padding:1%;
}
.scheduleBox dl {
	font-size: 110%;
	display: table;
	width: 100%;
	margin-bottom: .5%;
}
/*.scheduleBox dl:first-child {
	border-top: 1px dotted #ccc;
}*/
.scheduleBox dl dt {
	width: 17%;
	padding-left: 20px;
	display: table-cell;
	vertical-align: middle;
	border-bottom: 1px dotted #ccc;
}
.scheduleBox dl dd {
	width: 68%;
	font-size:110%;
	display: table-cell;
	vertical-align: middle;
	padding: 10px 0;
	border-bottom: 1px dotted #ccc;
}
.scheduleBox dl dd.sfDate {
	width: 30%;
}
.scheduleBox dl dd.sfSeat {
	width: 15%;
	text-align: center;
	color: #6C9BD2;
}
.scheduleBox dl dd.sfEarly {
	width: 100%;
	text-align: center;
	display:flex;
	flex-wrap:wrap;
}
.scheduleBox dl dd.sfEarly:after {
	font-family:"Font Awesome 5 Free";
	content:'\f054';
	font-weight: 900;
	margin-top: 3.5%;
}
.scheduleBox dl dd.sfEarly p {
	padding:0;
	margin:0;
}
.scheduleBox dl dd.sfEarly p.early {
	padding:0;
	margin:0;
}
.hayawari-new { 
	width: 90%;
 }
.hayawari-30day { 
	width: 90%;
	color:#0080ff;
 }
.normal { 
	width: 90%;
	color:#cc0000;
}
.hayawari-30day span,
.normal span {
	font-size:140%;
	font-weight: bold;
}

.scheduleBox a {
	display:block;
	text-decoration:none;
}
.scheduleBox a:link,
.scheduleBox a:visited {
	text-decoration:none;
}
.scheduleBox a:hover,
.scheduleBox a:active {	
	background-color:#EAF6FD;
	text-decoration:none;
}

table.TableStyle01 {
    border: 1px solid #555;
}

ul.pricebox-style {
	margin:0;
	margin-bottom:0.4em;
	padding:0;
	text-align: center;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
}
ul.pricebox-style li {
	list-style:none;
	font-size:120%;
	margin:.5%;
	padding:2%;
	width:27.5%;
	border-radius: 5px;
}
ul.pricebox-style li.day30 {
	border: 2px solid rgba(255,0,0,1.0);
	background: rgba(255,0,0,0.2);
}
ul.pricebox-style li.day14 {
	border: 2px solid rgba(51,153,255,1.0);
	background: rgba(51,153,255,0.2);
}
ul.pricebox-style li.day7 {
	border: 2px solid rgba(51,204,153,1.0);
	background: rgba(51,204,153,0.2);
}

.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
border:solid 4px #FFF;
box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/* ----- 文字色 ----- */
.require, .emphasis, .red { color:#cc0000; }
.blue { color:#0080ff; }
.orange { color:#ff8c00; }
.green { color:#369b50; }
.brown { color:#6a3313; } 

/* ----- フォントサイズ指定 ----- */
.font70 { font-size:70%; }
.font80 { font-size:80%; }
.font85 { font-size:85%; }
.font90 { font-size:90%; }
.font100 { font-size:100%; }
.font110 { font-size:110%; }
.font120 { font-size:120%; }
.font130 { font-size:130%; }
.font140 { font-size:140%; }
.font150 { font-size:150%; }
.font160 { font-size:160%; }
.font170 { font-size:170%; }
.font180 { font-size:180%; }
.font190 { font-size:190%; }
.font200 { font-size:200%; }
.font-bold { font-weight:bold; }
/* 行間設定 */
.font150, .font160, .font170,
.font180, .font190, .font200 {
	line-height:130%;
}

/* フォントファミリー */
.kaimin { font-family:"解ミン 宙 B","Kaimin Sora Bold"; }
.ryumin-m {font-family:"リュウミン M-KL","Ryumin Medium KL", "Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "MS P明朝" , "MS PMincho" , serif; }

/* ---------- マージン設定 ---------- */
/* トップ */
.mt1 { margin-top:1% }
.mt2 { margin-top:2% }
.mt3 { margin-top:3% }
.mt4 { margin-top:4% }
.mt5 { margin-top:5% }
.mt6 { margin-top:6% }
.mt7 { margin-top:7% }
.mt8 { margin-top:8% }
.mt9 { margin-top:9% }
.mt10 { margin-top:10% }
/* ライト */
.mr1 { margin-right:1% }
.mr2 { margin-right:2% }
.mr3 { margin-right:3% }
.mr4 { margin-right:4% }
.mr5 { margin-right:5% }
.mr6 { margin-right:6% }
.mr7 { margin-right:7% }
.mr8 { margin-right:8% }
.mr9 { margin-right:9% }
.mr10 { margin-right:10% }
/* ボトム */
.mb1 { margin-bottom:1% }
.mb2 { margin-bottom:2% }
.mb3 { margin-bottom:3% }
.mb4 { margin-bottom:4% }
.mb5 { margin-bottom:5% }
.mb6 { margin-bottom:6% }
.mb7 { margin-bottom:7% }
.mb8 { margin-bottom:8% }
.mb9 { margin-bottom:9% }
.mb10 { margin-bottom:10% }
/* レフト */
.ml1 { margin-left:1% }
.ml2 { margin-left:2% }
.ml3 { margin-left:3% }
.ml4 { margin-left:4% }
.ml5 { margin-left:5% }
.ml6 { margin-left:6% }
.ml7 { margin-left:7% }
.ml8 { margin-left:8% }
.ml9 { margin-left:9% }
.ml10 { margin-left:10% }

.pd1 {padding:1% }
.pd2 {padding:2% }


/* 投稿 画像設定
------------------------------------------------------------ */
/* 画像サイズ調整 */
.contents-photo-center {
	text-align:center;
	margin-bottom:3%;
	padding:0;
}
.contents-photo-center-to {
	margin:5% auto;
}
.contents-photo-left {
	margin-right:2%;
	margin-bottom:3%;
	padding-left: 2.5%;
	float:left;
}
.contents-photo-right {
	margin-left:2%;
	margin-bottom:3%;
	padding-right: 2.5%;
	float:right;
}
.contents-photo-center img,
.contents-photo-center-to img,
.contents-photo-left img,
.contents-photo-right img {
	border:solid 4px #FFF;
	box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
}
.photo-size100 { width:100px; }
.photo-size150 { width:150px; }
.photo-size200 { width:200px; }
.photo-size250 { width:250px; }
.photo-size300 { width:300px; }
.photo-size320 { width:320px; }
.photo-size350 { width:350px; }
.photo-size600 { width:600px; }
.photo-size100 img, .photo-size150 img, .photo-size200 img,
.photo-size250 img, .photo-size300 img, .photo-size320 img, .photo-size350 img,
.photo-size600 img {
	max-width:100%;
	height:auto;
}
.list-bold {
	font-weight:bold;
}
.contents-photo-center p,
.contents-photo-left p,
.contents-photo-right p {
	margin:1% 0 0 0;
	padding:0;
	font-size:85%;
}
.contents-caption-boder {
	margin:2px 0;
	padding:3px;
	border:solid 1px #999;
}
.contents-caption-text {
	font-size:80%;
	line-height:140%;
	text-align:center;
	margin:0;
	padding:5px;
}
.contents-caption-texts {
	font-size:80%;
	line-height:140%;
	text-align:center;
	margin:10px;
	padding:5px;
}
/* コンテンツ内イラスト用 */
.caption-illustration {
	text-align:center;
	margin:0 0 2% 0;
}
.caption-illustration-left {
	float:left;
	margin:0 2% 2% 0;
}
.caption-illustration-right {
	float:right;
	margin:0 0 2% 2%;
	text-align:center;
}
.caption-boder {
	padding:5px;
	border:solid 1px #999;
	border-radius:5px;
}
.caption-illustration p,
.caption-illustration-left p,
.caption-illustration-right p {
	margin:1% 0 0 0;
	padding:3%;
	font-size:80%;
	line-height:140%;
	text-align:left;
	border:solid 1px #696969;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }

/* トレーナー紹介 */
ul.trainer-box {
	margin:0;
	margin-bottom:0.4em;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
}
ul.trainer-box li {
	position: relative;
	margin:1%;
	width:31.5%;
}
ul.trainer-box li:last-child {
	margin-right:0;
}
ul.trainer-box li dl {
	display:table;
}
ul.trainer-box li dl dt {
	display: table-cell;
}
ul.trainer-box li dl dd {
	padding: 4%;
	vertical-align: middle;
}
.btn-square-so-pop {
	font-size:80%;
	display: inline-block;
	padding: 0.25em 0.5em;
	background: #03A9F4;/*色*/
	border-radius: 4px;/*角の丸み*/
	box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
	font-weight: bold;
	border: solid 1px #0f9ada;/*線色*/
	text-align:right;
}
.btn-square-so-pop a {
	color: #FFF;
}

.btn-square-so-pop:active {
  /*押したとき*/
  /*box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);*/
}


.application-button,
.application-button-new {
	margin:3% auto;
}
.application-button a,
.application-button-new a {
	width: 50%;
	text-align: center;
	font-size: 140%;
	font-weight: bold;
	padding: 1%;
	display: inline-block;
	color: #fff;
	border-radius:20px;
	background:#cc0000;
	color: #fff;
}
.application-button-new a {
	background:#4169E1;
}

.application-button:hover,
.application-button-new:hover {
	opacity: 0.5 ;
}

/* ブレイクポイント 1024px以下
-------------------------------------------------- */
@media only screen and (max-width: 1024px){
	/* グローバルナビゲーション 画像 非表示 */
	.off-canvas ul li img {
		display:none;
	}
	.off-canvas ul li span {
		font-size:90%;
	}
	.header-h1 h1 {
		padding:1% 2.5%;
	}
}

/* ブレイクポイント 1024px以下
-------------------------------------------------- */
@media only screen and (max-width: 1024px){
	/* グローバルナビゲーション 画像 非表示 */
	.off-canvas ul li img {
		display:none;
	}
	.off-canvas ul li span {
		font-size:90%;
	}
}

/* ブレイクポイント 985px以下
------------------------------------------------------------*/
@media only screen and (max-width: 985px){
	/* 985px以下閲覧時に隠す
	-------------------------------------------------- */
	.tablet-hidden {
		display:none;
	}
	/* ナビバー
	-------------------------------------------------- */
	.calender-buttan {
		width: 100%;
	}
	.top-navi-bar ul {
		max-width:100%;
	}
	.top-navi-bar ul li {
		margin:0;
		width:11%;
	}
	.top-navi-bar ul li img {
		width:100%;
	}
	.menu > li > a {
    		padding: 0 !important;
	}

	/* transform scale用 追加 */
	a:hover .images-scale,
	.images-scale img {
		-moz-transition:none;
		-webkit-transition:none;
		-o-transition:none;
		-ms-transition:none;
		transition:none;
	}
	a:hover .images-scale img,
	.images-scale img:hover {
		-webkit-transform:none;
		-moz-transform:none;
		-o-transform:none;
		-ms-transform:none;
		transform:none;
	}
	
	/* Foundation 追加 */
	.position-right {
		z-index:9999999;
	}

	nav {
		border-bottom: none;
		border-top: none;
	}
	.menu-icon::after {
    		/*background: #da7fa2;
    		box-shadow: 0 7px 0 #da7fa2, 0 14px 0 #da7fa2;*/
	}
	.sp-navi-bar {
		margin:0;
		position:fixed;
		top:0;
		width:100%;
		z-index:9999999;
		background-color:#49b5b5;
		box-shadow: 2px 2px 4px gray;
	}
	ul.sp-navi-box {
		margin:0;
		padding:0;
		list-style:none;
	}
	ul.sp-navi-box li {
		text-align:center;
		margin:0;
		padding:1% 1% 0.5%;
		width:15%;
		height:auto;
		font-size:90%;
		line-height:135%;
		color:#ffffff;
		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
		align-items: center; /* 縦方向中央揃え */
		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
		justify-content: center; /* 横方向中央揃え */
		float: right;
	}

	ul.menu {
		margin:4%;
	}
	ul.menu li {
		padding:2%;
		margin-bottom:5%;
		font-weight: bold;
	}
	.position-right {
		z-index: 9999999 !important;
	}
	/* サブメニュー */
	ul.submenu {
		padding-left:6%;
		display: contents;
	}
	ul.submenu li {
		margin-left:5%;
		font-weight: normal;
	}
	ul.submenu li a {
		line-height: 1.2em;
	}
	/* メニュー */
	.title-bar-title {
		font-size:90%;
	}
	#calendar-bo {
		width:50%;
	}
	
	ul.book-box li {
		width:98%;
	}
	
	ul.news-site-box li {
		width:98%;
	}
	#footerInner {
		width: 100%;
	}
	#fnBox01 {
		width: 100%;
		padding:0 2% 0 3%;
	}
	#footerBottomInner {
		width: 100%;
		padding:0 2% 0 3%;
	}

}
/* ブレイクポイント 40em（641px）
-------------------------------------------------- */
@media only screen and (min-width: 641px) {
	.more-tablet-hidden {
		display:none;
	}
}
@media only screen and (max-width: 640px) {
/* スマホ閲覧時に隠す
	-------------------------------------------------- */
.off-canvas-content {
		padding-top: 0;
	}
	
	/* ナビゲーション 
	----------------------------------------------------------------- */
	nav {
		border-bottom: none;
		border-top: none;
	}

	ul.content2-images-recom {
	}
	ul.content2-images-recom li {
		width:98%;
	}
	ul.content2-images-recom li img {
		margin-bottom:2%;
	}
	.alignright {
		float: none;
	}
	
	/* スマホ閲覧時に隠す
	-------------------------------------------------- */
	.smartphone-hidden {
		display:none;
	}
	
	.off-canvas-wrapper {
		margin-top: 0;
	}
	
	.menu.vertical {
		padding:2%;
	}
	ul.menu.vertical li {
		margin-bottom:1%;
	}

	/* Foundation 追加 */
	.position-right {
		z-index:9999999;
	}
	
	.menu > li > a {
    		padding: 0 !important;
	}

	nav {
		border-bottom: none;
		border-top: none;
	}
	.menu-icon::after {
    		/*background: #da7fa2;
    		box-shadow: 0 7px 0 #da7fa2, 0 14px 0 #da7fa2;*/
	}
	.sp-navi-bar {
		margin:0;
		padding:0;
		position:fixed;
		top:0;
		width:17%;
		z-index:9999999;
		background-color:#49b5b5;
		box-shadow: 2px 2px 4px gray;
		right:0;
	}
	ul.sp-navi-box {
		margin:0;
		padding:0;
		list-style:none;
		display:flex;
		flex-wrap:no-wrap;
	}
	ul.sp-navi-box li {
		text-align:center;
		margin:0;
		padding:8% 1% 0.5%;
		width:100%;
		height:auto;
		font-size:80%;
		line-height:135%;
		color:#ffffff;
		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
		align-items: center; /* 縦方向中央揃え */
		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
		justify-content: center; /* 横方向中央揃え */
	}

	ul.menu {
		margin:4%;
	}
	ul.menu li {
		padding:2%;
		margin-bottom:5%;
		font-weight: bold;
	}
	.position-right {
		z-index: 9999999 !important;
	}
	/* サブメニュー */
	ul.submenu {
		padding-left:6%;
		display: contents;
	}
	ul.submenu li {
		margin-left:5%;
		font-weight: normal;
	}
	ul.submenu li a {
		line-height: 1.2em;
	}
	/* メニュー */
	.title-bar-title {
		font-size:90%;
	}
	#footerBottom {
    		margin-bottom: 15%;
	}
	#calendar-bo {
		width:50%;
	}
	
	ul.book-box li {
		width:98%;
	}
	
	ul.news-site-box li {
		width:98%;
	}
	.headerabout {
		display:none;
	}
	ul.voise-box li {
	width:100%;
}
ul.voise-box li:nth-child(even) {
	width:70%;
	text-align:center;
}
form#mailformpro label {
    white-space: normal!important;
}
}
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 600px) {
.pc { display: none !important; }
.sp { display: block !important; }
}


/* Media-Query タブレット以上用
------------------------------------------------------------ */
@media only screen and (min-width: 768px) {
	
}

/* Media-Query タブレット以下用
------------------------------------------------------------ */
@media only screen and (max-width: 63.5em) {

}

/* Media-Query スマホサイト用
------------------------------------------------------------ */
@media only screen and (max-width: 40em) {
	
	.off-canvas-wrapper {
		margin-top: 0;
	}
	
	h1.title-img img {
		width: 75%;
	}
	.calender-buttan img {
		width: 55%;
	}
	
	.top-text br {
		display: none;
	}

	/* 投稿 画像設定
	------------------------------------------------------------ */
	.contents-photo-center,
	.contents-photo-left,
	.contents-photo-right {
		margin:4% 0;
		padding-left:0;
		padding-right:0;
		float:none;
		text-align:center;
	}
	/* コンテンツ内イラスト用 */
	.caption-illustration {
		text-align:center;
	}
	.caption-illustration-left {
		float:none;
		margin-right:0;
	}
	.caption-illustration-right {
		float:none;
		margin-left:0;
	}
	/* 写真 */
	.photo-size100, .photo-size150, .photo-size200,
	.photo-size250, .photo-size300, .photo-size320, .photo-size350,
	.photo-size600 {
		max-width:100%;
		width:100%;
	}
	.photo-size100 img, .photo-size150 img, .photo-size200 img,
	.photo-size250 img, .photo-size300 img, .photo-size320 img, .photo-size350 img,
	.photo-size600 img {
		max-width:100%;
		width:100%;
	}
	/* 画像 揃え
	------------------------------------------------------------ */
	.imgLeft, .imgRight {
		text-align:center;
		float:none;
		margin:10px 0;
	}
	/* ----- 挿絵 ----- */
	.caption-illustration,
	.caption-illustration-left,
	.caption-illustration-right {
		text-align:center;
		float:none;
		margin:20px auto;
	}
	.caption-text {
	}
	
	.calender-buttan {
		width:100%;
	}
	.top-voise-box {
		padding: 10px 10px 10px 10px;
		border: 5px solid #8FC31F;
		font-size:70%;
	}
	.box-4 .box-4-inner:nth-child(2) {
		width: 100%;
	}
	.box-4 .box-4-inner {
		width: 100%;
	}
	.box-4 .box-4-inner:after, .box-4 .box-4-inner:before {
		border: none;
		content: " ";
	}
	.box-4 .box-4-inner:after {
		border-color: rgba(194, 225, 245, 0);
		border-left-color: #8FC31F;
		border-width: 21px;
		margin-top: -21px;
	}
	.seminar-flow .seminar-flow-inner:first-child {
		width: 100%;
	}
	.seminar-flow .seminar-flow-inner {
		width: 100%;
	}
	.seminar-flow .seminar-flow-inner:after, .seminar-flow .seminar-flow-inner:before {
		border: none;
		content: " ";
	}
	.seminar-flow .seminar-flow-inner:after {
		border-color: rgba(194, 225, 245, 0);
		border-left-color: #8FC31F;
		border-width: 21px;
		margin-top: -21px;
	}
	.step-caption {
		width: 100%;
		font-size:80%;
		font-weight: normal;
	}
	.box-2 .box-2-inner {
		width: 100%;
	}
	.subtitle {
		font-size:100%;
	}
	.voise-box .voise-box-inner {
		width:100%;
	}
	
	.title {
		font-size: 20px;
		padding: 10px 10px 10px 30px;
		text-align: left;
	}
	
	table.time-schedule th,
	table.time-schedule td {
		border-bottom: none;
		display: block;
		width: 100%;
		text-align:center;
	}
	
	table.TableStyle01 th,
	table.TableStyle01 td {
		border-bottom: none;
		display: block;
		width: 100%;
		text-align:left;
	}
	/*table.TableStyle01 br {
		display: none;
	}*/
	
	.voise-box .voise-box-inner dl dd {
		
	}
	
	/*フッター*/
	#footer,
	#footerInner,
	#fnBox02,
	#footerBottomInner {
		width: 100%;
	}
	#fPageTop {
		width: 25%;
	}
	#footerInner {
		margin: 0;
	}
	#fnHone,
	#fnBox02 p {
		padding-left: 15px;
	}
	#footerNav {
	}
	#footerNav ul {
		float: none;
	}
	#footerNav ul.listCol1 {
		margin-right: 0;
	}
	#footerNav ul li {
		font-size: 120%;
		border-bottom: 1px dotted #ccc;
		margin-bottom: 0;
	}
	#footerNav ul li a {
		display: block;
		padding: 15px;
	}
	#footerNav ul li:before {
		content: none;
	}
	#footerNav ul li a:before {
		content: ">";
		margin-right: 5px;
	}
	#footerFacebook {
		float: none;
		padding: 10px;
	}
	#footerLogo {
		width: 94%;
		float: none;
		margin: 0 auto;
		padding: 10px 0;
	}
	#footerBottom ul,
	#footerCopy {
		position: static;
		text-align: center;
	}
	#footerBottom ul {
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#footerBottom ul li {
		font-size: 60%;
	}
	#footerCopy {
		margin: 5px 0;
	}
	
	.scheduleBox dl {
	margin-top:2%;
}
.scheduleBox dl dt {
	width: 100%;
	display: initial;
	padding:2%;
	text-align: center;
	border-bottom:none;
	margin-right:2%;
}
.scheduleBox dl dd {
	width: 100%;
	border-bottom:none;
	padding: 0;
}
.scheduleBox dl dd.sfDate {
	width: 100%;
	display: initial;
	text-align: center;
	margin-right:2%;
}
.scheduleBox dl dd.sfSeat {
	width: 100%;
	display: initial;
}
.scheduleBox dl dd.sfEarly {
	width: 100%;
	flex-wrap: nowrap;
	border-bottom: 1px dotted #ccc;
}

.scheduleBox dl dd.sfEarly:after {
    margin-right: 5%;
}
.hayawari-30day,
.normal {
    text-decoration: underline;
}
.hayawari-30day span,
.normal span {
	font-size:100%;
	font-weight: none;
}

ul.pricebox-style li {
	margin:.5%;
	padding:2%;
	width:100%;
	border-radius:0;
	text-align:right;
}
ul.pricebox-style li.day30 {
	border-top:none;
	border-left:none;
	border-right:none;
	border-bottom: 2px solid rgba(255,0,0,1.0);
	background: none;
}
ul.pricebox-style li.day14 {
	border-top:none;
	border-left:none;
	border-right:none;
	border-bottom: 2px solid rgba(51,153,255,1.0);
	background: none;
}
ul.pricebox-style li.day7 {
	border-top:none;
	border-left:none;
	border-right:none;
	border-bottom: 2px solid rgba(51,204,153,1.0);
	background: none;
}

ul.pricebox-style li br.spnone {
	display: none !important;
}

.hayawari-new,
.hayawari-30day,
.normal,
.hayawari-new img,
.hayawari-30day img,
.normal img { 
	width: 98%;
	margin:2% auto;
}
.top-text {
	text-align: justify;
	text-align-last:left;
}

ul.trainer-box li dl {
	padding:0;
	display:inline;
}
ul.trainer-box li dl dd {
	padding:0;
}
ul.trainer-box li dl span {
	font-size:60%;
}
p.text-wrap br {
	display: none;
}

.sptext {
	font-size:90%;
}

/*.hayawari-new { 
	margin:0 .5% .5%;
	padding:2%;
	width: 98%;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;	
}
.hayawari-new:before {
	content:attr(data-label);
}
.hayawari-new:after { 
	content:"\f054";
	font-family:'Font Awesome 5 Free';
	pading-left:20px;
}
.hayawari-new img { 
	display: none;
}

.hayawari-30day { 
	margin:0 .5% .5%;
	padding:2%;
	width: 98%;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;	
}
.hayawari-30day::before {
	content:attr(data-label);
}
.hayawari-30day::after { 
	content:"\f054";
	font-family:'Font Awesome 5 Free';
	pading-left:20px;
}
.hayawari-30day img { 
	display: none;
}


.normal { 
	margin:0 .5% .5%;
	padding:2%;
	width: 98%;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;	
}
.normal::before {
	content:attr(data-label);
}
.normal::after { 
	content:"\f054";
	font-family:'Font Awesome 5 Free';
	pading-left:20px;
}
.normal img { 
	display: none;
}*/

/* コミュニケーション能力専門スクールの学習ステップ用 20190531
------------------------------------------------------------ */
	.flow-box {
		margin-top:5%;
		margin-bottom:5%;
	}
	.box-3 .box-3-inner {
		width:100%;
		margin-bottom: 8%;
		font-size:90%;
	}
	.box-3 .box-3-inner:last-child {
		margin-bottom:0;
	}
	.box-3 .box-3-inner:after,
	.box-3 .box-3-inner:before {
		left: 42%;
		top: 107%;
		border: solid transparent;
		content: " ";
		height: 0;
		width: 0;
		position: absolute;
		pointer-events: none;
	}
	.box-3 .box-3-inner:after {
		border-color: rgba(194, 225, 245, 0);
		border-left: 30px solid transparent;
		border-right: 30px solid transparent;
		border-top: 30px solid #8FC31F;
	}
	.box-3 .box-3-inner a:hover,
	.box-3 .box-3-inner a:active {
		margin:0;
		padding:0;
		background: none;
	}
	.step-caption {
		width: 100%;
		margin:3% auto;
		font-size:80%;
	}
	.box-3 .box-3-inner ul {
		font-size:100%
	}
	.box-3 .box-3-inner li{
		width: 100%;
	}
	.flow-box .step-title {
		font-size: 160%;
		width: 100%;
	}
	.step-title br {
		display:none;
	}
	br.title-pc {
		display: block;
	}
	.st-img {
		max-width: 60%!important;
		margin:3% auto;
		text-align:center;
		flex-wrap: wrap;
    		display: flex;
	}
	h1.title-img,
	h1.title-img img {
		width: 100%;
	}
	.top-first-box {
		font-size: 90%;
		padding: 2%;
		border: 3px solid #d2b97c;
	}
	.application-button a,
	.application-button-new a{
		width: 90%;
	}
	table.TableStyle01 tr th {
    width:100%;
}

.place,
.places {
	font-size:120%;
}
.btn-circle-stitch {
	font-size:100%;
	margin-bottom:2%;
	width: 80px;
	height: 80px;
	line-height: 80px;
}
.textimg img {
	right: 5%;
	width: 50%;
}
ul.four-Box li {
	width:48%;
	font-size:95%;
}
ul.four-Box li:nth-child(2n) {
	margin-right:0;
}

}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 600px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

.re-red {
	color:#e83828;
}