/*---------------------------------------------
	Browser Default Initialization
  ---------------------------------------------*/

html {
	overflow-y: scroll;
}

body, div, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, hgroup, header, address,
figure, figcaption {
	margin: 0;
	padding: 0;
}

/*address, caption, cite, code, dfn, em, strong, th, var {*/
address, caption, cite, code, dfn, em, th, var {
	font-style: normal;
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
q:before ,q:after {
	content: '';
}
object, embed {
	vertical-align: top;
}
hr, legend {
	display: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
img, abbr, acronym, fieldset {
	border: 0;
}
img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
ul li {
	list-style-type: none;
}


/*---------------------------------------------
	body
  ---------------------------------------------*/

body {
	color: #333;
	line-height: 1.8;
	text-align: left;
	-webkit-text-size-adjust: none;
}

/*---------------------------------------------
	Text
  ---------------------------------------------*/


html {
    font-family: Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ" , Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;}

html { font-size: 10px;}
body { font-size: 14px; font-size: 1.4rem; }
h1 { font-size: 11px; font-size: 1.1rem; }
h2 { font-size: 32px; font-size: 3.2rem; }
h3 { font-size: 22px; font-size: 2.2rem; }
h4 { font-size: 18px; font-size: 1.8rem; }
h5 { font-size: 14px; font-size: 1.4rem; }
p { font-size: 14px; font-size: 1.4rem; }
li { font-size: 14px; font-size: 1.4rem; }

h2, h3, h4 { font-family: "UD新ゴ R"; }
h2, h3, h4 { margin-top:40px; }
h5 { margin-top:30px; }
p { margin-top: 0.8em; }
i.fa { margin: 0 0.3em 0 0.3em; }
h2 .fa { margin-left:0; }


@media screen and (max-width: 640px) {
html { font-size: 10px;} /* = 10px */
body { font-size: 1.6rem; } /* = 16px */
h2 { font-size: 2.8rem; }
h3 { font-size: 2.0rem; }
h4 { font-size: 1.8rem; }
h5 { font-size: 1.4rem; }
p { font-size: 1.4rem; }
h2, h3, h4 { margin-top:20px; }
}

.text11 { font-size: 11px; font-size: 1.1rem; }
.text12 { font-size: 12px; font-size: 1.2rem; }
.text13 { font-size: 13px; font-size: 1.3rem; }
.text14 { font-size: 14px; font-size: 1.4rem; }
.text15 { font-size: 15px; font-size: 1.5rem; }
.text16 { font-size: 16px; font-size: 1.6rem; }
.text18 { font-size: 18px; font-size: 1.8rem; }
.text20 { font-size: 20px; font-size: 2.0rem; }
.text24 { font-size: 24px; font-size: 2.4rem; }

h1 { margin: 5px 0; }
h2 { color: #005C9D; }
h4 { line-height: 1.5; color: #005C9D; }

h4.title2 { font-family: "UD新ゴ M"; font-size: 20px; font-size: 2.0rem; }

/*---------------------------------------------
	Anchor
  ---------------------------------------------*/

a {
	outline: none;
}

a:link {
	text-decoration: none;
	color: #005BAC;
}
a:visited {
	text-decoration: none;
	color: #003565;
}
a:hover {
	text-decoration: underline;
	color: #c00;
}
a:active {
	text-decoration: underline;
	color: #c00;
}

a img:hover {
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;
}


/* ------ Table ------ */
table {
	width:100%;
    border-collapse: collapse;
    border-spacing: 0;
	font-size:inherit;
}


/* ------ 全体設定 ------ */
img {
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}

#wrapper {
	width: 100%;
}


/* ------ float clear ------ */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.center {
	text-align: center;
}
i.fa {
	margin: 0 0.3em;
}


/* ------ ヘッダ ------ */

header {
	max-width: 960px;
	margin: 0 auto;
}


/* ------ メインビジュアル ------ */

#mainvisual {
	max-width: 960px;
	margin: 0 auto 20px;
}

/* ------ コンテンツ ------ */

#contents-container {
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
	*zoom: 1;
}

@media screen and (min-width: 980px) {
.forSP { display:none; }
}
@media screen and (max-width: 979px) {
.forSP { display:none; }
}
@media screen and (max-width: 767px) {
.forPC { display:none }
.forSP { display:inherit }
}


.padding-top-zero {
	padding-top: 0;
	margin-top: 0;
}

.tel {
	font-size: 140%;
}
.notice {
	color: #c00;
}

.img-right {
	float: right;
	position:relative;
	margin-top: 7px;
	margin-bottom: 5px;
	margin-left: 30px;
}
.img-right.flyer { max-width: 150px; }
.img-right.pd { max-width: 100px; }
.img-right.pd img { border-radius: 10px; }
.img-right.photo { max-width: 75px; }
.img-right.photo img { border-radius: 10px; }

@media screen and (max-width: 767px) {
.img-right.flyer { max-width: 100px; }
.img-right.pd { max-width: 100px; }
.img-right.photo { max-width: 60px; }
}


/* ------ ボタン ------ */
.btn, .btn50 {
	margin: 25px 0;
	text-align: center;
	text-decoration: none;
	font-weight:bold;
}
.btn50 {
	width:50%;
}

.btn a, .btn50 a {
	display: block;
	color: #fff;
	background-color: #005BAB;
	padding: 6px 0 5px;
	border-radius: 15px;
}
.btn a:hover, .btn50 a:hover {
	background-color: #f90;
}

@media screen and (max-width: 767px) {
.btn50 { width:100%; }
}



.waku {
	border: #ccc 1px solid;
	padding: 20px;
	margin: 20px 0 30px;
	background-color: #efefef;
}

dl.program {
	margin-bottom: 20px;
/*	border-top: 1px dotted #999999;
	padding-top: 18px;
	font-size: 14px; font-size: 1.4rem;*/
}
dl.program dd {
	padding-left : 8em;
	padding-bottom: 15px;
	margin-bottom: 18px;
	border-bottom: 1px dotted #999999;
}
dl.program dd h3, dl.program dd h4 {
	margin: 0 0 10px;
}
dl.program dt {
	clear : both;
	float : left;
	width : 8em;
}

dl.program dd p.underline {
	padding-bottom: 15px;
	margin-bottom: 18px;
	border-bottom: 1px dotted #999999;
}


@media screen and (max-width: 479px) {
dl.program dd {
	padding-left : 0;
}
dl.program dt {
	float : none;
	font-weight: bold;
	margin-bottom: 5px;
}
}

.list-line {
	margin-top: 20px;
}

.list-line li {
	margin-bottom: 10px;
	border-bottom: 1px dotted #999999;
	padding-bottom: 10px;
}




/* ------ GoogleMap ------ */
#map_canvas {
	width: 100%;
	height: 400px;
	margin: 20px 0;
}
@media screen and (max-width: 479px) {
#map_canvas {
	height: 250px;
	margin-top:30px;
}
}


/* ------ フッタ ------ */

footer {
	color: #fff;
	background-color: #005C9D;
	margin-top: 20px;
}
#footer-inner { max-width: 960px; margin: 0 auto; padding: 20px 0; }
#footer-inner p { font-size: 12px; font-size: 1.2rem; }




#page-top{
	width:50px;
	height:50px;
	display:none;
	position:fixed;
	right:16px;
	bottom:16px;
}
#page-top p {
	margin: 0;
	padding: 0;
	text-align: center;
	background-color: #005C9D;
}
#page-top p:hover{
	background-color: #f60;
}
#move-page-top{
	color:#fff;
	line-height:50px;
	text-decoration:none;
	display:block;
	cursor:pointer;
}


@media screen and (max-width: 979px) {
header { width: 94%; margin-bottom: 10px; }
#contents-container { width: 94%; margin: 0 auto; }
#footer-inner { width: 94%; }
}

@media screen and (max-width: 767px) {
header { display:none; }
#mainvisual .forPC { display:none; }
#mainvisual .forSP { display:inherit; }
}


@media print {
.forSP { display:none }
}