/* 
 * ------- additional css elements  ---------------------
 */


/*----------------------------
free area
-----------------------------*/
@font-face {
  font-family: "myFont";
  src: url("../fonts/huifont.eot?")  format('eot'),
       url("../fonts/huifont.woff2") format('woff2'),
       url("../fonts/huifont.woff")  format('woff');
}
.myFontClass {
  font-family: "myFont";
}
.free-area {
	width:100%;
	border-top:1px solid #d7d7d7;
	padding: 50px 0;
	background-image:url(../img/top/bg_freearea.png);
	background-position: 2% bottom;
	background-repeat: no-repeat;
}

.free-area .inner {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
.free-area .inner h2 {
	margin: 0;
	padding: 0;
	margin-bottom: 0.5em;
	width: 100%;
	background-color: #333;
	background-image: url(../img/top/bg_patten1.png);
	color: #fff;
	padding: 5px 10px;
	box-sizing: border-box;
	border-radius: 2px;
	line-height: 1;
}



/*===========================
list
===========================*/

ul.nb_circle li {
	padding: 0 0 0.2em 1.2em;
	margin-bottom: 0.2em;
}
ul.nb_circle li:before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	background-color: #222;
	border-radius: 50%;
	left: 0.3em;
	margin-top: 0.5em;
}
ul.nb_circle, ul.circle2, ul.circle3, ul.check2, ul.check3 {
	position: relative;
}
ul.circle2 li, ul.check2 li {
	float: left;
	width: 45%;
	padding: 0 0 0.5em 1.8em;
	margin: 0 1% 0.5em;
	border-bottom: 1px dashed #CCC;
}
ul.circle2 li:before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	background-color: #222;
	border-radius: 50%;
	/* [disabled]left: 0.5em;
*/
	margin-top: 0.6em;
	margin-left: -1em;
}
ul.check2 li::before {
	display: block;
	position: absolute;
	content: "\f14a";
	font-family: FontAwesome;
	font-size: 1.3em;
	margin-left: -1.2em;
}
ul.circle3 li, ul.check3 li {
	float: left;
	width: 30%;
	padding: 0 0 0.5em 1.8em;
	margin: 0 1% 0.5em;
	border-bottom: 1px dashed #CCC;
}
ul.circle3 li:before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	background-color: #222;
	border-radius: 50%;
	/* [disabled]left: 0.5em;
*/
	margin-top: 0.6em;
	margin-left: -1em;
}
ul.check3 li::before {
	display: block;
	position: absolute;
	content: "\f14a";
	font-family: FontAwesome;
	font-size: 1.3em;
	margin-left: -1.2em;
}
ul.circle4 li, ul.check4 li {
	float: left;
	padding: 0 0 0.5em 1.8em;
	margin: 0 1% 0.5em;
	border-bottom: 1px dashed #CCC;
	width: 22%;
}
ul.circle4 li:before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	background-color: #222;
	border-radius: 50%;
	/* [disabled]left: 0.5em;
*/
	margin-top: 0.6em;
	margin-left: -1em;
}
ul.check4 li::before {
	display: block;
	position: absolute;
	content: "\f14a";
	font-family: FontAwesome;
	font-size: 1.3em;
	margin-left: -1.2em;
}

ul.circle5 li {
	margin-bottom: 0.2em;
	margin-top: 0.2em;
	float: left;
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 0.5em;
	padding-left: 1.8em;
	margin-right: 35px;
}
ul.circle5 li:before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	background-color: #222;
	border-radius: 50%;
	/* [disabled]left: 0.5em;
*/
	margin-top: 0.6em;
	margin-left: -1em;
}
ul.point2 li{
	background: #C93232;
	padding: 0.4em 0;
	margin: 0 1%;
	margin-bottom:10px;
	font-size:1rem;
	color:#FFF;
	text-align:center;
	border-radius: 20px;        /* CSS3草案 */
	-webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 20px;   /* Firefox用 */
	float: left;
	width: 48%;
}
ul.li_pdf {
	position: relative;
}

ul.li_pdf li {
	padding: 0 0 0.5em 1.8em;
	margin-bottom: 0.5em;
}
ul.li_pdf li:before {
	display: block;
	position: absolute;
	content: "\f1c1";
	font-family: FontAwesome;
	font-size: 1.3em;
	margin-left: -1.2em;
}

ul.li_pdf2 {
	position: relative;
}

ul.li_pdf2 li {
	float: left;
	width: 45%;
	padding: 0 0 0.5em 1.8em;
	margin: 0 1% 0.5em;
}
ul.li_pdf2 li:before {
	display: block;
	position: absolute;
	content: "\f1c1";
	font-family: FontAwesome;
	font-size: 1.3em;
	margin-left: -1.2em;
}
ol.num-list {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}
ol.num-list li{
  position: relative;
  padding-left: 30px;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 30px;
}

ol.num-list li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*以下数字のデザイン変える*/
  display:inline-block;
  background: #ee8800;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align:center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -moz-transform: translateY(-50%);
  	-webkit-transform: translateY(-50%);
  	-o-transform: translateY(-50%);
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);

}

.listbtn li{
	float:left;
	width:29%;
	margin:0 2%;
	background: #E6F5D8;
	padding:0.4em;
	border-radius:10px;
	text-align:center;
	font-weight:bold;
}
 @media screen and (max-width: 768px) {
.content ul.circle2 li, .content ul.check2 li {
	float: none;
	padding: 0 0 0.5em 1.8em;
	margin: 0 1% 0.7em; 
	width: 90%;
}
ul.circle5 li {
	width: 90%;
}
ul.li_pdf2 li {
	float: none;
	width: 90%;
	margin: 0 auto;
	margin-bottom: 0.5em;
}
.listbtn li{
	float: none;
	width: auto;
}
 }

/*----------------------------
table
-----------------------------*/




table.table-weekcalender th {
	text-align:center;
	background-color: rgba(160, 160, 160, 0.5);
}
table.table-weekcalender td {
	background-color: rgba(255, 255, 255, 0.8);
	text-align:center;
}
table.table-weekcalender td:first-child {
	text-align: center;
}

table.table-weekcalender {
	margin-bottom: 10px;
}


@media only screen and (max-width: 768px) {
	
table.table-weekcalender {
 display: block;
 border-top:none;
 width:100%;
}
table.table-weekcalender thead {
 display: block;
 float: left;
 border-bottom: 1px #ddd solid;
	width: 0%;
	box-sizing: border-box;
}
table.table-weekcalender tbody {
 display: block;
 width: 100%;
 position: relative;
 overflow-x: auto;
 white-space: nowrap;
	border-bottom: 1px #ddd solid;
}
table.table-weekcalender th {
 display: block;
 width:auto;
 border-top: 1px #ddd solid;
 border-bottom:none;
 border-right:1px #ddd solid;
 width:100%;
	padding: 8px 15px;
	box-sizing: border-box;
}
table.table-weekcalender tbody tr {
display: inline-block;
vertical-align: top;
margin: 0 0;
	width: 100%;
}
table.table-weekcalender td {
 display: block;
 border-bottom:none;
 text-align:center;
 border-left:none;
	padding: 8px 0;
	background: none;
	text-indent: 20px;
}
}


[href^="tel"] {
	text-decoration: none;
	color: #333;
	cursor: default;
	pointer-events: none;
}

@media screen and (max-width: 768px) {
[href^="tel"] {
	pointer-events: auto;
}
}
.lower-bar .inner .news dl {
}
.lower-bar .inner .news dl dt {
    float: left;
}
.lower-bar .inner .news dl dt, .lower-bar .inner .news dl dd {
	line-height: 1.2em;
	padding: 0.2em 0;
}
.lower-bar .inner .news dl dd {
	padding-left: 5.5em;
}

@media screen and (max-width: 768px) {
.lower-bar .inner .news dl dt {
	float: none;
}
.lower-bar .inner .news dl dd {
	padding-left: 0;
}
}
footer .add-banner .inner-add-banner .wrap-banner {
	width: auto;
}
.fa-lg {
	line-height: 1.5em!important;
}

@media screen and (max-width: 768px) {
.table-scroll {
	width: 100%;
	overflow-y: hidden;
	overflow-x: auto;
	-ms-overflow-style: -ms-autohiding-scrollbar;
	-webkit-overflow-scrolling: touch;
}
.table-scroll table {
	border-collapse: collapse;
}
.table-scroll th, .table-scroll td {
	border: solid 1px #ccc;
	padding: 8px;
	white-space: nowrap;
}
.table-scroll th {
}
.table-scroll::-webkit-scrollbar {
	height: 8px;
}
.table-scroll::-webkit-scrollbar-thumb {
	background: #aaa;
}
.table-scroll::-webkit-scrollbar-track {
	background: #ccc;
}
}
.ul2 li {
	list-style-type: disc;
	list-style-position: inside;
}
.inner-add-banner .wrap-banner.clearfix .sns li {
	margin-right: 0px;
	font-size: 2em;
}
@media screen and (max-width: 768px) {
.inner-add-banner .wrap-banner.clearfix .sns li {
	display: inline;
}
}
.content h2 {
	line-height: 1.2em;
}
.kakomi-kage1 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 color: #555555; /* 文字色 */
 background-color: #ffcccc; /* 背景色 */
 box-shadow: 0 0 10px 10px #ffcccc; /* 影 */
}


ul.icon-list {
    list-style-type: none;
    list-style-image: none;
    
}
ul.icon-list li {
    padding-left: 1.5em;
    text-indent: -1.5em;
    padding-top: 5px;
    padding-bottom: 5px;
}
ul.icon-list li:before {
	
    font-family: FontAwesome;
    content: '\f005 '; /* アイコンのunicode */
    color: #F3C21A;
    margin-right: 0.5em;
}
.th_color1 th {
    background-color: #FBE5E6;
}
.th_color2 th {
    background-color: #FCEEE4;
}
.th_width {
    width: 30%;
}
@media screen and (max-width: 768px) {
.th_width {
    width: 100%;
}	
}
/*other*/
.btn1 a{
	background:#9bc28a;
	text-decoration:none;
	padding:0.3em 3em;
	border-radius:5px;
	font-size:1.2em;
box-shadow:3px 3px 9px -7px #3e293b;	color:#FFF;
}
.btn1 a:hover{
	background:#aed99c;
}
.btn2 a{
	border:#000 1px solid;
	color:#000;
	text-decoration:none;
	padding:0.2em 3em;
}
.btn2 a:hover{
	background:#000;
	color:#FFF;
}
.tb1 th{
	width:35%;
	text-align:center;
	vertical-align:middle;
}

.tb1 td{
}
/*******************************
width
*******************************/

.w80{
	width:80%;
	margin:auto;
}
.w70{
	width:70%;
	margin:auto;
}
.w60{
	width:60%;
	margin:auto;
}
.w50{
	width:50%;
	margin:auto;
}
.w40{
	width:40%;
	margin:auto;
}

@media only screen and (max-width: 768px) {
	.w80,.w70,.w60,.w50,.w40{
	width: auto;
	margin:auto;
}
}
/*font*/
.add_font{
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	transform: rotate(.03deg);
}
.tx90{
	font-size:0.9em;
}

.tx120{
	font-size:1.2em;
}
.tx140{
	font-size:1.4em;
}
.box1{
	background: #F3FDE6;
	border:2px solid #FFF;
	box-shadow:0 0 0 2px #F3FDE6;
	padding:2em;
	box-sizing:border-box;
}
.box2{
	border:3px double #999;
	padding:2em;
	box-sizing:border-box;
}
.box3{
	background:#f3f5f0;
	padding:2em;
	box-sizing:border-box;
}

.box1 h3,.box2 h3,.box3 h3 {
	font-size:1.4em;
	margin-bottom:1.3em;
}
.box1 h3::after,.box2 h3::after,.box3 h3::after {
position:relative;
 background: none;
 bottom:0;
}


.txtR a{
	float:right;
	text-decoration:none;
}