@charset "utf-8";


/*全体の設定
---------------------------------------------------------------------------*/
body {
	background: #ffffff; /*d31177*/
	color: #030000;	/*全体の文字色*/
	margin: 0px;
	padding: 0px;
	font: 16px/1.6 "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";

}



h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure{
	margin: 0px;
	padding: 0px;
}
ul{
	padding-left:30px;
	margin-bottom:30px;
}
img {
	border: none;
}
input,textarea,select {
	font-size: 1em;
}
form {
	margin: 0px;
}
table {
	border-collapse:collapse;
	font-size: 100%;
	border-spacing: 0;
}

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #313131;	/*リンクテキストの色*/
	text-decoration: none;
}
a:hover {
	color: #006ddc;	/*マウスオン時の文字色（全体）*/
}


/*コンテナー（HPを囲むブロック）
---------------------------------------------------------------------------*/
#container {
	width: 1024px;	/*コンテナー幅*/
	background-color:#fff;
	border-left:1px solid #ccc;
	border-right: 1px solid #ccc;
	margin: 0 auto; }

.body-bg2 { background-color: #fff; }

/*ヘッダー（サイトロゴが入ったブロック）
---------------------------------------------------------------------------*/
#container {
	padding: 88px 0 0;
}

header {
	height:88px;
	background: #d31177;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	max-width: 1024px;
	z-index: 9999;
	border-bottom: 1px solid #ccc;
}

.hd_logo{
	float:left;
	height: 88px;
	width: auto;
	margin: 0 24px 0 0;
}
.hd_logo img {
	height: 100%;
	width: auto;
}
header h1{
	text-align:left;
	color:#fff;
	font-size:34px;
	line-height:1.2;
	padding:0.5em;
	width: 1024px;
	letter-spacing: -0.5px;
}

header h1 span {
	font-size: 20px;
	display: block;
	color: yellow;
	/*text-shadow: 1px 1px 1px #000, -1px 1px 1px #000, 1px -1px 1px #000, -1px -1px 1px #000;*/
	position: relative;
	top: -4px;
	letter-spacing: -0.5px;
	padding: 0 8px 0 0;
}

.hd_link{
	float:right;
	padding:10px;
	color:#666;
}

#intro_sec {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10px 32px 0;
	margin: 0 0 -40px;
	background: #fff45c;
}

#intro_sec h2 img{
width:40px;
margin-right:10px;
}

.box_teacher {
	position: relative;
}

.face_teacher {
	width: 100%;
	padding: 100% 0 0;
	border-radius: 50%;
	overflow: hidden;
	position: relative;
}

.face_teacher img {
	width: 100%;
	height: auto;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}

.name_teacher {
	color: #e4007f;
	font-weight: bold;
	font-size: 28px;
	line-height: 1.2;
}

.name_teacher span {
	font-size: 16px;
}

.post_teschrt {
	font-weight: bold;
	font-size: 16px;
}

.txt_teacher {
	font-size: 12px;
}

.box_teacher h3,.box_teacher p {
	text-shadow: 2px 2px 0 #fff,
             -2px 2px 0 #fff,
             2px -2px 0 #fff,
             -2px -2px 0 #fff;
text-shadow: 2px 2px 1px #fff,
             -2px 2px 1px #fff,
             2px -2px 1px #fff,
             -2px -2px 1px #fff;
}

.box_teacher_txt {
	position: relative;
	bottom: 80px;
	background: rgba(255,255,255,.75);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 16px;
	margin: 0 0 -80px;
}

.box_teacher01 {
	float: left;
	-webkit-width: calc(50% - 16px);
	-moz-width: calc(50% - 16px);
	width: calc(50% - 16px);
		);
}

.box_teacher02 {
	float: right;
	-webkit-width: calc(50% - 16px);
	-moz-width: calc(50% - 16px);
	width: calc(50% - 16px);
}

.catch02 {

	margin: 0 auto;

	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	line-height:1.2;

}

#intro_sec {
	position: relative;
}

#intro_sec span {
	line-height: 1;
}

#intro_sec h2 img {
	position: relative;
	top: 6px;
}

.txt_type05 {

}


.txt_type06 {
font-size:20px;
}
#intro_sec h2 .catch03 span {
	font-size: 62px;
	line-height: 1.3;
	color: #e4007f ;
	margin: 0 0 -16px;
}

/*メインコンテンツ
---------------------------------------------------------------------------*/

.yajirushi{
	width:69px;
	margin:0 auto;
}

#main {
clear:both;
margin: 0;}

.notice {
	width: 100%;
}

h2 {
	font-size:34px;
	text-shadow: 1px 1px 1px #fff, -1px 1px 1px #fff, 1px -1px 1px #fff, -1px -1px 1px #fff;
	margin-bottom:30px;
	/*margin: 80px 0 40px 40px;
	border-left: 10px solid #2868b2;
	padding-left: 10px;
	font-size: 200%;
	text-align: left;
	line-height: 1.4;
	color: #000;*/
}

h2#shoukai{

	margin: 80px 0 40px 40px;
	border-left: 10px solid #2868b2;
	padding-left: 10px;
	font-size: 200%;
	text-align: left;
	line-height: 1.4;
	color: #030000;
}

.point { color: #eb6100;}

.ttl-1 {
	width: auto;
	padding: 1em 0.5em;
	background: #626161;
	position: relative;
	color: #fff;
	/*font-size: 200%;*/
	line-height: 1.4;
	text-align: center;
	font-weight: bold;
	position: relative;
}

.sankaku {
	width: 0;
	height: 0;
	border-top: 30px solid #626161;
	border-right: 50px solid transparent;
	border-bottom: 30px solid transparent;
	border-left: 50px solid transparent;
	position: absolute;
	bottom: -53px;
	left: 440px;
}

.notice2 {
	padding: 1.3em 2em;
	margin-bottom: 1em;
	font-size: 134%;
	line-height: 1.6;
	font-weight: normal;
}

.notice2 em {
	font-size: 80%;
	font-weight: normal;
}

.notice2 p {
	border-bottom: 1px dashed #999;
}
.d-box {
	/*background-color: #ff6900;*/
	color: #0e335d;
	padding: 0px 6px;
	border-radius: 8px;
	/*margin-right: 10px;*/
	margin-top: 5px;
	margin-bottom:5px;
}

.text-box {
	width: 90%;
	margin: 1em auto;
}

#check {}
#check dt {
	background: url(../img/icon.png) no-repeat 8px 8px;
	background-color: #efefef;
	font-size: 130%;
	font-weight: bold;
	padding-left: 35px;
}
#check dd {
	margin: 1em 0;
	text-align: justify;
}

.order {
	width: 80%;
	margin: 0 auto 0;
}

.profile {
	margin: 10px 0;
	padding: 1.5em;
	border: 1px solid #2868b265b9c1;
}

.profile h3 ,.day_box h3{ line-height: 1.3;font-size:180%;border-left: 5px solid #d31177; padding-left: 15px;}
.profile h4 ,.day_box h4{ border-left: 5px solid #d31177; color:#333; padding-left: 15px;}
.profile p { margin-left: 5px;}



h1{
	text-align:center;
	color:#fff;
	font-size:40px;
	line-height:1.2;
	padding:0.5em;
}

table.day{
	width:980px;
	margin:50px auto 30px;
}
table.day tr{
	border-bottom:1px dotted #fff;

}

table.day tr:nth-last-of-type(1) {
	border-bottom:1px solid #2868b2;
}

table.day th{
	background:#306bac;
	color:#fff;
	padding:16px 32px;
	font-size:20px;
	font-weight:normal;
	line-height: 1.2;
}

.present h2,.present p {
	text-align: center;
}

.present h2 {
	font-size: 40px;
	margin-bottom:5px;
}

.present p {
	font-size: 24px;
}

.present p.note {
	font-size: 16px;
}

.present strong{

background:#ffff00;
padding:0 280px;
display:inline-block;
margin-bottom:10px;
}

.movie {
	position:relative;
  -webkit-width:calc(100% - 64px);
	-moz-width:calc(100% - 64px);
	width:calc(100% - 64px);
  padding-top:56.25%;
	margin: 0 auto 96px;
}

.movie iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}
.img_present {
	-webkit-width: calc(100% - 64px);
	-moz-width: calc(100% - 64px);
	width: calc(100% - 64px);
	margin: 0 auto;
}

.img_present img {
	width: 100%;
	height: auto;
}

.point {
	-webkit-width: calc(100% - 96px);
	-moz-width: calc(100% - 96px);
	width: calc(100% - 96px);
	margin: 0 auto;
	list-style: none;
	padding: 32px 0 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.point_inner {
	width: 100%;
	margin: 0 0 64px;
}

.point_inner h4 {
	padding: 0 0 16px;
	border-bottom: 1px dotted #2868b2;
}

.point_num {
	float: left;
	display: block;
	position: relative;;
	font-size: 88px;
	color: #000;
	font-style: italic;
	padding: 0 32px 16px 56px;
	line-height: 1;
}

.point_icon {
	display: block;
	color: #fff;
	background: #306bac;
	border-radius: 50%;
	position: absolute;
	font-size:16px;
	top: -30px;
	left: 0;
	width: 60px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	font-style: normal;
}
.point_icon::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: 16px solid transparent;
	border-right: 16px solid transparent;
	border-top: 16px solid #306bac;
	transform: rotate(-45deg);
	position: absolute;
	bottom: 0px;
	right: -6px;
}

.point_tit {
	display: block;
	color: #000;
	font-size: 30px;
	line-height: 1.4;
	padding: 0 0 0 16px;
}

.txt_point {
	clear: both;
	color: #000;
	font-size: 16px;
	line-height: 1.8;
	padding: 16px 0 0;

}

.sp_f_size {
	font-size: 24px !important;
}

.profile_img {
	width: 38%;
	height: auto;
	padding: 0 0 32px 32px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.profile_img02 {
	text-align: center;
	margin: 0 0 32px;
}

.profile_img02 img {
	width: 100%;
	max-width: 731px;
}

.profile_img03 {
	width: 25%;
	height: auto;
	padding: 0 0 32px 32px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.review {
	list-style-type: none;
	-webkit-width: calc(100% - 16px);
	-moz-width: calc(100% - 16px);
	width: calc(100% - 16px);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0;
}

.review li {
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 32px;
	border: 1px solid #cccccc;
	margin: 0 0 32px;
}

.review_catch {
	font-size: 30px;
	color: #2868b2;
	line-height: 1.3;
	padding: 0 0 16px;
	border-bottom: 1px dotted #ccc;
	margin: 0 0 16px;
}

.review p {
	line-height: 1.8;
}

.review p strong {
	color: #e4007f;
}

.review_pic {
	width: 150px;
	float: right;
}

.review_pic img {
	width: 100%;
	height: auto;
}

.review_txt {
	-webkit-width: calc(100% - 150px - 32px);
	-moz-width: calc(100% - 150px - 32px);
	width: calc(100% - 150px - 32px);

}

hr.fclear {
	border: none !important;
	background: none !important;
	height: 0px !important;
	padding: 0 !important;
	clear: both !important;
}

.day td{
	padding:16px 32px;
	background:#fff;
	font-size:20px;
	border:1px solid #2868b2;
	line-height: 1.8;
	color:#333;
}


.day_box{
	width:910px;
	margin:20px auto 30px;
	background:#fff;
	border-radius: 5px;        /* CSS3草案 */
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 5px;   /* Firefox用 */
	padding:20px 35px;
	border:1px solid #2868b2;
}

.day_box p{
	line-height:1.4;
	margin-bottom:14px;
	font-size:16px;
}

p{
	line-height:1.6;
	margin-bottom:14px;
}

.bg_orange{
	background:#ff6600;
	font-size:20px;color:#fff;font-weight:normal;text-align:center;
margin-bottom:10px;
line-height:1.2;
padding:10px 15px;
}

h3.green{
	background:#d31177;font-size:36px;color:#fff;font-weight:normal;text-align:center;
margin-bottom:30px;
line-height:1.2;
padding:20px 5px;}

.tit_fix {
	position: absolute;
	padding: 16px 16px 16px 40px;
	background: #fff;
	color: #000;
	font-size: 20px;
	transform: rotate(-5deg);
	left: 16px;
	top: -120px;
	bottom: 0;
	margin: auto 0;
	height: 18px;
}

.sp_pad {
	padding-left: 0px;
	text-align: left;
	padding-top:40px;
}

.tit_fix::before {
	content: "";
	display: block;
	width: 24px;
	height: 36px;
	background: url(../img/img_beginer.png) center center no-repeat;
	background-size: auto 100%;
	position: absolute;
	left: 8px;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.box1 {
	border:1px solid #2868b2;
	padding:10px;
	line-height:1.4;
}



ul.maru{
	list-style:none;
	margin:0 0 20px;
	padding:0;
	font-weight:bold;
	}



.maru li{
	background:url(../img/int.png) no-repeat;
	padding-left:30px;
	margin-bottom:5px !important;
}

.box1 li p{
	margin:0;
	padding:0;
	}


#shosai {
	width: 100%;
	border-top: 1px solid #3b628b;
	border-right: 1px solid #3b628b;
}
#shosai tr {}
#shosai th {
	background-color:#3b628b;
	width: 30%;
	color: #fff;
	font-size: 150%;
	padding: 1em;
	border-bottom: 1px solid #fff;
}
#shosai td {
	width:70%;
	padding: 1em;
	border-bottom: 1px solid #3b628b;
}
#shosai ul { }

.voice {
	padding: 1em;
	margin: 1em auto;
	border: 1px solid #504885;
}
.voice2 {
	overflow-y: auto;
	border: 1px solid #504885;
	padding: 1em;
	margin: 1em auto;
}

#send-table {
	width : 90%;
	margin: 0 auto;
	border-left: 1px solid #dcdcc1;
	border-top: 1px solid #dcdcc1;
	font-size: 100%; }
#send-table th {
	widht: 30%;
	background-color: #DBEDFF;
	text-align: right;
	padding: 10px 20px;
	border-right: 1px solid #dcdcc1;
	border-bottom: 1px solid #dcdcc1; }
#send-table td {
	width: 70%;
	padding: 10px 20px;
	background-color:#fff;
	border-right: 1px solid #dcdcc1;
	border-bottom: 1px solid #dcdcc1; }
#send-table caption {
	background: #296eb7;
	padding: 8px 12px;
	margin: 5px 0;
	color: #fff;
	font-size: 130%;
	font-weight:bold;  }



#main blockquote {
   margin:0 0 2em 0;
   padding:20px;
   background:#f2f2f2;
   -webkit-border-radius:5px;
   -moz-border-radius:5px;
   border-radius:5px;
   position:relative;
}

#main blockquote:after {
    content: '"';
    font-style: italic;
    font-size: 30px;
    font-weight: bold;
    text-align: left;
    line-height: 60px;
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 10px;
    right: 5px;
    color: #999;
}

#main blockquote:before {
    content: '"';
    font-style: italic;
    font-size: 30px;
    font-weight: bold;
    line-height: 40px;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 10px;
    left: 10px;
    color: #999;
}

.youtube {
	width: 853px;
	margin: 0 auto;
	height: auto;
}

#seminar {
	width:100%;
}
#seminar th {
	padding: 5px 15px;
	font-weight: bold;
	text-align:left;
	background-color: #ddd;
}
#seminar td {
	text-align: left;
	padding: 3px 10px;
	border-bottom: 1px dotted #ddd;
}



.bg1 { background: url(../img/step1_bg.jpg) no-repeat;}
.bg2 { background: url(../img/step2_bg.jpg) no-repeat;}



h3.about{
	margin-top:30px;
	background:url("../img/check.png") no-repeat;
	padding-left:40px;
	padding-top:5px;
	font-size:20px;
	border-bottom:1px dotted #2868b2;
	padding-bottom:10px;
	margin-bottom:30px;
}

.about_box{
	padding-left:40px;
	font-size:18px;
}


ul.image{
	list-style:none;
	display:block;
}

ul.image li{
	width:50%;
	float:left;
}


/*ボタン設定
---------------------------------------------------------------------------*/
.btn {
  background: #3498db;
  background-image: -webkit-linear-gradient(top, #3498db, #2980b9);
  background-image: -moz-linear-gradient(top, #3498db, #2980b9);
  background-image: -ms-linear-gradient(top, #3498db, #2980b9);
  background-image: -o-linear-gradient(top, #3498db, #2980b9);
  background-image: linear-gradient(to bottom, #3498db, #2980b9);
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  border-bottom: 5px solid #0e527e;
  color: #ffffff;
  font-size: 200%;
  padding: 10px 20px 10px 20px;
  text-decoration: none;
  margin: 10px 0;
}

.btn:hover {
  background: #3cb0fd;
  background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
  background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
  text-decoration: none;
  color: #ffffff;
}

a.img-link:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}

/*ボタン*/

.submit {
	background-color: #50a834;
	box-shadow: 0 3px 0 #2a6e36;
	text-shadow: 0px -2px #ff6600s;
	position: relative;
	padding: 25px 120px;
  	border-radius: 5px;
	font-size: 180%;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	/*display:block;*/
}

/*.submit:hover {
	background-color: #79d793;
	box-shadow: 0 3px 0 #3cb65c;
}*/

.submit:active, .submit:hover {
	top: 3px;
	box-shadow: none;
	color:#fff;
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	font-size: 85%;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	background: #666666;
	color: #fff;
	position: relative;
	min-width:1024px;
}
footer a { color: #fff;}
.link-top {
	position: absolute;
	top: -25px;
	right: 5%;
}


/*その他
---------------------------------------------------------------------------*/
.clear {
	clear: both;
}
.center { text-align: center;}
.left { text-align: left; }
.right { text-align: right; }

.alignleft{float:left;}
.alignright{float:right;}

/*リンク透明設定*/
a.img-link:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}


#qa { }
#qa dl {}
#qa dt {
	font-size: 120%;
	font-weight: bold;
	background: url(../img/icon-q.jpg) no-repeat 2px 7px;
	padding: 4px 4px 4px 40px;
}
#qa dd {
	margin-bottom: 10px;
	padding: 4px 4px 10px 40px;
	background: url(../img/icon-a.jpg) no-repeat 2px 7px;
	border-bottom: 1px solid #2868b2;
}

.border1 { border:0; border-bottom: 1px dashed #666; margin: 1em 0; }
.border2 { border:0; border-bottom: 3px double #0075a9; margin-bottom: 1em; }

/*フォント設定
---------------------------------------------------------------------------*/
.under { text-decoration: underline; }
.red { color: #ff0000; }
.murasaki { color:#6d308e; }
.ao { color: #1c639d; }
.kiro { color: #FF0; }
.gray { color: #666; }
.siro { color: #fff; }
.bold { font-weight: bold; }
.through { text-decoration: line-through; }

.yellow { background-color: #FF6; }

.justify { text-align: justify;}

.size10 { font-size:10px;}
.size12 { font-size: 12px;}
.size14 { font-size: 14px;}

.size105 { font-size:105%; }
.size110 { font-size:110%; }
.size130 { font-size:130%; }
.size150 { font-size:150%; }
.size200 { font-size:200%; }

.fnt18{font-size:18px;}

.voice_text{
	font-size:14px;
	color:#aaa;
	text-align:right;
}

.bg-gray { background: #f5f5f5; padding:1em; }
.bg-white { background: #fff; padding: 1em; }
.bg-white p { border-bottom: 1px dashed #2868b2; }

.pk {
	text-align: center;
	font-size: 16px;
	padding: 3px;
	color: #fff;
	background-color: #313131;
	margin-top:5px;
	margin-bottom:3px;
}

input { padding: 8px; font-size:140%;}
.send { padding: 10px; font-size:140%;}
select { padding: 8px;}

.tokutei_tbl , .about_tbl {
	-webkit-width:calc(100% - 32px);
	-moz-width:calc(100% - 32px);
	width:calc(100% - 32px);
	margin:20px auto;
}

.tokutei_tbl th ,  .about_tbl th {
	background:#eee;
	text-align:center;
	font-weight:normal;
	border:1px solid #2868b2;
	padding:10px;
}

.tokutei_tbl td ,  .about_tbl td {
	border:1px solid #2868b2;
	padding:10px;
}

ul.half{
	list-style:none;
	width:920px;
	margin:0 auto;
	padding:0;

}

ul.half li{
	float:left;
	max-width:455px;
	margin-right:7px;
	padding:0;


}

ul.half li:nth-child(2){
	margin-right:0;
}

dl.tbl_form dl,dt,dd {
margin: 0;
padding: 0;
}
dl.tbl_form{
background: #eee;

border: 1px solid #2868b2;
border-top: none;
width: 80%;
margin:20px auto;
}
dl.tbl_form dt,dd {
padding: 6px;
}
dl.tbl_form dt {
border-top: 1px solid #2868b2;
clear: left;
float: left;
width: 26%;
text-align:center;
line-height:2.5em;
}
dl.tbl_form dd {
background: #fff;
border-left: 1px solid #2868b2;
border-top: 1px solid #2868b2;
margin-left: 27%;
}

form h3{
	width:80%;
	background:#eee;
	text-align:center;
	margin:0 auto;
	padding:6px;
	font-weight:normal;
}

/* margin
---------------------------------------------------------------------------*/
.mt10 { margin-top: 10px;}
.mt20 { margin-top: 20px;}
.mt30 { margin-top: 30px;}
.mt40 { margin-top: 40px;}

.ml10 { margin-left: 10px; }
.ml20 { margin-left: 20px; }
.ml40 { margin-left: 40px; }
.ml60 { margin-left: 60px; }
.ml75 { margin-left: 75px; }
.ml80 { margin-left: 80px; }

.mr20 { margin-right: 20px; }
.mr400 { margin-right: 400px; }

.mb10 { margin-bottom: 10px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb80 { margin-bottom: 80px; }

.pt20 { padding-top: 20px; }
.pt40 { padding-top: 40px; }

.pb10 { padding-bottom: 10px; }
.pb40 { padding-bottom: 40px; }

.pl10 { padding-left: 10px; }
.pl30 { padding-left: 30px; }
.pl40 { padding-left: 40px; }

.pr10 { padding-right: 10px; }

.pd20{padding:20px;}
.pd30{padding:30px;}

.SPnone{display:block;}
.PCnone{display:none;}

.pc_none {
	display: none !important;
}

@media screen and (max-width: 640px) {
/* スマホ用のCSS */

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.sp_f_size {
	font-size: 18px !important;
}
	.tit_fix {
    height: 64px;
	top: -124px;
	transform: rotate(-5deg);
}

.sp_pad {
	padding-top: 46px;
	padding-left: 0;
    text-align: left;
}


.SPnone{display:none;}
.PCnone{display:block;}
img{

		max-width:100% !important;
	}

img.alignright{
	width:40%;
}

body{
font: 12px/1.6;
}

h2{
	font-size:120%;
}

h1{
	text-align:center;
	color:#fff;
	font-size:145%;
	line-height:1.2;
	padding:5px;
}



h3.green{
	font-size:140%;
padding:16px;}


#container {
	width:100%;
}

header h1 {
	width: 100%;
	font-size: 20px;
}

header h1 span {
	font-size: 16px;
	margin: 0 0 4px;
}




.hd_link{
	display:none;
}
header{
	height:61px;
}

header h1 span {
	display: block;
	position: relative;
	top: 0px;
}

.present {
	-webkit-width:calc(100% - 32px);
	-moz-width:calc(100% - 32px);
	width:calc(100% - 32px);
	margin: 0 auto;

}

.present strong{

background:#ffff00;
padding:0 0px;
width:100%;
text-align:center;
display:inline-block;
margin-bottom:10px;
}

.ttl-1 {
		margin: 0 0 32px;
}

.present h2 {
	font-size: 24px;
	text-align: left;
	/*border-left: 16px solid #2868b2;*/
	padding: 0 0 0 16px;
	margin: 0 0 16px;
}

.present p {
	text-align: left;
	font-size: 16px;
}

.point {
	-webkit-width: calc(100% - 32px);
	-moz-width: calc(100% - 32px);
	width: calc(100% - 32px);
}

.point_tit {
	padding: 0;
}

.point_num {
	display: block;
	float: none;
	text-align: center;
}

.img_present {
	-webkit-width: calc(100% - 32px);
	-moz-width: calc(100% - 32px);
	width: calc(100% - 32px);
}

.point_icon {
	right: 128px;
	left: 0;
	margin: auto;
}

.review_catch {
	font-size: 24px;
}

.review_pic {
	float: none;
	margin: 0 auto;
}

.review_txt {
	width: 100%;
}
	
	
.review li {
	padding: 10px;

}

#container {
	padding: 60px 0 0;
}

table.day ,.day_box{
	-webkit-width:calc(100% - 32px);
	-moz-width:calc(100% - 32px);
	width:calc(100% - 32px);
	margin:10px auto 20px;
	border:1px solid #2868b2;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

table.day th,table.day td,table.day tr,table.day {
	display: block;
	word-break: break-all;
}

table.day th{
	background:#2868b2;
	color:#fff;
	padding:16px;
	font-size:100%;
	font-weight:normal;
}

table.day td{
	padding:16px;
	background:#fff;
	font-size:100%;
	border: none;
}

table.day tr {
	border: none;
}

table.day tr:nth-last-of-type(1) {
	border: none;
}

table.day td img {
	float: none;
	display: block;
	margin: 0 auto 16px;
	width: 100%;
	max-width: 444px;
}


footer{
	width:100%;
	min-width:100%;
}

.sankaku {
	display:none;
}

.notice2 {
	padding: 1.3em 1em;
	margin-bottom: 1em;
	font-size: 120%;
	line-height: 1.6;
	font-weight: normal;
}

.day_box{
}

.profile ,.day_box {
	padding:1em 0.5em;
}

.profile h3 ,.day_box h3{ line-height: 1.3;font-size:120%;border-left: 5px solid #2868b2; padding-left: 15px;}
.profile h4 ,.day_box h4{ border-left: 5px solid #2868b2; color:#333; padding-left: 15px;}

.submit {
	-webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
	padding: 25px;
	min-width:60%;
	font-size: 180%;
}

.about_box{
	padding-left:0px;
}
.size150 { font-size:120%; }
.size130 { font-size:105%; }
.size200 { font-size:140%; }

ul.half{
	list-style:none;
	width:100%;
	margin:0 auto;
	padding:0;


}

ul.half li{
	float:none;
	width:100%;
	margin:0 auto 5px;



}

ul.half li:nth-child(2){
	margin:0 auto 5px;
}

header {
	height:61px;
	padding:0;

}

.hd_logo {
	height: 60px;
}

#intro_sec {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 16px 0;
}


.box_teacher {
	position: relative;
	margin: 0 0 32px;
}





.face_teacher {
	width: 100%;
	padding: 100% 0 0;
	border-radius: 50%;
	overflow: hidden;
	position: relative;
}

.face_teacher img {
	width: 100%;
	height: auto;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}

.name_teacher {
	color: #e4007f;
	font-weight: bold;
	font-size: 28px;
	line-height: 1.2;
}

.name_teacher span {
	font-size: 16px;
}

.post_teschrt {
	font-weight: bold;
	font-size: 16px;
}

.txt_teacher {
	font-size: 16px;
	line-height: 1.8;
}

.box_teacher h3,.box_teacher p {
	text-shadow: 2px 2px 0 #fff,
             -2px 2px 0 #fff,
             2px -2px 0 #fff,
             -2px -2px 0 #fff;
text-shadow: 2px 2px 1px #fff,
             -2px 2px 1px #fff,
             2px -2px 1px #fff,
             -2px -2px 1px #fff;
}


.box_teacher_txt {
	position: relative;
	bottom: 80px;
	background: rgba(255,255,255,.75);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 16px;
}

.box_teacher01 {
	float: none;
	width: 100%;
}

.box_teacher02 {
	float: none;
	width: 100%;
}



#intro_sec {
	position: relative;
}

#intro_sec h2 {
	margin: 0 0 16px;
}


#intro_sec h2 span.txt_type01,
#intro_sec h2 span.txt_type02,
#intro_sec h2 span.txt_type03,
#intro_sec h2 span.txt_type04 {
	font-size: 24px;
	line-height: 1.3;
}


#intro_sec h2 span.txt_type05,
#intro_sec h2 span.txt_type06,
#intro_sec h2 span.txt_type07 {
	font-size: 32px;
	line-height:1.2;
}

#intro_sec h2 .catch03 span {
	font-size: 40px;
	line-height:1.2;
}



dl.tbl_form dl,dt,dd {
margin: 0;
padding: 0;
}

dl.tbl_form{
background: #eee;
border: 1px solid #2868b2;
width: 100%;
}
dl.tbl_form dt,dl.tbl_form dd {
padding: 6px;
}

dl.tbl_form dd {
background: #fff;
}
input{
max-width:99%;
}
textarea{
max-width:99%;
}

blockquote { width:50%; margin:0 auto; }

dl.tbl_form{
border-top: none;
width: 90%;
}
dl.tbl_form dt {
border-top: 1px solid #2868b2;
clear: none;
float: none;
width: 100%;
display:block;
}

dl.tbl_form dd {
border-left: none;
border-top: none;
margin-left: 0%;
float:none;
display:block;
text-align:center;
}

.sp_none {
	display: none !important;
}

.pc_none{
	display: block !important;
}

#intro_sec h2 img {
    width: 28px;
		position: relative;
		top: 4px;
}



}/*スマホ対応おわり*/

@media screen and (max-width: 560px) {
#intro_sec {
	padding: 0px 16px 0;
}


}

@media screen and (max-width: 540px) {
	header {
		height:91px;
		padding:0;

	}

	.hd_logo {
		height: 90px;
	}

}

@media screen and (max-width: 539px) {
#intro_sec {
	padding: 20px 16px 0;
}
}

@media screen and (max-width: 470px) {
.none_470 {
	display: none;
}
}

@media screen and (max-width: 420px) {
#intro_sec {
	padding: 20px 16px 0;
}
#intro_sec h2 span.txt_type05,
#intro_sec h2 span.txt_type06,
#intro_sec h2 span.txt_type07 {
	font-size: 28px;
}
}
@media screen and (max-width: 390px) {
#intro_sec h2 span.txt_type01,
#intro_sec h2 span.txt_type02,
#intro_sec h2 span.txt_type03,
#intro_sec h2 span.txt_type04 {
	font-size: 20px;
}
}

@media screen and (max-width: 350px) {
#container {
	    padding: 130px 0 0;
}
#intro_sec h2 span.txt_type01,
#intro_sec h2 span.txt_type02,
#intro_sec h2 span.txt_type03,
#intro_sec h2 span.txt_type04 {
	font-size: 16px;
}

#intro_sec h2 img {
    width: 24px;
		position: relative;
		top: 4px;
}


	header {
		height:131px;
		padding:0;

	}

	.hd_logo {
		height: 130px;
	}

}

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

	#container {
		    padding: 90px 0 0;
	}
	header {
		height:90px;
		padding:0;

	}

	.hd_logo {
		height: 60px;
	}

}

.txt_red {
	color: #d31177 !important;
}

.txt_blue {
	color: #2868b2 !important;
}

.txt_pink {
	color: #e4007f !important;
}

.txt_black {
	color: #030000;
}

hr.padb48 {
	padding-bottom: 48px !important;
}
