
html,body{
    width: 100%;
}
.dropdown-backdrop {position: static;}
.clear{clear:both;}
.reset{margin:0px;padding:0px;}
.margin-top5{margin-top:5px;}
.margin-bottom5{margin-bottom:5px;}
.leftBox	{ float:left; margin: 0 0.5em 0.5em 0; }
.rightBox	{float:right; margin: 0 0 0.5em 0.5em;}
body {
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ',' Meiryo',' Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic' !important; } 
 .boxborder1px{
	border: 1px solid #333;
	padding: 5px;
	margin:0 0 10px 2px;
}
.margin_center{
	 display: block;
 margin-left: auto;
 margin-right: auto;
}
label {cursor:pointer;}

 /* 選択範囲の色変更*/
::selection {background: #15437C; color: #fff;}
::-moz-selection {background: #15437C; color: #fff;}

 /* カラムの高さをそろえる*/
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}

	.breadlist a{border: 1px solid #E3E3E3; padding:3px; border-radius: 5px; background-color: #E3E3E3; margin-top: 3px;}
.link {padding:2px; border-radius: 3px; background-color: #E3E3E3; margin-top: 3px;text-decoration: underline;}
.link:before {
  content: "\f0c1";
  font-family: FontAwesome;
	padding-right:3px;
}


/* ---------- イメージフレーム ----------------------- */
.img_frame{ /*PIEでもIE8不可*/
    position: relative;
    border: #D0D0D0 1px solid;
	margin:4px;
}
.img_frame:after {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: rgb(255,255,255) 0 0 0 5px inset;
}
/* ---------- レスポンシブルプレイヤー ----------------------- */
.video-player{position:relative;padding-bottom:56.25%;padding-top: 20px;height:0;max-width:100%;height:auto;}
.video-player iframe,.video-player object,.video-player embed{position: absolute;top:0;left:0;width:100%;height:100%;}

/* ---------- ボックスッシャドウ ----------------------- */
.flow-shadow{
  border:solid 5px #000;
  margin: auto;
  border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
  padding:5px;
  background:#FFE1E1; 
}
/* Font Styles
-----------------------------------------------------------------------------  */
.bold {font-weight:bold;}
.center		{ text-align:center !important;}
.right		{ text-align:right !important;}
.left		{ text-align:left !important; }
.middle     { vertical-align:middle !important; }
.f70			{ font-size:70%; line-height:120%;}
.f85			{ font-size:85%;}
.f90			{ font-size:90%;}
.f100			{ font-size:100%;}
.f120			{ font-size:120%;}
.f120_b		{font-size:110%; font-weight:bold;}
.f120_b_r		{ font-size:120%; font-weight:bold;color:#FF0000;}
.f150			{ font-size:150%;margin:5px 0 5px 0;}
.red		{ color:#FF0000; }
.bold_red		{font-weight:bold; color:#CC0000; }
.gray		{ color:#AAA; 	 }
.font_yellow		{ color:#FFCC00; }
.font_brown		{ color:#993333; }
.font_green		{ color:#009900;}
.font_red		{ color:#FF0000; }
.font_derkgreen{ color:#006400; }
.font_purple{ color:#800080; }
.font_pink{ color:#ffc0cb; }
.font_yellowgreen{ color:#9acd32; }
.font_b_skyblue		{color:#6699FF; font-size:103%;}
.font_b_orange		{color:#FF6600; font-size:110%;}
/* ---------- SNS Bottan ----------------------- */
.sns_btn {
    margin: 0 0 15px 10px;
    padding: 0;
	display:block;
}

.sns_btn .google {
    display: inline;
    float: left;
    margin: 0 10px 0 0;
    padding: 0;
    width: 52px;
}
.sns_btn .twitter {
    display: inline;
    float: left;
    margin: 0 10px 0 0;
    padding: 0;
    width: 80px;
}
.sns_btn .facebook {
    display: inline;
    float: left;
    margin: 0 10px 0 0;
    padding: 0;
    width: 86px;
}
	/* HEADER
-----------------------------------------------------------------------------  */
#top_spacer{padding-bottom: 210px;}
	.dropicon{transition: .2s;}
	.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
 transition: .2s;
}
		.ad-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
margin-top: 115px;
	}
@media(max-width:986px) {
 		.ad-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
margin-top: 140px;
	}
.dropmenu{width:100% !important; }
#top_spacer{padding-bottom: 260px !important;}
}
	
#mobile_header{
	padding-bottom: 60px;
}
#mobile_menu{
	height:60px; 
	position: fixed; 
	z-index: 10; 
	background-color: #fff; 
	padding: 10px 5px 0 3px;
	width:100%;
}
#pc_header{
	background-color: rgb(197, 30, 99)
}

.button {
	display: inline-block;
	width: 100%;
	text-align: center;
	text-decoration: none;
	padding:8px;
	outline: none;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button_top {
	display: inline-block;
	width: 85%;
	height: 28px;
	text-align: center;
	text-decoration: none;
	line-height: 30px;
	outline: none;
	font-size:1.4rem;
	margin:1px 0px 0px 40px;
}
.button_top::before,
.button_top::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button_top,
.button_top::before,
.button_top::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.contact {
	border: 1px solid #333;
	background-color: #FFFFFF;
	border-radius: 1px;
	color: #333333; 
}
.contact:hover {
	border:1px solid #333;
	background-color: #DFDFDF;
}
.inquiry {
	border: 1px solid #333;
	background-color: #333;
	border-radius: 1px;
	color: #fff; 
}
.inquiry:hover {
	border:1px solid #333;
	background-color: #4F4F4F;
	color: #fff; 
}
.language{
	font-size:80%;
	padding:0; 
	text-align:center;
	margin:0 auto;!important;
	position: relative;
}
.language li {
  display: -moz-inline-box;!important;
  display: inline-block;!important;
  position: relative;
}
.nav a{padding:0;}

#header {
  transition: .1s;
	width: 100%;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 0px;
	padding-right: 0px;
z-index: 1;
	position: fixed;
	padding-left: 0px;
	border-top:3px solid #000;
	background-color: #fff;
}
#header	h1{
	text-align:center;
	font-size:80%;
	margin:4px;
}

/*  nav
/<em>--------------------------------- */
.navbar {margin-bottom: 0; /</em> 追記 */}
/*  main	    --------------------------------- */
.page_h2{border-bottom:1px solid #000;}
#main h3{border-bottom:1px solid #ccc;margin-right:20px; clear:both;}
#main h4{border-bottom:1px solid #ccc;margin-right:10px; clear:both;}
#main p{line-height:200%;}
.breadlist {
	font-size:80%;
	padding:5px 0 0 0;
}
#main	   {
	background-image: url(../img/common/main-top-bg.gif);
	background-repeat: repeat-x;
	background-position: top;
	padding:1px 0 0 0;
}

.visa_btn{ 
	border: 1px solid #ccc;
	background-color: #FFF
	border-radius: 2px;
	-webkit-transition: all .3s;
	transition: all .3s;
	margin:10px 0;
	padding:10px;
}

 .visa_btn:hover {
	border:1px solid #EEE;
	background-color:#F5F5F5;
	color:#000;
}
.course_btn{ 
	width:30%;
	border: 1px solid #ccc;
	background-color: #701D1F;
	border-radius: 1px;
	color:#FFFFFF;

}
 .course_btn:hover {
	border:1px solid #ccc;
	background-color: #CD0003;
	 color:#fff;
}


.course_info{background-color:#F6F6F6; padding:8px;
border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
}

.course_info  dt{border-bottom:1px solid #ccc; margin:10px 0;}
.course_info  dd,ol,ul{line-height:200%; font-size:100%; display:block ;}
.course_info  p{line-height:200%; }
.course_info  img{padding-left:10px;}
/* カレンダー */

.course-calendar_li{line-height:200%; font-size:95%; display:block ;}
table.course-calendar-layout	{ width:100%; border-collapse:collapse; border-spacing:0px;}
table.course-calendar-layout td{ width:25%; vertical-align: top; text-align: center;}
table.course-calendar			{ background:#FFF; width:95%; border-collapse:collapse; border-spacing:0px; margin:5px auto; 
    -webkit-border-radius: 6px;
       -moz-border-radius: 6px;
         -o-border-radius: 6px;
            border-radius: 6px;
}
table.course-calendar caption	{ text-align:left; font-weight:bold; font-size:12px; padding:0px 0px 3px 0px;}
table.course-calendar th		{ font-size:smaller; width:14%; font-style:normal; background-color: #EEE; padding: 2px; border:1px solid #CCC; text-align:center;}
table.course-calendar th.sun,
table.course-calendar th.sat	{ width:15%;}
table.course-calendar td		{ width:14%; font-size:smaller; text-align:center; padding:2px; border:1px solid #CCC;}
table.course-calendar td.regular	{
	background-color:#09F;
}
b.regular				{ color:#09F;}			
table.course-calendar td.starting	{
	background-color:#0F0;
}
b.starting					{ color:#0F0;}				
table.course-calendar td.lesson	{
	background-color:#FFC;
}
b.lesson					{
	color:#FFC;
}
.calendar_wrapper{	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	padding:10px;
	background-color:#fff;
	border:1px solid #ccc; margin:10px 0 10px 0;}
	
	/*共通カレンダー用*/
table.calendar			{
	width:100%;
	background:#FFF;
	border-collapse:collapse;
	border-spacing:0px;
	margin:0px auto 0px auto;
	border:1px solid #CCC;
}
table.calendar  a:link		{ color:#333;text-decoration:underline;}
table.calendar a:visited	{ color:#333;text-decoration:underline;}
table.calendar  a:hover		{ color:#C88406;text-decoration:underline;}

table.calendar caption	{ text-align:left; font-weight:bold; font-size:10px; padding:0px 0px 3px 0px;}
table.calendar th		{ font-size:smaller; font-style:bold; background-color: #EEE; padding: 2px; border:1px solid #CCC; text-align:center; }
table.calendar td		{ font-size:smaller; text-align:center; padding:2px; border:1px solid #CCC; vertical-align:bottom;}
table.calendar img{margin:0 auto;}
.month table.calendar td {
font-size:80%; 
}
	    .manga_h5{
			font-size:20px;
		text-align:center;
	padding:2px 4px 2px 10px;
	margin:0px 0px 5px 0px;
	color:#FFF;
	clear:both;
	background-color: #F00;
    }  
/* FAQ-----------------------------------------  */

.faq dt {
	font-weight: bold;
	text-decoration:none;
	padding-left: 30px;
}

.faq dt:before {
    content: "\f059";
    position: relative;
    font-family: FontAwesome;
	font-size: 2em;
    margin-right: .5em;
}
.faq dd {
		border:1px dotted #ccc;
	padding:5px 5px 5px 33px;
	line-height:200%;
	text-decoration:none;
	margin: 15px 5px 20px 5px;
}
.faq dd:before {
    content: "\f2be";
    position: relative;
    font-family: FontAwesome;
	font-size: 1.5em;
    margin-right: .5em;
}


#grid {
	width: 680px;
}
#grid li {
	margin-left: 5px;
	margin-bottom:10px;
	float: left;
	list-style: none;
}

/* FOOTER
-----------------------------------------------------------------------------  */

.footer_separate       {
	border-top: #000033 solid 2px;
	margin:0 0 0 0;
}
.footer_separate ul {
padding:7px 0 7px 0;
margin:0 auto 0 auto;
text-align:center;
}
.footer_wrapper{
clear:both;
border-top: #ccc solid 1px;
padding-top:10px;
background:#333;
}

#footer {
margin:0 auto 0 auto;
}
#footer dt {
	text-decoration:none;
	font-size:140%;
}

#footer dd{
	margin:5px 3px 5px 5px;
}
.footer_link a{ color:#fff;text-decoration:none;}
.footer_link a:hover{ color:#fff;text-decoration:underline;}
.footer_link dt{ color:#fff;text-decoration:none; font-size: 1.2em;}
.footer_link dd{padding-left:1em;
text-indent:-1em;}
.footer_link dd:before {
  font-family: FontAwesome;
  content: '\f0da'; /* アイコンのunicode */
	color:#fff;
	padding-right: 5px;
}
 .pawerby{
	 clear:both;
	background-color:#333;
	padding: 10px 0 10px 0;
}
 .pawerby p{margin:0px;font-size:90%;color:#fff; text-align:center;}

.footer_bottom{background-color:#FFF}
 .footer_bottom  a:link		{ color:#333;text-decoration:underline;}
 .footer_bottom  a:visited	{ color:#333;text-decoration:underline;}
 .footer_bottom  a:hover	{ color:#C88406;text-decoration:underline;}
 

/*TOPに戻る
-----------------------------------------------------------------------------  */


#page-top {
position:fixed;
bottom:10px;
right:15px;
font-size:15px;
z-index:10;
}
#page-top a {
filter:alpha(opacity=25);
-moz-opacity:0.25;
opacity:0.25;
background:#333;
text-decoration:none;
color:#fff;
width:100px;
text-align:center;
display:block;
border-radius:5px;
padding:15px 0;
}
#page-top a:hover {
text-decoration:none;
background:#000;
}


/*Googleカレンダーレスポンシブ
-----------------------------------------------------------------------------  */
.cal_wrapper {
  max-width: 800px; /* 最大幅 */
  min-width: 300px; /* 最小幅 */
  margin: 2.0833% auto;
}
 
.googlecal {
  position: relative;
  padding-bottom: 100%; /* 縦横比 */
  height: 0;
  overflow: hidden;
}
.googlecal iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
 
@media only screen and (min-width: 600px) {
  /* 画面幅が600px以上の場合の縦横比の指定 */
  .googlecal {
    padding-bottom: 75%;
  }
}
span.text-icon {
  display: inline-block;
  background: #df002c;
  padding: 1px 4px;
  margin-left: 5px;       /* 先行する文字列との間隔 */
  vertical-align: middle; /* 先行する文字列と上下中央揃え */
  font-size: 0.6em;
  font-weight: bold;
  color: #fff;
  border-radius: 3px;     /* アイコンの角を丸める */
}
	
	 /* Facebook page plugin レスポンシブ
-----------------------------------------------------------------------------  */
        .wrap {
            max-width: 500px;
            margin: 0 auto;
        }
        .page {
            min-height: 250px;
        }
        .fb_iframe_widget,
        .fb_iframe_widget span,
        .fb_iframe_widget iframe[style]{
          width: 100% !important;
	}
	
	 /* ドロップダウンメニュ
-----------------------------------------------------------------------------  */	
.dropmenu{
  *zoom: 1;
  list-style-type: none;
  width: 1024px;
  margin: 0px auto 0px;
  padding: 0;
}
.dropmenu:before, .dropmenu:after{
  content: "";
  display: table;
}
.dropmenu:after{
  clear: both;
}
.dropmenu li{
  position: relative;
  float: left;
  margin: 0;
  padding: 0;
  text-align: center;
	
}
.dropmenu li a{
  display: block;
  margin: 0;
  padding: 8px 0 8px;
  background: rgb(197, 30, 99);
  color: #fff;
  font-size: 1.2em;
  line-height: 1.5;
  text-decoration: none;
}
.dropmenu li ul{
  list-style: none;
  position: absolute;
  z-index: 9999;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
	font-size: 0.9em;
}
.dropmenu li ul li{
width:18em; font-size: 0.9em;
}
.dropmenu li ul li a{
  padding: 8px 10px;
  border-top: 1px solid rgb(150, 30, 99);
background-color: rgba(197, 30, 99,0.7); 
	text-align: left;
}
.dropmenu li:hover > a{
  background: rgb(197, 30, 99);
}
.dropmenu li a:hover{
  background:rgb(197, 30, 99);
}
	#dropmenu li ul li{
  overflow: hidden;
  height: 0;
  transition: .2s;
}
#dropmenu li:hover ul li{
  overflow: visible;
  height: 100%;
}
	
	
	 /* 下部SNSボタン
-----------------------------------------------------------------------------  */		
	
.sns_box {
	border-radius: 10px 10px 0 0 / 10px 10px 0 0;
-webkit-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
-moz-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
text-align: center;
 display: block;
 margin-left: auto;
 margin-right: auto;
  height: 55px;
background-color: #333;
	padding:5px 5px 0 5px;
	width: 225px
}

.sns_button {
  float: left;
  box-shadow: inset 0 0 0 2px #fff;
  border-radius: 100%;
  -moz-transition: all 280ms ease;
  -o-transition: all 280ms ease;
  -webkit-transition: all 280ms ease;
  transition: all 280ms ease;
}
.sns_button a {
  display: table-cell;
  width: 44px;
  height: 44px;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  -moz-transition: all 280ms ease;
  -o-transition: all 280ms ease;
  -webkit-transition: all 280ms ease;
  transition: all 280ms ease;
}
.sns_button i {
  font-size: 20px;
  vertical-align: middle;
}
.sns_button:hover {
  box-shadow: inset 0 0 0 22px #fff;
}

.sns_button + .sns_button {
  margin: 0 0 0 12px;
}

.twitter:hover a {
  color: #D80000;
}

.facebook:hover a {
  color: #3B5999;
}

.google:hover a {
  color: #dd4b39;
}

.instagram:hover a {
  color: #2b5c84;
}

.pocket:hover a {
  color: #EE4056;
}

	 /* 吹き出し
-----------------------------------------------------------------------------  */		
	.balloon{
	display: inline-block;
	color: #000;
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0.2rem;
	background-color: #F3CCCC;
	border-radius:8px;
	padding: 10px 20px;
	position: relative;
	margin-top: 10px;
}
.balloon:before{
	content: "";
	position: absolute;
	bottom: -20px;
	left: 15%;
	border: 10px solid transparent;
	border-top: 10px solid #F3CCCC;
	margin-left:-10px;
}
.casestudy dt{
	line-height: 180%;
	font-size: 1em;
color: #333;/*文字色*/
background: #fffaf4;/*背景色*/
border-left: solid 5px #444;/*左線（実線 太さ 色）*/
	padding-left: 3px;
	margin:5px 0;
}
.casestudy dd{
	padding-left: 3px;
	line-height: 170%;
}
.casestudy dd:before{
font-family: FontAwesome;
		font-size: 1em;
	content: '\f061';
}