@charset "utf-8";
@import url('//fonts.googleapis.com/earlyaccess/notosansjapanese.css');

body {
	font: 100%/1.4 "Noto Sans Japanese";
	background-color: #fff;
	margin: 0;
	padding: 0;
	color: #000;
}

/* ~~ エレメント / タグセレクター ~~ */
ul, ol, dl {
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6{
	margin-top: 0;
	padding: 0;
}
p {
	padding: 0 0px;
}
a img {
	border: none;
}
a:link {
	color:#000;
	text-decoration: none;
}
a:visited {
	color:#000;
	text-decoration: none;
}
a:hover, a:active, a:focus {
	text-decoration: underline;
	color:#999;
}

/*ヘッダー*/
.header{
	width: 100%;
	margin:0;
	padding:0;
	text-align:center;
	background-color: #322723;
}
.header1{/*ロゴ部分*/
	width: 99%;
	max-width: 1280px;
	min-width: 100px;
	text-align:left;
	margin: 0 auto;
	background-color: #322723;
}
img.logoimg{/*ロゴ画像*/
	width: 99%;
	max-width: 490px;
	min-width: 50px;
	height:auto;
	margin: 25px auto 25px;
}
.header2{/*画像部分*/
	width: 100%;
	background-color: #fff;
	background:url(../img/headbg02bg.jpg);
	background-position:center;
	background-repeat:no-repeat;
	background-size:100% auto;
	text-align:center;
	margin:0;
	padding:0;
}
img.headerimg{/*ヘッダー画像*/
	width: 100%;
	max-width: 1280px;
	min-width: 50px;
	height:auto;
	margin: 0 auto 0;
	display: inline;
}
img.headerimgs{/*ヘッダー画像*/
	width: 100%;
	max-width: 720px;
	min-width: 50px;
	height:auto;
	margin: 0 auto 0;
	display:none;
}

.cont01{/*コンテンツ１*/
	background-color: #000;
	background:url(../img/headbg03.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:100% auto;
	margin: 0;
	padding: 30px 0 10px;
	color:#fff;
	text-align:center;
	font-size:large;
	font-weight:bold;
}

@media screen and (max-width: 768px) {
	.cont01 {
	background-color: #000;
	background:url(../img/headbg03sp.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
	padding: 20px 0 3px;
	}
}
@media screen and (max-width: 480px) {
	img.logoimg{/*ロゴ画像*/
	margin: 10px auto 10px;
	}
	h1{
	font-size:x-large;
	}
	.cont01 {
	font-size: medium;
	}
	img.headerimg{/*ヘッダー画像*/
	display:none;
	}
	img.headerimgs{/*ヘッダー画像*/
	display: inline;
	}
}



.cont02{/*コンテンツ２・白*/
	background-color: #fff;
	background:url(../img/cont_bgw.gif);
	background-position:center top;
	background-repeat:repeat-x;
	margin: 0;
	padding: 50px 0 50px;
	text-align:center;
	font-weight:bold;
}
.cont03{/*コンテンツ3・背景あり*/
	background-color: #fff;
	background:url(../img/mes_bg.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
	margin: 0;
	padding: 50px 0 50px;
	text-align:center;
	line-height: 170%;
	color:#fff;
}
.cont04{/*コンテンツ4・背景あり*/
	margin: 0;
	padding: 30px 0 30px;
	background-color: #5d5451;
	color:#fff;
}
h2{
	font-weight: normal;
	font-size: xx-large;
	}
h3{
	padding: 30px 0 0;
	font-weight: normal;
	font-size: xx-large;
	}
h4{
	font-size: large;
	}
@media screen and (max-width: 640px) {
	.cont02{
	font-size: smaller;
	}
	.cont03{/*コンテンツ3・背景あり*/
	background-color: #fff;
	background:url(../img/mes_bgs.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
	}
}
@media screen and (max-width: 480px) {
	.cont02,
	.cont03,
	.cont04{/*コンテンツ2*/
	padding: 30px 0 30px;
	}
h2,
h3{
	font-size: x-large;
	}
}

.qasub1{/*Q&A罫線*/
	width: 90%;
	max-width: 1000px;
	min-width: 50px;
	background:url(../img/dot_gray2.gif);
	background-position:center top;
	background-repeat:repeat;
	margin: 0 auto;
	padding: 10px 0;
	}
.qasub2{/*Q&A白枠*/
	display:block;
	background-color: #fff;
	margin: 30px 40px;
	padding:30px 40px;
	border: 4px solid #000000;
	border-radius: 14px;
	text-align:left;
	}
img.qalogo{
	display:block;
	width: 50%;
	max-width: 182px;
	min-width: 100px;
	margin: 0 auto 10px;
	}
img.inicon{
	display:block;
	width: 30%;
	max-width: 132px;
	min-width: 20px;
	margin: 0 auto 20px;
	}

/* 吹き出し灰 */
.balloon{
	display: inline-block;
  position: relative;
  padding: 12px 40px 13px;
  margin:0 0 20px 0;
  background-color: #8a8a8a;
  color: #fff;
  border-radius: 30px;
  font-size:150%;
  font-weight:bold;
}
/* 色付きの半円 */
.balloon::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 60%;
	-webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  left: 55px;
  bottom: -23px;
  border-left: 40px solid #8a8a8a;
  border-top: 40px solid #8a8a8a;
  border-right: 40px solid transparent;
  border-bottom: 40px solid transparent;
}
/* 白い半円 */
.balloon::after{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 60%;
	-webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  left: 80px;
  bottom: -40px;
  border-left: 40px solid #ffffff;
  border-top: 40px solid #ffffff;
  border-right: 40px solid transparent;
  border-bottom: 40px solid transparent;
}
.balloon2{/*qa解答・黄*/
	display:flex;
	width: 85%;
	padding: 20px;
	margin: 30px auto;
	background-color: #2b532a;
	background:url(../img/dot_green2.gif);
	background-position:center top;
	background-repeat:repeat;
	color:#fff;
	text-align:left;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
  font-size:150%;
  font-weight:bold;
	line-height: 1.5em;
}
.balloon2 div {
	width: 1.4em;
	margin-right: 0.3em;
}
.balloon2 p {
	margin: 0;
}
.balloon3{/*qa解答・白*/
	display:block;
	width: 85%;
	padding: 20px;
	margin: 30px auto;
	background-color: #2b532a;
	background:url(../img/dot_green2.gif);
	background-position:center top;
	background-repeat:repeat;
	color:#fff;
	text-align:center;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
	font-size:120%;
	line-height: 1.5em;
}
a.balloon4{/*qa解答・黄*/
	display:block;
	width: 85%;
	padding: 20px 0;
	margin: 20px auto;
	background-color: #2b532a;
	background:url(../img/dot_green2.gif);
	background-position:center top;
	background-repeat:repeat;
	color:#fff;
	text-align:center;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
  font-size:150%;
  font-weight:bold;
	text-decoration: underline;
}
a.balloon4:hover, a.balloon4:active, a.balloon4:focus {
	color: #ffff00;
	}
a.ballink{/*吹き出し内リンク*/
	display:inline-block;
	color:#fff;
	text-decoration: underline;
	font-size:x-large;
	font-weight:bold;
	margin: 10px 0 20px 0;
	}
a.ballink:hover, a.ballink:active, a.ballink:focus {
	color:#ffff00;
	text-decoration: none;
	}

img.qaimg1{
	width: 47%;
	max-width: 500px;
	min-width: 50px;
	height:auto;
	float:left;
	margin: 5px 5px 20px 0;
	}
img.qaimg2{
	width: 47%;
	max-width: 500px;
	min-width: 50px;
	height:auto;
	float:right;
	margin: 5px 5px 20px 0;
	}

.mesimgbox {
	text-align: center;
}
img.mesimg{/*写真3連*/
	width:100%;
	max-width: 2000px;
	min-width: 50px;
	height:auto;
	}
img.mesimgs{/*写真3連*/
	width:100%;
	max-width: 1280px;
	min-width: 50px;
	height:auto;
	display:none;
	}

@media screen and (max-width: 1280px) {
img.mesimg{/*写真3連*/
	display:none;
	}

img.mesimgs{/*写真3連*/
	display: inline;
	}
}
@media screen and (max-width: 768px) {
.qasub2{/*Q&A白枠*/
	display:block;
	background-color: #fff;
	margin: 10px 20px;
	padding:10px 10px;
	border: 4px solid #000000;
	}
.balloon{
  margin:0 0 20px -10px;
  padding: 12px 35px;
  font-size:120%;
	}
.balloon2{/*qa解答・白*/
	width: 90%;
	margin: 20px auto;
	padding: 15px;
	}
.balloon3{/*qa解答・白*/
	width: 90%;
	margin: 20px auto;
	padding: 10px;
	text-align:left;
	}
	.balloon3 br {
		display: none;
	}
a.balloon4,
a.ballink{
  font-size:120%;
	}
img.qaimg1,
img.qaimg2{
	width: 99%;
	height:auto;
	float:none;
	display:block;
	margin: 0 auto 20px;
	}
}
@media screen and (max-width: 480px) {
.qa2sub1{/*Q&A罫線*/
	width: 97%;
	}
a.balloon4,
a.ballink{
  font-size:100%;
	}
}






/* ~~メインコンテナ・学校概要~~ */
.container {/*メインコンテナ*/
	width: 80%;
	max-width: 941px;
	min-width: 100px;
	margin: 0px auto;
	text-align:center;
}
.content {
	position:relative;
	padding: 0 20px;
	margin: 0;
	/*background-color: #fff;
	background:url(../img/main_rep.png);
	background-position:center top;
	background-repeat:repeat-y;
    background-size: 100% auto;*/
	text-align:center;
}
img.cont_top{
	width:100%;
	max-width:941px;
	min-width:50px;
	height:auto;
	margin:0;
	}
img.cont_logo{
	width:80%;
	max-width:318px;
	min-width:50px;
	height:auto;
	margin:0 0 30px 0;
	}
.cont_center{
	display:block;
	width:99%;
	text-align:center;
	}
.cont_left{
	display:block;
	width:99%;
	text-align:left;
	}
.cont_right{
	position:relative;
	display:block;
	width:99%;
	text-align:right;
}
a.to_top{/*TOP△*/
	display:inline-block;
	color:#000;
	text-decoration: none;
	font-size:x-large;
	font-weight:bold;
	margin: 20px 0 0 0;
	}
a.to_top:hover, a.to_top:active, a.to_top:focus {
	color:#ffff00;
	}

a.to_top2{/*TOP△白*/
	display:inline-block;
	color:#fff;
	text-decoration: none;
	font-size:x-large;
	font-weight:bold;
	margin: 20px 0 0 0;
	}
a.to_top2:hover, a.to_top2:active, a.to_top2:focus {
	color:#ffff00;
	}

.content2 {/*学校概要*/
	width: 100%;
	padding: 20px 0;
	margin: 40px 0 0 0;
	background-color: #fff;
	color:#000;
	text-align:left;
}
.content2b {/*学校概要:黒補足*/
	display:block;
	width: 80%;
	padding: 10px 20px 20px;
	margin: 20px auto 0;
	background-color: #7f5654;
	color:#fff;
	text-align:left;
	border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}
p.cont_p{/*補足枠内p*/
	margin: 5px 20px 20px 20px;
	font-weight:bolder;
	}
li.cont_flex{
	display:flex;
	margin: 0 0 10px 0;
    align-items: center;
	}
.cont_span{/*補足枠リスト左*/
	display:inline-block;
	margin: 0 10px 0 3%;
	padding: 3px 0;
	width: 100px;
	background-color: #7f5654;
	color:#fff;
	text-align:center;
	border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
	}
.cont_span2{/*補足枠リスト右*/
	display:inline-block;
	width: auto;
	margin: 0 10px 0 0;
	padding: 0;
	}
.cont_sub{/*補足枠・2分割をまとめる*/
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
	width: 94%;
	margin: 20px 2% 0;
	}
img.img_sub{/*補足枠・画像2列*/
	width: 50%;
	max-width: 835px;
	min-width: 100px;
	height:auto;
	margin: 0 auto 0;
	vertical-align:bottom;
	}
img.img_sub2{/*補足枠・画像と文字：右*/
	width: 50%;
	max-width: 834px;
	min-width: 100px;
	height:auto;
	margin: 0 auto 0;
	}
.img_subtx{/*補足枠・画像と文字：左*/
	width: 50%;
	max-width: 834px;
	min-width: 100px;
	height:160px;
	margin: auto;
	padding:0 0 10px 0;
	text-align:center;
	}
img.sub_logo{
	width: 80%;
	max-width: 200px;
	min-width: 50px;
	margin: 0 auto 10px;
	}
@media screen and (max-width: 768px) {
.container {
	width: 95%;
	margin: 20px auto;
	}
.content {
	padding: 0 10px;
	}
a.to_top,
a.to_top2{
	margin: 5px 0 0 0;
	}
.img_subtx{
	font-size:smaller;
	}
}
@media screen and (max-width: 480px) {
.container {
	font-size:smaller;
	}
.content {
	padding: 0 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	text-align:left;
	}
.content2b{
	font-size: smaller;
	}
p.cont_p{/*補足枠内p*/
	margin: 0 10px 10px 10px;
	font-size: medium;
	}
li.cont_flex{
	margin: 0 0 5px 0;
	font-size: small;
	}
.cont_span{/*補足枠リスト左*/
	margin: 0 5px 0 10px;
	width: 75px;
	min-width: 75px;
	}
.cont_sub{
	width: 94%;
	margin: 10px 3% 0;
	}
img.img_sub,
img.img_sub2{/*補足枠・画像2列*/
	width:99%;
	}
.img_subtx{/*補足枠・画像と文字：左*/
	width: 99%;
	padding: 0 0 10px 0;
	float:none;
	}
img.sub_logo{
	width: 80%;
	max-width: 200px;
	min-width: 50px;
	margin: 0px auto 10px;
	}
}
/* ~~メインコンテナ・学校概要ここまで~~ */

/* ~~ その他の float/clear クラス ~~ */
.fltrt {
	float: right;
	margin-left: 8px;
}
.fltlft {
	float: left;
	margin-right: 8px;
}
.clearfloat {
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}
/* ~~ フッター ~~ */
.footer {
	width: 100%;
	margin:0;
	padding: 30px 0 120px;
	background-color: #322723;
	color:#fff;
	text-align:center;
}
.foot_cr{
	font-size: small;
	}
#foot a:link{/*フッターリンク*/
	color:#fff;
	text-decoration: underline;
	}
#foot a:hover,#foot a:active,#foot a:focus {
	color:#999;
	text-decoration: none;
	}

@media screen and (max-width: 720px) {
.footer {
	padding: 50px 0 70px;
	font-size: smaller;
	}
}
@media screen and (max-width: 480px) {
.footer {
	margin:0;
	padding: 30px 0 50px;
	}
}
.cont2map{/* ~~ googlemapサイズ枠pc ~~ */
	width: 100%;
	max-width: 600px;
	min-width: 50px;
	height: 420px;
	margin: 10px 0 20px 0;
	display: inline-block;
}
.cont2maps{/* ~~ googlemapサイズ枠pc ~~ */
	width: 100%;
	max-width: 600px;
	min-width: 50px;
	height: 300px;
	margin: 10px 0 20px 0;
	display: none;
}
@media screen and (max-width: 600px) {
.cont2map {
	display: none;
	}
.cont2maps {
	display: inline-block;
	}
}

/* 下部固定のメニュー */
div#floating-menu {
	display: table;
    position: fixed;
	width: 100%;
	bottom: 0px;
    left: 0px;
    right: 0px;
    padding: 0px;
	background-color:#f0f0f0;
    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: column;
	justify-content: center;
	align-items: center;
	margin:1em 0;
	}
.floating-bnr .tel p{
	color:#000;
	margin:0 0 0.5em 0;
	}
.floating-bnr .tel p span{
	 display:inline-block;
	}
.floating-bnr .tel img{
	display:block;
	width:100%;
	max-width:300px;
	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:#282828;
	color:#fff;
	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:x-large;
	}
.floating-bnr .buttun a.btn span.sml{
	font-size: medium;
	}
.floating-bnr .buttun a.btn:focus,
.floating-bnr .buttun a.btn:hover{
	background-color:#2b532a;
	text-decoration:none;
	}
@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;
	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{
	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:1em 0 1em 10%;
	}
.floating-bnr .buttun a.btn + a.btn{
	padding:1em 10% 1em 0;
	}
.floating-bnr .buttun a.btn span{
	font-size:large;
	}
.floating-bnr .buttun a.btn span.sml{
	font-size: small;
	}
}


/* PCのみ・SPのみ表示 */
.mpc {
	display: inherit;
	}
.msp768,
.msp480,
.msp360 {
	display: none;
	}
@media screen and (max-width: 768px) {
.mpc {
	display: none;
	}
.msp768 {
	display: inline;
	}
}
@media screen and (max-width: 480px) {
.msp480 {
	display: inline;
	}
}
@media screen and (max-width: 360px) {
.msp360 {
	display: inline;
	}
}
