@charset "UTF-8";


/*--------------------------------------------------------------------
初期設定
--------------------------------------------------------------------*/


/* =============== 標準化 */

/* ------ framework */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, img, ins, kbd, q, samp, var, i, dl, dt, dd, 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-style:normal;}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {display:block;}
audio, canvas, video {display:inline-block;}
html {overflow-y:scroll;}
body {-webkit-text-size-adjust:100%;}

/* ------ block elements */
ul {margin:0; padding:0; list-style-type:none;}
ol {margin:0; padding:0 0 0 2em;}
p {margin:0 0 .6em;}

/* ------ inline elements */
a {outline:none; background:transparent;}
a:focus, a:active, a:hover {outline:none;}
small {font-size:80%;}
sub, sup {font-size:75%; line-height:0; position:relative; vertical-align:baseline;}
sup {top:-.5em;}
sub {bottom:-.25em;}

/* ------ form */
button, input, select, textarea {font-family:inherit; font-size:100%; margin:0;}
button, input {line-height:normal;}
button, select {text-transform:none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance:button; cursor:pointer;}
button[disabled], html input[disabled] {cursor:default;}
input[type="checkbox"], input[type="radio"] {box-sizing:border-box; padding:0;}
input[type="search"] {-webkit-appearance:textfield; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box;}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {-webkit-appearance:none;}
button::-moz-focus-inner, input::-moz-focus-inner {border:0; padding:0;}
textarea {overflow:auto; vertical-align:top;}

/* ------ table */
table {border-collapse:collapse; border-spacing:0;}
caption {text-align:left;}

/* ------ img */
img {border:0; vertical-align:bottom;}
.ie7 img {-ms-interpolation-mode:bicubic;}

/* ------ WebFont */
@font-face {
  font-family:'arrow';
  src:url('../fonts/cicle_gordita-webfont.eot');
  src:url('../fonts/cicle_gordita-webfont.eot?#iefix') format('embedded-opentype'),
      url('../fonts/cicle_gordita-webfont.woff2') format('woff2'),
      url('../fonts/cicle_gordita-webfont.woff') format('woff'),
      url('../fonts/cicle_gordita-webfont.ttf') format('truetype'),
      url('../fonts/cicle_gordita-webfont.svg#ciclegordita') format('svg');
  font-weight:normal;
  font-style:normal;
}

@font-face {
  font-family:'roboto';
  src:url('../fonts/roboto-bold.eot');
  src:url('../fonts/roboto-bold.eot?#iefix') format('embedded-opentype'),
      url('../fonts/roboto-bold.woff2') format('woff2'),
      url('../fonts/roboto-bold.woff') format('woff'),
      url('../fonts/roboto-bold.ttf') format('truetype'),
      url('../fonts/roboto-bold.svg#ciclegordita') format('svg');
  font-weight:normal;
  font-style:normal;
}

/* ------ box-sizing 
* {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;} */



/* =============== 共通利用 */

/* ------ 配置 */
a:hover img {filter:alpha(opacity=80); opacity:.80;}
.clear {clear:both;}
.center{text-align:center;}
.textR {text-align:right;}
.floatR {float:right; margin:0 0 10px 15px;}
.floatL {float:left; margin:0 15px 10px 0;}
.spOnly {display:none;}
.inBlk {display:inline-block;}

/* ------ テキスト装飾 */
a {color:#000;}
.note {font-size:85%; line-height:1.5; margin:.6em 0 1em; color:#555;}
.bold {font-weight:bold;}
.it {font-style:italic;}
.em1 {font-size:108%;}
.em2 {font-size:116%;}
.sml {font-size:85%;}
.red {color:#e36;}
.nowrap {white-space:nowrap;}
.mp {mix-blend-mode:multiply;}

/* ------ スペース */
.top06 {margin-top:.6em!important;}
.top1 {margin-top:1em!important;}
.top15 {margin-top:1.5em!important;}
.top2 {margin-top:2em!important;}
.top20 {margin-top:20px!important;}
.top30 {margin-top:30px!important;}
.top40 {margin-top:40px!important;}
.top50 {margin-top:50px!important;}
.top60 {margin-top:60px!important;}
.top06 {margin-top:.6em!important;}
.btm06 {margin-bottom:.6em!important;}
.btm1 {margin-bottom:1em!important;}
.btm15 {margin-bottom:1.5em!important;}
.btm2 {margin-bottom:2em!important;}
.btm20 {margin-bottom:20px!important;}
.btm30 {margin-bottom:30px!important;}
.btm40 {margin-bottom:40px!important;}
.btm50 {margin-bottom:50px!important;}
.btm60 {margin-bottom:60px!important;}
.v04 {margin-top:.4em!important; margin-bottom:.4em!important;}
.v06 {margin-top:.6em!important; margin-bottom:.6em!important;}
.v1 {margin-top:1em!important; margin-bottom:1em!important;}
.v15 {margin-top:1.5em!important; margin-bottom:1.5em!important;}
.v2 {margin-top:2em!important; margin-bottom:2em!important;}
.first,
.top0 {margin-top:0!important;}
.btm0 {margin-bottom:0!important;}

/* ------ ul, ol, dl */
.square {margin:0; padding:0 0 0 1.5em; list-style-type:square;}
.disc {margin:0; padding:0 0 0 1.5em; list-style-type:disc;}
ul.spaced, ol.spaced, dl.spaced {margin:1em 0;}
.spaced li {margin:.6em 0;}
.spaced dt {margin-top:1.2em;}
.spaced dt:first-child {margin-top:0;} 
.spaced dd {margin-top:.6em;}
ul.semiSpaced, ol.semiSpaced, dl.semiSpaced {margin:.6em 0;}
.semiSpaced li {margin:.3em 0;}
.semiSpaced dt {margin:.6em 0 .3em;}
.col2, .col3, .col4 {overflow:hidden; zoom:1;}
.col2 li {width:50%; float:left;}
.col3 li {width:33.3%; float:left;}
.col4 li {width:20%; float:left;}

/* ------ table.bordered */
.bordered {margin-top:.6em; margin-bottom:.6em;}
.bordered th, .bordered td {padding:.4em .7em; border:1px #ccc solid;}
.bordered th {background:#f2f2f2; background:rgba(0,0,0,.06);}
.bordered td {background:#fff;}
.bordered .thead th, .bordered .thead td {border-bottom:3px #ccc double; font-weight:normal;}
.full {width:100%;}
.almostFull {width:98%; margin-left:1%; margin-right:1%;}

/* ------ .tableLike */
.tableLike {margin:1.5em 0; overflow:hidden; zoom:1;}
.tableLike dt {clear:left; width:25%; float:left; padding:.3em 0; border-top:1px #bbb dotted; font-weight:bold;}
.tableLike dd {width:75%; float:left; padding:.3em 0; border-top:1px #bbb dotted;}
.tableLike dt:first-child,
.tableLike dt:first-child + dd {border-top:0;}


/* ///// スマホ対応 ///// */ 
@media screen and (max-width:600px) {
  img {max-width:100%; height:auto;}
  .spHide {display:none;}
  .spBlk {display:block;}
  .spInBlk {display:inline-block;}
}



/*--------------------------------------------------------------------
基本レイアウト
--------------------------------------------------------------------*/


/* =============== 全体 */

body {background:#eeece8 url(../../images/bg.jpg) no-repeat 50% 50% fixed; background-size:cover; font:15px/1.6 'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif; *font-size:small; *font:x-small; color:#333;}
h1, h2, h3, h4, h5, h6 {font-family:'Lucida Grande','游ゴシック体','Yu Gothic',YuGothic,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;}
.content {width:950px; margin:0 auto; zoom:1; position:relative;}
.content:after {content:""; display:block; clear:both;}
.ie6 body {text-align:center;}
.ie6 header, .ie6 #main, .ie6 footer, .content {text-align:left;}


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

header {position:relative; margin-bottom:30vh!important; padding-bottom:80px; background:rgba(255,255,255,.85); box-shadow:0 0 6px rgba(0,0,0,.3);}
header h1 {padding:50px 0 40px; text-align:center;}
header img {mix-blend-mode:multiply;}
header .info {position:relative; margin:0 87px; zoom:1;}
header .info::before {content:""; display:block; width:100%; position:absolute; left:-100%; top:333px; margin-left:4px; border-top:4px #EB7681 solid;}
header .info::after {content:""; display:block; width:100%; position:absolute; right:-100%; top:202px; margin-right:4px; border-top:3.8px #EB7681 solid;}
header li + li {position:absolute; top:0; right:0;}
header h2 {float:left; margin-top:47px;}
header h2 + p img {margin:30px 0 10px;}
header h2 + p + p {position:absolute; right:0; bottom:-20px;}

@media screen and (max-width:600px) {
  body {background:#fff; font-size:13.5px;}
  body:before {content:""; display:block; width:100%; height:100%; position:fixed; top:0; left:0; z-index:-1; background:url(../../images/bg.jpg) no-repeat 50% 50%; background-size:cover}
  header {padding-bottom:40px;}
  header h1 {padding:30px 20px;}
  header .info {margin:0 20px;}
  header .info::before,
  header .info::after {display:none;}
  header li + li {position:static;}
  header li + li img {display:none;}
  header li + li:after {content:""; display:block; height:35vw; background:url(../../images/info04sp.png) no-repeat 50% 50%; background-size:contain;}
  header h2 {float:none; margin-top:0;}
  header h2 img {width:200px;}
  header h2 + p img {margin:0 0 10px;}
  header h2 + p + p {position:static; text-align:right;}
}


/* =============== メイン */

#main {padding:60px 0;}
#main h2 {text-align:center; font-size:75px; font-family:"Quicksand", sans-serif; font-weight:700; color:#ED7782; mix-blend-mode:multiply;}
#main h3 {text-align:center; margin-bottom:1em; font-size:146.5%; color:#cff;}
#main * + h3 {margin-top:2.5em;}
#main .content > section + section {margin-top:30vh;}
section .body {position:relative; background:rgba(25,20,20,.8); margin-top:60px; padding:15px 40px; color:#fff;}
section .body:before {content:""; display:block; border-right:920px rgba(25,20,20,.8) solid; border-bottom:30px rgba(25,20,20,.8) solid; border-left:30px rgba(255,255,255,0) solid; position:absolute; top:-30px; left:0;}
section .body:after {content:""; display:block; border-left:920px rgba(25,20,20,.8) solid; border-top:30px rgba(25,20,20,.8) solid; border-right:30px rgba(255,255,255,0) solid; position:absolute;bottom:-30px; right:0; clear:both;}
section .body a {color:#fff;}
section .body .note {color:#ddd;}

@media screen and (max-width:600px) {
  #main h2 {font-size:50px; line-height:1.2;}
  section .body {margin-top:30px; padding:40px 25px;}
  section .body:before,
  section .body:after {display:none;}
}

.news dt {padding-top:.8em; font-weight:bold;}
.news dd {margin:-1.6em 0 0; padding:0 0 .8em 8em;}
.news dd + dt {border-top:1px #aaa dotted;}
.news dl + * {margin-top:25px; padding-top:20px; border-top:1px #fff solid;}

@media screen and (max-width:400px) {
  .news dd {margin:.25em 0 0; padding-left:0;}
}

.gallery ul {overflow:hidden; zoom:1;}
.gallery li {width:20%; float:left;}
.gallery li img {width:100%;}

#main .profiles article h3 {margin-bottom:.5em;}
.profiles article {width:47%; float:left; margin-bottom:40px;}
.profiles article:nth-child(2),
.profiles article:nth-child(5) {float:right;}
.profiles article.food,
.profiles article:nth-child(4) {clear:both;} 
.profiles article.uco {margin-bottom:0; padding-top:25px; border-top:1px #fff solid;}
#main .profiles article.uco h3 {color:#fac;}

.profiles .movie {position:relative; padding-top:56.25%;}
.profiles .movie iframe {width:100%; height:100%; position:absolute; top:0; left:0;}

.ptlk h3 + img {width:100%; margin-bottom:1em;}
.ptlk h3 + img {width:100%; margin-bottom:1em;}
.profiles article:nth-child(n+3) h3 + img {width:100%; margin-bottom:1em;} 
.ptlk .discInfo {margin-top:1em; padding:1em 0; border-top:1px #aaa dotted; overflow:hidden; zoom:1;}
.ptlk .discInfo img {float:left; height:80px; margin-right:15px;}
.ptlk .discInfo p {margin:0;}


@media screen and (max-width:600px) {
  .profiles article  {width:auto; float:none!important;}
  .profiles article:nth-child(4) {padding-top:35px;}
  .profiles article:nth-child(5) {margin-top:0; padding-top:40px; border:0;}
}

#gmap {height:500px; color:#333;}
.venue dl {margin:1.5em 0 0; overflow:hidden; zoom:1;}
.venue dt {float:left; width:280px; font-weight:bold;}
.venue dd {float:left; width:590px; margin-bottom:.8em;}
.venue dd + dt {clear:left;}
.venue .hash {margin:20px 0; text-align:center;}

@media screen and (max-width:600px) {
  #gmap {height:350px; color:#333;}
  .venue dt,
  .venue dd {float:none; width:auto;}
  .venue dt {margin-bottom:.2em;}
  .venue dd + dt {margin-top:1em;}
}

form p.left_bordered {margin:1.5em 0;}
form div p {margin-top:-6px;}
form dt {font-weight:bold;}
form .nav {padding-top:0;}
form .end span {display:inline-block; background:#E57681; border-radius:3px; border-bottom:2px #a44 solid; padding:.6em 60px; color:#fff; cursor:pointer;}
#btn_submit {display:none;}
form .else {font-size:116%;}
form .else a {padding:0 5px;}

@media screen and (max-width:600px) {
  img {max-width:100%; height:auto;}
	#pics {width:100%;}
	form dd {margin:10px 0 20px;}
	form dd {margin-top:.3em; margin-bottom:.8em;}
	form dd.end {text-align:center;}
}
@media only screen and (min-width:540px){/* iPad, PC */
  form textarea {width:80%; height:10em;}
  form div {float:left; padding-right:40px;}
  form dt {line-height:2.5em; width:11em;}
  form dd {margin:-2.2em 0 0.8em; padding:0 0 0.8em 12em;}
  form dd.end {border:0;}
}
@media only screen and (min-width:480px) and (max-width:539px) { /* iPhone 横 */ 
  form input {padding:0.6em;}
  form select {padding:0.6em 0 0.6em 0.6em;}
  form textarea {width:98%; height:6em;}
}
@media only screen and (max-width:479px) { 
  form input {padding:0.6em;}
  form select {padding:0.6em 0 0.6em 0.6em;}
  form textarea {width:97%; height:6em;}
}

/* =============== フッタ */

footer p {text-align:center; font-size:85%; coloe:#888;}



/* =============== カスタム要素 */

.pageTitle {}
.secTitle1 {}
.secTitle2 {}
.subsecTitle1 {}
.subsecTitle2 {}
.supl {}
.loadingBg {background:url(../img/bx_loader.gif) no-repeat 50% 50%;}


/* ///// スマホ対応 ///// */ 
@media screen and (min-width:601px) {
  header, #main, footer {min-width:980px; margin:0 auto;}
}
@media screen and (max-width:600px) {
  header, #main, footer {width:auto;}
  #dim {width:100%; height:100%; position:fixed; top:0; left:0; z-index:10; background:rgba(0,0,0,.4); display:none; z-index:15000;}
  .content {width:auto; margin:0;}
}




/*--------------------------------------------------------------------
ページ個別
--------------------------------------------------------------------*/


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



/* ===============  */



/*--------------------------------------------------------------------
外部ライブラリ
--------------------------------------------------------------------*/

/* --------------- bxslider */
.bx-wrapper {position:relative; margin:0 auto 60px; padding:0; *zoom:1;}
.bx-wrapper img {max-width:100%; display:block;}
.bx-wrapper .bx-viewport {/*-moz-box-shadow:0 0 5px #ccc; -webkit-box-shadow:0 0 5px #ccc; box-shadow:0 0 5px #ccc; border:solid #fff 5px; left:-5px; */background:#fff;}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {position:absolute; bottom:-30px; width:100%;}
.bx-wrapper .bx-loading {min-height:50px; background:url(../img/bx_loader.gif) center center no-repeat #fff; height:100%; width:100%; position:absolute; top:0; left:0; z-index:2000;}
.bx-wrapper .bx-pager {text-align:center; font-size:.85em; font-family:Arial; font-weight:bold; color:#666; padding-top:20px;}
.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {display:inline-block; *zoom:1; *display:inline;}
.bx-wrapper .bx-pager.bx-default-pager a {background:#666; text-indent:-9999px; display:block; width:10px; height:10px; margin:0 5px; outline:0; border-radius:5px;}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {background:#000;}
.bx-wrapper .bx-prev {left:10px; background:url(../img/bx_controls.png) no-repeat 0 -32px;}
.bx-wrapper .bx-next {right:10px; background:url(../img/bx_controls.png) no-repeat -43px -32px;}
.bx-wrapper .bx-prev:hover {background-position:0 0;}
.bx-wrapper .bx-next:hover {background-position:-43px 0;}
.bx-wrapper .bx-controls-direction a {position:absolute; top:50%; margin-top:-16px; outline:0; width:32px; height:32px; text-indent:-9999px; z-index:9999;}
.bx-wrapper .bx-controls-direction a.disabled {display:none;}
.bx-wrapper .bx-controls-auto {text-align:center;}
.bx-wrapper .bx-controls-auto .bx-start {display:block; text-indent:-9999px; width:10px; height:11px; outline:0; background:url(../img/bx_controls.png) -86px -11px no-repeat; margin:0 3px;}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {background-position:-86px 0;}
.bx-wrapper .bx-controls-auto .bx-stop {display:block; text-indent:-9999px; width:9px; height:11px; outline:0; background:url(../img/bx_controls.png) -86px -44px no-repeat; margin:0 3px;}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {background-position:-86px -33px;}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {text-align:left; width:80%;}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {right:0; width:35px;}
.bx-wrapper .bx-caption {position:absolute; bottom:0; left:0; background:#666\9; background:rgba(80, 80, 80, .75); width:100%;}
.bx-wrapper .bx-caption span {color:#fff; font-family:Arial; display:block; font-size:.85em; padding:10px;}

/* --------------- fancybox */
.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; border-radius:4px;}
.fancybox-opened {z-index:8030;}
.fancybox-opened .fancybox-skin {box-shadow:0 10px 25px rgba(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('../img/fancybox_sprite.png');}
#fancybox-loading {position:fixed; top:50%; left:50%; margin-top:-22px; margin-left:-22px; background-position:0 -108px; opacity:.8; cursor:pointer; z-index:8060;}
#fancybox-loading div {width:44px; height:44px; background:url('../img/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('../img/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;}
.fancybox-lock {overflow:hidden;}
.fancybox-overlay {position:absolute; top:0; left:0; overflow:hidden; display:none; z-index:8010; background:url('../img/fancybox_overlay.png');}
.fancybox-overlay-fixed {position:fixed; bottom:0; right:0;}
.fancybox-lock .fancybox-overlay {overflow:auto;/* overflow-y:scroll;*/}
.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; max-width:90%;}
.fancybox-title-float-wrap .child {display:inline-block; margin-right:-100%; padding:2px 20px; 
  background:transparent; /* Fallback for web browsers that doesn't support RGBa */ background:rgba(0, 0, 0, .8); border-radius:15px; 
  text-shadow:0 1px 2px #222; color:#FFF; font-weight:bold; line-height:24px; width:680px;}
.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);}


/* boxer */
.boxer-lock {overflow:hidden !important;}
#boxer-overlay {width:100%; height:100%; position:fixed; top:0; right:0; bottom:0; left:0; z-index:100; background:#000; opacity:0; -webkit-transition:opacity .25s linear; transition:opacity .25s linear;}
.boxer-open #boxer-overlay {opacity:.75;}
#boxer {width:200px; height:200px; position:absolute; right:0; left:0; z-index:101; background:#fff; border-radius:3px; box-shadow:0 0 25px #000; opacity:0; margin:0 auto; padding:10px;}
#boxer * {-webkit-transition:none; transition:none;}
#boxer,
#boxer * {-webkit-user-select:none !important; -moz-user-select:none !important; -ms-user-select:none !important; user-select:none !important;}
#boxer,
#boxer *,
#boxer *:before,
#boxer *:after {box-sizing:border-box;}
#boxer.fixed {position:fixed; top:0; bottom:0; margin:auto;}
#boxer.inline {padding:30px;}
#boxer.animating {-webkit-transition:height .25s ease, width .25s ease, opacity .25s linear, top .25s ease; transition:height .25s ease, width .25s ease, opacity .25s linear, top .25s ease;}
#boxer.animating .boxer-container {-webkit-transition:opacity .25s linear .25s; transition:opacity .25s linear .25s;}
.boxer-open #boxer {opacity:1;}
#boxer.loading .boxer-container {opacity:0; -webkit-transition:opacity .25s linear; transition:opacity .25s linear;}
#boxer .boxer-close {width:30px; height:30px; position:absolute; top:-7.5px; right:-7.5px; z-index:105; background:#fff; border-radius:100%; cursor:pointer; display:block; overflow:hidden; padding:0; text-indent:200%; white-space:nowrap;}
#boxer .boxer-close:before {position:absolute; top:0; right:0; bottom:0; left:0; color:#333; content:"\00d7"; display:block; font-size:22px; font-weight:700; line-height:30px; margin:auto; text-align:center; text-indent:0; -webkit-transition:color .15s linear; transition:color .15s linear;}
.no-opacity #boxer .boxer-close {text-indent:-999px;}
#boxer .boxer-loading {width:50px; height:50px; position:absolute; top:0; right:0; bottom:0; left:0; z-index:105; display:block; margin:auto; opacity:0; -webkit-transition:opacity .25s linear; transition:opacity .25s linear;}
#boxer .boxer-loading:before,
#boxer .boxer-loading:after {width:100%; height:100%; position:absolute; top:0; right:0; bottom:0; left:0; border-radius:110%; content:''; display:block;}
#boxer .boxer-loading:before {border:5px solid rgba(51,51,51, .25);}
#boxer .boxer-loading:after {-webkit-animation:boxer-loading-spin .75s linear infinite; animation:boxer-loading-spin .75s linear infinite; border:5px solid transparent; border-top-color:#333;}
#boxer.loading .boxer-loading {opacity:1;}
@-webkit-keyframes boxer-loading-spin {from { -webkit-transform:rotate(0deg); transform:rotate(0deg);} to { -webkit-transform:rotate(360deg); transform:rotate(360deg);}}
@keyframes boxer-loading-spin {from { -webkit-transform:rotate(0deg); transform:rotate(0deg);} to { -webkit-transform:rotate(360deg); transform:rotate(360deg);}}
#boxer .boxer-container {width:100%; height:100%; position:relative; z-index:103; background:#fff; overflow:hidden;}
#boxer .boxer-content {width:100%; background:#fff; opacity:1; overflow:hidden; padding:0;}
#boxer.inline .boxer-content,
#boxer.iframe .boxer-content {width:auto;}
#boxer .boxer-image {float:left;}
#boxer .boxer-video {width:100%; height:100%;}
#boxer .boxer-iframe {width:100%; height:100%; border:none; float:left; overflow:auto;}
#boxer .boxer-meta {clear:both;}
#boxer .boxer-control {width:40px; height:40px; position:absolute; top:0; background:#fff; border-radius:100%; box-shadow:0 0 5px rgba(0,0,0,.25); cursor:pointer; display:block; margin-right:auto; margin-left:auto; opacity:.5; overflow:hidden; text-indent:200%; -webkit-transition:opacity .15s linear; transition:opacity .15s linear; white-space:nowrap;}
#boxer .boxer-control:before {width:0; height:0; position:absolute; top:0; right:0; bottom:0; left:0; content:''; margin:auto;}
#boxer .boxer-control.previous {left:20px;}
#boxer .boxer-control.previous:before {border-top:8px solid transparent; border-bottom:8px solid transparent; border-right:10.4px solid #333; margin-left:14px;}
#boxer .boxer-control.next {right:20px;}
#boxer .boxer-control.next:before {border-top:8px solid transparent; border-bottom:8px solid transparent; border-left:10.4px solid #333; margin-right:14px;}
#boxer .boxer-control.disabled {opacity:0;}
.no-opacity #boxer .boxer-control {text-indent:-999px;}
.no-touch #boxer .boxer-control {opacity:0;}
.no-touch #boxer:hover .boxer-control {opacity:1;}
.no-touch #boxer:hover .boxer-control.disabled {opacity:0; cursor:default !important;}
#boxer .boxer-meta {padding:10px 0 0;}
#boxer .boxer-position {color:#999; font-size:12px; margin:0; padding:15px 15px 0;}
#boxer .boxer-caption p {color:#666; font-size:14px; margin:0; padding:15px;}
#boxer .boxer-caption.gallery p {padding-top:0;}
#boxer .boxer-error {width:250px;}
#boxer .boxer-error p {color:#900; font-size:14px; margin:0; padding:25px; text-align:center; text-transform:uppercase;}
#boxer.mobile {width:100%; height:100%; position:fixed; top:0; right:0; bottom:0; left:0; background:#111; border-radius:0; padding:40px 0 0;}
#boxer.mobile .boxer-close,
#boxer.mobile .boxer-close:hover {height:40px; width:40px; top:0; right:0; background:#111; border-radius:0;}
#boxer.mobile .boxer-close:before,
#boxer.mobile .boxer-close:hover:before {color:#ccc; font-size:28px; font-weight:700; line-height:40px;}
#boxer.mobile .boxer-loading:before {border-color:rgba(153,153,153,.25);}
#boxer.mobile .boxer-loading:after {border-top-color:#999;}
#boxer.mobile .boxer-container {background:#111;}
#boxer.mobile .boxer-content {background-color:#111;}
#boxer.mobile .boxer-control {width:50px; height:100%; background:#111; border-radius:0; box-shadow:none; opacity:1;}
#boxer.mobile .boxer-control.previous {left:0;}
#boxer.mobile .boxer-control.previous:before {border-right-color:#eee; margin-left:19px;}
#boxer.mobile .boxer-control.next {right:0;}
#boxer.mobile .boxer-control.next:before {border-left-color:#eee; margin-right:19px;}
.no-touch #boxer.mobile .boxer-control,
.no-touch #boxer.mobile:hover .boxer-control {opacity:1;}
.no-touch #boxer.mobile .boxer-control.disabled,
.no-touch #boxer.mobile:hover .boxer-control.disabled {opacity:0; cursor:default !important;}
#boxer.mobile .boxer-meta {width:100%; position:absolute; right:0; bottom:0; left:0; background-color:#111; padding:15px 65px;}
#boxer.mobile .boxer-position {color:#999; font-size:12px; margin:0; padding:0 15px 0 0;}
#boxer.mobile .boxer-caption p {color:#eee; font-size:14px; margin:0; padding:0;}
#boxer.mobile .boxer-image {-webkit-transition:none !important; transition:none !important; -webkit-transform:translate(0,0); -ms-transform:translate(0,0); transform:translate(0,0);}
#boxer.mobile.animated .boxer-image {-webkit-transition:-webkit-transform .25s ease-out !important; transition:transform .25s ease-out !important;}
#boxer.mobile.inline .boxer-content,
#boxer.mobile.iframe .boxer-content {overflow-x:hidden; overflow-y:scroll; -webkit-overflow-scrolling:touch;}
