@charset "UTF-8";
html{
	-webkit-text-size-adjust: 100%;
}
html , body {height:100%;}

body{
	background: #fff9e9;/*background: #FFF;*/
	font-family:"Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
    font-size: 14px;
	color: #333;
    font-weight: 300;
	line-height: 1.6em;
	margin: 0;
    padding: 0;

}

@media screen and (max-width: 640px) {
	body{
    font-size: 13px;
}
}
a:link{
	color: #db722b;
	text-decoration: underline;
}
a:hover{
	color: #db8449;
	text-decoration: none;
}
a:visited{
	color: #db722b;
	text-decoration: underline;
}
a:active{
	color: #d7f90b;
	text-decoration: none;
}

b, strong {
    font-weight: bold;
}
p {
  margin: 0 0 1.6em 0;
  line-height: 1.6em;
  letter-spacing: 0.01;
}
ul {
 	list-style: none;
 	margin: 0.5em 0 1em;
	padding: 0;	
}
li{
	margin: 0 0 0.5em 1em;
	padding-left: 1em;
    position: relative;
	}
li:before {
  	font-family: FontAwesome;
  	content: '\f0da';
  	color:#b2d36a;
	position:absolute;
	left:0;
	top:0;
}
ol{
	margin: 0 0 10px 1.5em;
	padding: 0px;	
	}
ol li{
	margin: 0 0 5px;
	padding: 0px;
	}

.clr {clear: both;}

.nowrap{
	white-space: nowrap;
}
/*レイアウト　------------------------------------------*/
#wrap{
	width: 900px;
	margin: 0 auto;
	display: flex;
	padding: 0;
	background: #fff;
}
#side{
	width: 230px;
	padding: 10px;
	background: #f5f5f5;
	box-sizing: border-box;
}
#main{
	width: 640px;
	margin: 0 auto;
	padding: 0;
}
#contents {
  margin: 0;
  padding: 10px 0 40px;
  font-size: 14px;
  width: 100%;
  letter-spacing: 0.01;
  text-align: left;
  line-height: 1.7em;
}
#footer{
	width: 900px;
	margin: 0 auto;
	padding: 10px 20px;
	background-color: #f6eada;/*黄緑#d6e5b5*/
	text-align: center;
	font-size: 12px;
	line-height: 1.4em;}

/*ヘッダー　------------------------------------------*/
#header{
	width: 100%;
	margin: 0 auto;
	padding: 0px;
}
#header-contents{
	width: 900px;
	margin: 0 auto;
	padding: 0px;
	text-align: center;
}
#header h1 {
  margin: 0 auto 0 auto;
  padding: 0.5em 0.8em;
  font-weight: normal;
  text-align: left;
  font-size: 12px;
  color: #9f6e34;
  background-color: #fcecc7;
border-bottom: 2px solid #fff;
}

@media only screen and (max-width: 768px){
/*タブレット用*/
	body{
		background: none;
	}
	#wrap{
		width: 100%;
		margin: 0 0 5%;
		padding: 0 5%;
		display: block;
		box-sizing: border-box;
	}
	#side{
		width: 100%;
		margin: 0 auto;
		padding: 0;
		background: none;
	}
	#main{
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#contents {
  width: 100%;
		margin: 0 auto;
		padding: 0;
}
	#footer{
		width: 100%;
		height: 350px;
		margin: 0 auto;
		padding: 1.5em 5%;
		box-sizing: border-box;
	}
    #header{
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#header-contents{
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#header h1{
		margin: 0;
		padding-right: 80px;
	}
	
}@media only screen and (max-width: 640px){
/* スマホ */
	#wrap{
		width: 100%;
		margin: 0 0 5%;
		padding: 0 5% 5%;
		display: block;
		box-sizing: border-box;
		border-bottom: 1px dashed #CCC;
	}
	#side{
		width: 100%;
		margin: 0 auto;
		padding: 0;
		background: none;
	}
	#main{
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#contents {
  width: 100%;
		margin: 0 auto;
		padding: 0;
}
	#footer{
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 1.5em 5%;
		box-sizing: border-box;
	}
    #header{
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#header-contents{
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#header h1{
		margin: 0;
		padding-right: 80px;
	}
	
}
/*メインメニュー　------------------------------------------*/
#menu_header {
  width: auto;
  margin: 0;
  padding: 0;
  height: 49px;
  text-align: left;
  border-top: solid 2px #dddddd;
  border-bottom: solid 2px #999999;
  background-image: url(img/head_menu_back_base.gif);
  background-repeat: repeat-x;
}

#menu_header ul {
  width: 900px;
  text-align: left;
  margin: 0 auto 0 auto;
  padding: 0;
  background-image: url(img/head_menu_back_base.gif);
  background-repeat: repeat-x;
}

#menu_header li {
  display: inline;
  list-style-type: none;
  float: left;
  color: #ffffff;
	margin: 0;
    padding-left: 0;
    position: static;
}
#menu_header li:before {
    content: none;
}
#menu_header li a {
  font-size: 12px;
  color: #fffffc;
  background-image: url(img/head_menu_back_abase.gif);
  text-align: center;
  display: block;
  line-height: 150%;
  letter-spacing: 1px;
  border-right-width: 1px;
  border-right-style: solid;
  border-right-color: #d6c6af;
  text-decoration: none;
  padding: 6px 28px 3px 28px;
}

#menu_header li a:hover {
  color: #eeeeee;
  background-image: url(img/head_menu_back_hover.gif);
}

#menu_header span.sub {
  color: #ead16d;
}


/*
#side #menu_header {
	margin: 0 0 2em;
	}
#side #menu_header ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#side #menu_header li:before {
	content: none;
 	margin-right: 0;
}
#side #menu_header li {
    margin: 0 0 10px 0;
    padding: 0;
    font-size: 14px;
    line-height: 1.2em;
    font-weight: normal;
    display: block;
    width: 100%;
}

#side #menu_header a {
	text-decoration: none;
	display: block;
	margin: 0;
	padding:8px 9px;
	min-height: 30px;
	background: #f4f0d7;
    border-radius: 4px;
}
#side #menu_header a::before {
	font-family: FontAwesome;
    content: '\f0da';
    margin-right: 0.5em;
    color: #fccc00;
}
#side #menu_header li:hover,
#side #menu_header li:focus {
	color: #ED5880;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;

}
*/




/*---------- メインコンテンツ ----------*/
/*見出し　-----*/

#contents h2 {
  min-height: 45px;
  margin: 0 0 0.5em 0;
  padding: 15px 12px 8px 18px;
  font-size: 20px;
  color: #583822;
  background-image: url("img/h2_bg.jpg");
	background-size: 70%;
	background-repeat: repeat-x;
	background-color: #e2d5c1;
	font-weight: bold;
}
#contents h3 {
      margin: 0.8em 0 1em 0;
    padding: 12px 10px 9px 15px;
    line-height: 110%;
    font-size: 18px;
  color: #583822;
  border-left: solid 5px #795c39;
  border-bottom: solid 2px #795c39;
  background-color: #fbfaf5;
	font-weight: bold;
}
#contents h4 {
     margin: 0.8em 0 1em 0;
    padding: 0 0 0 8px;
    line-height: 110%;
    font-size: 17px;
  color: #583822;
  border-left: solid 5px #886b2d;
	font-weight: bold;
}
#contents h5 {
     margin: 0.8em 0 1em 0;
    padding: 0 0 0 0;
    line-height: 110%;
    font-size: 16px;
  color: #d76a09;
	font-weight: bold;
}
#contents h6 {
    margin: 0.8em 0 1em 0;
    padding: 0 0 0 0;
    line-height: 110%;
    font-size: 14px;
	font-weight: bold;
}
#contents p {
  margin: 0 0 1.6em 0;
  line-height: 1.7em;
  letter-spacing: 0.01;
  font-size: 14px;
}
#contents a:link{
  color: #db722b;
	text-decoration: none;
}
#contents a:visited{
  color: #d36706;
	text-decoration: none;
}
#contents a:hover {
  color: #d36706;
	text-decoration: underline;
}
@media screen and (max-width: 640px) {
	/* スマホ */

}


#contents #pannavi {
  margin: 0 0 5px 0;
  padding: 0 0 8px 0;
  font-size: 12px;
}




#contents .gray_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 170%;
  letter-spacing: 1px;
  font-size: 13px;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #eeeeee;
}

#contents .gray_bg_contact {
  margin: 18px 2px 18px 2px;
  padding: 1.5em 1em;
  line-height: 170%;
  letter-spacing: 1px;
  font-size: 13px;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
background: linear-gradient(#f9f8f9, #ebe7ea);
  background-repeat: repeat-x;
	border-radius: 8px;
}

#contents .voice_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 170%;
  letter-spacing: 1px;
  font-size: 13px;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #f8f4e6;
}

#contents .memo_bg {
  margin: 8px 0 18px 0;
  padding: 1em 1.5em;
  line-height: 170%;
  background: linear-gradient(#faf2e2, #FFF);
  background-color: #faf2e2;
	border: 1px solid #f6ebda;
	border-radius: 8px;
}

#contents .check_bg {
  margin: 8px 0 18px 0;
  padding: 2px 18px 2px 18px;
  line-height: 170%;
  letter-spacing: 1px;
  color: #fffffc;
  font-size: 13px;
  border: solid 6px #dddddd;
  background-color: #35524e;
}

#contents .check_bg p {
  margin: 18px 0 18px 0;
  padding: 0 2px 0 2px;
  line-height: 170%;
  font-size: 13px;
  color: #fffffc;
}

#contents span.big {
  font-size: 16px;
}

#contents span.b_big {
  font-weight: bold;
  font-size: 16px;
}

#contents span.red {
  color: #e60033;
}

#contents span.red_b {
  color: #e60033;
  font-weight: bold;
}

#contents span.red_big {
  color: #e60033;
  font-weight: bold;
  font-size: 15px;
}

#contents span.red_big_x {
  color: #e60033;
  font-weight: bold;
  font-size: 20px;
}

#contents span.blue {
  color: #007bbb;
}

#contents span.blue_b {
  color: #007bbb;
  font-weight: bold;
}

#contents span.blue_big {
  color: #007bbb;
  font-weight: bold;
  font-size: 15px;
}

#contents span.brown {
  color: #993300;
}

#contents span.brown_b {
  color: #993300;
  font-weight: bold;
}

#contents span.brown_big {
  color: #993300;
  font-weight: bold;
  font-size: 15px;
}

#contents span.brown_big_x {
  color: #993300;
  font-weight: bold;
  font-size: 20px;
}

#contents span.green {
  color: #69821b;
}

#contents span.green_b {
  color: #69821b;
  font-weight: bold;
}

#contents span.green_big {
  color: #69821b;
  font-weight: bold;
  font-size: 15px;
}

#contents span.pink {
  color: #c53d43;
}

#contents span.pink_b {
  color: #c53d43;
  font-weight: bold;
}

#contents span.pink_big {
  color: #c53d43;
  font-weight: bold;
  font-size: 15px;
}

#contents img.head_photo {
  margin: 0 0 10px 0;
}

#contents img.photo {
  float: left;
  margin: 10px 20px 0 0;
}

#contents img.picture {
  margin: 0 20px 20px 0;
  float: left;
	border: 1px solid #ccc;
	padding: 5px;
}

#contents img.picture_r {
  margin: 0 0 20px 20px;
  float: right;
	border: 1px solid #ccc;
	padding: 5px;
}

#contents p.photo {
  margin: 0 0 20px 0;
  padding: 0;
}

#contents p.back {
  margin: 0;
  padding: 0 5px 0 0;
  text-align: right;
}


table#t01 {
  border: solid 1px #cccccc;
  border-collapse: collapse;
}


td#t01 {
  border: solid 1px #cccccc;
  border-collapse: collapse;
}


td#head {
  padding: 9px 6px 6px 15px;
  border: solid 1px #cccccc;
  border-collapse: collapse;
  background-image: url(img/main_block_bg.gif);
}


table.table_line {
  border-collapse: collapse;
  border: solid 1px #999999;
}


td.table_line {
  border-collapse: collapse;
  border: solid 1px #999999;
  padding : 12px 14px 8px 14px;
}


/*---------- メニュー ----------*/

#menu {
  float: left;
  margin: 0 0 15px 0;
  padding: 0;
  width: 220px;
  text-align: left;
  letter-spacing: 1px;
}

.menulist {
  margin: 20px 0 28px 0;
  padding: 0 2px 0px 0;
  width: 210px;
  text-align: left;
}

.menulist h2 {
  height: 36px;
  margin: 0;
  padding: 9px 0 4px 14px;
  font-size: 13px;
  color: #583822;
  background-image: url(img/sidebar.gif);
  background-repeat: no-repeat;
}
.menulist ul {
    margin: 0;
  	padding: 0;
}
.menulist li {
    margin: 0;
  	padding: 0;
}
.menulist li:before {
	content: none;
}
.menulist a{
  color: #db722b;
  display: block;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  padding: 8px 4px 3px 30px;
  font-size: 13px;
  line-height: 190%;
  text-decoration: none;
  background-image: url(img/side_menu_bg.gif);
  background-repeat: no-repeat;
}

.menulist a:hover{
  color: #db8449;
  background-image: url(img/side_menu_bg_hover.gif);
  background-repeat: no-repeat;
}

.menu_free {
  margin: 0 0 28px 5px;
  padding: 0;
  width: 210px;
  text-align: left;
  background-image: url(img/menu_back.gif);
}

.menu_free h2 {
  height: 23px;
  margin: 0;
  padding: 9px 0 4px 14px;
  font-size: 13px;
  color: #583822;
  background-image: url(img/sidebar.gif);
  background-repeat: no-repeat;
}

.menu_free a{
  color: #db722b;
  width: 198px;
  padding: 6px 0 5px 0;
  font-size: 13px;
 }

.menu_free a:hover{
  color: #db8449;
}

.menu_free p{
  margin: 0;
  padding: 8px 8px 14px 8px;
  font-size: 13px;
  line-height: 180%;
}

.menu_free span.red {
  color: #e60033;
}

.menu_free span.red_b {
  color: #e60033;
  font-weight: bold;
}

.menu_free span.blue {
  color: #007bbb;
}

.menu_free span.blue_b {
  color: #007bbb;
  font-weight: bold;
}

.menu_free span.brown {
  color: #993300;
}

.menu_free span.brown_b {
  color: #993300;
  font-weight: bold;
}

.menu_btn {
  margin: 0 0 10px 0;
  padding: 0;
  width: 210px;
  text-align: left;
}

.menu_btn a{
  margin: 0 0 8px 0;
  color: #db722b;
  display: block;
  border: solid 1px #dddddd;
  padding: 8px 4px 4px 30px;
  font-size: 13px;
  line-height: 200%;
  text-decoration: none;
  background-image: url(img/side_menu_btn_bg.gif);
  background-repeat: no-repeat;
 }

.menu_btn a:hover{
  color: #db8449;
  background-image: url(img/side_menu_btn_bg_hover.gif);
  background-repeat: no-repeat;
}


.menu_btn_under {
  margin: 0 0 10px 0;
  padding: 0 2px 0px 0;
  width: 210px;
  text-align: left;
}

.menu_btn_under a{
  margin: 0 0 8px 0;
  color: #db722b;
  display: block;
  border: solid 1px #dddddd;
  padding: 8px 4px 4px 12px;
  font-size: 13px;
  line-height: 200%;
  text-decoration: none;
  background-image: url(img/side_menu_btn_under_bg.gif);
  background-repeat: no-repeat;
 }

.menu_btn_under a:hover{
  color: #db8449;
}


@media screen and (max-width: 768px) {
/* タブレット */

	.menulist{
		display: none;
	}
	#side{
		display: flex;
		justify-content: flex-end;
		padding-top: 1em;
	}
	.menu_btn {
		margin-right: 8px;
	}
	.menu_btn a {
		margin: 0 0 8px 0;
		padding: 8px 4px 4px 20px;
		line-height: 1.6em;
		background-size: cover;
	}
	.menu_btn_under a {
		margin: 0 0 8px 0;
		line-height: 1.6em;
		background-size: cover;
	}
}
@media screen and (max-width: 640px) {
/* スマホ */

	.menulist{
		display: none;
	}
	#side{
		display: flex;
		justify-content: center;
		padding-top: 1em;
	}
	.menu_btn {
		margin-right: 8px;
	}
	.menu_btn a {
		margin: 0 0 8px 0;
		padding: 8px 4px 4px 20px;
		line-height: 1.6em;
		background-size: cover;
	}
	.menu_btn_under a {
		margin: 0 0 8px 0;
		line-height: 1.6em;
		background-size: cover;
	}
}


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

/*フッターメニュー　------------------------------------------*/
#footer-menu_sp{
	display: none;
}
#footer-menu_pc{
	display: block;
	}
	
#footer-menu_pc{
	text-align: left;
	padding: 1em;
	margin: 0;
}
#footer-menu_pc ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#footer-menu_pc li:before {
	content: none;
 	margin-right: 0;
}
#footer-menu_pc li {
    margin: 0;
    padding: 0;
    font-size: 14px;
    line-height: 1.2em;
    font-weight: normal;
    display: block;
    width: auto;
}
#footer-menu_pc li:last-child{
	margin-right: 0;
}

#footer-menu_pc a {
	text-decoration: none;
	display: block;
	margin: 0;
	padding:8px 9px;
	min-height: 30px;
	/*background: #f4f0d7;
    border-radius: 4px;
	box-shadow: 3px 3px #999;*/
}
#footer-menu_pc a::before {
	font-family: FontAwesome;
    content: '\f0da';
    margin-right: 0.5em;
    color: #fccc00;
}
/*#footer-menu a:hover {
	text-decoration: underline;
}*/
@media screen and (max-width: 640px) {
/* スマホ */
	#footer-menu_pc{
		display: none;
	}
	#footer-menu_sp{
	display: block;
	}
	#footer-menu_sp{
	background-color: none;
	text-align: left;
	padding: 0;
	margin: 0 0 1em;
	}


	#footer-menu_sp ul {
		list-style: none;
		margin: 0 5%;
		padding: 0;
		display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
	}
	#footer-menu_sp li:before {
		content: none;
		margin-right: 0;
	}
	#footer-menu_sp li {
		margin: 0 0 0.8em;
		padding: 0;
		font-size: 14px;
		line-height: 1.2em;
		font-weight: normal;
		display: block;
		width: 48%;
		border-bottom: #FFF solid 1px;
	}

	#footer-menu_sp a {
		text-decoration: none;
		display: block;
		margin: 0;
		padding:8px 18px;
		min-height: 36px;
		background: #f6af49;
		border-radius: 18px;
		box-shadow: 3px 3px 2px #aaa;
		color: #fff;
	}
	#footer-menu_sp a::before {
		content: '';
		display: inline-block;
		width: 20px;
		height: 20px;
		background-image: url(img/menu_onpu.png);
		background-repeat: no-repeat;
		background-size: contain;
		vertical-align: middle;
	}
		#footer-menu_sp a.current {
		background: #f08200;
	}
		#footer-menu_sp a.current::before {
		background-image: url(img/menu_onpu_current.png);
	}
}
/*フッター　------------------------------------------*/

#footer{
	color: #412f17;
}
#footer p#site-title{
	font-size: 16px;
	line-height: 1.4em;
	font-weight: 600;
	padding: 0;
    margin: 0 0 0.5em;
}
#footer #site-title a{
	color: #333;
	text-decoration: none;
}
#footer p.howToAccess{
	margin:0.5em 0 0.3em;
	padding: 0;
	font-weight: 600;
	line-height: 1.2em;
	}
#footer p.tel{
	margin:0 0 0.5em;
	padding: 0;
	font-size: 18px;
	line-height: 1.4em;
	}
#footer p.tel:before {
  font-family: FontAwesome;
  content: '\f095';
  margin-right: 0.3em;
}
#footer p span.footer_email{
	font-size: 12px;
	line-height: 1.4em;
	font-weight: 600;
	padding: 0.25em 0.5em;
	background: #e3c398;
	letter-spacing: 0.1em;
	}
#footer p#footer_copyright{
	font-size: 10px;
	margin:0;
	padding: 0;
}
@media screen and (max-width: 640px) {
/* スマホ */
	#footer{
		width: 100%;
		margin: 0;
	}
	#footer p.addressTxt{
	margin:0 0 0.5em;
	}
}

/*各ページ共通設定　------------------------------------------*/

/*パンくずリスト　-----*/
#breadcrumb{
	font-size: 10px;
	color: #ccc;
	margin: 0 0 1em;
}

#home #breadcrumb{
	display: none;
}
#breadcrumb ol {
    margin: 0;
	padding: 0px;
	font-size: 0.8em;
}
#breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
}
#breadcrumb li:before {
    content: none;
}
/*#breadcrumb li:before {
    font-family: FontAwesome;
    content: '\f0da';
    color: #b2d36a;
    position: absolute;
    left: 0;
    top: 0;
}*/
#breadcrumb li:after {
  /* >を表示*/
  content: '>';
  padding: 0 0.2em;
}

#breadcrumb li:last-child:after {
  content: '';
}

#breadcrumb li a {
  font-size: 10px;
  color: #ccc;
  text-decoration: none;
}
#breadcrumb li a:hover {
  /*color: #189384;*/
	text-decoration: underline;
}


/*各ページ　次のページへ　-----*/
.next-page{
	color: #ccc;
	margin:2em 0;
	padding: 0;
	text-align:right;
}
/*.next-page a{
	color: #ccc;
}
.next-page a:hover{
	color: #189384;
}*/
.next-page a:before {
  font-family: FontAwesome;
  content: '\f101';
}


/*共通設定------------------------------------------*/
.txt_S{
	font-size:12px !important;
	}
.txt_M{
	font-size:14px !important;
	}
.txt_ML{
	font-size:16px !important;
	line-height: 27px !important;
	}
.txt_L{
	font-size:18px !important;
	line-height: 30px !important;
	}
.txt_weight_normal{
	font-weight: normal;
	}
.txt_weight_bold{
	font-weight: bold;
	}
.txt_S_gray{
	font-size:12px;
	color: #777;
	}
.txt_bold_pink{
	font-weight: bold;
	color: #ED5880;
	}
.txt_bold_blue{
	font-weight: bold;
	color: #509ec0;
	}
.txt_bold_dullblue{
	font-weight: bold;
	color: #146c94;
	}
.txt_gray{
	color: #777;
	}
.txt_gold{
	color: #dedba9;
	}
.txt_pink{
	color: #ED5880;
	}
.txt_blue{
	color: #509ec0;
	}
.txt_dullblue{
	color: #146c94;
	}
.txt_violet{
	color: #7561A7;
	}
.txt_green{
	color: #6B9000;
	}
.txt_red{
	color: #e04d46;
	}
.txt_orange{
	color: #da6700;
}
.txt_underline{
	text-decoration: underline;
	}
	
.base_box{
	width: 100%;
	
	margin: 0 0 10px;
	padding: 0px;
	height: auto;
	
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	justify-content:space-between;
	}
ul.base_box li{
	margin: 0;
    padding: 0;
}
ul.base_box li:before {
    content: none;
}
.box_left{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 1;
	}
.box_right{
	margin: 0px;
	padding: 0px;
	flex: 2;
	}
.box_rightS{
	margin: 0px;
	padding: 0px;
	flex: 1;
	}
.box_leftM{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 2;
	}
.box_rightL{
	margin: 0px;
	padding: 0px;
	flex: 3;
	}
.box_leftL{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 3;
	}
.box_leftLM{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 530px;
	}
.box_leftLL{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 560px;
	}
.box_leftS{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 220px;
	}
.box_leftSS{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 160px;
	}	
.box_left50{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 1;
	}
.box_right50{
	margin: 0 0 20px 20px;
	padding: 0px;
	flex: 1;
	}
.box_left250{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 250px;
	}
.box_left50 img.img_waku,
.box_right50 img.img_waku{
	width: 100%;
	height: auto;
	}

.margin-top{
	margin-top: 30px !important;
	}
.margin-top0{
	margin-top: 0 !important;
	}
.margin-bottom{
	margin-bottom: 30px !important;
	}
.margin-bottom0{
	margin-bottom: 0 !important;
	}
.margin-bottom5px{
	margin-bottom: 5px !important;
	}
section{
	margin-bottom: 30px;
	}
.img_waku{
	border: 1px solid #e6e6e6;
	padding: 4px;
	margin-bottom: 5px;
	box-sizing:border-box;
	}
.img_space_right{
	margin-right: 3px;
	}
	
.align_left{
	text-align: left;
}
.align_right{
	text-align: right;
}
.align_center{
	text-align: center;
}
#contents p.tensen{
	border-bottom: 1px dashed #CCC;
	margin: 2em 0 2em 0;
	padding: 4px;
	}
.box_pink{
	background: #FCEAF4;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_gray{
	background: #ECECEC;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_yellow{
	background: #FCF9DA;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_yellow2{
	background: #f5f5de;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_blue{
	background: #e9f6fc;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_dullblue{
	background: #e2eaee;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_color{/*pink*/
	margin: 20px 0;
	padding: 20px;
	background-color: #fde4e3;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
.box_color2{/*yellow*/
	margin: 20px 0;
	padding: 20px;
	background-color: #f9edc1;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
.box_color3{/*green*/
	margin: 20px 0;
	padding: 20px;
	background-color: #e7ebbf;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
.box_color4{/*orange*/
	margin: 20px 0;
	padding: 20px;
	background: #F9E5A5;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	
	}
.box_color5{/*blue*/
	margin: 20px 0;
	padding: 20px;
	background: #e9f6fc;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	
	}
.box_color6{/*gray*/
    margin: 20px 0;
	padding: 20px;
	background: #ececec;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	
	}

.margin-top0{
	margin-top:0;
	}
.margin-left10{
	margin-left:10px;
	}
.box_color p:last-child,
.box_color2 p:last-child,
.box_color3 p:last-child,
.box_color4 p:last-child,
.box_color5 p:last-child{
	margin-bottom:0;
	}
	

	
#contents .box_yellow h4{
	color:#FCBF00;/*文字色*/
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 10px;
	padding: 0;
	line-height: 1.2em;
	vertical-align: middle;
	}
.arrow_gray{
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	margin: 2px 5px 2px 0;
	border-style: solid;
	border-width: 6px 0 6px 7px;
	border-color: transparent transparent transparent #666666;
	}
.arrow_yellow{
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	margin: 2px 5px 2px 0;
	border-style: solid;
	border-width: 6px 0 6px 7px;
	border-color: transparent transparent transparent #FCE389;
	}
.box_line{
	background: #FFF;
	margin: 20px 0;
	padding: 20px;
	border: 1px solid #CCC;
	}
.box_line2 {
    background: #FFF;
	margin: 20px 0;
	padding: 20px;
	border: 1px solid #CCC;
	border-radius: 8px;
}
	
.gotoTop{
	font-size: 12px;
	text-align: right;
	margin: 2em 0;
	padding: 0px;
	}
.gotoTop a:link,
.gotoTop a:visited{
	color: #44afde;
	text-decoration: underline;
}

.gotoTop a:after {
  font-family: FontAwesome;
  content: '\f0d8';
  text-decoration: none;
}

.flexbox {
  display: -webkit-flex; /* Safari */
  display: flex;
}
 
.flexbox_inner {
  display: flex;
}
.flexbox_inner_center {
  -webkit-align-items: baseline; /* Safari */
  align-items:         baseline;
}
.flexbox_inner:first-child,
.flexbox_inner_center:first-child{
  margin-right: 20px;
}
.flex-container_pcOnly {
  display: -webkit-flex; /* Safari */
  display:flex;
  justify-content:space-between;
}
.flex_innerLeft{
  margin-right: 20px;
}
#contents .flex_innerLeft h3,
#contents .flex_innerRight h3,
#contents .flex_innerLeft h4,
#contents .flex_innerRight h4,
#contents .flex_innerLeft h5,
#contents .flex_innerRight h5,
#contents .flex_innerLeft h6,
#contents .flex_innerRight h6,

#contents .box_line h2,
#contents .box_line h3,
#contents .box_line h4,
#contents .box_line h5,
#contents .box_line h6,

#contents .box_line2 h2,
#contents .box_line2 h3,
#contents .box_line2 h4,
#contents .box_line2 h5,
#contents .box_line2 h6{
  margin-top: 0;
}
th.nowrap,
td.nowrap{
	white-space: nowrap;}


/*問い合わせボタン--------------------------------*/	
#contents .btn_toiawase {
	width: 380px;
	height: 40px;
	font-size:18px;
	line-height: 20px;
	font-weight: 600;
	color: #FFF;
	text-decoration: none;
	display: block;
	margin: 0 auto 1.6em;
	padding: 10px;	
	background: #e96e01;/*orange*/
	background: linear-gradient(#eaa76b, #e96e01);
	border-radius: 20px;
	box-shadow: 3px 3px 3px #666666;
	text-align: center;
}
#contents a.btn_toiawase:before{
 	content: "\f101";
  	font-family: FontAwesome;
 	margin-right: 6px;
	color: #FFF;
	font-weight: normal;
}

#contents a.btn_toiawase:link,
#contents a.btn_toiawase:visited{
	color: #FFF;
	text-decoration: none;
}


#contents a.btn_toiawase:hover,
#contents a.btn_toiawase:focus {
	
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;
	margin: 0 auto 1.6em;
}
@media screen and (max-width: 640px) {
/* スマホ */
	
	#contents .btn_toiawase {
	width: 94%;
	min-height: 40px;
	font-size:16px;
	line-height: 20px;
	font-weight: 600;
	color: #FFF;
	text-decoration: none;
	display: block;
	margin: 0 auto 1.6em;
	padding: 10px;	
	background: #e96e01;/*orange*/
	background: linear-gradient(#eaa76b, #e96e01);
	border-radius: 20px;
	box-shadow: 3px 3px 3px #666666;
	text-align: center;
}
	
}











@media screen and (max-width: 640px) {
/* スマホ */
/*共通設定------------------------------------------*/
.base_box{
	width: 100%;
    display: block;
	}
.box_left,
.box_right,
.box_rightS,
.box_rightL,
.box_leftM,
.box_leftL,
.box_leftLM,
.box_leftLL,
.box_leftS,
.box_leftSS,
.box_left50,
.box_right50,
.box_left250{
	margin: 0 0 20px;
	padding: 0;
	width: 100%;
	}

.flex-container_pcOnly {
  display:block;
  }
.flex_innerLeft{
  margin-right: 0;
  margin-bottom: 30px;
}

#box_prof:before{
	left: 50%;
}
.photo_teacher{
	margin: 0 auto 20px;
}
.txt {
    width: 100%;
}

/*問い合わせボタン--------------------------------*/	
a.btn_toiawase{
	width: auto;
}

figure,
figcaption,
figcaption.align_right{
	text-align: center;
	}
figure img{
	max-width: 100%;
	height:auto;
	}


 
 
 
}

/*テーブル*/
table{
width:auto;
 table-layout: fixed;
 border: none;
 border-collapse: separate;
 border-spacing: 2px 0px;
	margin-bottom: 1em;
}
th {
 border: none;
	border-bottom: solid 2px #FFF;
	background-color:#d6e5b5;
	padding:0.5em 1.2em;
	text-align:center;
	vertical-align: middle;
}
 
td {
   border: none;
  border-bottom: solid 2px #FFF;
	background-color:#f2f2e2;
	padding:1em;
	text-align:center;
	vertical-align: middle;
}

#main p.tel:before {
    font-family: FontAwesome;
    content: '\f095';
    margin-right: 0.3em;
}
#main p.tel {
    margin: 0 0 0.5em;
    padding: 0;
    font-size: 24px;
    line-height: 1.4em;
}



/*リストを音符に*/
ul.onpu li {
    margin: 0 0 0.5em 0;
	padding-left: 1.3em;
}
ul.onpu li:before {
  	font-family: initial;
  	content: '♪';
  	color:#b2d36a;
	position:absolute;
	left:0;
	top:0;
}


.txt_box {
    margin: 0px;
    padding: 0px;
    flex: 1.5;
}
.img_box{
  	margin: 0px;
    padding: 0px;
    flex: 1;
 	text-align:center;
	padding-top: 30px;
}
.img_box img{
	width: 90%;
	height: auto;
}

@media screen and (max-width: 640px){
.txt_box,.img_box {
    margin: 0 0 20px;
    padding: 0;
    width: 100%;
}
	.img_box img{
	width: 70%;
	height: auto;
}
	img{
	max-width: 100%;
	height: auto; 
	}
}
.content_box{
	margin: 20px 20px 60px 20px;
	width: 600px;
	display: block;
	overflow:hidden;
}
@media screen and (max-width: 640px) {
	#contents img.picture,
	#contents img.picture_r{
		display: block;
		width: 100%;
		max-width: 100%;
		margin: 0 auto 1em;
		float: none;
		border: 1px solid #ccc;
		padding: 5px;
	}
	#contents p{
		max-width:100% !important; 
		height: auto !important;
	}
	.content_box{
	margin: 1.6em 3% 4em 3%;
	width: 94%;
}
}
