@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

body {
	font: 100%/1.4 'Noto Sans JP', Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	margin: 0;
	padding: 0;
	color: #282828;
}

/* ~~ エレメント / タグセレクター ~~ */
ul, ol, dl {
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
	box-sizing:border-box;
	margin-top: 0;
	padding-right: 0;
	padding-left: 0;
}
h2.tate{/*通常見出し*/
	position:relative;
	font-size:240%;
	display:block;
	text-align:center;
	padding:1em 0 0;
	margin-bottom:0;
	color:#2988eb;
	}
h2.tate::before{
	content:"";
	position:absolute;
	top:-0.9em;
	left:0;
	right:0;
	margin:0 auto;
	display:block;
	width:2px;
	height:1em;
	background-color:#717d80;
	margin:15px auto 0;
	}
h2.tate + p.sml{
	display:block;
	text-align:center;
	font-size:small;
	color:#2988eb;
	margin-bottom:2em;
	}
h2.twtr{/*ツイッター用*/
	text-align:center;
	font-size: xx-large;
	color:#2988eb;
	padding-bottom:0.7em;
	border-bottom:1px solid #2988eb;
	margin-bottom:10px;
	}
h2.twtr span{
	padding-left:1.3em;
	background-image:url(../img/icon_tw.gif);
	background-size:36px 36px;
	background-position:left center;
	background-repeat:no-repeat;
	}
h2.adm{
	font-size:xx-large;
	display:block;
	text-align:center;
	margin:1.5em auto 1.5em;
	}
h2.adm::after{
	content:"";
	display:block;
	width:2em;
	height:2px;
	background-color:#2988eb;
	margin:15px auto 0;
	}
h3{
	font-size:x-large;
	display:block;
	background-color:#2988eb;
	color:#fff;
	text-align:center;
	padding:10px 0;
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
	}
h2.sub,
h3.sub{
	margin-top:2em;
	}
h4.icon{
	text-align:center;
	font-size:xx-large;
	color:#2988eb;
	border-top:1px solid #2988eb;
	border-bottom:1px solid #2988eb;
	}
h4.icon span{
	position:relative;
	}
h4.icon span::before{
	content:"";
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto 0;
	z-index:10;
	background-position:center;
	background-repeat:no-repeat;
	}
h4.icon span.ic1{
	padding-left:50px;
	}
h4.icon span.ic1::before{
	width:46px;
	height:46px;
	background-image:url(../img/midasi01.png);
	background-size:46px 46px;
	}
h4.icon span.ic2{
	padding-left:70px;
	}
h4.icon span.ic2::before{
	width:64px;
	height:54px;
	background-image:url(../img/midasi02.png);
	background-size:64px 54px;
	}
a img {
	border: none;
}

a:link {
	color:#282828;
	text-decoration: none;
}
a:visited {
	color:#282828;
}
a:hover, a:active, a:focus {
	color:#2988eb;
}
span{
	display:inline-block;
	}
span.bold{
	font-weight:bold;
	}
span.kai{
	display: none;
	}
div{
	box-sizing:border-box;
	}
p.ten,
span.ten,
p.scor,
p.kome{
	display:block;
	position:relative;
	box-sizing:border-box;
	padding-left:1em;
	}
span.ten::before,
p.ten::before{
	content:"・";
	position:absolute;
	top:0;
	left:0;
	display:block;
	}
p.scor::before{
	content:"：";
	position:absolute;
	top:0;
	left:0;
	display:block;
	}
p.kome::before{
	content:"※";
	position:absolute;
	top:0;
	left:0;
	display:block;
	}
@media screen and (max-width: 1280px) {
}

@media screen and (max-width: 768px) {
h2.tate{/*通常見出し*/
	font-size:200%;
	}
h2.adm{
	font-size:x-large;
	margin:1.5em auto 1.5em;
	}
h3{
	padding:5px 0;
	font-size:x-large;
	}
h2.sub,
h3.sub{
	margin-top:1em;
	}
h4.icon{
	font-size:x-large;
	}
	
span.kai{
	display: inline;
	}
}
@media screen and (max-width: 480px) {
h2.tate{/*通常見出し*/
	font-size:180%;
	}
h3{
	font-size:large;
	}
h4.icon{
	font-size:large;
	}
}


/*よく使うボタン_小*/
a.bluebtn{
  color: #2988eb;
	}
.bluebtn {
  display: inline-block;
  width: 100%;
  height:53px;
  text-align: center;
  text-decoration: none;
  outline: none;
  position: relative;
  z-index: 2;
  background-color: #fff;
  border: 2px solid #2988eb;
  color: #2988eb;
  line-height: 50px;
  overflow: hidden;
}
.bluebtn::before,
.bluebtn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.bluebtn,
.bluebtn::before,
.bluebtn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.bluebtn:hover {
  color: #fff;
}
.bluebtn::after {
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
}
.bluebtn:hover::after {
  left: 0;
  background-color: #2988eb;
}
.bluebtn::before{
    right: 15px;
	top:0;
	bottom:0;
	margin:auto 0;
    width: 12px;
    height: 12px;
    border-top: 1px solid #2988eb;
    border-right: 1px solid #2988eb;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	z-index: 10;
}
.bluebtn:hover::before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 480px) {
}

/*よく使うボタン_大*/
.post_arc{/*記事ページ_前の記事・次の記事の上のボタン配置用*/
	display:block;
	border-top: 1px dotted #b4b4b4;
	padding:2em 0 1.5em;
	}
.post_sml{
	display:block;
	}
a.redbtn,
div.redbtn,
.post_arc a{
	display:block;
	position:relative;
	width:90%;
	max-width:480px;
	margin:0 auto;
	padding:0;
	color:#2988eb;
	text-align:center;
	font-weight:bold;
	background-color:#fff;
	border: 1px solid #2988eb;
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
	outline: none;
	overflow:hidden;
}
a.redbtn.brown{
	color:#c9aa82;
	border: 1px solid #c9aa82;
	}
.post_arc a,
div.redbtn.big,
a.redbtn.big{
	padding:1em 0 1em;
	height:60px;
	}
div.redbtn.sml,
a.redbtn.sml{
	padding:0.4em 0 1em;
	height:44px;
	}
a.redbtn span,
div.redbtn span,
.post_arc a span{
	position: absolute;
	display: block;
	width:100%;
	text-align:center;
	margin:auto;
	z-index: 2;
	color:#2988eb;
	}
a.redbtn.brown span{
	color:#c9aa82;
	}
div.redbtn:hover,
div.redbtn:focus,
div.redbtn:hover span,
div.redbtn:focus span,
a.redbtn:hover,
a.redbtn:focus,
a.redbtn:hover span,
a.redbtn:focus span,
.post_arc a:hover,
.post_arc a:focus,
.post_arc a:hover span,
.post_arc a:focus span{
	z-index: 2;
	color:#fff;
	}
div.redbtn::after,
a.redbtn::after,
.post_arc a::after {
  position: absolute;
  z-index: 1;
  display: block;
  content: '';
}
div.redbtn::before,
a.redbtn::before,
.post_arc a::before{
content: "";
position:absolute;
  z-index: 2;
top: 0;
bottom: 3px;
right:10px;
margin: auto;
vertical-align: middle;
width: 12px;
height: 12px;
border-top: 2px solid #2988eb;
border-right: 2px solid #2988eb;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
a.redbtn.brown::before{
border-top: 2px solid #c9aa82;
border-right: 2px solid #c9aa82;
	}
div.redbtn.guru::before,
a.redbtn.guru::before{
font-family: "icomoon";
content: "\e984";
position:absolute;
  z-index: 2;
  line-height:0.8;
top: 0;
bottom: 0;
right:10px;
margin: auto;
width: 1em;
border-top: none;
border-right: none;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
div.redbtn,
div.redbtn::before,
div.redbtn::after,
a.redbtn,
a.redbtn::before,
a.redbtn::after,
.post_arc a,
.post_arc a::before,
.post_arc a::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
div.redbtn::after,
a.redbtn::after,
.post_arc a::after {
  background-color: #fff;
  top:0;
  left: -100%;
  width: 100%;
  height: 200%;
}
div.redbtn:hover::after,
div.redbtn:focus::after,
a.redbtn:hover::after,

a.redbtn:focus::after,
.post_arc a:hover::after,
.post_arc a:focus::after {
  left: 0;
  background-color: #2988eb;
}
a.redbtn.brown:hover::after,
a.redbtn.brown:focus::after{
  background-color: #c9aa82;
	}
div.redbtn:hover::before,
div.redbtn:focus::before,
a.redbtn:hover::before,
a.redbtn:focus::before,
.post_arc a:hover::before,
.post_arc a:focus::before {
border-top: 2px solid #fff;
border-right: 2px solid #fff;
}
div.redbtn.guru:hover::before,
div.redbtn.guru:focus::before,
a.redbtn.guru:hover::before,
a.redbtn.guru:focus::before{
border-top: none;
border-right: none;
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}

/* ~~ コンテナ~~ */
.bg1 {
	background-image:url(../img/bg1.gif);
	background-repeat:repeat;
	width: 100%;
	padding:20px 0;
	margin: 90px auto;
	line-height:1.7;
	}
.container {
	width: 100%;
	max-width:1050px;
	min-width: 10px;
	margin: 0 auto;
	box-sizing:border-box;
	padding:15px;
	font-size: medium;
	line-height:1.7;
}
.container.cont2 {
	width: 96%;
	max-width:1020px;
	padding:30px;
	margin:40px auto;
	border-radius: 20px;		/* CSS3草案 */
	-webkit-border-radius: 20px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 20px;	/* Firefox用 */
	background-color:#fff;
	}
.content {
	padding: 10px 0;
}
.content p{
	font-size: medium;
}
.content ul, .content ol {
	box-sizing:border-box;
	padding: 0;
}
img.photo{
	display:block;
	width: 100%;
	max-width:1920px;/*1260*/
	min-width: 10px;
	height:auto;
	margin: 80px auto 120px;
	}

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

@media screen and (max-width: 768px) {
.bg1 {
	margin: 40px auto;
	}
.container.cont2 {
	padding:15px;
	margin:20px auto;
	font-size: small;
	}
.content p{
	font-size: small;
	}
img.photo{
	margin: 30px auto 60px;
	}
}
@media screen and (max-width: 480px) {
}



/*コンテンツ枠分割*/
.col0{
	width:100%;
	}
.col0.twt{
	margin:0 auto 90px;
	max-width:600px;
	height:280px;
	}
.col0.twt .SandboxRoot.env-bp-970 .timeline-Tweet-text {
    font-size: medium;
	}
.half{
	width:100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;   
	}
.half .col2{
	width:49%;
	}
.half .col3_1{
	width:65%;
	}
.half .col3_2{
	width:33%;
	}
.half div img{
	display:block;
	width:100%;
	height:auto;
	}
.col0.sen,
.half div.sen{
	border:1px solid #dcdcdc;
	}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 768px) {
.half{
	flex-direction: column;
	justify-content: center;   
	}
.half .col2,
.half .col3_1,
.half .col3_2{
	width:100%;
	}
.half .last{
	margin-top:1em;
	}
.col0.twt{
	margin:0 auto 40px;
	}
}
@media screen and (max-width: 480px) {
}

/*index_3つの特長*/
.half.feat{
	flex-wrap: wrap;
	}
.half.feat .col2{
	width:50%;
	flex-grow: 2;
	box-sizing:border-box;
	padding:30px 0;
	position:relative;
	display: flex; 
	}
.half.feat .col2.bgon{
	background-image:url(../img/bg2.gif);
	background-repeat:repeat;
	background-position:top left;
	background-size:8px 8px;
	}
.half.feat .col2.bgon div{
	display:block;
	width:100%;
	max-width:540px;
	margin:0;
	overflow:hidden;
	}
.half.feat .col2 .box{
	display:block;
	width:100%;
	max-width:450px;
	line-height:1.8em;
	}
.half.feat .col2:nth-child(odd) .box{/*奇数*/
	margin-right:60px;
	margin-left:10px;
	}
.half.feat .col2:nth-child(even) .box{/*偶数*/
	margin-left:60px;
	margin-right:10px;
	}
.half.feat .col2 .box h4{
	position:relative;
	color: #2988eb;
	font-size:x-large;
	padding-left:100px;
	line-height:1.5;
	}
.half.feat .col2 .box h4.line1{
	margin-top:0.8em;
	margin-bottom:1.8em;
	}
.half.feat .col2 .box h4::before{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto 0;
	width:90px;
	height:90px;
	background-size:90px 90px;
	background-position:center;
	background-repeat:no-repeat;
	}
.half.feat .col2 .box h4.n01::before{
	background-image:url(../img/title1.gif);
	}
.half.feat .col2 .box h4.n02::before{
	background-image:url(../img/title2.gif);
	}
.half.feat .col2 .box h4.n03::before{
	background-image:url(../img/title3.gif);
	}
.half.feat .col2 .box h4 span.mark{
	display: inline;
	background:linear-gradient(#fff 60%, #fff100 0%);
	}
.half.feat .col2.bgon img{
	display:block;
	width:100%;
	max-width:540px;
	min-width:10px;
	height:auto;
	}
.half.feat .col2:nth-child(odd){/*奇数*/
	justify-content: flex-end;
	}
.half.feat .col2:nth-child(odd).bgon div{/*奇数*/
	margin-right:-30px;
	}
.half.feat .col2:nth-child(even){/*偶数*/
	justify-content: flex-start;
	}
.half.feat .col2:nth-child(even).bgon div{/*偶数*/
	margin-left:-30px;
	}
@media screen and (max-width: 768px) {
.half.feat .col2{
	width:100%;
	}
.half.feat .col2:nth-child(1){
	order: 2;
	}
.half.feat .col2:nth-child(2){
	order: 1;
	}
.half.feat .col2:nth-child(3){
	order: 3;
	}
.half.feat .col2:nth-child(4){
	order: 4;
	}
.half.feat .col2:nth-child(5){
	order: 6;
	}
.half.feat .col2:nth-child(6){
	order: 5;
	}
.half.feat .col2:nth-child(odd).bgon div{/*奇数*/
	margin-right:0;
	padding-left:30px;
	}
.half.feat .col2:nth-child(even).bgon div{/*偶数*/
	margin-left:0;
	padding-right:30px;
	}
.half.feat .col2 .box{
	font-size:small;
	}
.half.feat .col2:nth-child(odd) .box,
.half.feat .col2:nth-child(even) .box{
	width:90%;
	margin-left:auto;
	margin-right:auto;
	margin:0 auto;
	}
}
@media screen and (max-width: 480px) {
.half.feat .col2 .box h4{
	font-size:150%;
	}
}

/*topimg*/
.topimg{
	position:relative;
	display:block;
	width:100%;
	margin:0 auto 0;
	padding: 79px 0 0;
	z-index:1;
	}
.topimg + .topimg{
	padding: 0;
	margin:0 auto 90px;
	}
.topimg .img{
    background-image: url(../img/bg2.gif);
    background-repeat: repeat;
    background-position: top left;
    background-size: 8px 8px;
	}
.topimg .img img.ban{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	z-index:100;
	display:block;
	width:100%;
	max-width:441px;
	height:auto;
	}
.topimg .img .pc{
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center; 
	}
.topimg .img .pc div{
	display:block;
	width:100%;
	max-width:630px;
	height:550px;
	margin:0;
	background-position:center;
	background-size: cover;
	background-repeat:no-repeat;
	}
.topimg .img .pc div:nth-child(1){
	background-image:url(../img/main_pc1.jpg);
	}
.topimg .img .pc div:nth-child(2){
	background-image:url(../img/main_pc2.jpg);
	}
.topimg .img img.sp{
	display:none;
	width:100%;
	height:auto;
	margin:0 auto;
	}
.topimg .bnr{
	width:90%;
	max-width:1018px;
	margin:-90px auto 0;
	z-index:10;
	padding:10px;
	background-color:rgba(255,255,255,0.8);
	display: flex;
	flex-direction: row;
	justify-content:center;
	}
.topimg .bnr a{
	display:block;
	background-color:#fff;
	}
.topimg .bnr a:hover,
.topimg .bnr a:focus{
	}
.topimg .bnr a img{
	display:block;
	width:100%;
	max-width:492px;
	height:auto;
	margin:0 auto;
	border:1px solid #fff;
	opacity:1;
	}
.topimg .bnr a img:hover,
.topimg .bnr a img:focus{
	opacity:0.5;
	}
.topimg .bnr a:nth-child(1){
	margin-right:5px;
	}
.topimg .bnr a:nth-child(2){
	margin-left:5px;
	}
@media screen and (max-width: 910px) {
	}
@media screen and (max-width: 768px) {
.topimg{
	margin:0 auto 0;
	padding: 0 0 0;
	}
.topimg + .topimg{
	margin:0 auto 30px;
	}
.topimg .img{
	background-image: none;
	height:auto;
	}
.topimg .img img.ban{
	display:none;
	}
.topimg .img .pc{
	display:none;
	}
.topimg .img img.sp{
	display: block;
	}
.topimg .bnr{
	margin:0 auto 0;
	max-width:518px;
	flex-direction: column;
	}
.topimg .bnr a:nth-child(1){
	margin-right:0;
	margin-bottom:10px;
	}
.topimg .bnr a:nth-child(2){
	margin-left:0;
	}
}
@media screen and (max-width: 480px) {
}

/*index_時間割例*/
.bg1.jikan{
	}
.bg1.jikan .container.cont2{
	position:relative;
	margin-bottom:80px;
	}
.bg1.jikan h5{
	text-align:center;
	font-size:xx-large;
	margin-bottom:0.5em;
	}
.bg1.jikan p.fkds{
	position:relative;
	display:block;
	width:90%;
	max-width:380px;
	margin:-50px auto 15px;
	padding:2px 0;
	background-color:#2988eb;
	color:#fff;
	text-align:center;
	font-size:130%;
	font-weight:bold;
	}
.bg1.jikan p.fkds::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  border-bottom: 8px solid transparent;
  border-left: 8px solid #2988eb;
  border-right: 8px solid transparent;
  border-top: 8px solid #2988eb;
	}
.bg1.jikan .container.cont2 img{
	display:block;
	width:100%;
	max-width:960px;
	height:auto;
	margin:0 auto;
	}
@media screen and (max-width: 768px) {
.bg1.jikan .container.cont2{
	margin-bottom:40px;
	}
.bg1.jikan p.fkds{
	font-size: medium;
	margin:-25px auto 15px;
	}
.bg1.jikan h5{
	font-size:x-large;
	}
}
@media screen and (max-width: 480px) {
.bg1.jikan p.fkds{
	font-size:100%;
	}
}



/*index_ムービー*/
.half.movie .col2{
	width:47%;
	}
.half.movie p{
	text-align:center;
	}
@media screen and (max-width: 768px) {
.half.movie .col2{
	width:100%;
	}
}
@media screen and (max-width: 480px) {
}

/*index_神村概要*/
.half.kamimura .col2 p{
	}
.half.kamimura .col2 img{
	display:block;
	width:100%;
	max-width:480px;
	height:auto;
	margin:0 auto;
	}
.cont2 h4{
	font-size:xx-large;
	text-align:center;
	height:72px;
	line-height:72px;
	margin-bottom:0.5em;
	}
.cont2 h4 span{
	background-image: url(../img/logo.gif);
	background-size:47px 72px;
	background-position:left center;
	background-repeat:no-repeat;
	box-sizing:border-box;
	padding-left:55px;
	height:72px;
	}
.cont2 .shozai{
	display: flex;
	flex-direction: row;
	}
.cont2 .shozai p{
	margin:0;
	}
.cont2 .shozai p.ten{
	width:5em;
	flex-grow: 0;
	flex-shrink: 0; 
	}
.cont2 .shozai p.ten::before{
	color:#2988eb;
	}
.cont2 .shozai p.ten + p.score{
	flex-grow: 2;
	flex-shrink: 2;
	}
.cont2 .shozai + .bluebtn{
	margin-top:1em;
		}
@media screen and (max-width: 480px) {
.cont2 h4{
	font-size:x-large;
	height:40px;
	line-height:40px;
	}
.cont2 h4 span{
	background-size:26px 40px;
	height:40px;
	padding-left:30px;
	}
}

/*index_アクセス*/
.half.acc{
	margin-bottom:90px;
	}
.half.acc .acc01{
	flex-grow: 2;
	flex-shrink: 2;
	}
.half.acc .acc02{
	width:330px;
	flex-grow: 0;
	flex-shrink: 0;
	margin-left:2em;
	}
.half.acc .acc02 img{
	display:block;
	width:100%;
	max-width:330px;
	min-width:10px;
	height:auto;
	margin:0 auto 1em;
	}
@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 768px) {
.half.acc{
	margin-bottom:40px;
	}
.half.acc{
	flex-direction: column-reverse;
	}
.half.acc .acc02{
	width:100%;
	margin-left:0;
	margin:0 auto;
	}
}
@media screen and (max-width: 480px) {
}

/*講師紹介*/
.teach_all{
	position:relative;
	padding:30px;
	}
.teach_box{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	border:2px solid #2988eb;
	min-height:360px;
	}
.teach_box .img{
	position:absolute;
	top:0;
	left:0;
	margin:0;
	display:block;
	flex-grow: 0;
	flex-shrink: 0; 
	}
.teach_box .img img{
	display:block;
	width:300px;
	height:auto;
	margin:0;
	}
.teach_box .txt{
	flex-grow: 2;
	padding:60px 40px 60px 300px;
	line-height:1.8;
	width:100%;
	}
.teach_box .txt p:first-child{
	margin-bottom:0;
	font-size: medium;
	text-align:left;
	}
.teach_box .txt h4{
	font-size:x-large;
	margin-bottom:0.5em;
	text-align:left;
	}
.teach_box .txt p:last-child{
	margin-bottom:0;
	}
.teach_box .txt a{
	color:#2988eb;
	position:relative;
	box-sizing:border-box;
	padding-right:0.5em;
	}
.teach_box .txt a:hover,
.teach_box .txt a:focus{
	text-decoration:underline;
	}
.teach_box .txt a::after{
/*	content:"";   */
	position:absolute;
	display:block;
	top:0;
	bottom:0;
	right:0;
	margin:auto 0;
    width: 6px;
    height: 6px;
    border-top: 2px solid #2988eb;
    border-right: 2px solid #2988eb;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	}
.teach_box .txt a + p{
	margin-top:1em;
	}
@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 768px) {
.teach_box{
	flex-direction: column;
	justify-content: center;
	}
.teach_box .img{
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:0 auto;
	}
.teach_box .img img{
	margin:0 auto;
	}
.teach_box .txt{
	padding:340px 15px 30px 15px;
	}
.teach_box .txt p:first-child{
	text-align:center;
	}
.teach_box .txt h4{
	text-align:center;
	}
.teach_box .txt p{
	font-size:small;
	}
}
@media screen and (max-width: 480px) {
.teach_all{
	padding:20px;
	}
.teach_box .img img{
	width:200px;
	}
.teach_box .txt{
	padding:230px 15px 30px 15px;
	}
}

/*見学会・無料レッスン*/
.obs_box{
	border-top:1px solid #dcdcdc;
	}
.obs_box .obs_left p{
	margin:0;
	line-height:1.8em;
	font-size:medium;
	}
.obs_box .obs_left{
	border-bottom:1px solid #dcdcdc;
	display: flex;
	flex-direction: row; 
	justify-content: space-between;
	align-items: flex-start;
	padding:0.8em 0;
	}
.obs_box .obs_left .title{
	background-color:#2988eb;
	color:#fff;
	text-align:center;
	margin-right:1em;
	width:6em;
	flex-grow: 0;
	flex-shrink: 0; 
	}
.obs_box .obs_left .txt{
	flex-grow: 2; 
	}
.half iframe{
	display:block;
	margin:0;
	}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 768px) {
.obs_box .obs_left p{
	font-size: small;
	}
.half iframe{
	height:300px;
	}
}
@media screen and (max-width: 480px) {
}

/*入学のご案内_ボタン*/
.adm_link1{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	position:relative;
	overflow:hidden;
	width:100%;
	max-width:960px;
	height:120px;
	margin:0 auto 2em;
	color: #d9ecff;
	border: 1px solid #2988eb;
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
	}
.adm_link1:hover,
.adm_link1:focus{
	background-color: #d9ecff;
	}
.adm_link1::after{
	content:"";
position:absolute;
  z-index: 2;
top: 0;
bottom: 3px;
right:20px;
margin: auto;
vertical-align: middle;
width: 24px;
height: 24px;
border-top: 3px solid #2988eb;
border-right: 3px solid #2988eb;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
	}
.adm_link1 span.red{
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-content: center; 
	background-color:#2988eb;
	color:#fff;
	font-size:xx-large;
	font-weight:bold;
	width:30%;
	height:100%;
	margin:0;
	box-sizing:border-box;
	padding:0 5px 0 10px;
	}
.adm_link1 span.white{
	margin:auto 2em;
	display: inline-block;
	width:70%;
	line-height:none;
	color: #282828;
	}
.adm_link1 span.white span{
	position:relative;
	display:block;
	width:100%;
	padding-left:1em;
	text-align: left;
	}
.adm_link1 span.white span::before{
	content:"・";
	color:#2988eb;
	position:absolute;
	top:0;
	left:0;
	width:1em;
	height:100%;
	}
@media screen and (max-width: 909px) {
.adm_link1 span.red{
	font-size:x-large;
}
.adm_link1 span.white{
	margin:auto 2em auto 1em;
	}
}
@media screen and (max-width: 640px) {
.adm_link1{
	margin:0 auto 1em;
	}
.adm_link1 span.red{
	width:45%;
	font-size:x-large;
}
.adm_link1 span.white{
	width:55%;
	margin:auto 2.5em auto 1em;
	font-size:small;
	line-height:1.75;
	}
}
@media screen and (max-width: 480px) {
.adm_link1::after{
right:15px;
	}
.adm_link1 span.red{
	font-size:large;
}
.adm_link1 span.white{
	margin:auto 2.5em auto 0.5em;
	line-height:1.5;
	}
}
/*入学案内*/
.adm_que{/*最初の説明*/
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-content: center;
	width:100%;
	max-width:760px;
	height:auto;
	min-height:180px;
	margin:0 auto;
	padding:2em;
	text-align:center;
	background-image:url(../img/adm_bg1.gif),
					 url(../img/adm_bg2.gif);
	background-repeat:no-repeat,
					  no-repeat;
	background-position:top left,
						right bottom;
	background-size:740px 170px,740px 170px;
}
.adm_que span{
	display:inline-block;
	}
.adm_que img.check{
	display:inline-block;
	width:40px;
	height:30px;
	}
.adm_que p{
	display:block;
	vertical-align:middle;
	margin-bottom:0;
	width:100%;
	}
.adm_que p.under{
	padding-bottom:0.5em;
	border-bottom:1px solid #b4b4b4;
	}
.adm_que h5{
	font-size:xx-large;
	color:#2988eb;
	margin:0.5em 0 0;
	}
.adm_que h5 span{
	font-size:large;
	font-weight: normal;
	color:#282828;
	}
.adm_que h6{
	font-size:x-large;
	color:#2988eb;
	margin:0.5em 0 0.5em;
	font-style: normal;
	}
.adm_que h6 span{
	font-weight: normal;
	color:#282828;
	}
.adm_que h5 + p{
	}
@media screen and (max-width: 909px) {
.adm_que h6 span{
	font-size:smaller;
	}
}
@media screen and (max-width: 480px) {
.adm_que span.kai{
	display: inline;
	}
}
/*入学案内バナー*/
/*お問い合わせバー*/
.adm_sqbar{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width:100%;
    max-width: 1020px;
	margin:30px auto 60px;
	border-top:1px solid #dcdcdc;
	border-bottom:1px solid #dcdcdc;
	padding:2em 0;
}
.adm_sqbar .telred{
	position:relative;
	display: block;
	height:60px;
	width:200px;
	margin:0 1em 0 0;
	padding-right:20px;
	vertical-align:middle;
	flex-grow: 0; 
	flex-shrink: 0; 
	}
.adm_sqbar .telred::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	display: block;
	width:0;
	height:0;
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent;
	border-left: 20px solid #2988eb;
	}
.adm_sqbar .telred span{
	display: block;
	background-color:#2988eb;
	color:#fff;
	height:30px;
	padding:15px 0 15px 15px;
	}
.adm_sqbar.bar2 .bar2_left{
	flex-shrink: 0; 
	display: flex;
	flex-direction: row;
	flex-wrap: wrap; 
	justify-content: flex-start;  
	}
.adm_sqbar.bar2 .bar2_right p{
	margin:0;
	line-height:1.5;
	}
.adm_sqbar.bar2 .tel{
	position:relative;
	flex-grow: 0; 
	flex-shrink: 0;
	margin: 0 1em 0 0;
	}
.adm_sqbar.bar2 .tel p{
	line-height:1;
	margin:0 0 10px;
	padding:0;
	}
.adm_sqbar.bar2 .tel span{
	line-height:1;
	font-size: 240%;
	}
.adm_sqbar.bar2 .tel img{
	display: inline-block;
	width:auto;
	height:36px;
	margin-top:-20px;
	}
.adm_sqbar .redbtn{
	flex-grow: 5; 
	flex-shrink: 5; 
	width:100%;
	}
.adm_sqbar.bar1 .redbtn:first-child{/*ポータル用ボタン_２つある*/
	margin:0 auto 0 0;
	}
.adm_sqbar.bar1 .redbtn:last-child{
	margin:0 0 0 auto;
	}
.adm_sqbar.bar2 .redbtn{/*学習センター用ボタン*/
	margin:0;
	}
	
	
@media screen and (max-width: 1062px) {
	}
@media screen and (max-width: 909px) {
.adm_sqbar{
	flex-direction: column;
	padding:1em 0;
	}
.adm_sqbar.bar2 .bar2_left{
	align-items: center;
	width:100%;
	order: 2;
	}
.adm_sqbar.bar2 .bar2_right{
	order: 1;
	margin:0 0 1em 0;
	}
.adm_sqbar.bar2 .tel{
	margin:0 0 0 0;
	}
.adm_sqbar.bar2 .tel img{
	height:28px;
	}
.adm_sqbar.bar2 .tel span{
	font-size:xx-large;
	}
.adm_sqbar.bar1 .redbtn:first-child,/*ポータル用ボタン_２つある*/
.adm_sqbar.bar1 .redbtn:last-child,
.adm_sqbar.bar2 .redbtn{/*学習センター用ボタン*/
	width:100%;
	max-width:909px;
	margin:0;
	order: 3;
	}
.adm_sqbar.bar1 .redbtn:last-child,
.adm_sqbar.bar2 .redbtn:last-child{
	margin:1em auto 0;
	}
}
@media screen and (max-width: 640px) {
.adm_sqbar .telred{
	font-size:small;
	width:160px;
	margin:0 2px 0 0;
	}
.adm_sqbar .telred span{
	height:20px;
	padding:20px 0 20px 5px;
	}
.adm_sqbar.bar2 .tel{
	margin:0;
	}
.adm_sqbar.bar2 .tel p{
	font-size:70%;
	}
.adm_sqbar.bar2 .tel span{
	font-size: 120%;
	}
.adm_sqbar.bar2 .tel img{
	height:20px;
	margin-top:-8px;
	}
}

/*入学案内学費*/
.adm_gakuhi1 p,
.adm_gakuhi2 p{
	margin-bottom:0;
	font-size:medium;
	}
.adm_gakuhi2 p.kome{
	font-size:small;
	}
.adm_gakuhi1 p{/*学費2列*/
	padding-bottom:1em;
	}
.adm_gakuhi1 p:last-child{
	border-top:1px dotted #bebebe;
	padding-top:1em;
	}
.adm_gakuhi2 .wkred{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	}
.adm_gakuhi2 .wkred div.fkds{
	display: flex;
	flex-wrap: wrap;
	justify-content: center; 
	align-items: center; 
	align-content: center; 
	border:1px solid #2988eb;
	background-color:#e9f3fd;
	border-radius: 8px;		/* CSS3草案 */
	-webkit-border-radius: 8px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 8px;	/* Firefox用 */
	color:#2988eb;
	width:42%;
	font-weight:bold;
	line-height:1.5;
	}
.adm_gakuhi2 .wkred div.fkds span{
	}
.adm_gakuhi2 .wkred div.fkds:last-child{
	margin-top:0;
	}
.adm_gakuhi2 .wkred div.plus{
	display:block;
	font-size:300%;
	color:#2988eb;
	flex-grow: 0;
	flex-shrink: 0;
	width:1em;
	}
.adm_gakuhi2 .wkwhite{
	position:relative;
	display:block;
	margin:2em 0 0 0;
	padding:0 0.5em 0.5em 0.5em;
	border:1px solid #b4b4b4;
	}
.adm_gakuhi2 .wkwhite::before{
	content:"";
	z-index:2;
	position:absolute;
	left:15%;
    display: block;
    width: 60px;
    height: 60px;
	border:1px solid #b4b4b4;
	background-color:#fff;

    transform:
      rotate(45deg)
      skew(
        calc((90deg - 50deg) / 2),
        calc((90deg - 50deg) / 2)
      ); /* calc((90deg - 欲しい角度) / 2) */
  	}
.adm_gakuhi2 .wkwhite p{
	text-align:center;
	position:relative;
	background-color:#fff;
	padding:0.5em 0;
	z-index:3;
	}
.adm_gakuhi2 .wkwhite .list2{
	z-index:3;
	position:relative;
	background-color:#fff;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	}
.adm_gakuhi2 .wkwhite .list2 span{
	display: block;
	padding:0.5em;
	width:50%;
	}
.adm_gakuhi2 .wkwhite .list2 span:nth-child(odd){
	text-align:left;
	border-top:1px solid #b4b4b4;
	border-right:1px solid #b4b4b4;
	}
.adm_gakuhi2 .wkwhite .list2 span:nth-child(even){
	text-align: right;
	border-top:1px solid #b4b4b4;
	}
.adm_gakuhi2 .wkwhite .list2:last-child{
	border-bottom:1px solid #b4b4b4;
	}
.adm_gakuhi2 p{
	}
@media screen and (max-width: 909px) {
.half.col div.wkwhite:last-child{
	margin:2em 0 0 0;
	}
.half.col div.list2:last-child{
	margin:0;
	}
	}
@media screen and (max-width: 740px) {
.adm_que{/*最初の説明*/
	min-height:170px;
	padding:1em;
	}
.adm_que p{
	font-size:80%;
	}
.adm_que h5{
	font-size:x-large;
	}
.adm_que h5 span{
	font-size:medium;
	}
.adm_gakuhi1 p,
.adm_gakuhi2 p{
	font-size:small;
	}
}
@media screen and (max-width: 480px) {
.adm_gakuhi2 .wkwhite{
	font-size:small;
	}
}

/*入学案内テーブル*/
table {
    border-spacing:0;
}
table.gray_tab{
	border:1px solid #b4b4b4;
	width:100%;
	max-width:1020px;
	margin:0 auto;
	table-layout:fixed;
}
table.gray_tab tr th,
table.gray_tab tr td{
	box-sizing: border-box;
	padding:0.5em 1.5em;
	border-right:1px solid #b4b4b4;
	border-bottom:1px solid #b4b4b4;
	}
table.gray_tab tr td.gray1{
	width:180px;
	background-color:#f8f8f8;
	}
table.gray_tab tr td.gray2{
	width:90px;
	background-color:#f8f8f8;
	text-align:right;
	}
table.gray_tab tr td.gray3{
	padding:0.5em 1em;
	width:6.3em;
	background-color:#f8f8f8;
	}
table.gray_tab tr td.gray3 div{
	width:22%;
	}
table.gray_tab.gakuhisim{/*学費シミュレーション*/
	font-size:90%;
	}
table.gray_tab.gakuhisim.sp{/*SP版は左右を分割させる*/
	display:none;
	}
table.gray_tab.gakuhisim tr td{
	padding:0.5em 1em;
	}
table.gray_tab.gakuhisim tr th{
	background-color:#e9f3fd;
	font-weight:normal;
	text-align:center;
	}
table.gray_tab.gakuhisim tr th:first-child{
	text-align:left;
	width:160px;
	}
table.gray_tab.gakuhisim tr td:first-child{
	width:auto;
	}
table.gray_tab.gakuhisim tr th:nth-child(2),
table.gray_tab.gakuhisim tr td:nth-child(4){
	border-right:none;
	}
table.gray_tab.gakuhisim tr th:nth-child(3),
table.gray_tab.gakuhisim tr td:nth-child(5){
	border-left:3px double #b4b4b4;
	}
table.gray_tab .half1{/*出願について*/
	width:100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;  
	}
table.gray_tab .half1 div{
	padding:0.5em 1.5em;
	}
table.gray_tab .half1 div.cut{
	padding:0;
	}
table.gray_tab .half1 div:first-child{
	width:30%;
	border-right:1px solid #b4b4b4;
	border-bottom:1px solid #b4b4b4;
	}
table.gray_tab .half1 div:last-child{
	width:70%;
	flex-grow: 5; 
	border-bottom:1px solid #b4b4b4;
	}
table.gray_tab .half1.tennyu div:first-child{
	width:40%;
	border-right:1px solid #b4b4b4;
	border-bottom:1px solid #b4b4b4;
	}
table.gray_tab .half1.tennyu div:last-child{
	width:60%;
	flex-grow: 5; 
	border-bottom:1px solid #b4b4b4;
	}
table.gray_tab .half1 div.cut span{
	display:block;
	padding:0.5em 1.5em;
	border-bottom:1px solid #b4b4b4;
	}
table.gray_tab .half1 div.cut span:last-child{
	border-bottom:none;
	}
table.gray_tab .half1 div.cut + div{
	position:relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	}
table.gray_tab .half1:last-child div:first-child,
table.gray_tab .half1:last-child div:last-child{
	border-bottom:none;
	}
@media screen and (max-width: 909px) {
table.gray_tab.gakuhisim.sp{/*SP版は左右を分割させる*/
	display: table;
	margin-top:1em;
	}
table.gray_tab.gakuhisim tr th:nth-child(2),
table.gray_tab.gakuhisim tr td:nth-child(4){
	border-right:1px solid #b4b4b4;
	}
table.gray_tab.gakuhisim tr th:nth-child(3),
table.gray_tab.gakuhisim tr td:nth-child(5),
table.gray_tab.gakuhisim tr td:nth-child(6),
table.gray_tab.gakuhisim tr td:nth-child(7){
	display: none;
	}

table.gray_tab .half1 div.cut span,
table.gray_tab.gakuhisim tr td,
table.gray_tab tr th,
table.gray_tab tr td,
table.gray_tab .half1 div{
	padding:0.3em 0.7em;
	}
table.gray_tab .half1 div.cut + div div{
  margin: auto 0 auto 0.7em;
  }
table.gray_tab tr td.gray1{
	width:100px;
	}
table.gray_tab tr td.gray2{
	width:60px
	}
}
@media screen and (max-width: 640px) {
table.gray_tab .half1 div.cut span,
table.gray_tab tr td,
table.gray_tab .half1 div{
	padding:10px;
	font-size:small;
	}
table.gray_tab .half1 div.cut + div div{
  margin: auto 0 auto 10px;
  }
table.gray_tab tr td.gray1{
	width:90px;
	}
table.gray_tab tr td.gray2{
	width:50px;
	}
table.gray_tab tr td.gray3{
	width:4.3em;
	}
table.gray_tab.gakuhisim tr td,
table.gray_tab.gakuhisim tr th{
	padding:5px;
	font-size:x-small;
	}
table.gray_tab.gakuhisim tr th:first-child{
	width:60px;
	}
table.gray_tab .half1 div:first-child{
	width:80px;
	flex-shrink: 0; 
	}
table.gray_tab .half1.tennyu div:first-child{
	width:45%;
	flex-shrink: 0; 
	}
}

/* ~~ ヘッダー ~~ */
.header {
	width:100%;
	position:fixed;
	margin:0;
	padding:0.7em 1em;
	box-sizing:border-box;
	background-color:#fff;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	z-index:9999;
}
.header .logo{
	width:100%;
	margin:0 auto;
	display: flex;
	flex-direction: row;
	justify-content: flex-start; 
	align-items: center; 
	}
.header .logo:hover,
.header .logo:focus{
	text-decoration:none;
	}
.header .logo img{
	display:inline-block;
	width:auto;
	height:56px;
	margin-right:15px;
	}
.header .logo span{
	display:inline-block;
	font-size:85%;
	font-weight:bold;
	text-align:center;
	}
.header .logo span span{
	font-size:80%;
	font-weight: normal;
	}
.header .logo span.title{
	margin-left:15px;
	color:#2988eb;
	font-size:xx-large;
	font-weight:bold;
	}
.header .link{
	display:block;
	flex-shrink: 0;
	}
.header .link a{
	border-right:1px dotted #717d80;
	box-sizing:border-box;
	padding:0 1em;
	}
.header .link a:last-child{
	border-right: none;
	padding:0 0 0 1em;
	}
.header .link a.curr{
	color:#2988eb;
	}
.header .link a.curr:hover,
.header .link a.curr:focus{
	color:#2988eb;
	text-decoration:underline;
	}
@media screen and (max-width: 910px) {
.header .link a{
	font-size:85%;
	}
}

@media screen and (max-width: 768px) {
.header {
	position: relative;
	padding:0.5em 0;
	flex-direction: column;
	justify-content: center;
	}
.header .logo{
	justify-content: center; 
	margin:0 auto;
	}
}

@media screen and (max-width: 480px) {
.header {
	padding:0.7em 0;
	}
.header .logo img{
	display:inline-block;
	width:auto;
	height:40px;
	margin-right:5px;
	}
.header .logo span{
	font-size:75%;
	}
.header .logo span span{
	font-size:70%;
	}
.header .logo span.title{
	margin-left:5px;
	font-size:x-large;
	}
.header .link a{
	padding:0 0.5em;
	}
.header .link a:last-child{
	padding:0 0 0 0.5em;
	}
}
@media screen and (max-width: 360px) {
	}
/* ~~ ヘッダー直下：ナビゲーション ~~ */
.head_navi{
	box-sizing:border-box;
	padding:78px 0 0 0;
	background-color:#f4f4f4;
	font-size:small;
	color:#787878;
	}
.head_navi div.line {
	width:100%;
    border-top: 1px solid #dcdcdc;
	padding:0.5em 0 0.5em 0;
	}
.head_navi div.line div{
	width:100%;
	max-width:1050px;
	margin:0 auto;
	box-sizing:border-box;
	padding:0 15px 0 30px;
	background-image: url(../img/home.gif);
	background-size:15px 18px;
	background-position:left 5px center;
	background-repeat:no-repeat;
	}
.head_navi span{
	display:inline-block;
	box-sizing:border-box;
	padding:0 1em;
	}
.head_navi a{
	color:#787878;
	}
.head_navi a:hover,
.head_navi a:focus{
	color:#2988eb;
	}
.head_title{
	color:#2988eb;
	text-align:center;
	box-sizing:border-box;
	padding:2.5em 0;
	}
.head_title h1{
	font-size: 260%;
	margin:0 0 10px;
	}
.head_title p{
	margin:0;
	font-size:medium;
	}
@media screen and (max-width: 1280px) {
}

@media screen and (max-width: 768px) {
.head_navi{
	padding:0;
	}
.head_title h1{
	font-size: 200%;
	}
}

@media screen and (max-width: 480px) {
.head_title h1{
	font-size: 180%;
	}
.head_title p{
	font-size: small;
	}
}


/* ~~ フッター ~~ */
.footer {
	width:100%;
	background-color: #fff;
	text-align:center;
	box-sizing:border-box;
	padding:0 0 100px 0;
}
.footer p.copy{
	color:#646464;
	font-size:85%;
	margin:1em 0 0;
	}
.footer .footline{
	border-top:1px solid #dcdcdc;
	border-bottom:1px solid #dcdcdc;
	width:100%;
	max-width:1020px;
	margin:0 auto;
	box-sizing:border-box;
	padding:40px 15px;
	color:#282828;
	}
.footer .footline div{
	background-image: url(../img/logo.gif);
	background-size:47px 72px;
	background-position:left center;
	background-repeat:no-repeat;
	box-sizing:border-box;
	padding:0 0 0 60px;
	display: inline-flex;
	flex-direction: column;
	align-content: center; 
	}
.footer .footline div p{
	font-size: medium;
	font-weight: normal;
	margin:0;
	}
.footer .footline div p:last-child{
	font-size: xx-large;
	font-weight:bold;
	}
.footer .footline p{
	color:#282828;
	font-size: medium;
	}
.footer .footline p span{
	display:inline-block;
	}
.footer .footline p.sml{
	font-size:85%;
	}
.footer .footline p:last-child{
	margin-bottom:0;
	}
@media screen and (max-width: 1280px) {
}

@media screen and (max-width: 768px) {
.footer {
	padding:0 0 180px 0;
}
.footer .footline div{
	background-size:33px 50px;
	padding:0 0 0 40px;
	}
.footer .footline div p{
	font-size: 70%;
	}
.footer .footline div p:last-child{
	font-size: x-large;
	}
}
@media screen and (max-width: 480px) {
.footer p.copy{
	font-size: x-small;
	}
.footer .footline{
	padding:20px 15px;
	}
.footer .footline div{
	background-size:26px 40px;
	padding:0 0 0 30px;
	}
.footer .footline div p{
	font-size: 50%;
	}
.footer .footline div p:last-child{
	font-size: large;
	}
.footer .footline p{
	font-size: 85%;
	}
.footer .footline p.sml{
	font-size:75%;
	}
}


/*topへ戻るリンク*/
.totop{
	position:fixed;
	right:10px;
	bottom:95px;
	display:block;
	z-index:999;
	}
.totop a{
	display:block;
	overflow:hidden;
	border-radius: 20px;		/* CSS3草案 */
	-webkit-border-radius: 20px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 20px;	/* Firefox用 */
	opacity:1;
	}
.totop a:hover,
.totop a:focus{
	opacity:0.5;
	}
.totop a img{
	display:block;
	width:40px;
	height:40px;
	}
@media screen and (max-width: 768px) {
.totop {
	bottom:160px;
	}
}
@media screen and (max-width: 480px) {
.totop {
	bottom:140px;
	}
}

/* 下部固定のメニュー */
div#floating-menu {
	display: table;
    position: fixed;
	width: 100%;
	bottom: 0px;
    left: 0px;
    right: 0px;
    padding: 0px;
	background-color:#2988eb;
	border-top:2px solid #2988eb;
    z-index: 9998;
	text-align:center;
	font: 100%/1.4 'Noto Sans JP', Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
.floating-bnr{
	margin:0 auto;
	width:100%;
	display:flex;
	flex-direction: row;
	justify-content: center;
	align-items: stretch;
	}
.floating-bnr .tel{
	display:flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	margin:1em 0;
	}
.floating-bnr .tel p{
	color:#fff;
	margin:0 1em 0 1em;
	font-size:small;
	text-align:left;
	flex-grow: 0;
	flex-shrink: 0; 
	}
.floating-bnr .tel p span{
	 display:inline-block;
	}
.floating-bnr .tel img{
	display:block;
	width:100%;
	max-width:271px;
	height:auto;
	margin:0;
	}
.floating-bnr .buttun{
	display:flex;
	flex-direction: row;
	justify-content: center;
	align-items: stretch;
	margin: 0 0 0 3em;
	}
.floating-bnr .buttun a.btn{
	display:flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding:1em;
	background-color:#ffff00;
	color:#2988eb;
	position:relative;
	transform:skewX(-25deg);
	flex-grow: 50;
	width:13em;
	}
.floating-bnr .buttun a.btn + a.btn{
	margin-left:2px;
	}
.floating-bnr .buttun a.btn span{
	font-weight:bold;
	display:inline-block;
	transform:skewX(25deg);
	font-size:130%;
	width:100%;
	}
.floating-bnr .buttun a.btn + a.btn span{
	font-size:130%;
	}
.floating-bnr .buttun a.btn span.sml,
.floating-bnr .buttun a.btn + a.btn span.sml{
	font-size: 90%;
	}
.floating-bnr .buttun a.btn:focus,
.floating-bnr .buttun a.btn:hover{
	background-color:#ffffcc;
	text-decoration:none;
	}
@media screen and (max-width: 910px) {
.floating-bnr .buttun a.btn{
    width: 11em;
	}
.floating-bnr .buttun a.btn span{
	font-size:110%;
	}
.floating-bnr .buttun a.btn span.sml,
.floating-bnr .buttun a.btn + a.btn span.sml{
	font-size: 70%;
	}
	}
@media screen and (max-width: 768px) {
.floating-bnr{
	flex-direction: column;
	overflow:hidden;
	}
.floating-bnr .tel{
	flex-direction: row;
	}
.floating-bnr .tel p{
	margin:0 0 0 1em;
	width:50%;
	}
.floating-bnr .tel .telimg{
	width:50%;
	box-sizing:border-box;
	padding-right:5px;
	}
.floating-bnr .buttun{
	margin: 0 0 0 -10%;
	width:120%;
	}
.floating-bnr .buttun a.btn{
	padding:1em 1em 1em 10%;
	flex-grow: 50;
	width:50%;
	}
.floating-bnr .buttun a.btn + a.btn span{
	font-size:x-large;
	}
.floating-bnr .buttun a.btn + a.btn{
	padding:1em 10% 1em 1em;
	}
}
@media screen and (max-width: 640px) {
.floating-bnr .tel p{
	font-size:small;
	}
}
@media screen and (max-width: 480px) {
.floating-bnr .tel{
	margin:0.5em 0;
	}
.floating-bnr .tel p{
	font-size:small;
	width:40%;
	}
.floating-bnr .tel .telimg{
	width:60%;
	}
.floating-bnr .tel img{
	display:block;
	width:100%;
	max-width:300px;
	height:auto;
	margin:0 auto;
	}
.floating-bnr .buttun a.btn{
	padding:0.5em 0 0.5em 10%;
	}
.floating-bnr .buttun a.btn + a.btn{
	padding:0.5em 10% 0.5em 0;
	}
.floating-bnr .buttun a.btn span,
.floating-bnr .buttun a.btn + a.btn span{
	font-size:large;
	}
.floating-bnr .buttun a.btn span.sml,
.floating-bnr .buttun a.btn + a.btn span.sml{
	font-size: small;
	}
}
