/* =Responsive (Mobile) Design
-------------------------------------------------------------- */
.bdt1{
	 border-top:1px dotted #f40;
	}
.bdt2{
	 border-top:1px dashed #4f0;
	}
.bdt3{
	 border-top:1px solid #04f;
	}
.bdt4{
	 border-top:1px dotted #aa0;
	}
.bdt5{
	 border-top:1px dashed #0aa;
	}
.bdt6{
	 border-top:1px solid #a0a;
	}
.bdb1{
	 border-bottom:1px dotted #ed0;
	}
.bdb2{
	 border-bottom:1px dashed #6d0;
	}
.bgtint1{
	background-color:#eaeaea;
	}
.regpane{
	margin-bottom:20px;
}
.reg_ttl{
	font-size:120%;
	font-weight:500;
	background-color:#E2E2E2;
}
.tblstyle td{
	padding:8px 6px;
}
.regpane td:first-child {padding-left:20px;}
.min_b_pad{
	padding-bottom:2px !important;
}
.min_t_pad{
	padding-top:2px !important;
}
.min_bt_pad{
	padding-top:2px !important;
	padding-bottom:2px !important;
}
.centre_element_a p,.centre_element_b p{
	margin:8px 0 8px 0;
}
.centre_title{
	width:100%;
	padding:7px 0 8px 12px;
	color:#fff;
	font-size:130%;
	margin:0;
}
.centre_title_grey{
	width:100%;
	padding:7px 0 8px 12px;
	background-color:#fff;
	font-size:130%;
	margin:0;
}
a.log {
color: #fff;
}
a.log:hover {
color: #BCF8FE;
}
.logitem{
	float:left;
}

.loz_btn{
	padding: 4px 12px 5px 12px;
	white-space: normal;
	text-align: center;
	line-height: 1.1;
	background-color:#ffcb08;
	display:block ;
	cursor:pointer;
	border:none;
	border-radius:0;
	color: #fff ;
	font-weight:normal ;
}
.loz_btn:hover{
	background-color:#FFb02F ;
}
.loz_btn_plain{
	background-color:#456B9A  ;
	text-align:center ;
	color: #fff ;
	font-weight:normal;
}
.redtxt{
	color:#456B9A;
}
.circle{
 	-webkit-border-radius: 50% ;
	-moz-border-radius: 50%  ;
	border-radius: 50%  ;
}
.half_element_a,.half_element_b p{
		margin:4px 0;
	}
.socmedwrap{
	display:table;
	margin:0 auto
	}
.socmed{
	display:table-cell;
	padding:0 16px;
	}
.socmed img{
	height:40px;
}

.fourbox a{
    background-color:#ffcb08;
    display:inline-block;
    vertical-align:top;
    line-height:1;
    opacity:0.9;
    text-align:center;
    color:#fff;
}
.fourbox a:hover{
    background-color:#fff;
    color:#ffcb08;
    opacity:1;
}

@media screen and (min-width: 801px) {
 	.cpad {
	padding:0 20px;
	}

	.hpgbann{
		height:360px;
	}
	#ttl-block1{
		line-height:1.15;
	}
	#ttl-block2{
		padding-top:8px;
		font-size:78%;
		line-height:1.15;
		font-weight:normal;
	}
	#ttl-block2 p{
		font-size:90%;
	}
	.mapwrap{
		width:538px;
		margin:0 auto;
		padding:0;
		position:relative;
		font-size:11px;
	}
	.fourbox{
		font-size: 60px;
		line-height:1.05;
		vertical-align:top;
		font-weight:500;
        margin-bottom:60px;
	}
	.fourbox a{
		margin:0 30px;
		width:80px;
		height:80px;
		padding-top:8px;
	}
}

.calkeybox{
	display:inline-block;
	height:12px;
	width:12px;
	margin-right:1px;
	border:1px solid #ecc
}

@media screen and (min-width: 780px) {
	.calkey{
		display:inline-block;
		margin-left:10px;
	}

	.dbar_nav{
		vertical-align:top;
		width:20%;
		white-space:nowrap;
	}
	.dbar_left,.dbar_rt{
		vertical-align:top;
		width:40%;
	}
}
@media screen and (min-width: 1200px) {
	.dbar_rt{
		font-size:90%;
		padding-top:6px;
	}
}
@media screen and (max-width: 1199px) and (min-width: 993px){
	.dbar_rt{
		font-size:86%;
		padding-top:6px;
	}
}
@media screen and (max-width: 992px) and (min-width: 300px){
	.dbar_rt{
		font-size:86%;
		padding-top:0;
	}
}
@media screen and (max-width: 779px) and (min-width: 540px) {
	.calkey{
		display:inline-block;
		margin-left:10px;
		text-align:right;
	}
	.dbar_nav{
		vertical-align:top;
		width:26%;
		white-space:nowrap;
	}
	.dbar_left,.dbar_rt{
		width:37%;
	}

}
@media screen and (min-width: 540px) {
	.half_element_b {
		padding-top:5px;
	}
	.dbar_row{
		display:table;
	}
	.dbar_rt{
		text-align:right;
		display:table-cell;
	}
}


@media screen and (max-width: 539px) {
	.calkey{
		display:block;
	}
	.dbar_nav{
		vertical-align:top;
		width:50%;
		min-width:100px;
		white-space:nowrap;
	}
	.dbar_left{
		min-width:100px;
		width:50%;
	}
	.dbar_rt{
		width:100%;
		display:table;
	}
	.calkey{
		text-align:left;
		display:table-cell;
	}

}

@media screen and (max-width: 470px) {
	.calkey{
		float:left;
		margin:0 16px 2px 6px;
		text-align:left !important;
	}
}


@media screen and (max-width: 992px) {
	#ttl-block1{
		font-size:90%;
		margin-top:2px !important;
		line-height:1.1;
		bottom:0;
		/*color:#f5f !important;*/
	}
	#ttl-block2{
		padding-top:8px;
		font-size:55%;
		line-height:1.1;
		font-weight:normal;
	}
	#ttl-block2 p{
		font-size:58%;
		}
	.hpgbann{
		height:300px;
	}
}

@media screen and (max-width: 980px) {

	.mapwrap{
		width:538px;
		margin:0 auto;
		padding:0;
		position:relative;
		font-size:11px;
	}
	.grid,
	.grid-right {
		display: block;
		float: none;
		width: 100%;
		margin-right: 0;
	}

	.copyright,
	.scroll-top,
	.powered {
		float: left;
	}
	.hide-desktop {
		display: block;
	}

	.show-desktop {
		display: none;
	}

	.hide-980 {
		display: none;
	}

	.show-980 {
		display: block;
	}
}



@media screen and (max-width: 800px) and (min-width: 421px) {
	.fourbox{
		font-size: 50px;
		line-height:1.05;
		vertical-align:top;
		font-weight:500;
        margin-bottom:40px;
	}
	.fourbox a{
		margin:0 2.5%;
		width:70px;
		height:70px;
		padding-top:6px;
	}
}


@media screen and (max-width: 400px) {
	.fourbox{
		font-size: 36px;
		line-height:1.05;
		vertical-align:top;
		font-weight:500;
        margin-bottom:20px;
	}
	.fourbox a{
		margin:0 2%;
		width:45px;
		height:45px;
		padding-top:4px;
	}
}


@media screen and (min-width: 861px) {
	.regintro{
		vertical-align:top;
		display:inline-block;
	 	width:12%;
		margin:20px 3% 0 0;
	}
	.regpane{
		width:83%;
		vertical-align:top;
		display:inline-block;
	}

	.half_element_a{
		width:48.5%;
		margin:0 0 10px 0;
		float:left;
	}
	.half_element_b{
		width:48.5%;
		margin:0 0 10px 0;
		float:right;
	}
}

@media screen and (min-width: 961px) {
	.dtcell_lge{
		display:table-cell;
	}
	.dtcell_lge_rt{
		text-align:right;
		display:table-cell;
		padding:7px 1px 2px 40px;
	}
}
@media screen and (max-width: 960px) and (min-width: 661px) {
	.stack_med{
		text-align:right;
		display:block;
		margin:0 0 6px 0;
	}
	.dtcell_med{
		display:table-cell;
	}
	.nomarg{
		margin:0 !important;
	}
}
@media screen and (max-width: 660px) {
	.stack_sm{
		display:block;
		margin:0 0 6px 0;
	}
	.nomarg{
		margin:0 !important;
	}
}
@media screen and (max-width: 860px) and (min-width: 741px) {
	.half_element_a{
		width:54.4%;
		margin:0 0 10px 0;
		float:left;
	}
	.half_element_b{
		width:40.4%;
		margin:0 0 10px 0;
		float:right;
	}

}

@media screen and (max-width: 740px) and (min-width: 601px) {
	.half_element_a{
		width:59.4%;
		margin:0 0 10px 0;
		float:left;
	}
	.half_element_b{
		width:37.4%;
		margin:0 0 10px 0;
		float:right;
	}
}

@media screen and (max-width: 620px) {
	.half_element_a{
		width:100%;
		margin:0 0 10px 0;
	}
	.half_element_b{
		width:100%;
		margin:0 0 10px 0;
	}
}

@media screen and (max-width: 860px) {

	#logo {
		float: none;
		margin: 0;
		text-align: center;
		max-width:90%;
	}

	.grid,
	.grid-right {
		float: none;
	}

	.mapwrap{
	width:538px;
	margin:0 0 0 5%;
	padding:0;
	position:relative;
	font-size:11px;
	}

	.js .sub-header-menu {
		display: none;
	}

	.js .main-nav {
		clear: both;
		position: relative;
		margin: 0 auto;
		background-color: #585858;
		background-image: -webkit-gradient(linear, left top, left bottom, from(#585858), to(#3d3d3d));
		background-image: -webkit-linear-gradient(top, #585858, #3d3d3d);
		background-image: -moz-linear-gradient(top, #585858, #3d3d3d);
		background-image: -ms-linear-gradient(top, #585858, #3d3d3d);
		background-image: -o-linear-gradient(top, #585858, #3d3d3d);
		background-image: linear-gradient(top, #585858, #3d3d3d);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#585858, endColorstr=#3d3d3d);
	}

	.js .main-nav .menu {
		display: none;
		position: absolute;
		z-index: 1000;
		top: 30px;
		width: 100%;
	}

	.js .main-nav .menu ul {
		margin-top: 1px;
	}

	.js .main-nav .menu li {
		float: none;
		border: none;
		background-color: #fff;
	}

	.js .main-nav .menu li a {
		height: 45px;
		padding: 0 15px;
		border: none;
		border-bottom: 1px solid #f5f5f5;
		color: #444;
		text-shadow: none;
		font-size: 13px;
		font-weight: normal;
		line-height: 45px;
		text-align: left;
		cursor: pointer;
	}

	.js .main-nav .menu li.current_page_item,
	.js .menu .current_page_item a,
	.js .menu .current-menu-item a {
		background-color: #f5f5f5;
	}

	.js .main-nav .menu li li:hover {
		background: none !important;
	}

	.js .main-nav .menu li li a {
		position: relative;
		padding: 0 10px 0 30px;
	}

	.js .main-nav .menu li li li a {
		position: relative;
		padding: 0 10px 0 40px;
	}

	.js .main-nav .menu li a:hover,
	.js .main-nav .menu li li a:hover {
		background-color: #f5f5f5 !important;
		background-image: none;
		filter: none;
	}

	.js .main-nav .menu li li a::before {
		position: absolute;
		top: 0;
		left: 20px;
		content: "\2013";
	}
	.js .main-nav .menu li li li a::before {
		position: absolute;
		top: 0;
		left: 20px;
		content: "\2013";
	}
	.js .main-nav .menu li li li a::after {
		position: absolute;
		top: 0;
		left: 30px;
		content: "\2013";
	}
	.js .main-nav .menu li ul {
		visibility: visible;
		position: static;
		background-color: #fff;
	}

	.js .main-nav .menu ul {
		min-width: 0;
	}

	.js .main-nav #responsive_current_menu_item {
		display: block;
		padding: 5px 40px 5px 10px;
		color: #fff;
		font-weight: 700;
		cursor: pointer;
	}
	.js .main-nav a#responsive_menu_button {
		display: block;
		position: absolute;
		top: 0;
		left: 100%;
		width: 23px;
		height: 30px;
		margin-left: -30px;
		background: url("../images/select-icons.png") 0 5px no-repeat;
		cursor: pointer;
	}

	.js .main-nav a#responsive_menu_button.responsive-toggle-open {
		background: url("../images/select-icons.png") 0 -46px no-repeat;
	}
	.top-menu,
	.footer-menu li {
		float: none;
		font-size: 11px;
		text-align: center;
	}
	#author-meta {
		padding: 20px;
	}
	#wrapper .gallery .gallery-item {
		max-width: 100%;
	}
	.hide-650 {
		display: none;
	}
	.show-650 {
		display: block;
	}
	.hide-mobile {
		display: none;
	}
	#footer {
		text-align: center;
	}

}
@media screen and (max-width: 780px) {
	.mapwrap{
		width:100%;
		max-width:538px;
		margin:0 ;
		padding:0;
		position:relative;
		font-size:11px;
	}
	.mapwrapouter{
		width:90%;
		margin:0 0 0 5%;
	}
	.hpgbann{
		height:240px;
	}
}
@media screen and (min-width: 681px) {
	/*
	.rgnblock {
		margin:12px 25px 0 0;
		float:left;
		line-height:1.2;
		min-width:150px;
		width:17%;
	}
	*/
	#bklist_large{
		display:table;
		line-height:1.25;
		width:100%;
		margin:0 auto 20px auto;
	}
	#bklist_small{display:none}
}

@media screen and (max-width: 680px) {
	#content{
		margin:0;
	}
	#bklist_large{display:none}
	#bklist_small{
		display:block;
		line-height:1.25;
		max-width:400px;
		width:100%;
		margin:0 auto 20px auto;
	}

	.mapwrap{
		width:100%;
		margin:0 ;
		padding:0;
		position:relative;
		font-size:11px;
	}
	.mapwrapouter{
	width:90%;
	margin:0;
	}
}


.headcontent{
	max-width:90%;
	margin:10px auto 10px auto;
}


.hpghead{
	padding:0 0 10px 0;
	margin:0 !important;
}
.hpghead p{
	margin:0 !important;
}

@media screen and (min-width: 992px) {
	.pg_wid_wrap{
		padding:16px 30px ;
		margin:0;
		width:100%;
	}
	#headpanel{
		height:600px;
 		display: table;
	}
	.headcontent{
		display: table-cell;
		text-align:center;
    	vertical-align: middle;
	}
}

@media screen and (max-width: 991px) {
	.pg_wid_wrap{
		padding:16px 15px ;
		margin:0;
		width:100%;
	}
	#headpanel{
		height:550px;
 		display: table;
	}
	.headcontent{
		display: table-cell;
		text-align:center;
    	vertical-align: middle;
	}
}




@media screen and (min-width: 581px) {
	.showhide_large{
		display:block
		}
	.showhide_small{
		display:none
	}

}

@media screen and (max-width: 580px) {

	.headcontent{
		width:90%;
	}

	.hpghead{
		padding:0 0 2px 0;
		line-height:1.2;
		font-size:90%;
	}

	.showhide_large{
		display:none
		}
	.showhide_small{
		display:block
		}

	#ttl-block1{
		font-size:80%;
		display:block;
		padding:0 0 4px 0 ;
		line-height:1.05;
		/*color:#f5f !important;*/
	}
	#ttl-block2{
		font-size:52%;
		line-height:1.15;
		font-weight:normal;
	}
	#ttl-block2 p{
		font-size:50%;
	}
	#gsearch1,#gsearch2,#gsearch3{
		margin-bottom:18px;
	}
}

@media screen and (max-width: 480px) {
	#logo {
		float: none;
		text-align: center;
	}
	#ttl-block1{
		font-size:70%;
		display:block;
		margin:-3px 0 0 0 !important;
		padding:0;
		line-height:1.05;
		/*color:#f5f !important;*/
	}
	#ttl-block2{
		padding-top:0;
		font-size:52%;
		line-height:1.1;
		font-weight:normal;
	}
	#ttl-block2 p{
		font-size:50%;
		}

	.grid,
	.grid-right {
		float: none;
	}
	.hpgbann{
		height:180px;
	}
	/*
	.rgnblock {
	margin:12px 0 0 0;
	line-height:1.2;
	width:100%;
	}
	*/
	.navigation .next,
	.navigation .previous {
		display: block;
		margin: 0 auto;
		text-align: center;
	}

	.menu ul,
	.menu li,
	.top-menu,
	.footer-menu li,
	.sub-header-menu li {
		float: none;
		text-align: center;
	}

	#wrapper .gallery .gallery-item {
		float: none;
	}

	.hide-480 {
		display: none;
	}

	.show-480 {
		display: block;
	}

	#footer {
		text-align: center;
	}

}


@media screen and (max-width: 320px) {
	.icontext {
		font-size:80%;
	}
	.ictbstart{
		display: none !important;
	}
	.icontextlge h1{
  		white-space:normal;
		font-size:110%;
		font-weight:500;
		padding:2px 4px 0 0;
		line-height:1.1;
	}

	.hide-320 {
		display: none;
	}

	.show-320 {
		display: block;
	}
}

@media screen and (max-width: 240px) {

	.hide-240 {
		display: none;
	}

	.show-240 {
		display: block;
	}
}
