@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;}

/* ------ inline elements */
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;}

/* ------ 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;}




/* =============== 汎用クラス/初期設定 */

/* ------ 配置 */
a:hover img {filter:alpha(opacity=80); opacity:.8;}
.clear {clear:both;}
.clL {clear:left;}
.clR {clear:right;}
.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 0;}
.blk {display:block;}
.inBlk, 
.IB,
.spanIB > span {display:inline-block;}
.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%;}
.tight {letter-spacing:-.02em;}

@media screen and (max-width:600px){
  .flL.spFlat,
  .flR.spFlat {float:none; width:auto;}
}


/* ------ テキスト装飾 */
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}
.nowrap {white-space:nowrap;}
.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;}
img.mw100, .mw100 img {max-width:100%;}

/* ------ スペース */
.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;}
.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;}
.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;}
.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;}


/* ------ 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; margin-left:2em;}
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;}
.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.3%;}
.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 > *, .col3m > *, .col4m > *, .col5m > * {position:relative; float:left; margin:0 0 20px 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; float:left; margin:0 0 20px;}
  .pcCol2 > * {width:50%;}
  .pcCol3 > * {width:33.3%;}
  .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 > *, .pcCol3m > *, .pcCol4m > *, .pcCol5m > * {position:relative; float:left; margin:0 0 20px 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; float:left; margin:0 0 20px;}
  .spCol2 > * {width:50%;}
  .spCol3 > * {width:33.3%;}
  .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 > *, .spCol3m > *, .spCol4m > *, .spCol5m > * {position:relative; float:left; margin:0 0 20px 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;}
}

/* ------ dl */
.styled > dt {font-weight:bold; margin-bottom:.2em;}
.styled > dd + dt {margin-top:.6em;}

.tableLike {margin:1.5em 0; overflow:hidden; zoom:1;}
.tableLike dt {clear:left; width:16em; float:left; padding:1.2em 0; border-top:1px #bbb dotted; box-sizing:border-box;}
.tableLike dd {width:calc(100% - 16em); float:left; padding:1.2em 0; border-top:1px #bbb 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 #ccc dotted;}
  .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;}
}

.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 > .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;}
}

/* ------ table */
table {margin-top:.6em; margin-bottom:.6em;}
caption {padding-bottom:.3em; text-align:center; font-weight:bold;}
th, td {padding:.4em .7em; border:1px #bbb solid; line-height:1.4; vertical-align:middle;}
th {background:#f5f5f5; background:rgba(0,0,0,.04); text-align:center; font-weight:normal;}
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;}
.full {width:100%;}
.almostFull {width:98%; margin-left:1%; margin-right:1%;}
.tdCenter td, .tdC td {text-align:center;}
.tdRight td, .tdR td {text-align:right;}
.nw2 *:nth-child(2),
.nw3 *:nth-child(3),
.nw4 *:nth-child(4),
.nw5 *:nth-child(5),
.nw6 *:nth-child(6) {white-space:nowrap;}

.plain th, .plain td {padding:.2em; border:0; background:none;}

@media screen and (max-width:600px){
  th, td {padding:.4em;}
}

.formTable {width:100%; margin:25px 0;}
.formTable th {width:25%; padding:.8em 0; border:none; border-top:1px #bbb dotted; background:none; font-weight:bold; text-align:left;}
.formTable td {width:75%; padding:.8em 0; border:none; border-top:1px #bbb dotted;}
.formTable tr:first-child > * {border-top:0;}

@media screen and (max-width:600px){
  .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;}
}

/* ------ form要素 */
.button {text-align:center;}
.button button {margin:2px;}
input, select {margin:2px;}
.sizeL {width:93%;}
.sizeM {width:50%;}
.sizeS {width:25%; min-width:150px;}
.sizeSS {width:15%; min-width:80px;}
textarea {width:93%; height:10em; margin:2px;}
dt.req:before {content:"必須"; display:inline-block; margin-right:.4em; padding:0 .4em; background:#f45577; font-size:11px; color:#fff;}
.error, .error_messe {color:#e35;}
.error_messe + .error_messe {margin-top:-.4em;}

@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%;}
}

/* ------ .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;}

/* ------ .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;}

@media screen and (max-width:600px) {
  .brkTop2:before,
  .brkBtm2:after {margin:40px 15%;}
}

/* ------ その他レスポンシブ */
@media print, screen and (min-width:601px) {
  .sp,
  .sp.IB {display:none;}
  .pcIB {display:inline-block;}
  .pcFlL {float:left;}
  .pcFlR {float:right;}
  .pcPL20 {padding-left:20px; padding-bottom:15px; box-sizing:border-box;}
  .pcPR20 {padding-right:20px; padding-bottom:15px; 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;}
  
  .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%;}
}




/*--------------------------------------------------------------------
基本レイアウト
--------------------------------------------------------------------*/


/* =============== 全体 */

* {transition:.2s all;}
body {font:14px/1.5 "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif; color:#1a1a1a; /*font-feature-settings:"pwid"; */}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .yuGo {font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.content {margin:0 auto; position:relative;}
.content:after {content:""; display:block; clear:both;}

@media print, screen and (min-width:601px) {
  body {padding-top:100px;}
  header, footer {min-width:980px;}
  .content {width:1200px; max-width:calc(100% - 50px); min-width:950px;}
}

@media screen and (max-width:600px) {
  body {padding-top:44px;}
  #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;}
  header, footer {min-width:320px;}
  .content {width:auto; margin:0 16px;}
}


/* =============== ヘッダ */

header {position:fixed; top:0; left:0; z-index:9999; width:100%; background:#fff;}
header a {text-decoration:none;}

header .siteTitle img {width:100%;}

header nav li {position:relative;}
header nav a {display:block;}

header nav .pr + ul {display:block; width:100%; opacity:0; height:0; max-height:0; overflow:hidden; transition:max-height .2s linear, opacity .1s linear; box-sizing:border-box; color:#fff;}
header nav .pr + ul a {position:relative; display:block; padding:.8em 10px; background:rgba(100,100,100,.9); color:#fff;}
header nav .pr + ul li + li a:before {content:""; width:90%; position:absolute; top:0; left:5%; border-top:1px rgba(255,255,255,.2) solid;}

@media print, screen and (min-width:601px) {
  header .siteTitle {float:left; width:250px; padding:25px 0;}
  header nav {display:block!important;}
  header nav ul {float:right;}
  header nav li {float:left; padding:20px 0 16px;}
  header nav li span {display:block; text-align:center; font-size:11px; transform:scale(.93);}
  header nav li a {padding:12px 14px;}
  header nav li a.on {border-bottom:1px #133058 solid;}
  #spNav {display:none;}
  
  header.scrolled {box-shadow:0 0 3px rgba(0,0,0,.2);}
  header.scrolled .siteTitle {width:200px; padding:12px 0 4px;}
  header.scrolled nav li {padding:1px 0;}
}

@media print, screen and (min-width:601px) and (max-width:1080px){
  header nav {font-feature-settings:"pkna";}
  header .siteTitle {width:24%;}
  header nav li a {padding:12px 11px;}
}

@media screen and (max-width:600px) {
  header {box-shadow:0 0 3px rgba(0,0,0,.2);}
  header .content {margin:0;}
  header .siteTitle {float:none; width:200px; margin:0 auto; padding:2px 0;}
  #spNav {display:block; width:30px; height:28px; position:absolute; top:calc(50% - 14px); left:10px; border:1px #999 solid; border-radius:3px; box-sizing:border-box; text-align:center; cursor:pointer;}
  #spNav:before {content:""; display:block; position:absolute; top:calc(50% - 1px); left:calc(50% - 6px); width:12px; height:2px; margin:0 auto 2px; background:#999; box-shadow:0 -4px 0 #999, 0 4px 0 #999;}
  #spNav.open {background:#133058; border-color:#133058;}
  #spNav.open:before {background:#fff; box-shadow:none; transform:rotate(45deg);}
  #spNav.open:after {content:""; display:block; position:absolute; top:calc(50% - 1px); left:calc(50% - 6px); width:12px; height:2px; margin:0 auto 2px; background:#fff; transform:rotate(-45deg);}
  header nav {display:none; position:absolute; width:100%; box-shadow:0 4px rgba(0,0,0,.2);}
  header nav > ul {border-top:1px #d9d9d9 solid; background:#fff;}
  header nav li {float:none; width:auto;}
  header nav a {display:block; padding:.8em 12px;}
  header nav > ul > li + li > a {border-top:1px #d9d9d9 solid;}
  header nav > ul span {display:none;}
}


/* =============== フッタ */

footer {border-top:3px #133058 solid; background:#F5F5F5;}
footer a {text-decoration:none;}
footer a:hover {background:rgba(0,0,0,.03);}
.ftSubNav {margin-bottom:40px; border-bottom:1px #E5E5E5 solid;}
footer > .content > div {margin-bottom:40px;}
footer > .content > div > div > a {display:inline-block; width:240px; margin-top:14px; padding:.1em 0; border:1px #133058 solid; border-radius:5px; text-align:center; color:#133058;}
footer > .content > div > div > a span {position:relative; display:inline-block; width:15px; height:11px; margin-right:.4em; border:1px #133058 solid; vertical-align:-5%; overflow:hidden;}
footer > .content > div > div > a span:before {content:""; display:block; width:10px; border-top:1px #133058 solid; position:absolute; right:50%; bottom:2px; transform:rotate(40deg); transform-origin:100% 0;}
footer > .content > div > div > a span:after {content:""; display:block; width:10px; border-top:1px #133058 solid; position:absolute; left:50%; bottom:2px; transform:rotate(-40deg); transform-origin:0 0;}
footer > .content > div > div > a:after {content:""; display:inline-block; margin-left:.6em; border:5px transparent solid; border-left:5px #133058 solid; border-right:0;}
footer > .content > div > div > a:hover {background:#133058; color:#fff;}
footer > .content > div > div > a:hover span,
footer > .content > div > div > a:hover span:before,
footer > .content > div > div > a:hover span:after {border-color:#fff;}
footer > .content > div > div > a:hover:after {border-left-color:#fff;}
footer > .content > div ul a {display:block; padding:10px .5em 8px; border-bottom:1px solid #e5e5e5; box-shadow:0 1px 0 rgba(255,255,255,0.9);}
footer > .content > div ul a:before {content:""; display:inline-block; height:5px; width:5px; margin-right:.8em; border:#000 solid; border-width:1px 1px 0 0; transform:rotate(45deg); vertical-align:10%;}
footer > .content > div ~ p {line-height:1.8; text-align:center; font-size:85%;}
footer > .content > div + p {padding-top:35px; border-top:1px #e5e5e5 solid;}
footer > .content > div + p + p {margin-top:.6em; padding-bottom:35px; text-align:center; font-size:85%;}

@media print, screen and (min-width:601px) {
  .ftSubNav {padding:10px 0;}
  .ftSubNav li {float:left; border:1px #ccc solid; border-width:0 1px;}
  .ftSubNav li + li {margin-left:-1px;}
  .ftSubNav a {display:block; padding:.5em 1em;}
  footer > .content > div {overflow:hidden; padding-bottom:1px;}
  footer > .content > div > * {width:31%; float:left;}
  footer > .content > div > * + * {margin-left:3.5%;}
}

@media screen and (max-width:600px) {
  .ftSubNav .content {margin:0;}
  .ftSubNav li a {display:block; padding:10px 15px;}
  .ftSubNav li + li {border-top:1px #e5e5e5 solid;}
  footer > .content > div > div {margin-bottom:30px; text-align:center;}
}


/* =============== メイン */

main {padding:60px 0 120px; line-height:1.67; font-size:1rem;}
#mv ~ main {padding:60px 0 0;}
main *:first-child {margin-top:0;}
main *:last-child {margin-bottom:0;}
main * + p,
main * + ul,
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;}
main a {color:#F38300;}

@media print, screen and (min-width:601px) {
  main {min-width:980px;}
}
@media screen and (max-width:600px) {
  main {min-width:320px; font-size:.93rem;}
  main .content {width:auto; margin:0 16px;}
  img[src*="home/top-img.jpg"] {margin-top:1em;}
}

/* =============== 汎用クラス(site-specific) */

.pageTitle {padding:2.5rem 0; background:#133058; text-align:center; color:#fff;}
.pageTitle h1 {font-size:200%;}
.pageTitle h1 + div {font-family:serif; font-size:108%;}

.breadcrumb {font-size:85%;}
.breadcrumb img {width:12px; margin-right:.4em; vertical-align:-5%;}
.breadcrumb a {text-decoration:none;}
.breadcrumb a:hover {text-decoration:underline;}

h2, .h2 {margin:0 0 1em; font-size:153.9%; 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;}

.linedH2 h2 {padding-bottom:.15em; border-bottom:1px #133058 solid; text-align:center;}

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;}

.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; color:inherit;}
.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);}
button[disabled] {opacity:.6;}

.btn2 a, a.btn2 {}
.btn2 a:after, a.btn2:after {content:""; display:inline-block; height:8px; width:8px; margin-left:.4em; border:#000 solid; border-width:1px 1px 0 0; transform:rotate(45deg); vertical-align:10%;}

.clrPad {margin:20px 0; padding:20px; background:#f5f5f5;}

.breadcrumb {border-bottom:1px #e5e5e5 solid;}
.breadcrumb li {position:relative; float:left; padding:13px 0; overflow:hidden;}
.breadcrumb li:not(:last-child) {position:relative; padding-right:24px;}
.breadcrumb li:not(:last-child):after {content:""; position:absolute; right:4px; top:50%; display:block; width:7px; height:7px; border:#ccc solid; border-width:1px 1px 0 0; transform:translate(-50%, -50%) rotate(45deg);}

.go-entry {border:1px solid #ccc; background-color:#f5f5f5; border-radius:4px; padding:25px 15px;}
.go-entry p {text-align:center;}
.go-entry p.entry-btn {margin-bottom:0; text-align:center;}
.go-entry p.entry-btn a {display:inline-block; max-width:380px; text-decoration:none; font-size:20px; padding:15px 20px; width:100%; color:#fff; background-color:#25b5D4; border-radius:4px; margin:0 20px;}
.go-entry p.entry-btn a:hover {background-color:#6de;}

h4.bg-color {color:#fff; margin-bottom:1.2em; padding:10px 15px 8px; border-radius:4px; background:#758298;}

.guideline {margin-bottom:2em;}
.guideline > * {padding-left:10px; border-left-width:2px; border-left-style:solid;}
.guideline dt {border-left-color:#133058; margin-bottom:10px; font-weight:bold;}
.guideline dd {border-left-color:#e5e5e5;}
.guideline dd + dt {margin-top:20px;}

.memo {font-size:85%; color:#666;}
.c-red {color:#f00;}
ol.list_parentheses{padding:0 0 0 0; margin:0;}
ol.list_parentheses li{margin-bottom:0.2em; list-style-type:none; list-style-position:inside; counter-increment:cnt;}
ol.list_parentheses li:before{display:marker; content:"(" counter(cnt) ") ";}


@media print, screen and (min-width:601px) {
  .breadcrumb {min-width:980px;}
}
@media screen and (max-width:600px) {
  .pageTitle h1 {font-size:167%;}
}



/*--------------------------------------------------------------------
ページ個別
--------------------------------------------------------------------*/


/* =============== トップページ */

#mv img {width:100%;}
.homeNav {margin-top:60px; margin-bottom:20px; padding:25px 0 50px; background:#133058; text-align:center; color:#fff;}
main .homeNav a {text-decoration:none; color:#fff;}
.homeNav a span {display:block; width:80px; height:80px; position:relative; margin:0 auto .6em; border:2px #fff solid; border-radius:50%; text-align:center;}
.homeNav a span img {position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:50%; transition:.3s all;}
.homeNav a:hover img {width:33%;}

.homeNav + .content h2 {border-bottom:1px #133058 solid; text-align:center;}
.homeNav + .content a {text-decoration:none; color:#1a1a1a;}
.homeNav + .content a:hover {text-decoration:underline;}
.tableLike.newsList {border-bottom:1px #bbb dotted;}
[class*="newsList"] dt {position:relative;}
[class*="newsList"] dt a {position:absolute; left:9rem; width:6em; margin-top:.2em; background:#133058; border:1px #133058 solid; border-radius:3px; line-height:1.33; text-align:center; font-size:77%; color:#fff!important; text-decoration:none;}
[class*="newsList"] dt a:hover {background:none; text-decoration:none!important; color:#133058!important;}

.homeNews {margin-top:60px; padding:60px 0; background:#133058; color:#fff;}
.homeNews a {color:#fff;}
.homeNews .btn2 a:after {border-color:#fff;}
.homeNews [class*="newsList"] dt a {background:#fff; color:#133058!important;}

@media print, screen and (min-width:601px) {
  #mv {min-width:980px; position:relative;}
  .homeNav li {width:25%; float:left;}
}

@media screen and (max-width:600px) {
  #mv {padding-top:66.667%; background:url(../../images/home/mv[sp].jpg) no-repeat 50% 50%; background-size:cover;}
  #mv img {display:none;}
  .homeNav li {width:50%; float:left; margin:15px 0;}
  .tableLike.newsList dt {font-size:93%;}
  .tableLike.newsList dt a {left:7.5rem;}
}

/* =============== お知らせ */

.newsList2 dd a {text-decoration:none; color:#1a1a1a;}
.newsList2 dd a:hover {text-decoration:underline;}
.newsList2 dd b {display:block; font-size:116%; font-weight:normal;}
.newsList2 dd p {margin-top:.3em; font-size:.85rem;}
.newsList2 dd + dt {margin-top:1.2em; padding-top:1.2em; border-top:1px #bbb dotted;}

.newsHead a {display:inline-block; margin-left:1em; width:6em; margin-top:.2em; background:#133058; border:1px #133058 solid; border-radius:3px; line-height:1.33; text-align:center; font-size:77%; color:#fff; text-decoration:none;}
.newsHead a:hover {background:none; text-decoration:none!important; color:#133058!important;}
.newsHead + h2 {margin-top:.1em;}
.newsHead ~ .brkTop1.ctr a {color:#1a1a1a; text-decoration:none; font-size:93%;}
.newsHead ~ .brkTop1.ctr a:hover {text-decoration:underline;}

/* =============== プロフィール */

[class*="profCnt"] {overflow:hidden;}
[class*="profCnt"] h2 {text-align:left;}
[class*="profCnt"] h2 span {display:block; line-height:1.33; font-size:1rem; color:#888;}
.markerLine_yellow {background:linear-gradient(transparent 60%, #ffff66 60%);}
.markerLine_lime {background:linear-gradient(transparent 60%, #66FFCC 60%);}
.markerLine_water {background:linear-gradient(transparent 60%, #8FFAFF 60%);}
.markerLine_pink {background:linear-gradient(transparent 60%, #fe9afe 60%);}
.markerLine_orange {background:linear-gradient(transparent 60%, #ffa500 60%);}

@media screen and (max-width:600px) {
  [class*="profCnt"] img {width:320px;}
}

/* =============== 著書・講座 */

.books {margin:50px 0 30px;}
.books > li {overflow:hidden;}
.books > li + li {margin-top:30px; padding-top:30px; border-top:1px #ccc solid;}
.books .pic {text-align:center;}
.books .txt ul {font-size:93%;}

.lecGuide ~ h3, .lecGuide ~ * h3 {padding-left:.5em; border-left:2px #133058 solid;}

@media print, screen and (min-width:601px) {
  .books .pic {width:400px; float:left;}
  .books .txt {width:calc(100% - 430px); float:right;}
}

/* =============== サイトマップ */

.sitemap_cell {margin-bottom:.6em;}
.sitemap_cell a {text-decoration:none; color:inherit;}
.sitemap_cell a:hover {text-decoration:underline;}
.sitemap_cell .dsc {position:relative; list-style:none; padding-left:2em;}
.sitemap_cell .dsc:before {content:""; display:block; width:.4em; border-top:1px #1a1a1a solid; position:absolute; left:.8em; top:50%;}

@media print, screen and (min-width:601px) {
  .sitemap_cell {width:50%; float:left;}
}


/*--------------------------------------------------------------------
外部ライブラリ
--------------------------------------------------------------------*/

/* --------------- thumbSize */
.thumbFrame {display:inline-block; position:relative; vertical-align:bottom; text-align:center; overflow:hidden; width:100%; height:100%; overflow:hidden;}
.thumbFrame img {max-width:500%; max-height:500%;}
.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);}