@charset "UTF-8";

/* ==========================================
  01 reset
  02 utility
  03 Layout
  04 page style
========================================== */

/* ==========================================
  01 reset
========================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,mt
small, strike, strong, sub, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}
body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  max-width: 100%;
}
html {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}
a {
  /*outline: none;*/
}
a img {
  border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

/* ==========================================
  02 utility
========================================== */
/* text */
.fSize80 {font-size: 80% !important;}
.fSize85 {font-size: 85% !important;}
.fSize90 {font-size: 90% !important;}
.fSize95 {font-size: 95% !important;}
.fSize105 {font-size: 105% !important;}
.fSize110 {font-size: 110% !important;}
.fSize115 {font-size: 115% !important;}
.fSize120 {font-size: 120% !important;}
.fSize150 {font-size: 150% !important;}
.fBold {font-weight: bold !important;}
.fNormal {font-weight: normal !important;}
.fCoRed {color: #cc0000 !important;}
.fCoGray {color: #666666 !important;}
.fStyleob {font-style: oblique;}
.linkUrl {word-break: break-all;}

.alignC {text-align: center !important;}
.alignL {text-align: left !important;}
.alignR {text-align: right !important;}

.txtUnderLine {text-decoration: underline;}
.txtLineThrough {text-decoration: line-through;}
.txtDecoration {text-decoration: none;}

.sup {position: relative; top: -0.3em; font-size: 80%;}

.lineheight2 {line-height: 2.3!important;}

/* 202003追記 */
.discontinue {
  padding: 7.5px 15px;
  border: 1px #cc0000 solid;
  font-weight: normal !important;
}
.discontinue_text {
  display: inline-block !important;
  font-weight: normal !important;
  font-size: 1rem !important;
  color: #cc0000;
  vertical-align: middle;
}
.discontinue_text a {
  display: inline-block !important;
  text-decoration: underline !important;
}
@media screen and (max-width:641px) {
  .discontinue {
    margin-left: 10px;
    padding: 1px 15px;
  }
  .P_discontinue {
    padding: 5px;;
  }
.BRdiscontinue {
    display: none;
  }
}
/* margin */
.mt0 {margin-top: 0 !important;}
.mt5 {margin-top: 5px !important;}
.mt10 {margin-top: 10px !important;}
.mt12 {margin-top: 12px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 20px !important;}
.mt25 {margin-top: 25px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt45 {margin-top: 45px !important;}
.mt50 {margin-top: 50px !important;}
.mt55 {margin-top: 55px !important;}
.mt60 {margin-top: 60px !important;}
.mt1rem {margin-top: 1rem !important;}
.mt2rem {margin-top: 2rem !important;}
.mt3rem {margin-top: 3rem !important;}
.mt4rem {margin-top: 4rem !important;}
.mt5rem {margin-top: 5rem !important;}
.mt6rem {margin-top: 6rem !important;}
.mt7rem {margin-top: 7rem !important;}
.mt10rem {margin-top: 10rem !important;}
.mt11rem {margin-top: 11rem !important;}

.mb0 {margin-bottom: 0 !important;}
.mb5 {margin-bottom: 5px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb13 {margin-bottom: 13px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb25 {margin-bottom: 25px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb40 {margin-bottom: 40px !important;}
.mb45 {margin-bottom: 45px !important;}
.mb50 {margin-bottom: 50px !important;}
.mb55 {margin-bottom: 55px !important;}
.mb60 {margin-bottom: 60px !important;}
.mb70 {margin-bottom: 70px !important;}
.mb80 {margin-bottom: 80px !important;}
.mb90 {margin-bottom: 90px !important;}
.mb110 {margin-bottom: 110px !important;}
.mb210 {margin-bottom: 210px !important;}
.mb-defalt {margin-bottom: 1.8em !important;}
.mb1rem {margin-bottom: 1rem !important;}
.mb2rem {margin-bottom: 2rem !important;}
.mb3rem {margin-bottom: 3rem !important;}
.mb4rem {margin-bottom: 4rem !important;}
.mb5rem {margin-bottom: 5rem !important;}

@media screen and (max-width:641px) {
  .smb0 { margin-bottom: 0 !important;}

  /* rem margin */
  .SPmt01rem{margin-top:0.1rem  !important;}
  .SPmt02rem{margin-top:0.2rem !important;}
  .SPmt03rem{margin-top:0.3rem !important;}
  .SPmt04rem{margin-top:0.4rem !important;}
  .SPmt05rem{margin-top:0.5rem !important;}
  .SPmt06rem{margin-top:0.6rem !important;}
  .SPmt07rem{margin-top:0.7rem !important;}
  .SPmt08rem{margin-top:0.8rem !important;}
  .SPmt09rem{margin-top:0.9rem !important;}
  .SPmt10rem{margin-top:1.0rem !important;}
  .SPmt11rem{margin-top:1.1rem !important;}
  .SPmt12rem{margin-top:1.2rem !important;}
  .SPmt13rem{margin-top:1.3rem !important;}
  .SPmt14rem{margin-top:1.4rem !important;}
  .SPmt15rem{margin-top:1.5rem !important;}
  .SPmt20rem{margin-top:2.0rem !important;}
  .SPmt25rem{margin-top:2.5rem !important;}
  .SPmt30rem{margin-top:3.0rem !important;}
  .SPmt35rem{margin-top:3.5rem !important;}
  .SPmt40rem{margin-top:4.0rem !important;}
  .SPmt45rem{margin-top:4.5rem !important;}
  .SPmt50rem{margin-top:5.0rem !important;}
  .SPmr01rem{margin-right:0.1rem !important;}
  .SPmr02rem{margin-right:0.2rem !important;}
  .SPmr03rem{margin-right:0.3rem !important;}
  .SPmr04rem{margin-right:0.4rem !important;}
  .SPmr05rem{margin-right:0.5rem !important;}
  .SPmr06rem{margin-right:0.6rem !important;}
  .SPmr07rem{margin-right:0.7rem !important;}
  .SPmr08rem{margin-right:0.8rem !important;}
  .SPmr09rem{margin-right:0.9rem !important;}
  .SPmr10rem{margin-right:1.0rem !important;}
  .SPmr11rem{margin-right:1.1rem !important;}
  .SPmr12rem{margin-right:1.2rem !important;}
  .SPmr13rem{margin-right:1.3rem !important;}
  .SPmr14rem{margin-right:1.4rem !important;}
  .SPmr15rem{margin-right:1.5rem !important;}
  .SPmr20rem{margin-right:2.0rem !important;}
  .SPmr25rem{margin-right:2.5rem !important;}
  .SPmr30rem{margin-right:3.0rem !important;}
  .SPmr35rem{margin-right:3.5rem !important;}
  .SPmr40rem{margin-right:4.0rem !important;}
  .SPmr45rem{margin-right:4.5rem !important;}
  .SPmr50rem{margin-right:5.0rem !important;}
  .SPmb01rem{margin-bottom:0.1rem !important;}
  .SPmb02rem{margin-bottom:0.2rem !important;}
  .SPmb03rem{margin-bottom:0.3rem !important;}
  .SPmb04rem{margin-bottom:0.4rem !important;}
  .SPmb05rem{margin-bottom:0.5rem !important;}
  .SPmb06rem{margin-bottom:0.6rem !important;}
  .SPmb07rem{margin-bottom:0.7rem !important;}
  .SPmb08rem{margin-bottom:0.8rem !important;}
  .SPmb09rem{margin-bottom:0.9rem !important;}
  .SPmb10rem{margin-bottom:1.0rem !important;}
  .SPmb11rem{margin-bottom:1.1rem !important;}
  .SPmb12rem{margin-bottom:1.2rem !important;}
  .SPmb13rem{margin-bottom:1.3rem !important;}
  .SPmb14rem{margin-bottom:1.4rem !important;}
  .SPmb15rem{margin-bottom:1.5rem !important;}
  .SPmb20rem{margin-bottom:2.0rem !important;}
  .SPmb25rem{margin-bottom:2.5rem !important;}
  .SPmb30rem{margin-bottom:3.0rem !important;}
  .SPmb35rem{margin-bottom:3.5rem !important;}
  .SPmb40rem{margin-bottom:4.0rem !important;}
  .SPmb45rem{margin-bottom:4.5rem !important;}
  .SPmb50rem{margin-bottom:5.0rem !important;}
  .SPml0rem{margin-left:0rem !important;}
  .SPml01rem{margin-left:0.1rem !important;}
  .SPml02rem{margin-left:0.2rem !important;}
  .SPml03rem{margin-left:0.3rem !important;}
  .SPml04rem{margin-left:0.4rem !important;}
  .SPml05rem{margin-left:0.5rem !important;}
  .SPml06rem{margin-left:0.6rem !important;}
  .SPml07rem{margin-left:0.7rem !important;}
  .SPml08rem{margin-left:0.8rem !important;}
  .SPml09rem{margin-left:0.9rem !important;}
  .SPml10rem{margin-left:1.0rem !important;}
  .SPml11rem{margin-left:1.1rem !important;}
  .SPml12rem{margin-left:1.2rem !important;}
  .SPml13rem{margin-left:1.3rem !important;}
  .SPml14rem{margin-left:1.4rem !important;}
  .SPml15rem{margin-left:1.5rem !important;}
  .SPml20rem{margin-left:2.0rem !important;}
  .SPml25rem{margin-left:2.5rem !important;}
  .SPml30rem{margin-left:3.0rem !important;}
  .SPml35rem{margin-left:3.5rem !important;}
  .SPml40rem{margin-left:4.0rem !important;}
  .SPml45rem{margin-left:4.5rem !important;}
  .SPml50rem{margin-left:5.0rem !important;}
}

.ml0 {margin-left: 0 !important;}
.ml5 {margin-left: 5px !important;}
.ml10 {margin-left: 10px !important;}
.ml15 {margin-left: 15px !important;}
.ml17 {margin-left: 17px !important;}
.ml19 {margin-left: 19px !important;}
.ml20 {margin-left: 20px !important;}
.ml25 {margin-left: 25px !important;}
.ml30 {margin-left: 30px !important;}
.ml31 {margin-left: 31px !important;}
.ml35 {margin-left: 35px !important;}
.ml36 {margin-left: 36px !important;}
.ml37 {margin-left: 37px !important;}
.ml40 {margin-left: 40px !important;}
.ml45 {margin-left: 45px !important;}
.ml48 {margin-left: 48px !important;}
.ml50 {margin-left: 50px !important;}
.ml52 {margin-left: 52px !important;}
.ml53 {margin-left: 53px !important;}
.ml55 {margin-left: 55px !important;}
.ml60 {margin-left: 60px !important;}
.ml62 {margin-left: 62px !important;}
.ml63 {margin-left: 63px !important;}
.ml65 {margin-left: 65px !important;}
.ml67 {margin-left: 67px !important;}
.ml70 {margin-left: 70px !important;}
.ml80 {margin-left: 80px !important;}
.ml84 {margin-left: 84px !important;}
.ml85 {margin-left: 85px !important;}
.ml86 {margin-left: 86px !important;}
.ml90 {margin-left: 90px !important;}
.ml110 {margin-left: 110px !important;}
.ml115 {margin-left: 115px !important;}
.ml125 {margin-left: 125px !important;}
.ml132 {margin-left: 132px !important;}
.ml145 {margin-left: 145px !important;}
.ml158 {margin-left: 158px !important;}
.ml179 {margin-left: 179px !important;}
.ml180 {margin-left: 180px !important;}
.ml-defalt {margin-left: 1.8em !important;}
.ml1rem {margin-left: 1rem !important;}
.ml2rem {margin-left: 2rem !important;}
.ml3rem {margin-left: 3rem !important;}
.ml4rem {margin-left: 4rem !important;}
.ml5rem {margin-left: 5rem !important;}
.mr20 {margin-right: 20px !important;}
.mr40 {margin-right: 40px !important;}
.mr60 {margin-right: 60px !important;}
.mr70 {margin-right: 70px !important;}

/* margin PCのみ*/
.ml50_sp {margin-left: 50px !important;}
.ml81em_sp {margin-left: 8.1em;}

@media screen and (max-width:641px) {
  .ml50_sp {margin-left: 0 !important;}
  .ml81em_sp {margin-left: 0;}
}
/* width */
.w180 {width: 180px;}
.w250 {width: 250px;}
.w300 {width: 300px;}
.w335 {width: 335px !important;}
.w550 {width: 550px;}

/* padding */
.pl1em {padding-left: 1em;}
.pl2em {padding-left: 2em;}
.pl3em {padding-left: 3em;}
.pl4em {padding-left: 4em;}
.pl5em {padding-left: 5em;}
.pl6em {padding-left: 6em;}
.pl7em {padding-left: 7em;}
.pl8em {padding-left: 8em;}
.pl9em {padding-left: 9em;}
.pl10em {padding-left: 10em;}
.pl3_5em {padding-left: 3.5em;}

.note {
  font-size: 85%;
  text-indent: -0.8rem;
  padding-left: 0.8rem;
  display: inline-block;
}

/* List */
.dl-float-list {
  overflow: hidden;
}

.dl-float-list02 {
  overflow: hidden;
}

.dl-float-list dt {
  font-weight: bold;
  float: left;
  clear: both;
}

.dl-float-list02 dt {
  float: left;
  clear: both;
}
.dl-float-list dd {
  margin-left: 6em;
}

.dl-float-list02 dd {
  margin-left: 6em;
}
@media screen and (max-width: 640px) {
  dl.dl-float-list02 dd {
    margin-bottom: 15px;
  }
  dl.dl-float-list02 dd span {
    display: block;
    margin-left: 0!important;
  }
}


.flexBox01 {
  display: flex;
}
.flexBox03 {
  display: flex;
  align-items: flex-end;
}
/*---- 20200228 追記 ----*/
.SP_only_br{
  display: block;
}
@media screen and (min-width:641px){
  .SP_only_br{
    display: none;
  }
  .flexBox02 {
    display: flex;
  }

  .ml-01 {
    margin-left: 30.2%;
  }
  .ml-02 {
    margin-left: 34.5%;
  }
  .ml-03 {
    margin-left: 10%;
  }
  .ml-04 {
    margin-left: 44.4%;
  }
  .ml-05 {
    margin-left: 16%;
  }
  .ml-sp-40 {
    margin-left: 40px !important;
  }
}
@media screen and (max-width:641px){
  .flexBox03 {
    display: block;
  }
}



.dl-float-list.f-ml1em dd { margin-left: 1em;}
.dl-float-list.f-ml2em dd { margin-left: 2em;}
.dl-float-list.f-ml3em dd { margin-left: 3em;}
.dl-float-list.f-ml4em dd { margin-left: 4em;}
.dl-float-list.f-ml5em dd { margin-left: 5em;}
.dl-float-list.f-ml6em dd { margin-left: 6em;}
.dl-float-list.f-ml7em dd { margin-left: 7em;}
.dl-float-list.f-ml8em dd { margin-left: 8em;}
.dl-float-list.f-ml9em dd { margin-left: 9em;}
.dl-float-list.f-ml10em dd { margin-left: 10em;}
.dl-float-list.f-ml11em dd { margin-left: 11em;}
.dl-float-list.f-ml12em dd { margin-left: 12em;}
.dl-float-list.f-ml13em dd { margin-left: 13em;}
.dl-float-list.f-ml14em dd { margin-left: 14em;}
.dl-float-list.f-ml15em dd { margin-left: 15em;}
.dl-float-list.f-ml16em dd { margin-left: 16em;}
.dl-float-list.f-ml17em dd { margin-left: 17em;}
.dl-float-list.f-ml18em dd { margin-left: 18em;}
.dl-float-list.f-ml19em dd { margin-left: 19em;}
.dl-float-list.f-ml20em dd { margin-left: 20em;}
.dl-float-list.f-ml21em dd { margin-left: 21em;}
.dl-float-list.f-ml22em dd { margin-left: 22em;}
.dl-float-list.f-ml23em dd { margin-left: 23em;}
.dl-float-list.f-ml24em dd { margin-left: 24em;}
.dl-float-list.f-ml25em dd { margin-left: 25em;}
.dl-float-list.f-ml26em dd { margin-left: 26em;}
.dl-float-list.f-ml27em dd { margin-left: 27em;}
.dl-float-list.f-ml28em dd { margin-left: 28em;}
.dl-float-list.f-ml29em dd { margin-left: 29em;}
.dl-float-list.f-ml30em dd { margin-left: 30em;}

.dl-float-list02.f-ml10em dd { margin-left: 10em;}



#tmpl_main .lst_sq li {
  position: relative;
  padding-left: 1em;
}
#tmpl_main .lst_sq li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5em;
  display: block;
  width: 0.2em;
  height: 0.2em;
  border-radius: 0.2em;
  color: #000;
  background: #000;
}
#tmpl_main .lst_sq02 li {
  position: relative;
  padding-left: 1em;
  list-style-type: none !important;
}
#tmpl_main .lst_sq02 li:before {
  content: "●";
  position: absolute;
  left: -6px;
  top: 1%;
  display: block;
  width: 0.2em;
  height: 0.2em;
  border-radius: 0.2em;
  color: #000;
}
#tmpl_main .lst_num {
  padding-left: 1.4em;
}
#tmpl_main .lst_num2,#tmpl_main .lst_num3 {
  padding-left: 2em;
}
#tmpl_main .lst_num3 {
  padding-left: 4em;
}

#tmpl_main .lst_num li:not(:last-child), #tmpl_main .lst_num2 li:not(:last-child) {
  margin-bottom: 10px;
}

/* for ie */
@media all and (-ms-high-contrast:none) {
#tmpl_main .lst_num {
  padding-left: 1.6em;
}
#tmpl_main .lst_num2 {
  padding-left: 2.2em;
}
}
@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop, #tmpl_main .lst_num {
  padding-left: 1.6em;
}
  *::-ms-backdrop, #tmpl_main .lst_num2 {
  padding-left: 2.2em;
}
}
_:-ms-lang(x), _::-webkit-meter-bar,#tmpl_main .lst_num {
  padding-left: 1.6em;
}
_:-ms-lang(x), _::-webkit-meter-bar,#tmpl_main .lst_num2 {
  padding-left: 2.2em;
}

#tmpl_main .lst_num li, #tmpl_main .lst_num2 li,#tmpl_main .lst_num3 li{
  list-style-type: decimal;
}
#tmpl_main .lst_non li {
  list-style-type: none;
}
@media screen and (max-width: 640px) {
  .dl-float-list {
    display: block;
    width: 100%;
  }
  .dl-float-list:not(.sp-float) > dt {
    float: none;
  }
  .dl-float-list:not(.sp-float) > dd {
    margin-left: auto !important;
  }
  .dl-float-list dd:not(:last-child) {
    margin-bottom: 1em;
  }
  .mb-defalt {
    margin-bottom: 1em !important;
  }
  .mb40 {
    margin-bottom: 20px !important;
  }
  .mb50 {
    margin-bottom: 25px !important;
  }
  .mb60 {
    margin-bottom: 30px !important;
  }
  .mb70 {
    margin-bottom: 35px !important;
  }
  .mb80 {
    margin-bottom: 40px !important;
  }
  .mb90 {
    margin-bottom: 45px !important;
  }
  .w250 { width: auto; }
  .w300 { width: auto; }
  .w335 { width: auto !important; }
  .w550 { width: auto; }
}

/* ==========================================
  03 Layout
========================================== */
/* fonts */
@font-face {
  font-family: "SST";
  src: url("../fonts/SSTJpPro-Regular.woff") format("woff");
  font-weight: normal;
}

@font-face {
  font-family: "SST";
  src: url("../fonts/SSTJpPro-UltraLight.woff") format("woff");
  font-weight: 300;
}

@font-face {
  font-family: "SST";
  src: url("../fonts/SSTJpPro-Bold.woff") format("woff");
  font-weight: bold;
}


/* main */
#tmpl_main {
  width: 100% !important;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  line-height: 1.6;
}
#tmpl_content {
  background-color: #fff;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
#tmpl_main a {
  color: #000000;
  text-decoration: underline;
}
#tmpl_main a:hover {
  color: #000000;
  text-decoration: none;
}
#tmpl_main ul, #tmpl_main ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
span.reverse{
  font-family: Arial, Helvetica, sans-serif;
}
#tmpl_contentMenu_bar {
  -webkit-font-smoothing: antialiased;
  min-width: 1190px;
  background: #fff;
  border-bottom: #c8c8c8 solid 1px;
}
#tmpl_contentMenu_bar_base {
  position: relative;
  width: 1190px;
  margin: 0 auto;
  max-width: 1190px;
}
#tmpl_contentMenu_breadcrumbs {
  font-size: 75%;
  line-height: 1.8;
  padding: 0.5rem 0 0.5rem 0 !important;
  color: #656565;
  overflow: hidden;
}
#tmpl_contentMenu_breadcrumbs li {
  float: left;
  padding-right: 0.5em;
}
#tmpl_contentMenu_breadcrumbs li:not(:last-child):after {
  content: '>';
  padding-left: 0.5em;
}
#tmpl_contentMenu_breadcrumbs a {
  color: #656565;
  text-decoration: none;
}
#tmpl_contentMenu_breadcrumbs a:hover {
  color: #656565;
  text-decoration: underline;
}
#tmpl_contentMenu_bar_base .ttlArea {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}
#tmpl_contentMenu_bar_base .ttlArea .ttl_l {
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.8;
}
#tmpl_contentMenu_bar_base .ttlArea a {
  color: #595959;
  text-decoration: none;
}
#tmpl_contentMenu_bar_base .ttlArea .ttr_la {
  margin-right: 30px;
}
#tmpl_contentMenu_bar_base .ttlArea .ttr_la::before {
  content: '\025b6';
  padding-right: 0.5em;
}
#tmpl_contentMenu_bar_base .ttlArea a:hover {
  text-decoration: underline;
}
#tmpl_contentMenu_bar_base .ttlArea .ttl_r {
  font-size: .85rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #000;
}
#mainContants {
  margin: 3rem auto 0;
  width: 1190px;
  background: #FFF;
}
.section {
  margin: 0 auto 6rem;
}
.ttl-01 {
  margin-bottom: 2.7rem;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
}
.ttl-02 {
  margin-bottom: 1.5rem;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.6;
}
.ttl-03 {
  margin-bottom: 1rem;
  font-weight: bold;
  font-size: 1.35rem;
  line-height: 1.7;
}
.ttl-04 {
  margin-bottom: 1rem;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 1.7;
}
.ml-13{
  margin-left: -13px;
}

@media screen and (max-width: 640px) {
  #tmpl_main {
    width: 100% !important;
    margin: 0;
    padding: 0;
    line-height: 1.6;
  }
  #tmpl_main img {
    max-width: 100%;
  }
  #tmpl_main #tmpl_contentMenu_bar {
    -webkit-font-smoothing: antialiased;
    min-width: 100%;
    background: #fff;
    border-bottom: #c8c8c8 solid 1px;
  }
  #tmpl_main #tmpl_contentMenu_bar #tmpl_contentMenu_bar_base {
    position: relative;
    width: 100%;
    margin: 0 auto;
    max-width: 100%;
  }
  #tmpl_main #tmpl_contentMenu_bar #tmpl_contentMenu_bar_base #tmpl_contentMenu_breadcrumbs {
    padding: 0.5rem 1rem !important;
  }
  #tmpl_contentMenu_bar_base .ttlArea {
    margin: 0 1rem 0.5rem 1rem;
    display: block;
  }
  #tmpl_contentMenu_bar_base .ttlArea .ttl_l {
    margin: 0 auto 0.25rem;
  }
  #mainContants {
    width: 100%;
    font-size: 85%;
    margin: 1.5rem auto 0;
  }
  .section {
    margin-bottom: 3em;
    padding: 0 20px;
  }
  .ttl-01 {
    margin-bottom: 2.2rem;
    font-size: 1.4rem;
  }
  .ttl-02 {
    margin-bottom: 1rem;
    font-size: 1.1rem;
  }
  .ttl-03 {
    margin-bottom: 0.5rem;
    font-size: 0.95rem;
  }
  .ttl-04 {
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
  }
}



/****************************************
  Clearfix
*****************************************/
.clearfix:after {
  display: block;
  visibility: hidden;
  clear: both;
  height: 0;
  content: " ";
  font-size: 0;
}

/* clearfix for ie7 */
.clearfix {
  display: inline-block;
}

.clearfix {
  display: block;
}



/****************************************
  navigation
*****************************************/
#galleryMenu {
  background: #2f2d33;
  min-width: 1190px;
}
#galleryMenu .sp {
  display: none;
}
#galleryMenu .inner {
  margin: 0 auto;
  width: 1190px;
}
#galleryMenu nav ul {
  display: flex;
}
#galleryMenu nav li {
  /* float: left; */
  border-right: 2px solid #000000;
  font-size: 80%;
  font-weight: bold;
  text-align: center;
}
#galleryMenu nav li:first-child {
  border-left: 2px solid #000000;
}
#galleryMenu nav li a {
  width: 100px;
  display: block;
  background-position: center 25px;
  padding: 71px 10px 15px;
  background-repeat: no-repeat;
  color: #ffffff;
  background-size: 40px 36px;
  text-decoration: none;
  height: 40px;
}
#galleryMenu nav li a:hover {
  text-decoration: none;
}
#galleryMenu nav li:first-child a,
#galleryMenu nav li.sns_nav_li a{
  width: 77px;
}
#galleryMenu nav li.top a {
  background-image: url(../img/icon_top.png);
}
#galleryMenu nav li.schedule a {
  background-image: url(../img/icon_schedule.png);
  padding-left: 0;
  padding-right: 0;
}
#galleryMenu nav li.archive a {
  background-image: url(../img/icon_archive.png);
}
#galleryMenu nav li.about a {
  background-image: url(../img/icon_about.png);
}
#galleryMenu nav li.public a {
  background-image: url(../img/icon_public.png);
}
#galleryMenu nav li.access a {
  background-image: url(../img/icon_access.png);
  padding-left: 0;
  padding-right: 0;
}
#galleryMenu nav li.qa a {
  background-image: url(../img/icon_qa.png);
}
#galleryMenu nav li.twitter a {
  background-image: url(../img/x_wh.png);
  background-size: auto 24px;
  background-position: center 32px;
}
#galleryMenu nav li.instagram a {
  background-image: url(../img/instagram.png);
}
#galleryMenu nav li.movie a {
  background-image: url(../img/movie.png);
}
#galleryMenu nav li.facebook a {
  background-image: url(../img/facebook.png);
  background-size: 36px 36px;
}
#galleryMenu nav li a:hover,
#top #galleryMenu nav li.top a, #schedule #galleryMenu nav li.schedule a, #archive #galleryMenu nav li.archive a,
#about #galleryMenu nav li.about a, #public #galleryMenu nav li.public a, #access #galleryMenu nav li.access a, #qa #galleryMenu nav li.qa a {
  color: #000000;
  background-color: #ebeaeb;
}

@media screen and (max-width: 640px) {
  #galleryMenu {
    min-width: 100%;
  }
  #galleryMenu .pc {
    display: none;
  }
  #galleryMenu .sp {
    display: block;
  }
  #galleryMenu .inner {
    width: 100%;
    margin: 0 auto;
  }
  #galleryMenu nav .btn {
    font-size: 12px;
    line-height: 40px;
    color: #b7b5b5;
    padding: 0 45px 0 0;
    text-align: right;
    background: #36333a url(../img/nav_open.png) right 21px center no-repeat;
    background-size: 16px 9px;
  }
  #galleryMenu nav .btn.open {
    background: #36333a url(../img/nav_close.png) right 21px center no-repeat;
    background-size: 16px 9px;
  }
  #galleryMenu nav ul {
    display: none;
  }
  #galleryMenu nav li {
    float:none;
    text-indent: 0px;
    text-align: left;
    border-right: 0;
  }
  #galleryMenu nav li a {
    display: block;
    width: 100% !important;
    height: 49px;
    background: #66626c !important;
    background-size: 12px 7px !important;
    border-bottom: solid 1px #33303a;
    border-top: solid 1px #8a8592;
    font-size: 12px;
    line-height: 49px;
    color: #fff !important;
    box-sizing: border-box;
    padding: 0 0 0 30px;
  }
  #galleryMenu nav li:first-child {
    border-left: 0;
  }
  #galleryMenu nav li:first-child a {
    border-top: none;
  }
  #galleryMenu nav li.schedule a,
  #galleryMenu nav li.access a {
    padding-left: 30px;
  }
}



/****************************************
  bottom
*****************************************/
#tmpl_main .btn {
  text-align: center;
}
#tmpl_main .btn a {
  background-color: #2f2d33;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  min-width: 270px;
  display: inline-block;
  padding: 15px;
  text-decoration: none;
}
#tmpl_main .btn a:hover {
  background-color: #ffffff;
  border: 2px solid #2f2d33;
  padding: 13px;
  color: #2f2d33;
}

@media screen and (max-width: 640px) {
  #tmpl_main .btn a {
    min-width: auto;
    width: 80%;
  }
}

/*------追記20210302------*/
#tmpl_main .btn_b,#tmpl_main .btn_c {
  margin-right: 30px;
  text-align: center;
}
#tmpl_main .btn_b a {
  background-color: #fff;
  border: 2px solid #2f2d33;
  color: #2f2d33;
  text-align: center;
  font-weight: bold;
  min-width: 200px;
  display: inline-block;
  padding: 13px;
  text-decoration: none;
}
#tmpl_main .btn_b a:hover {
  background-color: #2f2d33;
  padding: 13px;
  color: #ffffff;
}

#tmpl_main .btn_c a {
  background-color: #002B69;
  border: 2px solid #002B69;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  min-width: 450px;
  display: inline-block;
  padding: 13px;
  text-decoration: none;
}
#tmpl_main .btn_c .accepting_txt{
  color: yellow;
  margin-left: 1rem;
}
#tmpl_main .btn_c a:hover {
  background-color: #ffffff;
  padding: 13px;
  color: #002B69;
  .accepting_txt{
    color: #7b0499;
  }
}



@media screen and (max-width: 640px) {
  #tmpl_main .btn_b a {
    min-width: auto;
    width: 80%;
  }

  #tmpl_main .btn_c a {
    min-width: auto;
    width: 90%;
  }

  #tmpl_main .btn_b,#tmpl_main .btn_c {
    margin-right: 0;
    margin-bottom: 20px;
  }
}


/****************************************
  pagetop
*****************************************/
.pagetop {
  margin: 0 auto;
  width: 100%;
  height: 0;
}
.pagetop .floater {
  position: static;
  margin: 0 auto;
  width: 100%;
  min-width: 1190px;
  height: 0;
  zoom: 1;
}
.pagetop .floater.fixed {
  position: fixed;
  bottom: 0;
  z-index: 1000;
  height: 0;
}
.pagetop .floater div {
  position: relative;
  margin: 0 auto;
  width: 910px;
}
.pagetop .floater a {
  position: relative;
  top: -74px;
  right: 40px;
  display: block;
  margin: 0 0 0 auto;
  width: 40px;
  height: 32px;
  background-color: #666666;
  background-color: rgba(0,0,0, 0.6);
  border-radius: .125em;
  text-align: center;
  transition: background-color 0.2s ease-out;
  -o-transition: background-color 0.2s ease-out;
  -ms-transition: background-color 0.2s ease-out;
  -moz-transition: background-color 0.2s ease-out;
  -webkit-transition: background-color 0.2s ease-out;
  overflow: hidden;
}
.touch .pagetop .floater a {
  transition: none;
  -o-transition: none;
  -ms-transition: none;
  -moz-transition: none;
  -webkit-transition: none;
}
.pagetop .floater a:hover {
  background-color: #333333;
  background-color: rgba(0,0,0, 0.8);
}
.pagetop .floater a span {
  display: inline-block;
  margin-top: 0.7em;
  width: 16px;
  height: 6px;
  background: url("../img/arrow_pagetop.png") no-repeat;
  background-size: 16px 6px;
  text-indent: -9999em;
}
.pagetop .target {
  position: fixed;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 0px;
  zoom: 1;
}

@media screen and (max-width: 640px) {
  .pagetop {
    margin-top: 22px;
    padding-bottom: 15px;
    min-width: 320px;
  }
  .pagetop .floater {
    width: 100%;
    min-width: 320px;
  }
  .pagetop .floater.fixed {
    position: fixed;
    left: 0;
    bottom: 15px;
  }
  .pagetop .floater a {
    margin: 0 6.3% 0 auto;
    top: -32px;
    right: 0;
    transition: none;
  }
  .pagetop .floater a:hover {
    background-color: rgba(33, 37, 48, 0.4);
  }
  .pagetop .target {
    bottom: 15px;
  }
}


/* contents_footer_panel 20211111追記 */
.contents_footer_panel{
  max-width: 1190px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  background-color: #f2f2f2;
  padding: 60px 0;
  margin-bottom: 90px;
}
.contents_footer_article{
  flex-basis: 33%;
  margin-right: 60px;
}
.contents_footer_article:last-of-type{
  margin-right: 0;
}
.contents_footer_article a{
  display: block;
  padding: 30px;
  height: 100%;
  background-color: #fff;
  box-sizing: border-box;
  box-shadow: 0 2px 10px rgb(0 0 0 / 10%);
  transition: .1s ease-in;
}
.contents_footer_article a:hover{
  box-shadow: 0 0 2px rgb(0 0 0 / 20%);
  opacity: 0.8;
}
.contents_footer_article a[tabindex="-1"]:hover{
  box-shadow: 0 2px 10px rgb(0 0 0 / 10%);
  opacity: 1;
}
#tmpl_main .contents_footer_article a{
  text-decoration: none;
}
.contents_footer_title{
  display: block;
  font-weight: bold;
  margin-bottom: 15px;
  font-size: 1.35rem;
  line-height: 1;
}
.contents_footer_img{
  line-height: 0;
  margin-bottom: 10px;
}
.contents_footer_img img{
  max-width: 100%;
  width: 100%;
}
.contents_footer_eventTitle{
  font-weight: bold;
  margin-bottom: 10px;
}
.contents_footer_data{
  font-size: 0.85rem;
}
@media screen and (max-width: 640px){
  .contents_footer_panel {
    margin-bottom: 30px;
    padding: 40px 20px;
    flex-direction: column;
  }
  .contents_footer_article{
    flex-basis: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }
  .contents_footer_article:last-of-type{
    margin-bottom: 0;
  }
  .contents_footer_title{
    font-size: 1.1rem;
  }
  .contents_footer_eventTitle{
      font-size: 0.9rem;
  }
}



/* 2022/02/28追記 */
.gallery_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.gallery_box .box {
  padding: 10px 5px;
}

.gallery_box .box img {
  height: 140px;
}

.gallery_box .caption {
  font-size: 0.6em;
  text-align: right;
}

.gallery_box.-long .box {
  padding: 10px 40px;
}

.gallery_box.-long .box img {
  height: 180px;
}

.gallery_box + .gallery_box {
  margin-top: 30px;
}

.gallery_box img.border {
  border: 1px solid #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 640px) {
  .gallery_box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

/* youtube */
.author-movie-wrap_col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-bottom: 210px;
}

.author-movie-wrap_col2 .movie-box {
  width: 50%;
  padding: 0 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 640px) {
  .author-movie-wrap_col2 .movie-box {
    width: 100%;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .author-movie-wrap_col2 .movie-box:nth-of-type(1) {
    margin-bottom: 130px;
  }
}

.author-movie-wrap_col4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
.author-movie-wrap_col4 .movie-box {
  width: calc(100% / 4 - calc(30px / 4 * 3));
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.author-movie-wrap_col4 .movie-box .author-movie > img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.author-movie-wrap_col4.-col2 .movie-box {
  width: calc(100% / 2 - 15px);
}
.author-movie-wrap_col4.-col3 .movie-box {
  width: calc(100% / 3 - calc(30px / 3 * 2));
}
.author-movie-wrap_col4 .movie-box:not(:first-child) {
  margin-left: 30px;
}
.author-movie-wrap_col4 .movie-box > p,
.author-movie-wrap_col4 .movie-box .caption-txt {
  margin-top: 20px;
  text-align: center;
  line-height: 1.2;
}

p.captioMovie {
  margin-top: 20px !important;
  margin-bottom: 50px !important;
  font-size: 1.3rem !important;
}

@media screen and (max-width: 640px) {
  .author-movie-wrap_col4 .movie-box,
  .author-movie-wrap_col4.-col2 .movie-box,
  .author-movie-wrap_col4.-col3 .movie-box {
    width: 100%;
  }
  .author-movie-wrap_col4 .movie-box:not(:first-child) {
    margin-left: 0;
    margin-top: 30px;
  }
}

.movie-end {
  display: block;
  margin: 0 auto;
  position: relative;
}
.movie-end::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}
.movie-end::after {
  content: "公開終了しました";
  display: inline-block;
  padding: 12px 40px;
  background: #000;
  color: #fff;
  letter-spacing: 0.1em;
  white-space: nowrap;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.movie-end > img {
  width: 100%;
  vertical-align: bottom;
}

/* contents_schedule-other */
.flexBox01.-sns {
  align-items: center;
}

.flexBox01.-sns > li:not(:first-child) {
  margin-left: 30px;
}

.flexBox01.-sns > li > a {
  display: block;
  transition-duration: 0.4s;
}

.flexBox01.-sns img {
  vertical-align: bottom;
}

.flexBox01.-sns > li > a:hover {
  opacity: 0.6;
}

._j-contentEnd {
  justify-content: flex-end;
}
._j-contentBetween {
  justify-content: space-between;
}
._j-contentCenter {
  justify-content: center;
}
._a-itemCenter {
  align-items: center;
}
._a-itemStart {
  align-items: flex-start;
}
._a-itemEnd {
  align-items: flex-end;
}
._f-shrinkFixed {
  flex-shrink: 0;
}
._border {
  border: 1px solid #333;
}
._d-inlineBlock {
  display: inline-block;
}
._pc-content {
  display: none;
}

/* PC Only */
@media screen and (min-width: 640px) {
  ._pc-content {
    display: block;
  }
}

.fCoBlue01 {
  color: #065FD4 !important;
}

.img-layout01 {
  display: flex;
}
.img-layout01 > .img {
  flex: 0 0 auto;
}
.img-layout01 > .img img {
  vertical-align: bottom;
}
.img-layout01 > .text {
  width: 100%;
  flex: 1 1 auto;
}
.img-layout01 > .text.-border {
  padding: 16px;
  border: 1px solid #666;
  box-sizing: border-box;
}
.img-layout01 > *:not(:first-child) {
  margin-left: 24px;
}

/* SP STYLES */
@media screen and (max-width: 640.98px) {
  .img-layout01:not(.-spLow) {
    flex-flow: column wrap;
  }
  .img-layout01:not(.-spLow) > *:not(:first-child) {
    margin-top: 24px;
    margin-left: 0;
  }
}

a.linkimg img {
  display: block;
  border: 1px solid #ccc;
}
.selection {
  display: block;
  color: #946C00;
  font-weight: bold;
  letter-spacing: 0.13em;
}
.scheduleInnerText .selection {
  font-size: 1em;
  margin-bottom:.8em;
}
.gallery-head-txt .selection {
  font-size: 1.25rem;
  margin-bottom: .8em;
}
.mainAreaInner .selection {
  color: #daa520;
  font-size: 1em;
  margin-bottom:.8em;
}

/*-------------------------------------
A11y
-------------------------------------*/

#on_cont,
.wrapper {
  color: #000;
}