@charset "UTF-8";

/*================================================
*  CSSリセット
================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
*  一般・共通設定
================================================*/

body {
width: 100%;
margin: 0 auto;
font-size: 14px;
color: #382400;
font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
line-height: 1.6;
background-color: #FEF9F3;
}

#contents {
width: 960px;
margin: 30px auto;
}

#main {
float: right;
width: 650px;
padding-bottom: 30px;
}

#side {
float: left;
width: 252px;
}

#subnav {
display: none;
}

a {
color: #00A0DF;
text-decoration: none;
}

a:hover {
color: #e78f00;
}

h1 {
font-size: 40px;
font-weight: normal;
color: #717071;
line-height: 14px;
}

h1 a {
color: #717071;
text-decoration: none;
}

h1 a:hover {
color: #717071;
}

h1 span {
font-size: 8px;
}

h1 span:before {
content: "\A" ;
white-space: pre ;
}

h2 {
margin: 0;
padding: 0;
height: 80px;
text-indent: -9999px;
}

h2#introduction {
background: url(../images/ttl01.png) no-repeat #FADFC6;
}

h2#facility {
background: url(../images/ttl02.png) no-repeat #FADFC6;
}

h2#activity {
background: url(../images/ttl03.png) no-repeat #FADFC6;
}

h2#guide {
background: url(../images/ttl04.png) no-repeat #FADFC6;
}

h2#address {
background: url(../images/ttl05.png) no-repeat #FADFC6;
}

h2#news {
/* background: url(../images/ttl06.png) no-repeat #FADFC6; */
background: url(../images/ttl07.png) no-repeat #FADFC6;
}

h2#newslist {
/*background: url(../images/ttl07.png) no-repeat #FADFC6;*/
background: url(../images/ttl77.png) no-repeat #FADFC6;
}

h2#infection {
/* background: url(../images/ttl08.png) no-repeat #FADFC6; */
background: url(../images/ttl66.png) no-repeat #FADFC6;
}

h2#infectionlist {
background: url(../images/ttl09.png) no-repeat #FADFC6;
}

h3 {
color: #fff;
background: #83B740;
padding: 10px 20px;
border: 2px dashed rgba(255,255,255,0.5);
border-radius: 6px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
box-shadow: 0 0 0 5px #83B740, 0 2px 3px 5px rgba(0,0,0,0.5);
-moz-box-shadow: 0 0 0 5px #83B740, 0 2px 3px 5px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 0 0 5px #83B740, 0 2px 3px 5px rgba(0,0,0,0.5);
width: 85%;
margin: 25px auto;
font-size: 22px;
}

h4 {
margin-bottom: 10px;
font-size: 22px;
font-weight: bold;
color: #83B740;
width: 90%;
margin: 15px auto;
padding: 0 0px 0px 25px;
}

h5 {
margin: 30px;
padding: 10px;
color: #000;
font-size: 16px;
border-top: 1px dotted #999;
border-bottom: 1px dotted #999;
background: rgb(228, 247, 255);
text-align: center;
}

h6 {
float: left;
float: left;
width: 100%;
font-size: 20px;
font-weight: bold;
color: #5c9e3b;
}

h7 {
color: #fff;
background: #83B740;
padding: 10px 20px;
border: 2px dashed rgba(255,255,255,0.5);
border-radius: 6px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
box-shadow: 0 0 0 5px #83B740, 0 2px 3px 5px rgba(0,0,0,0.5);
-moz-box-shadow: 0 0 0 5px #83B740, 0 2px 3px 5px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 0 0 5px #83B740, 0 2px 3px 5px rgba(0,0,0,0.5);
width: 85%;
margin: 25px auto;
font-size: 22px;

}

p {
margin: 0 auto;
}

img {
vertical-align: bottom;
}

em {
font-weight: bold;
}

strong {
font-weight: bold;
color: #f19500;
}

pre {
margin: 1em 0;
padding: 1em;
}

blockquote {
margin-bottom: 1em;
padding: 1em;
border: 1px dotted #ddd;
border-left: 5px solid #ddd;
}

ul,ol,dl {
margin: 0 0 1em 0;
}

ul li {
list-style: disc;
}

ol li {
list-style: decimal;
}

li {
margin-left: 2em;
}

dt {
margin-bottom: 0.5em;
border-bottom: 1px dotted #ddd;
}

dt:before {
content: "\0025a0";
}

dd {
margin-bottom: 1em;
}

table {
width: 90%;
border-collapse: collapse;
border: 1px solid #ddd;
margin: 40px auto;
margin-bottom: 60px;
}

th {
padding: 10px;
text-align: center;
vertical-align: middle;
border: 1px solid #ddd;
background: rgb(228, 247, 255);
font-weight: bold;
}

tr {
background: #FFF;
}

tr:nth-child(2n+1) {
background: rgb(228, 247, 255);
}

td {
padding: 10px;
text-align: left;
border: 1px solid #ddd;
}

#timeschedule {
margin: 0 auto;
border-collapse: separate;
border-spacing: 0;
text-shadow: 0 1px 0 #fff;
color: #2a2a2a;
border: none;
}

#timeschedule td{
height: 50px;
line-height: 50px;
padding: 0 20px;
border:none;
box-shadow: 0 1px 0 white;
-moz-box-shadow: 0 1px 0 white;
-webkit-box-shadow: 0 1px 0 white;
white-space: nowrap; 
text-align: center;
}

#timeschedule tbody td{
text-align: center;
width: 150px;
}

#timeschedule tbody td:first-child{
width: auto;
text-align: left;
}

#timeschedule td:nth-child(2), td:nth-child(3){
background: #efefef;
background: rgba(144,144,144,.15);
border-right: 1px solid white;
}

#timeschedule td:nth-child(4){
background: #e7f3d4;
background: rgba(184,243,85,.3);
}

#timeschedule thead td{
-moz-border-radius-topright: 10px;
-moz-border-radius-topleft: 10px; 
border-top-right-radius: 10px;
border-top-left-radius: 10px;
border-top: 1px solid #eaeaea; 
}

#timeschedule thead td:first-child{
border-top: none;
}

#timeschedule tfoot td{
-moz-border-radius-bottomright: 10px;
-moz-border-radius-bottomleft: 10px; 
border-bottom-right-radius: 10px;
border-bottom-left-radius: 10px;
border-bottom: 1px solid #dadada;
}

#timeschedule tfoot td:first-child{
border-bottom: none;
}

#timeschedule tr:nth-child(2n+1) {
background:none;
}

/*================================================
*  ヘッダー
================================================*/

header {
width: 100%;
height: 140px;
background: url(../images/hd-bg.gif) repeat-x #FEF9F3;
position: relative;
}

#headerbox {
width: 960px;
margin: 0 auto;
padding-top: 70px;
}

header h1 {
margin: 0px;
float: left;
}

.headerright {
float: right;
}

.headerimg {
float: right;
margin: 10px 5px 0 0;
border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
}

/*================================================
*  グローバルナビゲーション
================================================*/

nav {
width: 100%;
overflow: hidden;
}

nav > ul {
width: 252px;
height: 362px;
margin: 0 auto;
padding: 0;
}

nav > ul > li {
list-style-type: none;
margin: 0;
padding: 0;
}

nav > ul > li > a {
display: block;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
}

nav > ul > li > a:hover {
background-position: -504px 0px;
}

.home > .menu-01 > a ,
.introduction > .menu-02 > a ,
.facility > .menu-03 > a ,
.activity > .menu-04 > a ,
.guide > .menu-05 > a ,
.address > .menu-06 > a {
background-position: -252px 0px;
}


.menu-01 > a {
background-image: url(../images/menu-01.png);
height: 60px;
}

.menu-02 > a {
background-image: url(../images/menu-02.png);
height: 60px;
}

.menu-03 > a {
background-image: url(../images/menu-03.png);
height: 60px;
}

.menu-04 > a {
background-image: url(../images/menu-04.png);
height: 60px;
}

.menu-05 > a {
background-image: url(../images/menu-05.png);
height: 60px;
}

.menu-06 > a {
background-image: url(../images/menu-06.png);
height: 62px;
}

nav ul ul {
border: 1px solid #DADADA;
display: none;
position: absolute;
z-index: 100;
width: auto;
}

nav ul ul a {
color: #969696;
background: none;
text-indent: 0;
height: 18px;
padding: 6px;
border-top: dotted 1px #ddd;
font-size: 12px;
display: block;
}

nav ul ul li {
background: #FFF;
float: none;
color: #666;
list-style-type: none;
margin: auto;
}

nav ul ul li:hover {
background: #00A0DF;
float: none;
color: #FFF;
list-style-type: none;
margin: auto;
}

nav ul ul li a {
text-decoration: none;
color: #717071;
font-size: 15px;
font-weight: normal;
margin: auto;
}

nav ul li:hover > ul, div.menu ul li:hover > ul {
display: block;
}

/*================================================
*  サブコンテンツ
================================================*/

.submenu li {
margin: 0;
padding: 0;
list-style: none;
}

.submenu li a:before {
content: "\0025a0";
color: #000;
}

.submenu li a {
display: block;
padding: 5px 2px;
color: #000;
border-bottom: 1px dotted #ddd;
text-decoration: none;
}

.submenu li a:hover {
background: #eee;
}

.bnr {
overflow: hidden;
}

.bnr ul {
overflow: hidden;
}

.bnr li {
margin: 0 0 10px 0;
padding: 0;
list-style: none;
}

.bnr li a:hover {
opacity: 0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}

.bnr img {
width: 100%;
}

/*================================================
*  フッター
================================================*/
 
footer {
clear: both;
padding: 100px 0 40px 0;
background: url(../images/ft-bg.png) repeat-x bottom #FEF9F3;
}

.footmenu {
width: 100%;
padding: 20px 0;
overflow: hidden;
border-top: 1px dotted #ccc;
}

.footmenu ul {
position: relative;
float: left;
left: 50%;
margin: 0;
}

.footmenu li {
position: relative;
left: -50%;
float: left;
list-style: none;
margin: 0;
padding: 0 20px;
font-size: 12px;
text-align: center;
}

.copyright {
clear: both;
padding: 20px 0;
font-size: 11px;
text-align: center;
}

/*================================================
*  ページトップへの戻り
================================================*/

.totop {
position: fixed;
bottom: 15px;
right: 15px;
}

.totop a {
display: block;
text-decoration: none;
}

.totop img {
background: #FA8C00;
border-radius: 25px;
-webkit-border-radius: 25px;
-moz-border-radius: 25px;
}

.totop img:hover {
background: #FADFC6;
}

/*================================================
*  ページネーション
================================================*/

.pagination h2.screen-reader-text { 
display: none; 
}

.pagination a {
padding: 5px 10px;
display: inline-block;
border: solid 1px #cccccc;
color: #666666;
background-color: #ffffff;
font-size: 14px;
text-decoration: none;
}

.pagination a:hover {
background-color: #e8e8e8;
}
.pagination span {
padding: 5px 10px;
display: inline-block;
}

.pagination span.current {
}

.pagination {
overflow: hidden;
margin-top: 40px;
margin-bottom: 20px;
text-align: center;
clear: both;
background-color: transparent;
}

/*================================================
*  クラス
================================================*/

.flow-list {
width: 600px;
margin: 0 auto;
background: url(../images/time-bg.png) repeat-y;
}

.flow-inner {
padding: 20px 0;
}

.flow-box {
margin: 0 0 20px 0;
}

.flow-box .flow-time {
float: left;
width: 70px;
margin: 0px 0 0 10px;
background: url(../images/time.png) no-repeat left 4px;
font-size: 160%;
font-weight: bold;
color: #5c9e3b;
text-align: right;
padding: 0 0px 0 20px;
}

.flow-box p {
padding: 0 !important;
width: 100% !important;
}

.flow-box-in {
width: 490px;
float: right;
}

.flow-box .flow-l {
width: 220px;
float: left;
margin: 0 0px 10px 15px;
}

.flow-box .flow-r {
width: 220px;
float: right;
margin: 0 10px 10px 0;
}

.flow-box h5 {
font-size: 160%;
font-weight: bold;
color: #5c9e3b;
}

.flow-box-line {
height: 2px;
width: 600px;
margin: auto;
background: url(../images/time-end.png) no-repeat;
}

.lineend {
margin-bottom: 60px;
}

.clearfix {
min-height: 1px;
}

.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
} 

.w100 {
width: 100px;
}

.bold {
font-weight: bold;
}

.textC {
text-align: center;
}

.textL {
text-align: left;
}

.textR {
text-align: right;
}

.list {
padding: 0 0 0 0.5em;
}

.list li {
margin: 0;
padding: 0 0 0 15px;
list-style: none;
background: url(../images/check.png) 0 5px no-repeat;
}

.photo {
overflow: hidden;
margin: 0 auto;
width: 600px;
}

.photo p {
padding: 0 20px !important;
width: 580px !important;
}

.box {
overflow: hidden;
border: 2px solid #F19A49;
background: #fff;
}

.box p,
.box ul,
.box dl
{
width: 600px;
margin: auto;
padding: 20px 0;
}

.box img
{
margin: auto;
padding: 20px 0;
}

.box iframe
{
width: 100%;
margin: auto;
padding: 20px 0;
margin-top: -30px;
margin-bottom: -60px;
}

.imgL {
float: left;
margin: 0 20px 10px 0;
}

.imgR {
float: right;
margin: 0 0 10px 20px;
}

.imgC {
text-align: center;
}

.info dt {
border-bottom: none;
}
.info dd {
padding-bottom: 1em;
border-bottom: 1px solid #ddd;
}

.eventbox {
color: #fff;
background: #EBB3B0;
padding: 10px 10px;
border: 2px dashed rgba(255,255,255,0.5);
border-radius: 6px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
box-shadow: 0 0 0 5px #EBB3B0, 0 2px 3px 5px rgba(0,0,0,0.5);
-moz-box-shadow: 0 0 0 5px #EBB3B0, 0 2px 3px 5px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 0 0 5px #EBB3B0, 0 2px 3px 5px rgba(0,0,0,0.5);
width: 155px;
margin: 10px 0px 20px 28px;
float: left;
}

.month {
padding: 0 0 0 0 !important;
text-align: center;
font-weight: bold;
font-size: 18px;
width:100%  !important;
}

.eventtext {
padding: 0 0 0 0 !important;
text-align: center;
width:100%  !important;
}

.newslistlink {
padding: 3px;
margin: 5px -5px 0px 0px;
color: #fff;
background-color: #FA8C00;
width: 115px;
text-align: center;
float: right;
font-size: 13px;
border-radius: 15px;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
}

.newslistlink a,
.newslistlink a:hover {
color:#fff;
}

.postdate {
text-align: right;
margin: auto;
padding: 10px 0px 0px 0px !important;
}

/*================================================
*  PDF
================================================*/

.pdf_notes {
display: block;
color: #444;
background-color: #fff;
background-image: url(../images/noisy.png);
border: 1px dashed #ccc;
margin-top: 12px;
margin-bottom: 12px;
padding-top: 12px;
padding-bottom: 12px;
padding-left: 15px;
padding-right: 15px;
overflow: hidden;
}

.adobe_logo a {
background-image: url(../images/get_adobe_reader.png);
width: 158px;
height: 39px;
display: inline-block;
overflow: hidden;
white-space: nowrap;
text-indent: 100%;
vertical-align: middle;
margin-right: 20px;
float: left;
}

.pdf_end {
margin-bottom: 15px;
}

.mdp_link_icon {
padding: 0 !important;
}

/*================================================
*  トップページ
================================================*/

.flex-container a:hover,
.flex-slider a:hover {
outline: none;
}

.slides,
.slides > li,
.flex-control-nav,
.flex-direction-nav {
margin: 0;
padding: 0;
list-style: none;
}

.flex-pauseplay span {
text-transform: capitalize;
}

.flexslider {
margin: 0;
padding: 0;
}

.flexslider .slides > li {
display: none;
-webkit-backface-visibility: hidden;
overflow: hidden;
height: 400px;
}

.flexslider .slides img {
width: 100%;
display: block;
height: 400px;
}

.flexslider .slides:after {
content: "\0020";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}

html[xmlns] .flexslider .slides {
display: block;
}

* html .flexslider .slides {
height: 1%;
}

.no-js .flexslider .slides > li:first-child {
display: block;
}

.flexslider {
width: 650px;
height: 400px;
float: right;
margin: 0 0 60px;
background: #ffffff;
border: 2px solid #F19A49;
position: relative;
zoom: 1;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
-webkit-box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
-moz-box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
-o-box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
}

.flexslider .slides {
zoom: 1;
}

.flexslider .slides img {
height: auto;
-moz-user-select: none;
}

.flex-viewport {
max-height: 2000px;
height: 400px;
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-ms-transition: all 1s ease;
-o-transition: all 1s ease;
transition: all 1s ease;
}

.loading .flex-viewport {
max-height: 300px;
}

.carousel li {
margin-right: 5px;
}

.flex-direction-nav {
*height: 0;
}

.flex-direction-nav a {
text-decoration: none;
display: block;
width: 30px;
height: 30px;
margin: -20px 0 0;
position: absolute;
top: 50%;
z-index: 10;
overflow: hidden;
opacity: 0;
cursor: pointer;
color: rgba(0, 0, 0, 0.8);
text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
-webkit-transition: all 0.3s ease-in-out;
-moz-transition: all 0.3s ease-in-out;
-ms-transition: all 0.3s ease-in-out;
-o-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
background: url(../images/bg_direction_nav.png) no-repeat 0 0;
}

.flex-direction-nav a:before {
font-family: "flexslider-icon";
font-size: 40px;
display: inline-block;
content: '\f001';
color: rgba(0, 0, 0, 0.8);
text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
}

.flex-direction-nav a.flex-next:before {
content: '\f002';
}

.flex-direction-nav .flex-prev {
left: -50px;
}

.flex-direction-nav .flex-next {
right: -50px;
text-align: right;
}

.flexslider:hover .flex-direction-nav .flex-prev {
opacity: 0.7;
left: 10px;
}

.flexslider:hover .flex-direction-nav .flex-prev:hover {
opacity: 1;
}

.flexslider:hover .flex-direction-nav .flex-next {
opacity: 0.7;
right: 10px;
}

.flexslider:hover .flex-direction-nav .flex-next:hover {
opacity: 1;
}

.flex-direction-nav .flex-disabled {
opacity: 0!important;
filter: alpha(opacity=0);
cursor: default;
z-index: -1;
}

.flex-pauseplay a {
display: block;
width: 20px;
height: 20px;
position: absolute;
bottom: 5px;
left: 10px;
opacity: 0.8;
z-index: 10;
overflow: hidden;
cursor: pointer;
color: #000;
}

.flex-pauseplay a:before {
font-family: "flexslider-icon";
font-size: 20px;
display: inline-block;
content: '\f004';
}

.flex-pauseplay a:hover {
opacity: 1;
}

.flex-pauseplay a.flex-play:before {
content: '\f003';
}

.flex-control-nav {
width: 100%;
position: absolute;
bottom: -40px;
text-align: center;
}

.flex-control-nav li {
margin: 0 6px;
display: inline-block;
zoom: 1;
*display: inline;
}

.flex-control-paging li a {
width: 11px;
height: 11px;
display: block;
background: #FA8C00;
cursor: pointer;
text-indent: -9999px;
-webkit-border-radius: 20px; 
-moz-border-radius: 20px;
border-radius: 20px;
}

.flex-control-paging li a:hover {
background: #DC0012;
}

.flex-control-paging li a.flex-active {
background: #DC0012;
cursor: default;
}

.flex-control-thumbs {
margin: 5px 0 0;
position: static;
overflow: hidden;
}

.flex-control-thumbs li {
width: 25%;
float: left;
margin: 0;
}

.flex-control-thumbs img {
width: 100%;
height: auto;
display: block;
opacity: .7;
cursor: pointer;
-moz-user-select: none;
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-ms-transition: all 1s ease;
-o-transition: all 1s ease;
transition: all 1s ease;
}

.flex-control-thumbs img:hover {
opacity: 1;
}

.flex-control-thumbs .flex-active {
opacity: 1;
cursor: default;
}

@media screen and (max-width: 860px) {
.flex-direction-nav .flex-prev {
opacity: 1;
left: 10px;
}

.flex-direction-nav .flex-next {
opacity: 1;
right: 10px;
}
}

* html .topNavi {
height: 1em;
overflow: visible;
}

.topNavi {
overflow: hidden;
position: relative;
margin-right: -1.030%;
margin-top: 20px;
margin-bottom: 20px;
}

.topNaviColumn {
display: inline;
width: 32.302%;
float: left;
margin-right: 1.030%;
}

.topNaviCon {
position: relative;
display: block;
box-sizing: border-box;
overflow: hidden;
padding: 10px;
text-decoration: none;
color: #000;
transition: background 0s ease 0s, border 0.5s ease-out 0s;
background: #f1f1f1;
border: 1px solid #f1f1f1;
border-radius: 4px;
}

.topNaviCon:hover {
color: #000;
background: #fff9f5 none repeat scroll 0 0;
border: 1px solid #f19500;
transition: background 0s ease 0s, border 0.5s ease-out 0s;
}

.topNaviCon h2 {
margin: 10px;
padding: 0;
font-size: 14px;
font-weight: bold;
color: #f19500;
border: none;
}

.topNaviCon:hover h2 {
color: #f19500;
}

.topNaviCon p {
margin: 10px;
}

.topNaviPhoto img {
width: 100%;
}

/*================================================
*  ライトボックス
================================================*/

.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
padding: 0;
margin: 0;
border: 0;
outline: none;
vertical-align: top;
}

.fancybox-wrap {
position: absolute;
top: 0;
left: 0;
z-index: 8020;
}

.fancybox-skin {
position: relative;
background: #f9f9f9;
color: #444;
text-shadow: none;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}

.fancybox-opened {
z-index: 8030;
}

.fancybox-opened .fancybox-skin {
-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
-moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
position: relative;
}

.fancybox-inner {
overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
-webkit-overflow-scrolling: touch;
}

.fancybox-error {
color: #444;
font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
margin: 0;
padding: 15px;
white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
display: block;
width: 100%;
height: 100%;
}

.fancybox-image {
max-width: 100%;
max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
background-image: url('../images/fancybox_sprite.png');
}

#fancybox-loading {
position: fixed;
top: 50%;
left: 50%;
margin-top: -22px;
margin-left: -22px;
background-position: 0 -108px;
opacity: 0.8;
cursor: pointer;
z-index: 8060;
}

#fancybox-loading div {
width: 44px;
height: 44px;
background: url('../images/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
position: absolute;
top: -18px;
right: -18px;
width: 36px;
height: 36px;
cursor: pointer;
z-index: 8040;
}

.fancybox-nav {
position: absolute;
top: 0;
width: 40%;
height: 100%;
cursor: pointer;
text-decoration: none;
background: transparent url('../images/blank.gif'); /* helps IE */
-webkit-tap-highlight-color: rgba(0,0,0,0);
z-index: 8040;
}

.fancybox-prev {
left: 0;
}

.fancybox-next {
right: 0;
}

.fancybox-nav span {
position: absolute;
top: 50%;
width: 36px;
height: 34px;
margin-top: -18px;
cursor: pointer;
z-index: 8040;
visibility: hidden;
}

.fancybox-prev span {
left: 10px;
background-position: 0 -36px;
}

.fancybox-next span {
right: 10px;
background-position: 0 -72px;
}

.fancybox-nav:hover span {
visibility: visible;
}

.fancybox-tmp {
position: absolute;
top: -99999px;
left: -99999px;
visibility: hidden;
max-width: 99999px;
max-height: 99999px;
overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
overflow: hidden !important;
width: auto;
}

.fancybox-lock body {
overflow: hidden !important;
}

.fancybox-lock-test {
overflow-y: hidden !important;
}

.fancybox-overlay {
position: absolute;
top: 0;
left: 0;
overflow: hidden;
display: none;
z-index: 8010;
background-color: rgba(119, 119, 119, 0.7);
}

.fancybox-overlay-fixed {
position: fixed;
bottom: 0;
right: 0;
}

.fancybox-lock .fancybox-overlay {
overflow: auto;
overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
visibility: hidden;
font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
position: relative;
text-shadow: none;
z-index: 8050;
}

.fancybox-opened .fancybox-title {
visibility: visible;
}

.fancybox-title-float-wrap {
position: absolute;
bottom: 0;
right: 50%;
margin-bottom: -35px;
z-index: 8050;
text-align: center;
}

.fancybox-title-float-wrap .child {
display: inline-block;
margin-right: -100%;
padding: 2px 20px;
background: transparent;
background: rgba(0, 0, 0, 0.8);
-webkit-border-radius: 15px;
-moz-border-radius: 15px;
border-radius: 15px;
text-shadow: 0 1px 2px #222;
color: #FFF;
font-weight: bold;
line-height: 24px;
white-space: nowrap;
}

.fancybox-title-outside-wrap {
position: relative;
margin-top: 10px;
color: #fff;
}

.fancybox-title-inside-wrap {
padding-top: 10px;
}

.fancybox-title-over-wrap {
position: absolute;
bottom: 0;
left: 0;
color: #fff;
padding: 10px;
background: #000;
background: rgba(0, 0, 0, .8);
}

.fancybox .expansion {
margin: 0 0 0 -46px;
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min--moz-device-pixel-ratio: 1.5),
only screen and (min-device-pixel-ratio: 1.5){

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
background-image: url('../images/fancybox_sprite@2x.png');
background-size: 44px 152px;
}

#fancybox-loading div {
background-image: url('../images/fancybox_loading@2x.gif');
background-size: 24px 24px;
}
}