@charset "UTF-8";


/*----------------------------------------------------------------------------------------------------------------------------------------

  初期設定

----------------------------------------------------------------------------------------------------------------------------------------*/


/* =============== 標準化 */

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%;}

ul {margin:0; padding:0; list-style-type:none;}
ol {margin:0; padding:0 0 0 1.6em;}
p {margin:0;}

a {outline:none; background:transparent;}
a:focus, a:active, a:hover {outline:none;}
small {font-size:80%;}
sub, sup {font-size:70%; line-height:0; position:relative; vertical-align:baseline;}
sup {top:-.5em;}
sub {bottom:-.25em;}

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 {border-collapse:collapse; border-spacing:0;}
caption {text-align:left;}

img {border:0; vertical-align:bottom;}


/* =============== 汎用スタイルライブラリ */

/* ------ 配置 */
a:hover img {filter:alpha(opacity=80); opacity:.8;}
.clear {clear:both;}
br.clear {line-height:0;}
.clearfix {zoom:1;}
.clearfix:after {content:""; display:block; clear:both;}
.center, .ctr {text-align:center!important;}
.blkC {display:block; margin-left:auto!important; margin-right:auto!important;}
.txR {text-align:right!important;}
.txL {text-align:left!important;}
.flR {float:right; margin:0 0 10px 15px;}
.flL {float:left; margin:0 15px 10px 20px;}
.inBlk, .IB, .spanIB > span {display:inline-block;}
.tight {letter-spacing:-.02em;}
.nowrap {white-space:nowrap;}
.full {width:100%;}
img.mw100, .mw100 img {max-width:100%;}
img.mh100, .mh100 img {max-height:100%;}

/* ------ テキスト装飾 */
a {color:#1a1a1a;}
.note {font-size:85%; line-height:1.5; color:#707070;}
.bold {font-weight:bold;}
.it {font-style:italic;}
.lg1 {font-size:108%;} .lg2 {font-size:116%;} .lg3 {font-size:123.1%;} .lg4 {font-size:131%;} .lg5 {font-size:138.5%;}
.sm1 {font-size:93%;} .sm2 {font-size:85%;} .sm3 {font-size:77%;} .sm4 {font-size:70%;}
.red {color:#e36;}
.gray {color:#707070;}
.underline {text-decoration:underline}
.min {font-family:"游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight:700; transform:rotate(.03deg);}
blockquote {border-left:5px #ccc solid; border-left-color:rgba(0,30,60,.1); padding-left:12px;}
.narrowLH {line-height:1.4;}

/* ------ スペース */
/* .mt: margin-top */
.mt0 {margin-top:0!important;} .mt03 {margin-top:.3em!important;} .mt06 {margin-top:.6em!important;} .mt08 {margin-top:.8em!important;} .mt1 {margin-top:1em!important;} .mt15 {margin-top:1.5em!important;} .mt2 {margin-top:2em!important;} .mt10 {margin-top:10px!important;} .mt20 {margin-top:20px!important;} .mt25 {margin-top:25px!important;} .mt30 {margin-top:30px!important;} .mt35 {margin-top:35px!important;} .mt40 {margin-top:40px!important;} .mt50 {margin-top:50px!important;} .mt60 {margin-top:60px!important;} .mt70 {margin-top:70px!important;} .mt80 {margin-top:80px!important;}
/* .mb: margin-bottom */
.mb0 {margin-bottom:0!important;} .mb03 {margin-bottom:.3em!important;} .mb06 {margin-bottom:.6em!important;} .mb1 {margin-bottom:1em!important;} .mb15 {margin-bottom:1.5em!important;} .mb2 {margin-bottom:2em!important;} .mb10 {margin-bottom:10px!important;} .mb20 {margin-bottom:20px!important;} .mb25 {margin-bottom:25px!important;} .mb30 {margin-bottom:30px!important;} .mb35 {margin-bottom:35px!important;} .mb40 {margin-bottom:40px!important;} .mb50 {margin-bottom:50px!important;} .mb60 {margin-bottom:60px!important;} .mb70 {margin-bottom:70px!important;} .mb80 {margin-bottom:80px!important;} 
/* .mv: vertical margin */
.mv0 {margin-top:0!important; margin-bottom:0!important;} .mv03 {margin-top:.3em!important; margin-bottom:.3em!important;} .mv06 {margin-top:.6em!important; margin-bottom:.6em!important;} .mv1 {margin-top:1em!important; margin-bottom:1em!important;} .mv15 {margin-top:1.5em!important; margin-bottom:1.5em!important;} .mv2 {margin-top:2em!important; margin-bottom:2em!important;} .mv10 {margin-top:10px!important; margin-bottom:10px!important;} .mv20 {margin-top:20px!important; margin-bottom:20px!important;} .mv25 {margin-top:25px!important; margin-bottom:25px!important;} .mv30 {margin-top:30px!important; margin-bottom:30px!important;} .mv35 {margin-top:35px!important; margin-bottom:35px!important;} .mv40 {margin-top:40px!important; margin-bottom:40px!important;} .mv50 {margin-top:50px!important; margin-bottom:50px!important;} .mv60 {margin-top:60px!important; margin-bottom:60px!important;} .mv70 {margin-top:70px!important; margin-bottom:70px!important;} .mv80 {margin-top:80px!important; margin-bottom:80px!important;} 
/* .ml: margin-left */
.ml03 {margin-left:.3em!important;} .ml06 {margin-left:.6em!important;} .ml08 {margin-left:.8em!important;} .ml1 {margin-left:1em!important;} .ml15 {margin-left:1.5em!important;} .ml2 {margin-left:2em!important;} .ml10 {margin-left:10px!important;} .ml20 {margin-left:20px!important;} .ml25 {margin-left:25px!important;} .ml30 {margin-left:30px!important;} .ml35 {margin-left:35px!important;} .ml40 {margin-left:40px!important;} .ml50 {margin-left:50px!important;} .ml60 {margin-left:60px!important;} .ml70 {margin-left:70px!important;} .ml80 {margin-left:80px!important;} 
/* .pl: padding-left */
.pl10 {padding-left:10px!important;} .pl20 {padding-left:20px!important;} .pl25 {padding-left:25px!important;} .pl30 {padding-left:30px!important;} .pl35 {padding-left:35px!important;} .pl40 {padding-left:40px!important;} .pl50 {padding-left:50px!important;} .pl60 {padding-left:60px!important;} .pl70 {padding-left:70px!important;} .pl80 {padding-left:80px!important;}

/* ------ ul, ol */
ul.disc {list-style-type:disc; padding-left:1.5em;}
ul.square {list-style-type:square; padding-left:1.5em;}
.lowerAlpha {list-style:lower-alpha; padding-left:1.5em;}
.lowerRoman {list-style-type:lower-roman;}
.lm03 > li + li {margin-top:.3em;}
.lm06 > li + li {margin-top:.6em;}
/* スラッシュ区切り */
.slashed > li {display:inline-block;}
.slashed > li:after {display:inline-block; content:"/"; margin:0 .4em; transform:rotate(20deg); color:#555;}
.slashed > li:last-child:after {display:none;}
/* 読点区切り */
.ten > li {display:inline-block;}
.ten > li:after {display:inline-block; content:"、";}
.ten > li:last-child:after {display:none;}
/* 番号かっこ囲み */
.kakko {list-style:none; counter-reset:num; padding-left:2.5em;}
.kakko > li:before {counter-increment:num; content:"(" counter(num) ")"; display:inline-block; width:2.5em; margin-left:-2.5em; text-align:center;}
/* 番号丸囲み */
ol.circled {list-style-type:none;}
ol.circled > li:before {display:inline-block; width:1.2em; margin:0 .1em 0 -1.3em;}
ol.circled > li:nth-child(1):before {content:"①";} ol.circled > li:nth-child(2):before {content:"②";} ol.circled > li:nth-child(3):before {content:"③";} ol.circled > li:nth-child(4):before {content:"④";} ol.circled > li:nth-child(5):before {content:"⑤";} ol.circled > li:nth-child(6):before {content:"⑥";} ol.circled > li:nth-child(7):before {content:"⑦";} ol.circled > li:nth-child(8):before {content:"⑧";} ol.circled > li:nth-child(9):before {content:"⑨";} ol.circled > li:nth-child(10):before {content:"⑩";} ol.circled > li:nth-child(11):before {content:"⑪";} ol.circled > li:nth-child(12):before {content:"⑫";} ol.circled > li:nth-child(13):before {content:"⑬";} ol.circled > li:nth-child(14):before {content:"⑭";} ol.circled > li:nth-child(15):before {content:"⑮";} ol.circled > li:nth-child(16):before {content:"⑯";} ol.circled > li:nth-child(17):before {content:"⑰";} ol.circled > li:nth-child(18):before {content:"⑱";} ol.circled > li:nth-child(19):before {content:"⑲";} ol.circled > li:nth-child(20):before {content:"⑳";}
.liIB > li {display:inline-block; margin-right:1.5em;}

/* ------ table */
table {margin-top:.6em; margin-bottom:.6em;}
table:not(.formTable) th, table:not(.formTable) td {padding:.4em .7em; border:1px #bbb solid; line-height:1.4; vertical-align:middle;}
table:not(.formTable) th {background:#f5f5f5; background:rgba(0,0,0,.04); text-align:center; font-weight:normal;}
table:not(.formTable) td {background:#fff;}
.thead th, .thead td {border-bottom:3px #bbb double;}
.thead th {background:#e0e0e0; background:rgba(0,0,0,.12);}
.noDouble {border-bottom:1px #bbb solid!important;}
.almostFull {width:98%; margin-left:1%; margin-right:1%;}
.tdCenter td, .tdC td, .td1Center td:nth-child(1), .td2Center td:nth-child(2), .td3Center td:nth-child(3), .td4Center td:nth-child(4), .td5Center td:nth-child(5) {text-align:center;}
.tdLeft td, .tdL td, .td1L td:nth-child(1), .td2L td:nth-child(2), .td3L td:nth-child(3), .td4L td:nth-child(4), .td5L td:nth-child(5) {text-align:left;}
.tdRight td, .tdR td, .td1R td:nth-child(1), .td2R td:nth-child(2), .td3R td:nth-child(3), .td4R td:nth-child(4), .td5R td:nth-child(5) {text-align:right;}
.noWr2 *:nth-child(2), .noWr3 *:nth-child(3), .noWr4 *:nth-child(4), .noWr5 *:nth-child(5), .noWr6 *:nth-child(6) {white-space:nowrap;}
.tate1 {display:inline-block; width:1em; text-align:center;}
.tate90 {display:inline-block; -webkit-transform:rotate(90deg); -ms-transform:rotate(90deg); transform:rotate(90deg); transform-origin:50% 50%;}
.plain th, .plain td {padding:.2em; border:0; background:none;}

@media screen and (max-width:600px){
  th, td {padding:.4em;}
}

/* ------ 横方向の段組 */
.col2, .col3, .col4, .col5, .col2m, .col3m, .col4m, .col5m, .pcCol2, .pcCol3, .pcCol4, .pcCol5, .pcCol2m, .pcCol3m, .pcCol4m, .pcCol5m, .spCol2, .spCol3, .spCol4, .spCol5, .spCol2m, .spCol3m, .spCol4m, .spCol5m {overflow:hidden; padding:0; list-style-type:none;}
.col2 > *, .col3 > *, .col4 > *, .col5 > * {position:relative; float:left; margin:0 0 20px;}
.col2 > * {width:50%;} .col3 > * {width:33.333%;} .col4 > * {width:25%;} .col5 > * {width:20%;}
.col2 > *:nth-child(2n+1), .col3 > *:nth-child(3n+1), .col4 > *:nth-child(4n+1), .col5 > *:nth-child(5n+1) {clear:left;}
.col2m > *:nth-child(n), .col3m > *:nth-child(n), .col4m > *:nth-child(n), .col5m > *:nth-child(n) {position:relative; top:-20px; float:left; margin:20px 0 0 20px;}
.col2m > * {width:calc((100% - 20px) / 2);}
.col3m > * {width:calc(100% - 40px) / 3);}
.col4m > * {width:calc(100% - 60px) / 4);}
.col5m > * {width:calc(100% - 70px) / 5);}
.col2m > *:nth-child(2n+1), .col3m > *:nth-child(3n+1), .col4m > *:nth-child(4n+1), .col5m > *:nth-child(5n+1) {clear:left; margin-left:0;}

@media screen and (min-width:601px){
  .pcCol2 > *, .pcCol3 > *, .pcCol4 > *, .pcCol5 > * {position:relative; top:-20px; float:left; margin:20px 0 0 20px;}
  .pcCol2 > * {width:50%;} .pcCol3 > * {width:33.333%;} .pcCol4 > * {width:25%;} .pcCol5 > * {width:20%;}
  .pcCol2 > *:nth-child(2n+1), .pcCol3 > *:nth-child(3n+1), .pcCol4 > *:nth-child(4n+1), .pcCol5 > *:nth-child(5n+1) {clear:left;}
  .pcCol2m > *:nth-child(n), .pcCol3m > *:nth-child(n), .pcCol4m > *:nth-child(n), .pcCol5m > *:nth-child(n) {position:relative; top:-20px; float:left; margin:20px 0 0 20px;}
  .pcCol2m > * {width:calc((100% - 20px) / 2);}
  .pcCol3m > * {width:calc((100% - 40px) / 3);}
  .pcCol4m > * {width:calc((100% - 60px) / 4);}
  .pcCol5m > * {width:calc((100% - 70px) / 5);}
  .pcCol2m > *:nth-child(2n+1), .pcCol3m > *:nth-child(3n+1), .pcCol4m > *:nth-child(4n+1), .pcCol5m > *:nth-child(5n+1) {clear:left; margin-left:0;}
}

@media screen and (max-width:600px){
  .spCol2 > *, .spCol3 > *, .spCol4 > *, .spCol5 > * {position:relative; -20px float:left; margin:20px 0 0 20px;}
  .spCol2 > * {width:50%;} .spCol3 > * {width:33.333%;} .spCol4 > * {width:25%;} .spCol5 > * {width:20%;}
  .spCol2 > *:nth-child(2n+1), .spCol3 > *:nth-child(3n+1), .spCol4 > *:nth-child(4n+1), .spCol5 > *:nth-child(5n+1) {clear:left;}
  .spCol2m > *:nth-child(n), .spCol3m > *:nth-child(n), .spCol4m > *:nth-child(n), .spCol5m > *:nth-child(n) {position:relative; top:-20px; float:left; margin:20px 0 0 20px;}
  .spCol2m > * {width:calc((100% - 20px) / 2);}
  .spCol3m > * {width:calc(100% - 40px) / 3);}
  .spCol4m > * {width:calc(100% - 60px) / 4);}
  .spCol5m > * {width:calc(100% - 70px) / 5);}
  .spCol2m > *:nth-child(2n+1), .spCol3m > *:nth-child(3n+1), .spCol4m > *:nth-child(4n+1), .spCol5m > *:nth-child(5n+1) {clear:left; margin-left:0;}
  [class*="pcCol"]:not([class*="spCol"]) > * + * {margin-top:20px;}
}

/* .idt: 直下第一要素をヘッダとするインデント */
.idt1 {padding-left:1em!important;}
ul.idt1 > li > *:first-child, .idt1:not(ul) > *:first-child {display:inline-block; width:1em; margin-left:-1em;}
.idt15 {padding-left:1.5em!important;}
ul.idt15 > li > *:first-child, .idt15:not(ul) > *:first-child {display:inline-block; width:1.5em; margin-left:-1.5em;}
.idt2 {padding-left:2em!important;}
ul.idt2 > li > *:first-child, .idt2:not(ul) > *:first-child {display:inline-block; width:2em; margin-left:-2em;}
.idt25 {padding-left:2.5em!important;}
ul.idt25 > li > *:first-child, .idt25:not(ul) > *:first-child {display:inline-block; width:2.5em; margin-left:-2.5em;}
.idt3 {padding-left:3em!important;}
ul.idt3 > li > *:first-child, .idt3:not(ul) > *:first-child {display:inline-block; width:3em; margin-left:-3em;}
.idt4 {padding-left:4em!important;}
ul.idt4 > li > *:first-child, .idt4:not(ul) > *:first-child {display:inline-block; width:4em; margin-left:-4em;}
.idt5 {padding-left:5em!important;}
ul.idt5 > li > *:first-child, .idt5:not(ul) > *:first-child {display:inline-block; width:5em; margin-left:-5em;}
.idt6 {padding-left:6em!important;}
ul.idt6 > li > *:first-child, .idt6:not(ul) > *:first-child {display:inline-block; width:6em; margin-left:-6em;}
.idt7 {padding-left:7em!important;}
ul.idt7 > li > *:first-child, .idt7:not(ul) > *:first-child {display:inline-block; width:7em; margin-left:-7em;}
.idt8 {padding-left:8em!important;}
ul.idt8 > li > *:first-child, .idt8:not(ul) > *:first-child {display:inline-block; width:8em; margin-left:-8em;}
[class*="idt"] * {text-indent:0;}

/* メールフォームPHP関係 */
.sizeL {width:93%;}
.sizeM {width:70%;}
.sizeS {width:50%; min-width:150px;}
.sizeSS {width:12%; min-width:80px;}
input, select, textarea {margin:2px;}
input[type="radio"], input[type="checkbox"] {margin:0 .3em 0 0;}
textarea {width:93%; height:10em;}
label {display:inline-block; margin-right:1.2em;}

.button {text-align:center;}
.button button {margin:2px;}
dt.req:before {content:"必須"; display:inline-block; margin-right:.4em; padding:0 .4em; background:#f45577; line-height:1.7; font-size:11px; color:#fff;}

.error, .error_messe {color:#e35;}
.error_messe + .error_messe {margin-top:-.4em;}
.formTable {width:100%; margin:25px 0;}
.formTable th {width:25%; padding:.8em 0; border-top:1px #bbb dotted; font-weight:bold; text-align:left;}
.formTable td {width:75%; padding:.8em 0; border-top:1px #bbb dotted;}
.formTable tr:first-child > * {border-top:0;}

@media print, screen and (min-width:601px) {
  .pcSizeM {width:50%;}
  .pcSizeS {width:25%;}
  .pcSizeSS {width:15%;}
}

@media screen and (max-width:600px){
  input[type="text"], .sizeL, .sizeM, input[type="search"], textarea {width:93%; box-sizing:border-box;}
  .pcSizeM, .pcSizeS, .pcSizeSS {max-width:93%;}
  .formTable, .formTable tbody, .formTable tr {display:block;}
  .formTable th, .formTable td {display:block; width:auto; padding:.4em 0; border:0;}
  .formTable th {padding:.4em .6em; font-weight:500; background:#F1F3F6;}
  .formTable tr + tr {margin-top:15px;}
}

/* ------ その他レスポンシブ */
@media print, screen and (min-width:601px) {
  .sp, .sp.IB {display:none;}
  .pcIB {display:inline-block;}
  .pcFlL {float:left;}
  .pcFlR {float:right;}
  .pcFlL.pcPad {padding-left:20px; padding-bottom:15px; box-sizing:border-box;}
  .pcFlR.pcPad {padding-right:20px; padding-bottom:15px; box-sizing:border-box;}
  [class*="pcW"] {box-sizing:border-box;}
  .pcW10 {width:10%;} .pcW15 {width:15%;} .pcW20 {width:20%;} .pcW25 {width:25%;} .pcW30 {width:30%;} .pcW35 {width:35%;} .pcW40 {width:40%;} .pcW45 {width:45%;} .pcW50 {width:50%;} .pcW55 {width:55%;} .pcW60 {width:60%;} .pcW65 {width:65%;} .pcW70 {width:70%;} .pcW75 {width:75%;} .pcW80 {width:80%;} .pcW85 {width:85%;} .pcW90 {width:90%;}
}

@media screen and (max-width:600px) {
  img {max-width:100%; height:auto;}
  .pc {display:none;}
  .sp, .spBL {display:block;}
  .sp.IB, .spIB {display:inline-block;}
  .sp.IL {display:inline;}
  div.sp, p.sp {display:block;}
  img.sp, br.sp {display:inline-block;}
  span.sp {display:inline;}
  .spCtr {text-align:center;}
  .spMt20 {margin-top:20px!important;}
  [class*="spW"] {box-sizing:border-box;}  
  .spW10 {width:30%;} .spW15 {width:35%;} .spW20 {width:30%;} .spW25 {width:35%;} .spW30 {width:30%;} .spW35 {width:35%;} .spW40 {width:40%;} .spW45 {width:45%;} .spW50 {width:50%;} .spW55 {width:55%;} .spW60 {width:60%;} .spW65 {width:65%;} .spW70 {width:70%;} .spW75 {width:75%;} .spW80 {width:80%;} .spW85 {width:85%;} .spW90 {width:90%;}
}




/*----------------------------------------------------------------------------------------------------------------------------------------

  レイアウト
  
----------------------------------------------------------------------------------------------------------------------------------------*/


/* =============== 全体 */

body {font:14px/1.6 "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif; color:#1a1a1a; font-feature-settings:"pkna";}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .yuGo {font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;}
.content {margin:0 auto; position:relative;}
.content:after {content:""; display:block; clear:both;}

@media print, screen and (min-width:601px) {
  .pageHeader, .pageFooter {min-width:980px;}
  .content {width:1200px; max-width:calc(100% - 50px); min-width:950px;}
}

@media screen and (max-width:600px) {
  #dim {width:100%; height:100%; position:fixed; top:0; left:0; z-index:10; background:rgba(0,0,0,.4); display:none; z-index:9000;}
  .pageHeader, .pageFooter {min-width:320px;}
  .content {width:auto; margin:0 12px;}
}


/* =============== ヘッダ */

.pageHeader {position:relative; z-index:10001; background:#fff;}
.pageHeader a {text-decoration:none;}
.pageHeader .__siteName a > img {width:130px; vertical-align:middle; margin-right:10px;}
.pageHeader .__siteName a > span {display:inline-block; vertical-align:middle; line-height:.85; font-size:24px;}
.pageHeader .__siteName a > span i {display:inline-block; line-height:1; font-size:13px;}

@media print, screen and (min-width:601px) {
  .pageHeader .__siteName {padding:20px 0; float:left;}
  .pageHeader .__siteName a > span i {margin-left:.2em;}
  .pageHeader nav {display:block!important;}
  .pageHeader .gnav {display:table; width:50%; padding:25px 0; float:right; box-sizing:border-box;}
  .pageHeader .gnav:after {content:""; display:block; clear:both;}
  .pageHeader .gnav li {display:table-cell; text-align:center;}
  .pageHeader .gnav li:last-child {margin-right:0;}
  .pageHeader .gnav li a {min-width:120px; display:inline-block; position:relative;}
  .pageHeader .gnav li a::after {width:100%; height:1px; position:absolute; bottom:-4px; left:0; background:#0175cf; transform:scale(0, 1); transform-origin:left top; transition:transform .3s; content:"";}
  .pageHeader .gnav li a:hover::after {transform:scale(1, 1);}
  .pageHeader .gnav li i {display:block; margin-top:.1em; text-align:center; line-height:1.33; font-size:13px; color:#0175cf;}
  #spNav {display:none;}
  .pageHeader .__siteName {}
}

@media screen and (max-width:600px) {
  .pageHeader .content {margin:0; padding:15px 0;}
  .pageHeader .__siteName {margin-left:12px;}
  .pageHeader .__siteName a > img {width:55px;}
  .pageHeader .__siteName a > span {font-size:16px;}
  .pageHeader .__siteName a > span i {max-width:calc(100vw - 120px); font-size:11px; font-weight:500; letter-spacing:-.02em;}
  #spNav {display:block; width:38px; height:35px; padding:10px 0 0; position:absolute; top:calc(50% - 16px); right:10px; box-sizing:border-box; text-align:center; cursor:pointer;}
  #spNav:before {content:""; display:block; width:30px; height:3px; margin:0 auto 2px; background:#333; box-shadow:0 -7px 0 #333, 0 7px 0 #333;}
  #spNav:after {content:"menu"; display:inline-block; font-family:"Roboto", sans-serif; transform:scale(.7); letter-spacing:.04em; text-indent:-.08em; text-align:center; line-height:1;}
  .pageHeader nav {display:none; position:absolute; width:100%; top:66px; box-shadow:0 4px rgba(0,0,0,.2);}
  .pageHeader .gnav {display:block; background:#00599e;}
  .pageHeader .gnav li {float:none; display:block; width:auto;}
  .pageHeader .gnav li i {margin-left:.6em; font-size:93%;}
  .pageHeader .gnav a {display:block; padding:.8em 12px; color:#fff;}
  .pageHeader .gnav > li + li > a {border-top:1px rgba(255,255,255,0.3) solid;}
}


/* =============== フッタ */

.pageFooter {background:#232e47; color:#fff;}
.pageFooter a {margin-top:0; display:inline-block; text-decoration:none; color:#fff;}
.pageFooter address {margin-bottom:20px;}
.pageFooter address img {width:300px;}
.pageFooter address p {margin-top: 1.5em;}
.pageFooter .__copyright {font-size:11px;}


@media print, screen and (min-width:601px) {
  .pageFooter .content {padding:55px 0 20px;}
  .pageFooter address {display:table;}
  .pageFooter address > * {display:table-cell; vertical-align:middle;}
  .pageFooter address a img {margin-right:20px;}
  .pageFooter .__copyright {margin-top:55px; font-size:11px;}
}

@media screen and (max-width:600px) {
  .pageFooter .content {padding:35px 0;}
  .pageFooter address p {font-size:12px;}
  .pageFooter address a img {width:240px;}
  .pageFooter .__copyright {margin-top:27px; transform-origin:left; transform: scale(0.9);}
}


/* =============== メイン */


/* パンくず */
.breadcrumb {margin:25px 0; line-height:1.5; font-size:85%;}
.breadcrumb li {float:left;}
.breadcrumb li:after {content:""; display:inline-block; width:6px; height:6px; margin:0 .4em; border:#333 solid; border-width:1px 1px 0 0; transform:rotate(45deg);}
.breadcrumb li:last-child:after {display:none;}
.breadcrumb a {text-decoration:none;}

/* コンテンツエリア マージン指定 */
main .content {line-height:1.8;}
main *:last-child {margin-bottom:0;}
main * + p,
main * + ul,
main * + ol,
main * + dl,
main * + table {margin-top:.8em;}
main ul:not[class] {padding-left:1.5em; list-style-type:disc;}
main ul:not[class] > li > ul:not[class] {padding-left:1.5em; list-style-type:circle;}


@media print, screen and (min-width:601px) {
  main {min-width:980px;}
  .pageTitle {}
  .pageTitle h1 {}
}
@media screen and (max-width:600px) {
  main {min-width:320px;}
  main .pageTitle ~ .content,
  main .pageTitle ~ section > .content {width:auto; margin:0 15px;}
  .pageTitle {}
  .pageTitle h1 {}
}




/*----------------------------------------------------------------------------------------------------------------------------------------

  汎用パーツ

----------------------------------------------------------------------------------------------------------------------------------------*/


/* H2～H6 */

h2, .h2 {margin:0 0 1em; font-size:146.5%; font-weight:bold;}
* + h2, * + .h2 {margin-top:3em;}
h2:before, .h2:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h2:after, .h2:after {content:""; display:none; width:0; height:0; border:0; transform:none;}

h3, .h3 {margin:0 0 .75em; font-size:131%; font-weight:bold;}
* + h3, * + .h3 {margin-top:2em;}
h3:before, .h3:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h3:after, .h3:after {content:""; display:none; width:0; height:0; border:0; transform:none;}

h4, .h4 {margin:0 0 .6em; font-size:116%; font-weight:bold;}
* + h4, * + .h4 {margin-top:1.8em;}
h4:before, .h4:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h4:after, .h4:after {content:""; display:none; width:0; height:0; border:0; transform:none;}

h5, .h5 {margin:0 0 .4em; font-size:108%; font-weight:bold;}
* + h5, * + .h5 {margin-top:1.2em;}
h5:before, .h5:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h5:after, .h5:after{content:""; display:none; width:0; height:0; border:0; transform:none;}

h6, .h6 {margin:0 0 .2em; font-size:100%; font-weight:bold;}
* + h6, * + .h6 {margin-top:.8em;}
h6:before, .h6:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h6:after, .h6:after {content:""; display:none; width:0; height:0; border:0; transform:none;}

main h4 + *, main .h4 + *,
main h5 + *, main .h5 + *,
main h6 + *, main .h6 + * {margin-top:0;}

@media print, screen and (min-width:601px) {
}

@media screen and (max-width:600px) {
}

/* .btn */
.btn1 a, a.btn1,
.btn1 button, button.btn1 {display:inline-block; padding:.4em .8em .5em; background:#eee; box-shadow:0 -2px 0 rgba(0,0,0,.2) inset; text-decoration:none; border:0;}
.btn1 a:before, a.btn1:before,
.btn1 button:before, button.btn1:before {content:""; display:inline-block; height:6px; width:6px; margin-right:.4em; border:#000 solid; border-width:2px 2px 0 0; transform:rotate(45deg);}

.btn2 a, a.btn2 {}
.btn2 a:before, a.btn2:before {content:""; display:inline-block; height:6px; width:6px; margin-right:.4em; border:#000 solid; border-width:2px 2px 0 0; transform:rotate(45deg);}

/* .brkTop/Btm, hr */
.brkTop1 {margin-top:30px!important; padding-top:30px!important; border-top:1px #888 dashed;}
.brkBtm1 {margin-bottom:30px!important; padding-bottom:30px!important; border-bottom:1px #888 dashed;}
.brkTop2:before,
.brkBtm2:after {content:""; display:block; width:70%; margin:60px 15%; border-top:1px #ccc solid;}
hr {background:none; margin:30px 0; border-top:1px #888 dashed; border-width:1px 0 0;}

/* dl.styled */
dl.styled {margin:50px 0; border-bottom:1px #ccc dotted;}
dl.styled.-openEnd,
dl.styled.-openTop > dt:first-child {border:0;}
dl.styled > dt {padding:1.2em 0 .4em; border-top:1px #ccc dotted; font-weight:bold; font-size:123.1%;}
dl.styled > dd {padding-bottom:1.2em;}
dl.styled > dd + dd {margin-top:1.6em;}

/* ul.styled */
ul.styled {border:#ccc dotted; border-width:1px 0; overflow:hidden;}
ul.styled > li {position:relative; padding:1em 0;}
ul.styled > li + li:after {content:""; display:block; position:absolute; left:-100px; top:0; width:calc(100% + 100px); border-top:1px #ccc dotted;}

/* .tableLike */
.tableLike {margin:1.5em 0; border:#ccc dotted; border-width:1px 0; overflow:hidden;}
.tableLike dt {clear:left; width:25%; float:left; padding:1em 1.2em; border-top:1px #ccc dotted; font-weight:bold; box-sizing:border-box;}
.tableLike dd {width:75%; float:left; padding:1em 0; border-top:1px #ccc dotted; box-sizing:border-box;}
.tableLike.dt15 dt {width:15%;}
.tableLike.dt15 dd {width:85%;}
.tableLike dt:first-child,
.tableLike dt:first-child + dd {border-top:0;}

@media screen and (max-width:600px){
  .tableLike[class*="spFlat"]:before {display:none;}
  .tableLike.-spFlatA dt {float:none; width:auto; padding:.6em 0 .1em; border:0;}
  .tableLike.-spFlatA dd {float:none; width:auto; padding:0 0 .8em; border:0;}
  .tableLike.-spFlatA dd + dt {border-top:1px #989898 solid;}
  .tableLike.-spFlatB dt,
  .tableLike.-spFlatB dd {float:none; width:auto; padding:.4em 0; border:0;}
  .tableLike.-spFlatB dt {padding:.4em .6em; font-weight:500; background:#F1F3F6;}
  .tableLike.-spFlatB dd + dt {margin-top:15px;}
}

/* .hNTable: .tableLikeを見出しと任意のタグで */
.h2Table, .h3Table, .h4Table, .h5Table {position:relative; overflow:hidden; padding-bottom:.8rem; border-bottom:1px #bbb dotted;}
.h2Table:before, .h3Table:before, .h4Table:before,.h5Table:before {content:""; display:block; position:absolute; top:0; left:0; width:20%; height:100%; background:rgba(40,40,0,.08);}
.h2Table > *, .h3Table > *, .h4Table > *, .h5Table > * {position:relative; z-index:1; display:block; float:right; width:80%; margin:.6rem 0 0; padding:0 .8rem; box-sizing:border-box;}
.h2Table > h2, .h3Table > h3, .h4Table > h4, .h5Table > h5 {clear:both; float:left; width:20%; padding:.8rem; border-top:1px #bbb dotted; font-size:1rem; color:inherit;}
.h2Table > h2 + *, .h3Table > h3 + *, .h4Table > h4 + *, .h5Table > h5 + * {padding-top:.8rem; border-top:1px #bbb dotted;}
.h2Table > h2:first-child + *, .h3Table > h3:first-child + *, .h4Table > h4:first-child + *, .h5Table > h5:first-child + * {margin-top:0;}
.h2Table > .disc, .h3Table > .disc, .h4Table > .disc, .h5Table > .disc,
.h2Table > .square, .h3Table > .square, .h4Table > .square, .h5Table > .square {padding-left:2em;}

@media screen and (max-width:600px){
  .h2Table.-spFlat, .h3Table.-spFlat, .h4Table.-spFlat {padding-bottom:.5rem;}
  .h2Table.-spFlat:before, .h3Table.-spFlat:before, .h4Table.-spFlat:before {display:none;}
  .h2Table.-spFlat > *, .h3Table.-spFlat > *, .h4Table.-spFlat > * {float:none; width:auto; margin:0; padding:0;}
  .h2Table.-spFlat > h2, .h3Table.-spFlat > h3, .h4Table.-spFlat > h4 {float:none; width:auto; padding:.5rem 0 .2rem;}
  .h2Table.-spFlat > h2 + *, .h3Table.-spFlat > h3 + *, .h4Table.-spFlat > h4 + * {float:none; width:auto; margin:0; padding:0; border-top:0;}
  .h2Table.-spFlat > * + h2, .h3Table.-spFlat > * + h3, .h4Table.-spFlat > * + h4 {margin-top:.5em;}
}

/* form要素 */
select {-webkit-appearance:none; -moz-appearance:none; appearance:none; padding-right:30px; border-radius:0; background:#eee url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23000000" d="M7,10L12,15L17,10H7Z" /></svg>') no-repeat 100% 50%; background-size:24px auto;}
select:after {content:""; position:absolute; right:10px; top:calc(50% - 5px); display:block; border-left:10px transparent solid; border-bottom:10x #1a1a1a solid; transform:rotate(45deg);}
p.form__note {margin-top:.3em; font-size:85%;}
span.form__note {display:inline-block; font-size:85%;}




/*----------------------------------------------------------------------------------------------------------------------------------------

  ページ個別

----------------------------------------------------------------------------------------------------------------------------------------*/


/* =============== トップページ */

/* メインビジュアル */
.mainVisual {background:url("../../images/mv.jpg") center/cover no-repeat;}

@media print, screen and (min-width:601px) {
  .mainVisual {min-width:980px; height:32vw; min-height:300px; max-height:430px;}
}

@media screen and (max-width:600px) {
  .mainVisual {height:60vw;}
}

main h2 {border-bottom:1px solid #000; /*font-family:"Noto Sans JP";*/}
main h2 > i {display:inline-block; font-size:18px; color:#0175cf;}
main h2 .note {display:inline-block; font-size:13px; font-weight:normal;}

@media print, screen and (min-width:601px) {
  main h2 {margin-bottom:50px; padding:50px 0; font-size:32px;}
  main h2 > i {margin-left:17px; font-size:24px;}
  main h3 {font-size:20px;}
}

@media screen and (max-width:600px) {
  main h2 {margin-bottom:30px; padding:30px 0; text-align:center; font-size:20px; font-size:24px;}
  main h2 > i {display:block; /*margin-left:10px;*/ font-size:16px;}
  main h3 {font-size:17px;}
}


/* 新着情報 */

.News dl {overflow:hidden auto;}
.News dl dd:nth-of-type(2n+1) {padding-bottom:0; border-bottom:0;}
.News dl dd:nth-of-type(2n) {padding-top:0;}
.News dl dt:last-of-type,
.News dl dd:last-of-type {border-bottom:0;}

@media print, screen and (min-width:601px) {
  .News {padding-bottom:50px;}
  .News dl {margin-left:10px; height:300px;}
  .News dl dt {clear:left; width:calc(100% - (90% - 10px) ); height:120px; padding:30px 0 0 2em; float:left; border-bottom:1px dashed #ccc; box-sizing:border-box;}
  .News dl dd {width:calc(90% - 10px); height:60px; padding:30px 0; float:left; border-bottom:1px dashed #ccc; box-sizing:border-box; font-weight:bold;}
}

@media screen and (max-width:600px) {
  .News {padding-bottom:30px;}
  .News dl {height:250px; margin-bottom:30px;}
  .News dl dt {padding:0 10px;}
  .News dl dd {padding:10px 15px 15px; border-bottom:1px dashed #ccc; box-sizing:border-box; font-weight:bold;}
  .News dl dd:nth-of-type(2n) {margin-bottom:15px; }
}


.txt h3 {line-height:1.6;}

/* ご挨拶 */

.Message {padding-bottom:50px; background:#232e47; color:#fff;}
.Message h2 {border-bottom:1px solid #fff;}
.Message h2 i {color:#1598fd;}
.Message .wrap {padding:0 10px;}
.Message .wrap .pic {width:200px; height:240px; text-align:center;}
.Message .wrap .pic img {max-width:100%; max-height:100%;}
.Message .wrap .txt .name {font-size:12px;}
.Message .wrap .txt .name b {display:block; font-size:16px; font-weight:normal;}

@media print, screen and (min-width:601px) {
  .Message .wrap .pic {margin-left:0; float:left;}
  .Message .wrap .txt {width:calc( (100% - 310px) / 2); margin-left:45px; float:left;}
  .Message .wrap .txt .name {margin-top:48px;}
  .Message .wrap .txt .narrowLH + .name {margin-top:32px;}
}

@media screen and (max-width:600px) {
  .Message .wrap .pic {margin:0 auto 30px;}
  .Message .wrap .txt:nth-child(2) {margin-bottom:30px;}
  .Message .wrap .txt .name {margin-top:15px;}
}


/* 概要/組織図 */

/* -- 概要 */
.Overview {padding-bottom:50px; background:#d3dae9;}
.Overview .ovTxt {padding:0 10px;}

@media print, screen and (min-width:601px) {
  .Overview .ovTxt {overflow:hidden;}
  .Overview .ovTxt .txt {width:calc( (100% - 80px) / 2); margin-right:60px; float:left;}
  .Overview .ovTxt .txt:last-child {margin-right:0;}
}

@media screen and (max-width:600px) {
  .Overview .ovTxt .txt {margin-bottom:30px;}
}

/* -- 組織図 */

.orgChart {max-width:950px; margin:40px auto; line-height:1.4;}
.orgChart .__division {position:relative; padding:16px 24px; background:rgba(255,255,255,.4);}
.orgChart .__division:after {content:""; display:block; clear:both;}
.orgChart .__division i {display:inline-block; line-height:1.4; opacity:.85;}
.orgChart .__division h3 i {font-size:77%;}
.orgChart .__division dt i {font-size:85%;}
.orgChart .__division dd i {font-size:93%;}
.orgChart .__division dt {font-weight:bold; font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;}
.orgChart .__division dd {margin-top:.4em; padding-left:16px;}
.orgChart .__division dd:before {content:""; display:inline-block; width:6px; height:6px; margin:0 6px 0 -12px; background:#fff; border-radius:50%; vertical-align:middle;}
.orgChart .__division.-first {margin-bottom:20px; padding-bottom:24px; ^background:rgba(230,180,0,.2); border-top:2px #d80 solid;}
.orgChart .__division.-first h3 {color:#d80;}
.orgChart .__division.-first .__lab {overflow:hidden;}
.orgChart .__division.-first dl {padding:12px 16px; box-sizing:border-box;}
.orgChart .__division.-first dl:nth-of-type(1) {background:rgba(220,50,30,.6); color:#fff;}
.orgChart .__division.-first dl:nth-of-type(2) {background:rgba(20,60,180,.6); color:#fff;}
.orgChart .__division.-first dt {margin-bottom:.8em; padding-bottom:.6em; border-bottom:1px #fff solid; font-size:123.1%;}
.orgChart .__arrow {position:relative; z-index:100; text-align:center; font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;}
.orgChart .__arrow:before {content:""; display:block; position:absolute; top:75%; left:50%; width:120px; height:126px; background:url(../../images/orgchart_arrow.png) no-repeat 0 0; background-size:120px auto; transform:translate(-50%, -50%);}
.orgChart .__arrow span {position:relative; z-index:10; display:inline-block; color:#333; font-weight:bold;}
.orgChart .__division.-second {margin-top:30px; ^background:rgba(80,170,50,.12); border-top:2px #490 solid;}
.orgChart .__division.-second .__academy {padding:.33em .6em; background:#74AD83; text-align:center; font-weight:bold; font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; color:#fff;}
.orgChart .__division.-second .__academy i {font-size:93%;}
.orgChart .__division.-second h3 {color:#490;}
.orgChart .__division.-second dt {margin-bottom:.8em; padding-bottom:.6em; border-bottom:1px #270 solid; font-size:116%;}
.orgChart .__division.-second dd:before {background:#492;}
.orgChart .__division.-third {margin-top:25px; ^background:rgba(40,80,180,.08); border-top:2px #47b solid;}
.orgChart .__division.-third h3 {color:#47b;}

@media print, screen and (min-width:601px) {
  .orgChart .__division.-first {overflow:hidden;}
  .orgChart .__division.-first dl {width:48%; margin:0 1%; float:left;}
  .orgChart .__division.-first dl:nth-of-type(1) {box-shadow:0 50px 0 rgba(220,50,30,.6);}
  .orgChart .__division.-first dl:nth-of-type(2) {box-shadow:0 50px 0 rgba(20,60,180,.6);}
  .orgChart .__division.-second {margin-top:20px;}
  .orgChart .__division.-second h3 {}
  .orgChart .__division.-second .__academy {position:absolute; right:24px; top:-10px;}
  .orgChart .__division.-second dl > div {width:30%; float:left; margin:0 1.66%;}
  .orgChart .__division.-third {overflow:hidden;}
  .orgChart .__division.-third h3 {float:left;}
  .orgChart .__division.-third ul {margin-left:34%;}
}
@media screen and (max-width:600px) {
  .orgChart {margin:40px 20px;}
  .orgChart .__division.-first {margin-bottom:25px;}
  .orgChart .__division.-second h3 {float:left;}
  .orgChart .__division.-second h3 i {display:block;}
  .orgChart .__division.-second .__academy {float:right;}
  .orgChart .__division.-second dl {clear:both; padding-top:1em;}
}

/* 研究機関 */

#Links ul {padding:0 10px; overflow:hidden;}
#Links li > a {display:block; text-decoration:none;}
#Links li h3 {text-align:center;}
#Links li h3 i {display:inline-block; margin-top:.6em; line-height:18px; font-size:15px;}
#Links li h3 i>  span {display:inline-block;}
#Links li .pic {margin-bottom:.75em; text-align:center;}
#Links li .pic > img {max-width:100%; max-height:100%;}

@media print, screen and (min-width:601px) {
  #Links {padding-bottom:50px; overflow:hidden;}
  #Links li {width:calc( (100% - 80px) / 3); float:left; margin-right:40px;}
  #Links li:last-child {margin-right:0;}
  #Links li h3 > img {max-width:100%;}
  #Links li h3 i:not(.-double) {padding:12px 0 11px;}
}

@media screen and (max-width:600px) {
  #Links li > a {margin-bottom:50px;}
  #Links li h3 > img {width:350px;}

}

/* =============== 免責事項 */

.disclaimer i {display:inline-block; margin-left:.5em; font-size:15px;}
.disclaimer dl {margin-bottom:50px;}
.disclaimer dt {margin:50px 0 15px; margin-bottom:15px; padding-bottom:15px; border-bottom:1px solid #000; font-weight:bold; /*font-family:"Noto Sans JP"; */font-size:18px;}
.disclaimer dd {padding:0 10px;}
.disclaimer dd:nth-of-type(2n) {margin-top:.8em;}
.disclaimer .protection {margin-bottom:50px;}

@media screen and (max-width:600px) {
  .disclaimer i {margin:0; display:block;}
  .disclaimer dt, .disclaimer .protection {text-align:center;}
}




/*----------------------------------------------------------------------------------------------------------------------------------------

  外部ライブラリ等

----------------------------------------------------------------------------------------------------------------------------------------*/


/* --------------- MTページネーション */
.pagination {margin:30px 0; text-align:center;}
.pagination .current_page {display:inline-block; margin:6px 1px; padding:1px 6px;}
.pagination .current_page:only-child {display:none;}
.pagination a {display:inline-block; margin:6px 1px; padding:1px 6px; text-decoration:none;}

.pagination.-json ol {display:inline; margin:0; padding:0;}
.pagination.-json li {display:inline-block;}
.pagination.-json .is-current {font-weight:bold;}

/* --------------- .eml */
.eml {cursor:pointer;}
.eml abbr {display:inline; width:1em; overflow:hidden; white-space:nowrap;}
.eml abbr:not(.done):before {content:"@";}

/* --------------- thumbSize */
.thumbFrame {display:inline-block; position:relative; vertical-align:bottom; text-align:center; overflow:hidden; width:100%; height:100%; margin:0!important; padding:0!important; overflow:hidden;}
.thumbFrame img {position:absolute; max-width:500%; max-height:500%; opacity:0; transition:opacity .2s;}
.thumbFrame img.w100 {width:100%; left:0; top:50%; transform:translate(0,-50%);}
.thumbFrame img.h100 {height:100%; left:50%; top:0; transform:translate(-50%,0);}
.thumbFrame img[class*='100'] {opacity:1;}
.loadingBg:before {content:"loading..."; display:block; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); font-size:11px; color:#aaa;} 

/* --------------- 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;}

/* --------------- magnific popup */
.mfp-bg {top:0; left:0; width:100%; height:100%; z-index:1042; overflow:hidden; position:fixed; background:#0b0b0b; opacity:.8;}
.mfp-wrap {top:0; left:0; width:100%; height:100%; z-index:1043; position:fixed; outline:none !important; -webkit-backface-visibility:hidden;}
.mfp-container {text-align:center; position:absolute; width:100%; height:100%; left:0; top:0; padding:0 8px; box-sizing:border-box;}
.mfp-container:before {content:''; display:inline-block; height:100%; vertical-align:middle;}
.mfp-align-top .mfp-container:before {display:none;}
.mfp-content {position:relative; display:inline-block; vertical-align:middle; margin:0 auto; text-align:left; z-index:1045;}
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {width:100%; cursor:auto;}
.mfp-ajax-cur {cursor:progress;}
.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close {cursor:-moz-zoom-out; cursor:-webkit-zoom-out; cursor:zoom-out;}
.mfp-zoom {cursor:pointer; cursor:-webkit-zoom-in; cursor:-moz-zoom-in; cursor:zoom-in;}
.mfp-auto-cursor .mfp-content {cursor:auto;}
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {-webkit-user-select:none; -moz-user-select:none; user-select:none;}
.mfp-loading.mfp-figure {display:none;}
.mfp-hide {display:none !important;}
.mfp-preloader {color:#CCC; position:absolute; top:50%; width:auto; text-align:center; margin-top:-.8em; left:8px; right:8px; z-index:1044;}
.mfp-preloader a {color:#CCC;}
.mfp-preloader a:hover {color:#FFF;}
.mfp-s-ready .mfp-preloader, .mfp-s-error .mfp-content {display:none;}
button.mfp-close, button.mfp-arrow {overflow:visible; cursor:pointer; background:transparent; border:0; -webkit-appearance:none; display:block; outline:none; padding:0; z-index:1046; box-shadow:none; touch-action:manipulation;}
button::-moz-focus-inner {padding:0; border:0;}
.mfp-close {width:44px; height:44px; line-height:44px; position:absolute; right:0; top:0; text-decoration:none; text-align:center; opacity:.65; padding:0 0 18px 10px; color:#FFF; font-style:normal; font-size:28px; font-family:Arial,Baskerville,monospace;}
.mfp-close:hover, .mfp-close:focus {opacity:1;}
.mfp-close:active {top:1px;}
.mfp-close-btn-in .mfp-close {color:#333;}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {color:#FFF; right:-6px; text-align:right; padding-right:6px; width:100%;}
.mfp-counter {position:absolute; top:0; right:0; color:#CCC; font-size:12px; line-height:18px; white-space:nowrap;}
.mfp-arrow {position:absolute; opacity:.65; margin:0; top:50%; margin-top:-55px; padding:0; width:90px; height:110px; -webkit-tap-highlight-color:transparent;}
.mfp-arrow:active {margin-top:-54px;}
.mfp-arrow:hover, .mfp-arrow:focus {opacity:1;}
.mfp-arrow:before, .mfp-arrow:after {content:''; display:block; width:0; height:0; position:absolute; left:0; top:0; margin-top:35px; margin-left:35px; border:medium inset transparent;}
.mfp-arrow:after {border-top-width:13px; border-bottom-width:13px; top:8px;}
.mfp-arrow:before {border-top-width:21px; border-bottom-width:21px; opacity:.7;}
.mfp-arrow-left {left:0;}
.mfp-arrow-left:after {border-right:17px solid #FFF; margin-left:31px;}
.mfp-arrow-left:before {margin-left:25px; border-right:27px solid #3F3F3F;}
.mfp-arrow-right {right:0;}
.mfp-arrow-right:after {border-left:17px solid #FFF; margin-left:39px;}
.mfp-arrow-right:before {border-left:27px solid #3F3F3F;}
.mfp-iframe-holder {padding-top:40px; padding-bottom:40px;}
.mfp-iframe-holder .mfp-content {line-height:0; width:100%; max-width:900px;}
.mfp-iframe-holder .mfp-close {top:-40px;}
.mfp-iframe-scaler {width:100%; height:0; overflow:hidden; padding-top:56.25%;}
.mfp-iframe-scaler iframe {position:absolute; display:block; top:0; left:0; width:100%; height:100%; box-shadow:0 0 8px rgba(0,0,0,.6); background:#000;}
/* Main image in popup */
img.mfp-img {width:auto; max-width:100%; height:auto; display:block; line-height:0; box-sizing:border-box; padding:40px 0 40px; margin:0 auto;}
/* The shadow behind the image */
.mfp-figure {line-height:0;}
.mfp-figure:after {content:''; position:absolute; left:0; top:40px; bottom:40px; display:block; right:0; width:auto; height:auto; z-index:-1; box-shadow:0 0 8px rgba(0,0,0,.6); background:#444;}
.mfp-figure small {color:#BDBDBD; display:block; font-size:12px; line-height:14px;}
.mfp-figure figure {margin:0;}
.mfp-bottom-bar {margin-top:-36px; position:absolute; top:100%; left:0; width:100%; cursor:auto;}
.mfp-title {text-align:left; line-height:18px; color:#F3F3F3; word-wrap:break-word; padding-right:36px;}
.mfp-image-holder .mfp-content {max-width:100%;}
.mfp-gallery .mfp-image-holder .mfp-figure {cursor:pointer;}
@media screen and (max-width:800px) and (orientation:landscape),screen and (max-height:300px) {
/* Remove all paddings around the image on small screen */
  .mfp-img-mobile .mfp-image-holder {padding-left:0; padding-right:0;}
  .mfp-img-mobile img.mfp-img {padding:0;}
  .mfp-img-mobile .mfp-figure:after {top:0; bottom:0;}
  .mfp-img-mobile .mfp-figure small {display:inline; margin-left:5px;}
  .mfp-img-mobile .mfp-bottom-bar {background:rgba(0,0,0,.6); bottom:0; margin:0; top:auto; padding:3px 5px; position:fixed; box-sizing:border-box;}
  .mfp-img-mobile .mfp-bottom-bar:empty {padding:0;}
  .mfp-img-mobile .mfp-counter {right:5px; top:3px;}
  .mfp-img-mobile .mfp-close {top:0; right:0; width:35px; height:35px; line-height:35px; background:rgba(0,0,0,.6); position:fixed; text-align:center; padding:0;}
}
@media all and (max-width:900px) {.mfp-arrow {-webkit-transform:scale(.75); transform:scale(.75);}
  .mfp-arrow-left {-webkit-transform-origin:0; transform-origin:0;}
  .mfp-arrow-right {-webkit-transform-origin:100%; transform-origin:100%;}
  .mfp-container {padding-left:6px; padding-right:6px;}
}

/* --------------- 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);}