@charset "utf-8";

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    サイト共通 細かい要素の装飾定義               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* Baserが出力するメッセージ */
pre.cake-error{
  font-size: 12px;
  padding: 2px;
  position: fixed;
  z-index: 1000;
  bottom: 0px;
  left: 25%;
  display: block;
  width: 50%;
  color: #555;
  background: rgba(255,255,255,0.5);
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   code                                           */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
code{
  display: block;
  padding: 50px;
  margin: 50px auto;
  width: 75%;
  background: #fff;
  font-size: 0.875rem!important;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   hr                                             */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
hr{
  border-bottom: 1px solid rgba(0,0,0,0.2);
  color: transparent;
  margin: 2em auto;
  width: 87.5%;
}
hr.DashLine{
  border-bottom:1px dashed #222;
  width:98%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   images                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
img{
  max-width: 100%;
}
    /* googlemap 内の画像は適用外 */
    #GoogleMap img{
      max-width: none;
    }

/* 画像表示 汎用（試作物）version 2017013001
--------------------------------------------------- */

    /* デフォルト */
    .Image{
    }
    .Image a{
      display: block;
    }
    .Image img{
      width:      100%;
      height:     auto;
    }
    /* 表示枠を埋める */
    .Image.Cover{
      overflow: hidden;
    }
    .Image.Cover img{
      min-width:  100%;
      min-height: 100%;
      width:      auto;
      height:     auto;
      max-width:  none;
      max-height: none;
    }
    /* 全体を見せる （画像が表示枠より小さい場合は枠よりも小さくなる） */
    .Image.Contain{
      text-align: center;
      vertical-align: middle;
    }
    .Image.Contain img{
      min-width:  0;
      min-height: 0;
      width:      auto;
      height:     auto;
      max-width:  100%;
      max-height: 100%;
    }
    /* フィット */
    .Image.Fit{
    
    }
    .Image.Fit img{
      width:      100%;
      height:     100%;
    }
    
    /* ページ内で表示したときの補足処理 ：枠を付加 */
    .DefaultArea .Image {
      background: #fff;
      /*padding:    7px;
      border:     1px solid;*/
    }
    .DefaultArea .Image.NoBorder {
      border:     none;
      padding:    0;
    }
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .DefaultArea .Image{
          padding: 5px;
        }
        body.rsbp-under-bp3 .DefaultArea .Image{
          padding: 5px;
        }
        /* + + + + + /レスポンシブ + + + + +  */



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Text and Heading                               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* PageTitle
--------------------------------------------------- */
body .PageTitle{
  padding: 0;
  /*padding: 1.75em 10px;*/
  position: relative;
  color: #897863;
  /*background:  url(../img/common/decoration/bg_pagetitle_default)repeat-x top center;*/
  overflow: hidden;
}


        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3  .PageTitle.CustomTitleW,
        body.rsbp-under-bp3  .PageTitle.CustomTitle{
          padding: 1.0em 10px;
        }


    body .PageTitle .Heading{
      margin: 0 auto;
      line-height: 1.5;
      font-weight: normal;
      vertical-align: middle;
      font-size: 125%;
      /*background:  url(../img/common/decoration/image-co-logo.png) no-repeat 98% 50%;*/
      background-size:100px auto;
    }
          /* + + + + + レスポンシブ + + + + +  */
            body.rsbp-under-bp3 .PageTitle .Heading{
              /*background:  url(../img/common/decoration/image-co-logo.png) no-repeat 99% 50%;*/
              background-size:70px auto;
            }
          /* + + + + + レスポンシブ + + + + +  */
          
    body .PageTitle .Heading  *{
      vertical-align: middle;
    }
    body .PageTitle .Heading > span.icon-pos-static{
      width:55px;
      display:none;
    }
    body .PageTitle .Heading  .Main{
      display:block;
      font-size: 220%;
 /*     -webkit-background-clip: text;
      background-image: linear-gradient(to right, #897863, #444cbb);
      -webkit-text-fill-color: transparent;*/
      text-shadow: 0 0.04em 0.21em rgba(0,0,0,0.1);
      text-align:center;
      line-height:1.1;
      letter-spacing:0.2em;
      margin: 25px 0 10px 0;
      
    }
    
    
    
    /*IE対策*/
    html.ie .PageTitle .Heading  .Main{
      display:block;
      background:none;
      color:#313594;
      text-shadow: 0 0.04em 0.18em rgba(0,0,0,0.2);
      
    }
    
    
    body .PageTitle .Heading .Sub{
      font-size: 70%;
      font-weight: normal;
      text-align:center;
      line-height:1.1;
      font-family: "Times", serif;
      font-style:italic;
      color:#adaead;
      display:block;
    }
    body .PageTitle .Heading  .Sub  span,
    body .PageTitle .Heading  .Main span{
      /*vertical-align: unset; w3c*/
      vertical-align: middle;
    }
    body .PageTitle .Heading  .Sub  span{
      
    }
    body .PageTitle .Heading  .Icon::before{
      font-size: 250%;
    }
    body .PageTitle .inner{
      position:relative;
      padding:20px 0;
    }
    body .PageTitle .inner .PageChatch{
      position:absolute;
      left:100px;
      left:8%;
      top:50%;
      margin-top:-30px;
      height:60px;
      text-align:left;
    }
    
    body .PageTitle .inner .PageChatch span{
      vertical-align: middle;
      display:table-cell;
      height:60px;
      color:#313594;      
      font-size:1.1rem;
      letter-spacing:0.1rem;
    }
 /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width: 1100px) {

    body .PageTitle .inner .PageChatch{
      position:absolute;
      left:10%;
      width: -webkit-calc(50% - 260px);
      width:         calc(50% - 260px);

    }
    body .PageTitle .inner .PageChatch span{
      font-size: 1rem;
    }
    
}/*1000++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
    .TelalafloatlogoItem{
       position:absolute;
      top:-20px;
      left:2px;
    }
    .TelalafloatlogoItem img{
      /*opacity:0.7;*/
    }
    
    body .PageTitle .inner{
      position:relative;
    }
    body .PageTitle .inner::before{
      content: "";
      height: 338px;
      width: 526px;
      display: block;
      position: absolute;
      top:0;
      left: -185px;
      top:5px;
      left: -235px;
      background: url(../img/common/decoration/bg_telala_title.png)no-repeat 0 0 ;
    }

    body .PageTitle .inner.TypeBottom::before {
      content: "";
      top: -135px;
      background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0;
    }
    
    body .PageTitle .inner.TypeHead{
      height:40px;
    }
    body .PageTitle .inner.TypeHead::before{
      top:   10px;
      background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
    }
    body .PageTitle .inner.TypeBody::before{
      /*top:-30px;*/
    }
    
    
    /*TypeCustom CustomTitle*/
    body .PageTitle.CustomTitle{

    }
    
    body .PageTitle.CustomTitle .inner::before{
      content: "";
      height: 338px;
      width: 526px;
      display: block;
      position: absolute;
      left: -255px;
      left: -235px;
    }
    body .PageTitle.CustomTitle .inner.TypeBody::before{
      top:   5px;
      background: url(../img/common/decoration/bg_telala_title.png)no-repeat 0 0 ;
    }
    body .PageTitle.CustomTitle .inner.TypeBottom::before{
      top:   -135px;
      background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
    }

/*
    body .PageTitle.CustomTitle .inner.TypeBody::before{
      background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
    }
*/


    body .PageTitle.CustomTitle .Heading .Main{
      text-align: left;
      margin-left: 100px;
      display: inline-block;
      color:#383c94;
    }
    body .PageTitle.CustomTitle .Heading .Sub{
      text-align: left;
      margin-left: 100px;
      
    }
    body .PageTitle.CustomTitle .Heading .SubChatch{
      font-size:1.2rem;
      color:#001859;
      margin-left: 30px;
      margin-top:15px;
      vertical-align: middle;
      display: inline-block;
    }


    /*TypeCustomW CustomTitleW*/
    
    
    body .PageTitle.CustomTitleW{

    }
    
    body .PageTitle.CustomTitleW .inner::before{
      content: "";
      height: 338px;
      width: 526px;
      display: block;
      position: absolute;
      left: -255px;
      left: -235px;
    }
    body .PageTitle.CustomTitleW .inner.TypeBody::before{
      top:   5px;
      background: url(../img/common/decoration/bg_telala_title.png)no-repeat 0 0 ;
    }
    body .PageTitle.CustomTitleW .inner.TypeBottom::before{
      top:   -135px;
      background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
    }


    body .PageTitle.CustomTitleW .inner.TypeBody::before{
      background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
    }



    body .PageTitle.CustomTitleW .Heading .Main{
      text-align: left;
      margin-left: 100px;
      display: inline-block;
      color:#fff;
    }
    body .PageTitle.CustomTitleW .Heading .Sub{
      text-align: left;
      margin-left: 100px;
      color:#fff;
    }
    body .PageTitle.CustomTitleW .Heading .SubChatch{
      font-size:1.2rem;
      color:#fff;
      margin-left: 30px;
      margin-top:15px;
      vertical-align: middle;
      display: inline-block;
    }







    /*ImageTitle*/
    body .PageTitle.ImageTitle{
    
    }
    
    body .PageTitle.ImageTitle .inner.TypeHead {
        height: 60px;
    }
    body .PageTitle.ImageTitle .inner.TypeHead span {
      color: #fff;
      font-size: 1.1rem;
      font-family: 'Istok Web', sans-serif;
      line-height: 60px;
    }
    body .PageTitle.ImageTitle .Heading .Sub{
      position:absolute;
      bottom:-30px;
      left: 50%;
      margin-left: -150px;
      width: 300px;
    }
    body .PageTitle.ImageTitle .Heading .Main {
      color:#fff;
      text-shadow:0 0.1em 0.3em rgba(0,0,0,0.4),0 0 0.2em rgba(0,0,0,0.8),0 0 0.2em rgba(0,0,0,0.8);
      
    }
    body .PageTitle.ImageTitle .Heading .Sub span {
      position:static;
      color:#fff;
      text-shadow: 0 0.1em 0.3em rgba(0,0,0,0.4),0 0 0.2em rgba(0,0,0,0.8),0 0 0.2em rgba(0,0,0,0.8);
    }
    
    
     body .PageTitle.ImageTitle .inner::before{
       display:none;
     }
    body .PageTitle.ImageTitle .TitleContents{
      /*background:#222 ;*/
    }
    body .PageTitle.ImageTitle .Heading .Main{
      color:#fff;
      text-shadow: 0 0.04em 0.21em rgba(0,0,0,0.5);
    }



        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .PageTitle .inner .PageChatch {
          position: static;
          left: 0;
          top: 0;
          margin-top: 0;
          height: auto;
          text-align: center;
          display:block;
          width:auto;
          margin:0 auto;
        }
        body.rsbp-under-bp2 .PageTitle .inner .PageChatch span {
          vertical-align: middle;
          display: block;
          height: auto;
          color: #313594;
          font-size: 1rem;
          letter-spacing: 0.1rem;
          margin-top:3px;
          margin-bottom:10px;
        }
          body.rsbp-under-bp2 .PageTitle .Heading .Main {
            font-weight: normal;
            margin: 10px 0 0 0;
          }
        
        /*Default*/
        body.rsbp-under-bp3 .PageTitle .inner.TypeHead {
          height: 30px;
        }
        body.rsbp-under-bp3  .PageTitle .inner {
          position: relative;
        }
        body.rsbp-under-bp3  .PageTitle .inner.TypeBody {
          padding:0px 0;
        }
        body.rsbp-under-bp3 .PageTitle .inner::before{
          content: "";
          height: 169px;
          width: 263px;
          display: block;
          position: absolute;
          left: -90px;
          top:0;
          background: url(../img/common/decoration/bg_telala_title.png)no-repeat 0 0 ;
          background-size:263px 169px;
        }
        body.rsbp-under-bp3 .PageTitle .inner.TypeHead{
         
        }
        body.rsbp-under-bp3 .PageTitle .inner.TypeHead::before{
          top:   10px;
          background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
          background-size:263px 169px;
        
        }
        body.rsbp-under-bp3 .PageTitle .inner.TypeBody::before{
          top:-20px;
          background-size:263px 169px;
          top:5px;
        }
        
        
        body.rsbp-under-bp3 .PageTitle .inner .PageChatch {
          position: static;
          left: 0;
          top: 0;
          margin-top: 0;
          height: auto;
          text-align: center;
          display:block;
          width:auto;
          margin:0 auto;
        }
        body.rsbp-under-bp3 .PageTitle .inner .PageChatch span {
          vertical-align: middle;
          display: block;
          height: auto;
          color: #313594;
          font-size: 0.7rem;
          letter-spacing: 0.1rem;
          margin-top:3px;
          margin-bottom:10px;
        }
        body.rsbp-under-bp3 .PageTitle .TitleContents {
          overflow: hidden;
          height: auto;
        }
        
        
        /*TypeCustom*/
        
        body.rsbp-under-bp2 .PageTitle.CustomTitle .Heading .Sub {
          text-align: left;
          margin-left: 5px;
        }
        body.rsbp-under-bp2 .PageTitle.CustomTitle .inner::before{
          left: -185px;
        }
        
        body.rsbp-under-bp3 .PageTitle .inner.TypeBottom {
          height: 30px;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle{
          padding: 0;
        
        }
        body.rsbp-under-bp2 .PageTitle.CustomTitle .Heading .SubChatch{
          margin:3px 5px 3px 0px;
          vertical-align: top;
          display: block;
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .Heading .SubChatch.TypeLimit{
          width:65%;
        }
        
        body.rsbp-under-bp3 .PageTitle.CustomTitle .inner::before{
          content: "";
          height: 169px;
          width: 263px;
          display: block;
          position: absolute;
          left: -205px;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .inner.TypeBody::before{
          top:   5px;
          background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
          background-size:230px auto;
          left: 0px;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .inner.TypeBottom::before{
          top:   10px;
          background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
          background-size:100px auto;
          background:none;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .Heading .Main{
          text-align: left;
          margin:10px 5px 5px 5px;
          display: block;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .Heading .Sub{
          text-align: left;
          margin:3px 5px;
          
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .Heading .SubChatch{
          font-size:0.8rem;
          color:#001859;
          margin:3px 5px;
          vertical-align: top;
          display: block;
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis;
          width: -webkit-calc(100% - 120px);
          width:         calc(100% - 120px);
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitle .Heading .SubChatch.TypeLimit{
          width:65%;
        }




        /*CustomTitleW*/
        body.rsbp-under-bp2 .PageTitle.CustomTitleW .Heading .Sub {
          text-align: left;
          margin-left: 5px;
        }
        body.rsbp-under-bp2 .PageTitle.CustomTitleW .inner::before{
          left: -185px;
        }
        
        body.rsbp-under-bp3 .PageTitle .inner.TypeBottom {
          height: 30px;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW{
          padding: 0;
        
        }
        body.rsbp-under-bp2 .PageTitle.CustomTitleW .Heading .SubChatch{
          margin:3px 5px 3px 0px;
          vertical-align: top;
          display: block;
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .Heading .SubChatch.TypeLimit{
          width:65%;
        }
        
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .inner::before{
          content: "";
          height: 169px;
          width: 263px;
          display: block;
          position: absolute;
          left: -205px;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .inner.TypeBody::before{
          top:   5px;
          background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
          background-size:230px auto;
          left: 0px;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .inner.TypeBottom::before{
          top:   10px;
          background: url(../img/common/decoration/bg_telala_title2.png)no-repeat 0 0 ;
          background-size:100px auto;
          background:none;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .Heading .Main{
          text-align: left;
          margin:10px 5px 5px 5px;
          display: block;
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .Heading .Sub{
          text-align: left;
          margin:3px 5px;
          
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .Heading .SubChatch{
          font-size:0.8rem;
          color:#fff;
          margin:3px 5px;
          vertical-align: top;
          display: block;
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis;
          width: -webkit-calc(100% - 120px);
          width:         calc(100% - 120px);
        }
        body.rsbp-under-bp3 .PageTitle.CustomTitleW .Heading .SubChatch.TypeLimit{
          width:65%;
        }


        /*ImageTitle*/

        
        body.rsbp-under-bp2 .PageTitle .Heading {
          font-size: 95%;
          padding: 0.25em 1em;
        }
        
        body.rsbp-under-bp2 .PageTitle .Heading  .Main{
          margin-left:0;
        }
        
        body.rsbp-under-bp3 .PageTitle {
          padding: 0;
        }
        
        body.Facility.rsbp-under-bp3  .PageTitle {
          padding: 0.74em 10px;
        }
        body.rsbp-under-bp3 .PageTitle {
          /*padding: 2em 5px 5px;*/
          /*background: #897863 url(../img/common/decoration/bg_pagetitle.png)no-repeat 0% 0% ;
          background-size:auto 100%;
          background-size:100% auto;*/
        }
        body.rsbp-under-bp3 .PageTitle .Heading {
          /*font-size: 75%;*/
          padding: 0.25em .75em;
          padding: 0.25em .2em;
        }
        body.rsbp-under-bp3 .PageTitle .Heading  .Main{
          font-size: 150%;
          font-weight:normal;
          margin: 10px 0 0 0;
        }
        body.rsbp-under-bp3 .PageTitle .Heading  .Sub{
          display:block;
          /*margin-left:65px;*/
          margin-left:2px;
          margin-top: 0px;
          line-height:1.1;
          font-size:70%;
          }

        body.rsbp-under-bp3 .PageTitle .Heading  .Sub > span{
          
        }
        body.rsbp-under-bp3 .PageTitle .Heading > span.icon-pos-static{
          display:none;
        }
        body.rsbp-under-bp3 .CustomTitleW .icon-custom.Type3,
        body.rsbp-under-bp3 .CustomTitle .icon-custom.Type3{
          background-size: 50px auto;
          width: 50px;
        }


        /*ImageTitle*/
        body.rsbp-under-bp3 .PageTitle.ImageTitle .Heading .Main{
          margin: 20px 0 20px 0;
        }
        
        body.rsbp-under-bp3 .PageTitle.ImageTitle .TitleContents {
            height:100px;
         }
        
        body.rsbp-under-bp3 .PageTitle.ImageTitle .Heading .Sub{
            position:absolute;
            bottom:0;
            left: 50%;
            margin-left: -150px;
            width: 300px;
          }
        




        
        /* + + + + + レスポンシブ + + + + +  */


/* カテゴリ見出し common
--------------------------------------------------- */


/* 見出し common
--------------------------------------------------- */
.Heading{
  line-height: 1.5;
}


/* 見出しバリエーション
--------------------------------------------------- */


body .MainContentsArea h1{
  position: relative;
  font-weight: 400;
  margin: 0 0 1.5em 0;
  width:100%;
  text-align:left;
  width: -webkit-calc(100% - 8px);
  width:         calc(100% - 8px);
  margin-left:8px;
  padding:10px;
  border:none;
  font-size: 1.9rem;
  line-height: 1.2;
  letter-spacing: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'M PLUS Rounded 1c', sans-serif;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e1e1e1+0,eff0ef+100 */
  background: #e1e1e1; /* Old browsers */
  background: -moz-linear-gradient(top,  #e1e1e1 0%, #eff0ef 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  #e1e1e1 0%,#eff0ef 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  #e1e1e1 0%,#eff0ef 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e1e1e1', endColorstr='#eff0ef',GradientType=0 );  IE6-9 */
}

    body .MainContentsArea h1::before{
      content: "";
      height: 100%;
      width: 5px;
      display: block;
      position: absolute;
      left: -8px;
      top:   0%;
      background: #5e472c;

    }
    body .MainContentsArea h1::after{
      content: "";
      height:  1px;
      width: 110%;
      display: block;
      position: absolute;
      left:   -8px;
      bottom: -5px;
      background: rgba(0,0,0,0.375);
      
      width: 100%;
      width: -webkit-calc(100% + 8px);
      width:         calc(100% + 8px);
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .MainContentsArea h1{
          font-size: 1.5em;

        }




/* Type1 :::::::::::::::::::::::::  */
.Heading.Type1{
  position: relative;
  font-weight: 400;
  margin: 0 0 1.5em 0;
  width:100%;
  text-align:left;
  width: -webkit-calc(100% - 8px);
  width:         calc(100% - 8px);
  margin-left:8px;
  padding:10px;
  border:none;
  font-size: 1.9rem;
  line-height: 1.2;
  font-family: -apple-system, BlinkMacSystemFont, 'M PLUS Rounded 1c', sans-serif;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e1e1e1+0,eff0ef+100 */
  background: #e1e1e1; /* Old browsers */
  background: -moz-linear-gradient(top,  #e1e1e1 0%, #eff0ef 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  #e1e1e1 0%,#eff0ef 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  #e1e1e1 0%,#eff0ef 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e1e1e1', endColorstr='#eff0ef',GradientType=0 );  IE6-9 */
  
}
    .Heading.Type1::before{
      content: "";
      height: 100%;
      width: 5px;
      display: block;
      position: absolute;
      left: -8px;
      top:   0%;
      background: #5e472c;

    }
    .Heading.Type1::after{
      content: "";
      height:  1px;
      width: 110%;
      display: block;
      position: absolute;
      left:   -8px;
      bottom: -5px;
      background: rgba(0,0,0,0.375);
      
      width: 100%;
      width: -webkit-calc(100% + 8px);
      width:         calc(100% + 8px);
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type1{
         margin-bottom:1em;
        }
        body.rsbp-under-bp3 .Heading.Type1 span.Main{


        }
        
/* TypeTop :::::::::::::::::::::::::  */
.Heading.TypeTop{
  position: relative;
  font-weight: 500;
  margin: 1em auto;
  width:100%;
  text-align:center;
  background:none;
  font-size: 1.5em;
  line-height:1.5;
  padding:0;
  color:#222;
}
.Heading.TypeTop.TypeW{
  color:#fff;
}
    .Heading .EngTitle{
      font-size: 3.5em;
      display:block;
      font-family: "Arial", "Gotham", "Times" ,sans-serif;
      line-height:1.3;
    }
    .Heading .JpTitle{
      font-size: 2.0em;
      display:block;
      font-family: "Arial", "Gotham", "Times" ,sans-serif;
      line-height:1.3;
    }
    .Heading.TypeTop .Sub{
      font-size: 0.8em;
      font-weight:bold;
      display:block;
    }

    
    
        /* + + + + + レスポンシブ + + + + +  */
        

        body.rsbp-under-bp2 .Heading .EngTitle{
          margin-top:1em;
          margin-top:0.5em;
          font-size: 1.5em;
          display:block;
          font-family: "Arial", "Gotham", "Times" ,sans-serif;
          line-height:1.2;
        }
        body.rsbp-under-bp3 .Heading .EngTitle{
          margin-top:0.5em;
        }
        body.rsbp-under-bp2 .Heading .JpTitle{
          margin-top:1em;
          margin-top:0.5em;
          font-size: 1.0em;
          display:block;
          font-family: "Arial", "Gotham", "Times" ,sans-serif;
          line-height:1.2;
          font-weight:600;
        }
        body.rsbp-under-bp3 .Heading .JpTitle{
          margin-top:0.5em;
        }
        
        body.rsbp-under-bp3 .Heading.TypeTop{
          margin: 1em auto 0 auto;
        }
        body.rsbp-under-bp3 .Heading.TypeTop .Sub{
          font-size: 0.5em;
        }


/* Type2 :::::::::::::::::::::::::  */
.Heading.Type2{
  font-size: 150%;
  font-weight: 800;
  font-weight: 200;
  padding: 0;
  margin: 3em 0 0.75em;
  color: #897863;
}
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type2{
          font-size: 137.5%;
          margin-bottom: 1em;
        }
        body.rsbp-under-bp3 .Heading.Type2{
          font-size: 125%;
        }


/* Center Type2 :::::::::::::::::::::::::  */

.SknTplCenterTitle{

}
    /* Header */
    .SknTplCenterTitle .inner{
      font-size: 125%;
      position: relative;
      margin-top:25px;
      margin-bottom: 3em;
      margin-bottom: 1em;
      margin-bottom:40px;
      text-align:center;
      line-height: 1.3;
    }
    .SknTplCenterTitle .inner::before{
      position:absolute;
      content: "";
      height: 1px;
      left:0;
      top:40%;
      width:100%;
      height:1px;
      background:#897863;
    }
    /*CenterTitleItem*/
    .SknTplCenterTitle .inner.CenterTitleItem{
      position:relative;
    }
    
    .SknTplCenterTitle .inner .Heading{
      overflow:hidden;
      text-align:center;
      background:#fff;
      display: inline-block;
      margin:0;
      padding:0 20px;
      line-height:1.3;
    }
    .SknTplCenterTitle .inner .Heading .Main{
      line-height:1.0;
      letter-spacing:0.1em;
    }
      
      



    /* + + + + + レスポンシブ + + + + +  */
    body.rsbp-under-bp2  .SknTplCenterTitle .inner .Heading{
      margin-bottom:0;
    
    }
    /* + + + + + レスポンシブ + + + + +  */
    
    
    body.rsbp-under-bp3     .SknTplCenterTitle .inner{
      position: relative;
      margin-top:0px;
      margin-left:-10px;
      margin-right:-10px;
      
    }
    
    body.rsbp-under-bp3 .SknTplCenterTitle .inner .Heading{
      padding: 0 8px;
    
    }
    
    
    body.rsbp-under-bp3 .SknTplCenterTitle .inner  .Heading::before,
    body.rsbp-under-bp3 .SknTplCenterTitle .inner  .Heading::after{
      display:none;
    
    }





/* Type3 :::::::::::::::::::::::::  */
.Heading.Type3 {
  font-size: 125%;
  position: relative;
  padding: 0.375em 0px;
  margin: 3em 0 1.5em;
}
    .Heading.Type3::before{
      content: "";
      height: 200%;
      height: calc(100% + 1.5em);
      width: 0.25em;
      display: block;
      position: absolute;
      left: -1.5em;
      left: -0.7em;
      /*top:  -0.5em;*/
      background: #001f67;
      background: #897863;
      -webkit-transition: all .2s;
              transition: all .2s;
      left: 0;
      height:5px;
      width: 10em;
      bottom:0;
      
    }
    .Heading.Type3::after{
      content: "";
      height:  1px;
      width: 110%;
      display: block;
      position: absolute;
      left:   -5%;
      bottom: -0.5em;
      background: rgba(0,0,0,0.375);
      width: 100%;
      left:0;
      bottom:-1px;
    }
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp1 .Heading.Type3::before{
          /*width: 0.125em;
          left: -1em;*/
        }
        body.rsbp-under-bp1 .Heading.Type3::after{
          /*width: 105%;*/
        }
        body.rsbp-under-bp2 .Heading.Type3{
          border-left: 4px solid #897863;
          padding-left: 15px;
        }
        body.rsbp-under-bp2 .Heading.Type3::before{
          display: none;
        }
        body.rsbp-under-bp2 .Heading.Type3::after{
          width: 100%;
          left: 0px;
        }

.DefaultParagraph > .Heading.Type3{
  margin-top:1em;
}


/* Type4 :::::::::::::::::::::::::  */
.Heading.Type4{
  font-size: 112.5%;
  position: relative;
  font-weight: 600;
  margin: 3em 0 1.5em;
  padding: 1em;
  background: rgba(0,0,0,0.125);
  /*background-image: -webkit-repeating-linear-gradient(-45deg, rgba(230,230,230,0.5), rgba(230,230,230,0.5) 1px, rgba(250,250,250,0.5) 1px, rgba(250,250,250,0.5) 6px);
  background-image:         repeating-linear-gradient(-45deg, rgba(230,230,230,0.5), rgba(230,230,230,0.5) 1px, rgba(250,250,250,0.5) 1px, rgba(250,250,250,0.5) 6px);*/
  background: rgba(255,255,255,0.7);
  background-image: -webkit-repeating-linear-gradient(-90deg, rgba(90,181,169,0.05), rgba(90,181,169,0.05) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  background-image:         repeating-linear-gradient(-90deg, rgba(90,181,169,0.05), rgba(90,181,169,0.05) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  border-radius:0.2em;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
}
    .Heading.Type4::before{
      content: "";
      height: 60%;
      width: 0.4em;
      display: block;
      position: absolute;
      left: -0.2em;
      top:   20%;
      background: #2c59c0;
      background: #897863;
      border-radius:0.2em;
      z-index:1200;
    }
    .Heading.Type4::after{
      content: "";
      height: 30%;
      width: 0.4em;
      display: block;
      position: absolute;
      left: -0.2em;
      top:   50%;
      background: #897863;
      border-radius:0 0 0.2em 0.2em;
      z-index:1250;
    }
    
    .Heading.Type4 > a{
      color:#897863;
    }
    .Heading.Type4 > a:hover{
      color:#fff;
      text-decoration:underline;
    }
    
    .Heading.Type4 > span.Sub{
      font-weight:normal;
      font-size:80%;
    }
    
    
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type4{
          font-size: 100%;
        }
        body.rsbp-under-bp3 .Heading.Type4{
          font-size: 87.5%;
          box-shadow: 0 0.1em 0.1em rgba(0,0,0,0.5);
        }
        /* + + + + + レスポンシブ + + + + +  */

/* Type5 :::::::::::::::::::::::::  */
.Heading.Type5{
  font-size: 112.5%;
  margin:  2em 0 1em;
}
    .Heading.Type5::before{
      content: "●";
      margin-right: 0.25em;
    }
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type5{
          font-size: 100%;
        }
        body.rsbp-under-bp3 .Heading.Type5{
          font-size: 87.5%;
        }



/* Type6 :::::::::::::::::::::::::  */
.Heading.Type6{
  font-size: 120%;
  position: relative;
  font-weight: 400;
  margin: 2em 0 1.5em;
  width:100%;
  padding: 0.4em 1em 0.4em 1em;
  color:#fff;
  background:#897863;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
  border-radius:5px;
}
    .Heading.Type6::before{
      content: "";
      height: 100%;
      width: 0.5em;
      display: block;
      position: absolute;
      left: 0em;
      top:   0%;
      background: #e4ba29;
      border-radius:5px 0 0 5px;
    }
/*
    .Heading.Type6::after{
      content: "";
      height: 100%;
      width: 0.1em;
      display: block;
      position: absolute;
      left: 0.5em;
      top:   0%;
      background: #f4003f;
    }
*/
    .Heading.Type6 .Main{
      margin-left:20px;
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type6{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;

        }
        body.rsbp-under-bp3 .Heading.Type6{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;
        }

/* Type7 :::::::::::::::::::::::::  */
.Heading.Type7{
  font-size: 112.5%;
  margin:  1em 0 1em;
}
    .Heading.Type5::before{
     
    }
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type5{
          font-size: 100%;
        }
        body.rsbp-under-bp3 .Heading.Type5{
          font-size: 87.5%;
        }


/* Type8 :::::::::::::::::::::::::  */
.Heading.Type8{
  font-size: 110%;
  font-weight: 800;
  padding: 0;
  margin: 1.5em 0 0.75em;
  color: #897863;
}
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type8{
          font-size: 137.5%;
          margin-bottom: 1em;
        }
        body.rsbp-under-bp3 .Heading.Type8{
          font-size: 125%;
        }


/* Type9 :::::::::::::::::::::::::  */
.Heading.Type9{
  font-size: 120%;
  position: relative;
  font-weight: 400;
  margin: 5px 0 1em;
  margin: 5px 0;
  width:100%;
  padding: 0.8em 1em 0.8em 1em;
  color:#fff;
  background:#897863;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
  border-radius:0px;
  text-align:center;
  box-shadow: 0 0.04em 0.18em rgba(0,0,0,0.4);
  
  
      background: -webkit-gradient(linear, left top, right bottom, from(#897863), color-stop(0.25, #897863), color-stop(0.25, #5160e2), color-stop(0.5, #5160e2), color-stop(0.5, #897863), color-stop(0.75, #897863), color-stop(0.75, #5160e2), to(#5160e2));
      background: -moz-linear-gradient(-45deg, #5160e2 25%, #897863 25%, #897863 50%, #5160e2 50%, #5160e2 75%, #897863 75%, #897863);
      background: linear-gradient(-45deg, #897863 25%, #5160e2 25%, #5160e2 50%, #897863 50%, #897863 75%, #5160e2 75%, #5160e2);
      background-size: 6px 6px;
  
  
  
  
  
}
/*
    .Heading.Type9::before{
      content: "";
      height: 100%;
      width: 0.5em;
      display: block;
      position: absolute;
      left: 0em;
      top:   0%;
      background: #897863;
      border-radius:5px 0 0 5px;
    }
*/
    .Heading.Type9 .Main{
      margin-left:0px;
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type9{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;

        }
        body.rsbp-under-bp3 .Heading.Type9{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;
        }


/* Type10 :::::::::::::::::::::::::  */
.Heading.Type10{
  font-size: 120%;
  position: relative;
  font-weight: 400;
  margin: 5px 0;
  width:100%;
  padding: 0.8em 1em 0.8em 1em;
  color:#222;
  background:#ced1f7;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
  border-radius:0px;
  text-align:center;
}
/*
    .Heading.Type10::before{
      content: "";
      height: 100%;
      width: 0.5em;
      display: block;
      position: absolute;
      left: 0em;
      top:   0%;
      background: #897863;
      border-radius:5px 0 0 5px;
    }
*/
    .Heading.Type10 .Main{
      margin-left:0px;
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type10{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;

        }
        body.rsbp-under-bp3 .Heading.Type10{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;
        }


/* Type11 :::::::::::::::::::::::::  */
.Heading.Type11{
  font-size: 160%;
  position: relative;
  font-weight: 400;
  margin: 1em 0 1em;
  width:100%;
  padding: 0.8em 2em 0.8em 2em;
  color:#222;
  background:#fff;
  box-shadow: 0 0.05em 0.15em rgba(0,0,0,0.12);
  box-shadow: 0 0.04em 0.18em rgba(0,0,0,0.4);
  border-radius:0px;
  text-align:center;
  border:2px solid #eae4e4;
  border:2px solid #fff;
  box-sizing: border-box; 
  text-align:left;
  
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f9fcf7+0,f5f5f5+100 */
background: rgb(249,252,247); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(249,252,247,1) 0%, rgba(245,245,245,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(249,252,247,1) 0%,rgba(245,245,245,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(249,252,247,1) 0%,rgba(245,245,245,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
/*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9fcf7', endColorstr='#f5f5f5',GradientType=0 );  IE6-9 */

  
-webkit-background-clip: text;
background-image: linear-gradient(to right, #2328c4, #30e214);
background-image: linear-gradient(to right, #2328c4, #02afff);
background-image: linear-gradient(to right, #2328c4, #897863);
-webkit-text-fill-color: transparent;
text-shadow: 0 0.04em 0.18em rgba(0,0,0,0.2);
}
/*IE対策*/
html.ie .Heading.Type11{
  background:none;
  color:#491fa4;
  text-shadow: 0 0.04em 0.18em rgba(0,0,0,0.3);
}
    .Heading.Type11::before{
      content: "";
      height: 100%;
      width: 2px;
      display: block;
      position: absolute;
      left: -2px;
      top:   0px;
      background: #897863;
    }
/*
    .Heading.Type11::after{
      content: "";
      height: 100%;
      width: 2px;
      display: block;
      position: absolute;
      left: -2px;
      top:   0px;
      background: #897863;
    }
*/
    .Heading.Type11 .Main{
      margin-left:0px;
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type11{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;

        }
        body.rsbp-under-bp3 .Heading.Type11{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;
          padding: 0.5em 1em;
        }








/* Type12 :::::::::::::::::::::::::  */
.Heading.Type12{
  font-size: 120%;
  position: relative;
  font-weight: 400;
  margin: 2em 0 1.5em;
  width:100%;
  padding: 0.4em 1em 0.4em 1em;
  color:#fff;
  background:#666;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
  border-radius:5px;
}
    .Heading.Type12::before{
      content: "";
      height: 100%;
      width: 0.5em;
      display: block;
      position: absolute;
      left: 0em;
      top:   0%;
      background: #333;
      border-radius:5px 0 0 5px;
    }
/*
    .Heading.Type12::after{
      content: "";
      height: 100%;
      width: 0.1em;
      display: block;
      position: absolute;
      left: 0.5em;
      top:   0%;
      background: #f4003f;
    }
*/
    .Heading.Type12 .Main{
      margin-left:20px;
    }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 .Heading.Type12{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;

        }
        body.rsbp-under-bp3 .Heading.Type12{
          font-size: 110%;
          margin: 0 0 1em;
          width:100%;
        }



/* Type13 :::::::::::::::::::::::::  */
.Heading.Type13 {
  font-size: 125%;
  position: relative;
  padding: 0.375em 0px;
  margin: 3em 0 1.5em;
}
    .Heading.Type13::before{
      content: "";
      height: 200%;
      height: calc(100% + 1.5em);
      width: 0.25em;
      display: block;
      position: absolute;
      left: -1.5em;
      left: -0.7em;
      /*top:  -0.5em;*/
      background: #ccc;
      -webkit-transition: all .2s;
              transition: all .2s;
      left: 0;
      height:5px;
      width: 10em;
      bottom:0;
      
    }
    .Heading.Type13::after{
      content: "";
      height:  1px;
      width: 110%;
      display: block;
      position: absolute;
      left:   -5%;
      bottom: -0.5em;
      background: #eee;
      width: 100%;
      left:0;
      bottom:-1px;
    }
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp1 .Heading.Type13::before{
          /*width: 0.125em;
          left: -1em;*/
        }
        body.rsbp-under-bp1 .Heading.Type13::after{
          /*width: 105%;*/
        }
        body.rsbp-under-bp2 .Heading.Type13{
          border-left: 4px solid #eee;
          padding-left: 15px;
        }
        body.rsbp-under-bp2 .Heading.Type13::before{
          display: none;
        }
        body.rsbp-under-bp2 .Heading.Type13::after{
          width: 100%;
          left: 0px;
        }

.DefaultParagraph > .Heading.Type13{
  margin-top:1em;
}





.Heading.TypeS{
  margin-left:40px;
  font-size:120%;
}
.Heading.TypeS span.icon-search::before{
  color:#383c94;
  font-size:160%;
  position: absolute;
  left: -40px;
  top: -10px;
}

.Heading.TypeS2{
  margin-left:10px;
  margin-top:30px!important;
}


/* common :::::::::::::::::::::::::  */
.Heading:first-child{
  margin-top: 0;
}


/* レスポンシブ用改行 */
body.rsbp-under-bp2 br.BrForWide{
  display: none;
}
body.rsbp-over-bp2  br.BrForNarrow{
  display: none;
}
    /* 見出しの中の改行を省く */
    body.rsbp-under-bp3 .Heading br{
      display: none;
    }

/*伸びる*/
.LinkIconStrech{
  position:relative;
  display:inline-block;
  /*vertical-align:middle;*/
  width:12px;
  height:12px;
  border:1px solid #333;
  border-radius:15px;
  margin-right:18px;
  margin-left:5px;
}
a:hover .LinkIconStrech{
  border:1px solid #fff;
}

.LinkIconStrech.WtColor{
  border:1px solid #fff;
}

.LinkIconStrech::before{
  content: '';
  position:absolute!important;
  left:6px;
  top:5px;
  width:26px;
  height:1px;
  background: #222;
  margin:0;
  -webkit-transition: all .3s;
  transition:  all .3s;
}
.LinkIconStrech::after{
  content: '';
  position:absolute!important;
  left:28px;
  bottom:5px;
  width:1px;
  height:6px;
  background: #222;
  margin:0;
  transform:skewX(30deg);
  -webkit-transition: all .3s;
  transition:  all .3s;
}

.LinkIconStrech.WtColor::before,
.LinkIconStrech.WtColor::after{
  background: #fff;
}

a:hover .LinkIconStrech::before{
  width:40px;
  -webkit-transition: all .3s;
  transition:  all .3s;
  background: #fff;
}
a:hover .LinkIconStrech::after{
  left:42px;
  -webkit-transition: all .3s;
  transition:  all .3s;
  background: #fff;
}

a:hover .LinkIconStrech.BkColor::before,
a:hover .LinkIconStrech.BkColor::after{
  background: #222;
}
a:hover .LinkIconStrech.BkColor{
  border:1px solid #222;
}


/*共通ここまで--------------------------------------------------------------*/



/* DefaultText
--------------------------------------------------- */
.DefaultText{
}
.ContentsDivision .DefaultText{
  line-height: 2;
}
.ContentsDivision .DefaultText.FontSizeSmaller,
.ContentsDivision .DefaultText.FontSizeSmall{
  line-height: 1.5;
}
.DefaultText em{
  color: #ff1f25;
}
p.DefaultText{
  margin: 0 0 1em;
}
p.DefaultText:last-child{
  margin-bottom: 0;
}
ul.DefaultText,
ol.DefaultText,
dl.DefaultText{
  line-height: 1.5;
  margin: 0.5em 0 0.5em 1.5em;
}
ul:not([class]),
ol:not([class]),
dl:not([class]){
  margin: 0.5em 0 0.5em 1.5em;
}
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .DefaultText{
          
        }

p.BodyCopyText{
  line-height: 2;
  margin: 0 0 1em;
  letter-spacing:0.1em;
  font-size:1.05rem;
}

        /* + + + + + レスポンシブ + + + + +  */
        /*SP用br削除後の半角余白対策*/
        
        body.rsbp-under-bp2.PcView p.BodyCopyText br{
          display:none;
        }
        
        
        body.rsbp-under-bp2.SpView p.BodyCopyText br{
          display:inline;
        }

        body.rsbp-under-bp2.SpView p.BodyCopyText br {
          content: '';
        }
        body.rsbp-under-bp2.SpView p.BodyCopyText br:after {
          margin-right: -0.333em;
          content: '';
        }



        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 p.BodyCopyText br{
          display:none;
        }






/* AttentionText
--------------------------------------------------- */
.AttentionText{
  color: #e10915;
  padding: 1em;
  border: 1px dotted;
}
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .AttentionText{
          font-size: 87.5%;
        }

/* Caption
--------------------------------------------------- */
.Caption{
  display: block;
  font-size: 75%;
  line-height: 1.5;
  display: block;
  margin: 1em 0;
  text-align: center;
}
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .Caption{
          font-size: 83.5%;
        }
        
.Caption .SubText{
  display:inline-block;
}



/* ImageBox
--------------------------------------------------- */
.ImageBox{
}
    .ImageBox p{
      margin: 0 0 10px;
    }

ul.ImageLinkListTpl.Type1{
  list-style: none;
}
    ul.ImageLinkListTpl.Type1 li{
      overflow: hidden;
      display: inline-block;
      background: #fff;
      position: relative;
    }
    ul.ImageLinkListTpl.Type1 li:hover{
      border: 1px solid #fff;
      box-sizing: border-box;
    }
        ul.ImageLinkListTpl.Type1 li a{
        }
            ul.ImageLinkListTpl.Type1 li img{
              width: 100%;
              position: relative;
              z-index: 1;
              -moz-transition: -moz-transform 0.2s linear;
              -webkit-transition: -webkit-transform 0.2s linear;
              -o-transition: -o-transform 0.2s linear;
              -ms-transition: -ms-transform 0.2s linear;
              transition: transform 0.2s linear;
            }
            ul.ImageLinkListTpl.Type1 li:hover img{
              -webkit-transform: scale(1.1);
              -moz-transform: scale(1.1);
              -o-transform: scale(1.1);
              -ms-transform: scale(1.1);
              transform: scale(1.1);
              opacity: 0.9;
            }
            ul.ImageLinkListTpl.Type1 li .figcaption{
              position: absolute;
              bottom: -3em;
              left: 0;
              z-index: 2;
              width: 100%;
              padding: 0.6em 0;
              line-height: 1em;
              font-weight: bold;
              font-size: 90%;
              color: #fff;
              background: rgba(0, 0, 0, 0.5);
              -moz-transition: -moz-transform       0.2s linear;
              -webkit-transition: -webkit-transform 0.2s linear;
              -o-transition: -o-transform           0.2s linear;
              -ms-transition: -ms-transform         0.2s linear;
              transition: transform                 0.2s linear;
            }
            ul.ImageLinkListTpl.Type1 li:hover .figcaption{
              bottom: -30px;
              -webkit-transform: translateY(-30px);
              transform: translateY(-30px);
            }
.SknTplThumbnailList ul.ColumnGroup li.Column .ImageItem{
  /*overflow:hidden;*/
}

.SknTplThumbnailList ul.ColumnGroup li.Column a .ImageItem{
  transition: all .2s;
}
.SknTplThumbnailList ul.ColumnGroup li.Column a img{
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}



/*主にトップページ*/
.SknTplThumbnailList ul.ColumnGroup li.Column a:hover .ImageItem{
  margin:-3px -3px 3px 3px; 
  transition: all .2s;
}
.SknTplThumbnailList ul.ColumnGroup li.Column a:hover img {
    /*-webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0.9;*/
    opacity: 0.8;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;

}




/*余白調整*/
.SknTplTextList ul.TextList > li{
  padding: 0;
}
.SknTplTextList ul.TextList > li > a{
  margin: 0;

}
.SknTplTextList ul.TextList > li a span{
  margin-left: -0.2em;
}

.SknTplTextList ul.TextList > li.LinkText{
  padding: 0.75em 0.5em 0.75em 3em;
  display: block;
  text-decoration: none;
  position: relative;
} 


/* tooltip（未使用）
--------------------------------------------------- */
.Tooltip {
  border-bottom: 1px dashed;
  cursor: pointer;
  margin: 0 0.25em;
}
.Tooltip::before{
  margin-right: 0.25em;
  color: #2098d1;
}
.Tooltip:hover {
  border-bottom: none;
}
    .ui-tooltip {
      box-shadow: none;
      border: 2px solid #2098d1;
      background: white;
      width: 40em;
      max-width: 50%;
      padding: 25px;
      z-index: 100;
    }
    .ui-tooltip * {
      line-height: 2!important;
      font-size: 100%;
    }


/* PhoneNumberText
--------------------------------------------------- */
.PhoneNumberText{
  color: inherit;
  font-size: 175%;
  /*font-weight: bold;*/
  font-family: "Arial";
  vertical-align: baseline;
  white-space: nowrap;
  position:relative;
}

/* tel link
--------------------------------------------------- */
.TelLink{
  color: #505050!important;
  text-decoration: none!important;
}
.TelLink:hover{
  text-decoration: none!important;
}
body.SpView .TelLink{
  color: #092b7d !important;
}



/* mail link
--------------------------------------------------- */
.MailLink{
  color: #116cc1!important;
}
.MailLink:hover{
  border-bottom: 1px solid
}

/* sup
--------------------------------------------------- */
sup{
  font-size: x-small;
  line-height: 1.1;
}

/* Local link
--------------------------------------------------- */
a.ButtonLocal,
a.ButtonLocalLink{
  padding:0.5em;
  border:1px solid #aaa;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.3);
  border-radius: 0.2em;
  -webkit-transition: color .2s, background-color .2s;
  transition: color .2s, background-color .2s;
  border:1px solid #aaa;

  background: rgba(255,255,255,0.7);
  background-image: -webkit-repeating-linear-gradient(-90deg, rgba(68,76,186,0.05), rgba(68,76,186,0.05) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  background-image:         repeating-linear-gradient(-90deg, rgba(68,76,186,0.05), rgba(68,76,186,0.05) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
}

a.ButtonLocalLink:hover,
a.ButtonLocal:hover{
  background: #222;
  color:#fff;
}
a.ButtonLocalLink::before,
a.ButtonLocal::before{
  content: '\e854';
  font-family: "picticon";
  font-style: normal;
  font-weight: normal;
  speak: none;
  margin-right: 0.5em;
  padding-right:0.5em;
  color:#897863;
  border-right: 1px dotted;
}
a:hover.ButtonLocalLink::before,
a:hover.ButtonLocal::before{
  color:#fff;
}

/*外部リンク*/

a.ButtonLocalLink::after{
  content: '\f08e';
  font-family: "picticon";
  font-style: normal;
  font-weight: normal;
  font-size:80%;
  speak: none;
  margin-left: 0.2em;
  padding-left:0.2em;
  opacity:0.7;
  filter: alpha(opacity=70);/* ie lt 8 */
}


.AfterLInk{

}
.AfterLInk::after{
  content: '\f08e';
  font-family: "picticon";
  font-style: normal;
  font-weight: normal;
  font-size:70%;
  speak: none;
  margin-left: 0.15em;
  padding-left:0.15em;
  border-left: 0px dotted;
  opacity:0.8;
  filter: alpha(opacity=80);/* ie lt 8 */
}

.PanelM .AfterLInk::after{
  margin-left: 0.2em;
  padding-left:0.5em;
  font-size:60%;
  opacity:0.7;
  filter: alpha(opacity=70);/* ie lt 8 */
}

.OuterBlock .BlockContents ul li a::after{
  content: '\f08e';
  font-family: "picticon";
  font-style: normal;
  font-weight: normal;
  font-size:70%;
  speak: none;
  margin-left: 0.15em;
  padding-left:0.15em;
  border-left: 0px dotted;
  opacity:0.8;
  filter: alpha(opacity=80);/* ie lt 8 */
}



/* Map link
--------------------------------------------------- */
a.Map{}
a.Map::before{
  content: '\e87a';
  font-family: "picticon";
  font-style: normal;
  font-weight: normal;
  speak: none;
  margin-right: 0.2em;
  color:#897863;
}

/*強調*/
span.PickUpWord{
  font-weight:bold;
  margin-left:0.2em;
  color:#897863;
  padding:0.1em 0.5em;
}

/*強調*/
em.Main{
  color:red;
  font-weight:bold;
  font-size:110%;
  border: 1px solid #ff5b7c;
  border-radius: 0.2em;
  padding:0 0.2em;
  display:inline-block;
}
em.Sub{
  color:#355400;
  font-weight:bold;
  font-size:105%;
  border: 1px solid #d4eba8;
  border-radius: 0;
  padding:0 0.5em;
  display:inline-block;
  line-height:2;
  margin:2px 0;
  background: #d4eba8;
  border-radius:2px;
}

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp2 em.Sub {
          
        }



/* 丸付き文字
--------------------------------------------------- */
.Circled{
  color: #fff;
  background: #aba0d5;
  border-radius: 1.5em;
  display: inline-block;
  width: 1.5em;
  line-height: 1.5em;
  text-align: center;
  vertical-align: middle;
}

/* font
--------------------------------------------------- */

/* basic */
.fontSansSerif{
  font-family: "Verdana", "Meiryo", "Hiragino Kaku Gothic ProN", "Arial", "Century Gothic", sans-serif;
}
.fontSerif{
  font-family: "Times New Roman", "Hiragino Mincho ProN", "HiraMinProN-W3", "MS PMincho", serif;
}
.fontMonospace{
  font-family: "Osaka-mono", "MS Gothic", monospace;
}
.fontNumber{
  font-family: "Arial";
}
/* webfont */
.fontJapanese,
.Heading,
.hvr-more:before,
th {
  font-family: "Meiryo", "Hiragino Kaku Gothic ProN", sans-serif;
   -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
/*           font-smooth:    always; w3c*/
/*      -webkit-transform: rotate(0.001deg);
              transform: rotate(0.001deg);
*/
}
.fontEnglish {
  font-family: "Arial", "Century Gothic", sans-serif;
}


/* FontSize
--------------------------------------------------- */
.FontSizeXLarge,
.DefaultText.FontSizeXLarge{
  font-size: 200%;
}
.FontSizeLarge,
.DefaultText.FontSizeLarge{
  font-size: 150%;
}
.FontSizeLarger,
.DefaultText.FontSizeLarger{
  font-size: 125%;
}
.FontSizeNormal,
.DefaultText.FontSizeNormal{
  font-size: 100%;
}
.FontSizeSmaller,
.DefaultText.FontSizeSmaller{
  font-size: 87.5%;
}
.FontSizeSmall,
.DefaultText.FontSizeSmall{
  font-size: 75%;
}
.FontSizeXSmall,
.DefaultText.FontSizeXSmall{
  font-size: 62.5%;
}

/* FontWeight
--------------------------------------------------- */
.FontWeightNormal{
  font-weight: normal;
}
.FontWeightBold{
  font-weight: bold;
}

/* TextAlign
--------------------------------------------------- */
.TextAlignCenter{
  text-align: center;
}
.TextAlignLeft{
  text-align: left;
}
.TextAlignRight{
  text-align: right;
}
.TextAlignJustify{
  text-align: justify;
}
/* TextOverFlowNone
--------------------------------------------------- */
.TextOverFlowNone{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* NoWrap
--------------------------------------------------- */
.NoWrap{
  white-space: nowrap;
}


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   MessageBox                                     */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* MessageBox
--------------------------------------------------- */
.MessageBox{
  padding: 30px 0 50px;
  margin: 1em auto;
  width: 75%;
  text-align: center;
  background: rgba(255,255,255,0.5);
  border: 4px solid rgba(104,88,148,0.5);
  color: rgba(104,88,148,1);
  border-radius: 10px;
  position: relative;
}
    .MessageBox .Heading{
      font-size: 125%;
      margin: 0 0 1em;
      font-weight: bold;
    }
    .MessageBox .Heading .Icon{
      display: block;
      font-size: 400%;
      color: rgba(104,88,148,0.75);
      text-align: center;
    }
    .MessageBox .DefaultText{
      text-align: center;
      line-height: 1.3;
      font-size: 87.5%;
      margin: 0;
    }
    /* options */
    .MessageBox.Caution{
      color: #222;
      color: inherit;
      background: #f5f47a;
    }
    .MessageBox.Clear .Heading{
      color: #4584ed;
    }
    .MessageBox.Error .Heading{
      color: #dc4e1f;
    }
    
    
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .MessageBox{
          width: 100%;
        }
        
        /* + + + + + /レスポンシブ + + + + +  */
    
    

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   GoPageTop                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* GoPageTop
--------------------------------------------------- */
.GoPageTop{
  font-size: 65%;
  line-height: 1;
  vertical-align: bottom;
  margin-top:1em;
  margin-bottom:2em;
  
}
.GoPageTop a{
  margin:0 auto;
  width:216px;
  display: block;
}

.GoPageTop a img{
  width:221px;
}



/* GoPageTop
--------------------------------------------------- 
.GoPageTop{
  font-size: 65%;
  display: inline-block;
  line-height: 1;
  vertical-align: bottom;
  margin-left: -3.5em;
}
.GoPageTop *{
  line-height: 1;
  vertical-align: bottom;
}
    .GoPageTop p{
      display: inline-block;
    }
    .GoPageTop p a{
      width:  7em;
      height: 7em;
      text-align: center;
      vertical-align: middle;
      display: table-cell;
      position: relative;
      font-weight: normal;
      border-radius: 100%;
      -webkit-transition: all .2s;
              transition: all .2s;
      width:  6em;
      height: 6em;
    }
    .GoPageTop p a{
      background:none;
      border:3px solid #fff;
    }
    .GoPageTop p a *{
      color: #fff;
    }
    .GoPageTop p a .Label{
      position: relative;
      top: 1em;
      top: 1.2em;
      font-size: 112.5%;
    }
    .GoPageTop p a .Icon{
      font-size: 150%;
      width: 100%;
      display: block;
      text-align: center;
      position: absolute;
      top: -0em;
      -webkit-transition: all .2s;
              transition: all .2s;
      top:5px;
      top:12px;
    }
    
    
    .GoPageTop p a:hover{
      
    }
    .GoPageTop p a:hover .Label:before{
      top: -0.3em;
    }
    .GoPageTop p a:hover img{
      opacity:1!important;
    }
    */
    

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Button 等                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


/* 汎用ボタン ※詳細な書式はSknTplTextButtonで定義
--------------------------------------------------- */
.Button,
.Button *{
  vertical-align: middle;
}
/* 汎用ボタン（シンプルver）
--------------------------------------------------- */
.SimpleButton,
.SimpleButton *{
  vertical-align: middle;
}
.SimpleButton{
  border: 1px solid;
  border-radius: 3em;
  text-align: center;
  display: inline-block;
}
.SimpleButton .Label{
  width: auto;
  line-height: 3em;
  padding: 0 2em;
}

/*  Localボタン
--------------------------------------------------- */
.Local.Button{
  color: #333;
  background: rgba(34,34,34,0.875);
  border: none;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.3);
  border-radius: 0.2em;

  border:1px solid #aaa;
  background: rgba(255,255,255,0.7);
  background-image: -webkit-repeating-linear-gradient(-90deg, rgba(90,181,169,0.1), rgba(90,181,169,0.1) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  background-image:         repeating-linear-gradient(-90deg, rgba(90,181,169,0.1), rgba(90,181,169,0.1) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);
}
.Local.Button:hover{
  background: rgba(34,34,34,1);
  color:#fff;
}
.Local.Button:hover *{
  color: #fff;
}
.Local.Button span::before{
  color:#897863;

}
.Local.Button:hover span::before{
  color:#fff;

}

/* TextButton
--------------------------------------------------- */
.TextButton {
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'Meiryo', Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: inline-block;
  color: #fff;
  background: #383c94;
  line-height: 1;
  text-align: center;
  margin: 0.2em;
}
    .TextButton .Label{
      display: inline-block;
      padding: 0.5em 2em;
      letter-spacing: -0.05em;
    }
    
    a.TextButton:before{
      content: "";
    }
    a.TextButton{
      position: relative;
    }
    
        a:hover .TextButton .Label:before,
        a .TextButton:hover .Label:before{
          -webkit-animation: blink .5s ease -2s infinite alternate;
             -moz-animation: blink .5s ease -2s infinite alternate;
              -ms-animation: blink .5s ease -2s infinite alternate;
        }
    
    /* Small size */
    .TextButton.SmallButton{
      font-size: 87.5%;
      margin: 0.1em;
    }
        .TextButton.SmallButton .Label{
          padding: 0.4em 0.6em;
        }
        
        
                /* + + + + + レスポンシブ + + + + +  */
                body.rsbp-under-bp2 .TextButton .Label{
                  padding: 0.5em 1em;
                }
                /* + + + + + レスポンシブ + + + + +  */


/*詳細*/

/* TextButton
--------------------------------------------------- */
.ShopIndex .TextButton {
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'Meiryo', Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: inline-block;
  color: #fff;
  background: #383c94;
  line-height: 1;
  text-align: center;
  margin: 0.2em;
  
  margin: 0.2em auto;
  width: 96%;
}
    .ShopIndex .TextButton .Label{
      display: inline-block;
      padding: 0.5em 2em;
      letter-spacing: -0.05em;
      
      padding: 0.5em 0;
      display: block;
    }



/* menu-trigger (ハンバーガーメニュー)
--------------------------------------------------- */
.MenuTrigger{
}
    .menu-trigger,
    .menu-trigger p,
    .menu-trigger span {
      display: inline-block;
      transition: all .4s;
    }
    .menu-trigger {
      padding: 0.5em;
      position: relative;
      height: 80px;
    }
    .menu-trigger .Icon {
      position: relative;
      width:  3.5em;
      height: 3em;
    }
    .menu-trigger .Icon span.Shape {
      position: absolute;
      left: 0;
      width: 100%;
      height: 4px;
      background-color: #333;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(1) {
      top: 0.25em;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(2) {
      top: 1.5em;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(3) {
      top: 2.75em;
    }
    .menu-trigger .Label {
/*      position: absolute;
      width: 100%;
      font-size: 125%;
      bottom: 50%;
      bottom: -webkit-calc(50% - 0.65em);
      bottom:         calc(50% - 0.65em);
      right: 100%;
      display: block;
      text-align: center;
*/
/*      bottom: -23px;
      right: -webkit-calc(50% - 1.75em);
      right:         calc(50% - 1.75em);
*/
    }

    .menu-trigger .Label {
      position: absolute;
      width: 100%;
      font-size: 110%;
      /*bottom: -36%;*/
      bottom: -5px;
      right: 0;
      display: block;
      text-align: center;
      margin-top:0;
    }



    /* Active */
    .menu-trigger.Active{
      background: rgba(0,0,0,0);
    }
    .menu-trigger.Active .Label{
    }
    .menu-trigger.Active .Icon span.Shape{
      background-color: #333;
    }
    .menu-trigger.Active .Icon span.Shape:nth-of-type(1) {
      -webkit-transform: translateY(1.25em) rotate(-315deg);
              transform: translateY(1.25em) rotate(-315deg);
    }
    .menu-trigger.Active .Icon span.Shape:nth-of-type(2) {
      opacity: 0;
    }
    .menu-trigger.Active .Icon span.Shape:nth-of-type(3) {
      -webkit-transform: translateY(-1.25em) rotate(315deg);
              transform: translateY(-1.25em) rotate(315deg);
    }

/* BreadCrumb（パンくず）
--------------------------------------------------- */
.BreadCrumb {
  margin: 0 auto;
  padding: 0;
  background: #000;
  background:none;
  font-size: 75%;
  line-height: 3em;
  z-index: 10;
  position: relative;
}
    .BreadCrumb p{
      padding-left: 15px;
      color: rgba(255,255,255,1);
      color:#333;
      margin-top: 5px;
    }
    .BreadCrumb p *{
    }
    .BreadCrumb p .Partition{
      color: rgba(255,255,255,0.375);
      color:#333;
      padding: 0 0.5em;
      display: inline;
    }
    /* Unit */
    .BreadCrumb p .Unit{
      text-align: left;
    }
    .BreadCrumb p a:hover{
      text-decoration: underline;
    }
    .BreadCrumb p .Unit.Last{
      font-weight: bold;
      font-weight: normal;
      color: #fff;
      color: #333;      
    }
    .BreadCrumb p .Unit.Home span.Icon{
      padding-right:0.3em;
      color:#333;
    }
    /* + + + + + レスポンシブ + + + + +  */
    body.rsbp-under-bp3 .BreadCrumb {
      display: none;
    }
    /* + + + + + レスポンシブ + + + + +  */


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   effect                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* 角丸
--------------------------------------------------- */
.Rounded{
  border-radius: 1em;
  overflow: hidden;
}

/* 影付き
--------------------------------------------------- */
.Shadow{
  box-shadow: 0.25em 0.25em 0 rgba(45,90,190,0.25);
}

/* blur エフェクト
--------------------------------------------------- */
.Blur{
  -webkit-filter: blur(5px);
          filter: blur(5px);
}




/* トランジション対象
--------------------------------------------------- */
    #HeaderDivision a{
      -webkit-transition: color .2s,  background-color .2s;
              transition: color .2s,  background-color .2s;
    }
    #HeaderDivision .MainMenuBlock .MainMenu li,
    #HeaderDivision .MainMenuBlock .BlockFooter ,
    #HeaderDivision .MainMenuBlock .BlockFooter a{
      -webkit-transition: all .2s;
              transition: all .2s;
    }
    /*
    #ContentsDivision .ImageItem,
    #ContentsDivision .TextItem,
    #ContentsDivision .Image,
    #ContentsDivision .Heading,
    #ContentsDivision a,
    #ContentsDivision a::before{
      -webkit-transition: all .2s;
              transition: all .2s;
    }
    */
    /* ページ幅 
    #ContentsDivision .PageWidthSetter{
      -webkit-transition: max-width .2s, padding .2s;
              transition: max-width .2s, padding .2s;
    }
    */

/* 各種hover効果
--------------------------------------------------- */



    /* hoverエフェクト共通 */
    [class^="hvr-"],
    [class*=" hvr-"] {
      -webkit-transition: all .2s;
              transition: all .2s;
    }
    
    /* default */
    .hvr-default{
    }
        .hvr-default:hover{
          background: #222;
          /*background: #3F1111;*/
          color: #fff;
        }

    .hvr-default.TypeC1{
      background: rgba(255,255,255,0.15);
    }
        .hvr-default.TypeC1:hover{
          background: #222;
          color: #fff;
        }



    /* brightness */
    .hvr-brightness-up{
    }
        .hvr-brightness-up:hover{
          -webkit-filter: brightness(1.1);
                  filter: brightness(1.1);
        }
        .hvr-brightness-down{
        }
        .hvr-brightness-down:hover{
          -webkit-filter: brightness(0.9);
                  filter: brightness(0.9);
        }
    
    /* outline */
    .hvr-outline{
      outline: 0px solid #f00;
      -webkit-transition: all .1s;
              transition: all .1s;
    }
        .hvr-outline:hover{
          outline: 5px solid #f00;
          z-index: 15;
        }
        .hvr-outline:hover .Icon:before{
          -webkit-transform: scale(1.25);
                  transform: scale(1.25);
        }
    
    
    /* zoom */
    .hvr-zoom{
      z-index: 10;
      display: inline-block;
    }
        .hvr-zoom:hover{
          position: relative;
          z-index: 15;
          -webkit-transform: scale(1.25);
                  transform: scale(1.25);
        }
    /* more */
    .hvr-more{
      position: relative;
    }
        .hvr-more:before{
          -webkit-box-sizing: border-box;
                  box-sizing: border-box;
          -webkit-transition: all .5s;
                  transition: all .5s;
          content: attr(title);
          white-space: nowrap;
          display: block;
          position: absolute;
          bottom: 30px;
          left:   20px;
          font-size: 112.5%;
          font-weight: 600;
          line-height: 1.125em;
          color: #fff;
          z-index: 20;
          text-align: center;
          vertical-align: middle;
          opacity: 0;
        }
        .hvr-more:hover:before{
          left:   50px;
          opacity: .9;
        }
                /* アイコン */
                .hvr-more .Icon{
                  color: #fff;
                  position: absolute;
                  bottom: 30px;
                  left:   30px;
                  z-index: 21;
                  font-size: 100%;
                  line-height: 1.125em;
                  -webkit-transform: scale(2);
                          transform: scale(2);
                  opacity: 0.0;
                  vertical-align: bottom;
                }
                .hvr-more:hover .Icon{
                  opacity: 1;
                }

    /* 画像へのリンクなら「＋」を表示 */
    a[href*=".jpg"]::before{
      content: "＋";
      font-size: 150%;
      line-height: 1.5em;
      width: 1.5em;
      background: #0e3382;
      color: #fff;
      position: absolute;
      text-align: center;
      vertical-align: middle;
      z-index: 10;
      display: inline-block;
      bottom: 5px;
      right:  -5px;
      opacity: 0;
    }
    a[href*=".jpg"]:hover::before{
      opacity: 1;
      right:  5px;
    }

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   link                                           */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* anchor
--------------------------------------------------- */
a{
  color: inherit;
  text-decoration: none;
}
a:link {
}
a:visited {
}
a:active{
}
a:hover {
  /*text-decoration: underline;*/
}



/* image link
--------------------------------------------------- */
a img{
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
a:hover img{
  opacity: 0.75;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

a[href*=".jpg"]{
  position: relative;
}


/*サイト内検索*/
.Search-head{
  margin-left:5px; 
  text-align: left;
}
.Search-head .SearchContentsMenu{
  width:250px;
}
.Search-head #ContentC{
  display:none;
}
.Search-head #ContentSpc{
  display:none;
}
.Search-head #ContentQ{
  width:190px; 
  margin:0; 
  height:20px;  
  background:#ffffff; 
  border:none;
}
.Search-head #ContentSpq{
  width:190px; 
  margin:0; 
  height:20px;  
  background:#ffffff; 
  border:none;
}
.Search-head .submit{
  display:inline-block; 
  width:25px; 
  height:25px; 
  overflow:hidden; 
  position: absolute; 
  margin:0;
}
.Search-head input[type="submit"]{
  padding:10px 0 0 50px;
  margin:-2px 0 0 -2px;
  background: url(../img/common/button/button_search_b.png) no-repeat 1px 1px;
  background-size:21px auto;
  cursor: pointer;
}
.Search-head .search-box{
  width:230px;
}
.Search-head #ContentSearchForm{
  width:100%;
}
.Search-head{}

    /* + + + + + レスポンシブ + + + + +  */
    body.SpView .Search-head input[type="submit"]{
      padding:10px 0 0 50px;
      margin:-2px 0 0 -2px;
      background: url(../img/common/button/button_search_b.png) no-repeat 1px 1px;
      background-size:21px auto;
      cursor: pointer;
    }

/*スマートフォンサイト内検索*/
.SpArea01{
	border-top: 1px solid #b5b5b5;
/*	border-bottom: 1px solid #5b73a8;*/
	z-index: 10998;
	clear: both;
    background: url(../img/common/decoration/image-bg-menu-header.png) repeat-x  bottom center ;
}
.SpArea01 .LayoutBlock{}
.SpArea01 .LayoutBlock .BlockContents{position: relative; text-align:center;}
.SpArea01 .LayoutBlock .BlockContents .Search-head{display:inline-block;}
.SpArea01 .LayoutBlock .BlockContents .Search-head .SearchContentsMenu{width:220px;}
.SpArea01 .LayoutBlock .BlockContents .Search-head .search-box{width:200px;}
.SpArea01 .LayoutBlock .BlockContents .Search-head #ContentQ{width:160px;}
.SpArea01 .LayoutBlock .BlockContents .Search-head .submit{}

.SpArea01 .LayoutBlock .BlockContents .Search-head input[type="submit"]{}

.SpArea01 .LayoutBlock .GlovalLink{width:60px; display:inline-block;}






/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   TabMenu Setting                                */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


/* TabMenu （Type1:装飾付き）
--------------------------------------------------- */
.TabMenu{
  padding: 30px;
  background: rgba(90,85,85,0.75);
}

    /* - - list - - */
    .TabMenu ul{
      list-style: none;
    }
    .TabMenu ul > li{
      display: block;
      float: left;
      /* width: 20%;  幅はcolumnで指定 */
    }
    .TabMenu ul > li a{
      display: block;
      padding: 1.25em 0 1em;
      background: #fff;
      text-align: center;
      border: 1px solid #e0e0e0;
    }
    .TabMenu ul > li .Label{
    }
    .TabMenu ul > li .Label .Main{
      display: block;
      font-size: 100%;
      line-height: 2;
      letter-spacing: 0.125em;
      font-weight: bold;
    }
    .TabMenu ul > li .Label .Sub{
      display: block;
      font-size: 62.5%;
      line-height: 1.5;
      color: #aaa;
      letter-spacing: 0.125em
    }
    /* hover */
    .TabMenu ul > li:not(.Active) a:hover{
      cursor: pointer;
      background: #eee;
    }
    .TabMenu ul > li:not(.Active) a:hover .Sub{
      color: #685894;
    }
    /* Invalid */
    .TabMenu ul > li.Invalid{
      display: none!important;
    }
    .TabMenu ul > li a.Invalid{
      /*opacity: 0.1!important;*/
      /*cursor: default!important;*/
    }
    .TabMenu ul > li a.Invalid:hover{
      cursor: default!important;
      background: #fff!important;
    }
    .TabMenu ul > li a.Invalid:hover .Sub{
      color: #aaa;
    }


    /* Active */
    .TabMenu ul > li.Active{
    }
    .TabMenu ul > li.Active a{
      color: #fff;
      background: #222;
      border-color: #f90;
    }
    .TabMenu ul > li.Active .Sub{
      color: #f90;
    }

.MovieMenuBox{
  position:relative;
  background: rgba(0,0,0,0.05);
}
.MovieMenuBox::after{
  content: "";
  position: absolute;
  height: 1px;
  background: #383c94;
  width:100%;
  visibility:visible;
}



/* TabMenu （Type1:装飾付き）
--------------------------------------------------- */
.TabMenu{
  list-style: none;
  width: 100%;
  padding: 30px 10px 2px;
  background:none;
}


    /* - - list - - */
    .TabMenu li{
      width: 25%;
      float: left;
      padding: 2px;
    }
    .TabMenu li a{
      display: block;
      padding: 0.75em 0.2em;
      text-align: center;
      background: linear-gradient( to right, rgba(136,0,86,0.3), rgba(136, 0, 86, 0.2));
      text-align: center;
      color: inherit;
      text-decoration: none;
      transition: 0.2s ease 0s;
      font-size: 90%;
      position: relative;
      top: 0;
    }
    /* hover */
    .TabMenu li a:hover{
      top: -7px;
      box-shadow: 0 -2px 0 #383c94 inset;
    }
    
    /* Invalid */


    /* Active */
    .TabMenu li a.Active{
      color: #fff;
      background: #383c94;
      top: -7px;
    }
    .TabMenu li a.Active:after{
      content: "";
      position: absolute;
      bottom: -8px;
      left: 50%;
      margin-left: -4px;
      display: block;
      width: 0px;
      height: 0px;
      border-style: solid;
      border-width: 8px 8px 0 8px;
      border-color: #383c94 transparent transparent transparent;
    }
    
    /* TabBoxes */
    .TabBoxes{
      padding: 2px;
    }
    .TabBoxes > div{
    }
    .TabBoxes #tabBox2,
    .TabBoxes #tabBox3,
    .TabBoxes #tabBox4{
      display:none;
    }


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    pagination                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* pagination
--------------------------------------------------- */
.pagination{
  text-align: center;
  background: rgba(0,0,0,0.125);
  background:none;
  padding: 0.5em 0;
  margin:  1em 0;
  font-size: 100%;
}
    .pagination a{
      background-image: none;
      text-decoration: none!important;
    }
    .pagination .number a,
    .pagination .number a:hover,
    .pagination .prev   a,
    .pagination .prev   a:hover,
    .pagination .next   a,
    .pagination .next   a:hover,
    .pagination .start  a,
    .pagination .start  a:hover,
    .pagination .end    a,
    .pagination .end    a:hover,
    .pagination .disabled,
    .pagination .current{
      font-family: 'Arial';
      display: inline-block;
      text-align: center;
      vertical-align: middle;
      text-decoration: none;
      line-height: 2.5em;
      min-width: 2.5em;
      padding: 0;
      background: #fff;
      color: #aaa;
      border: 2px solid #cccccc;
      margin: 2px;
    }
    .pagination .number a,
    .pagination .start  a,
    .pagination .end    a,
    .pagination .current{
    }
    .pagination         a:before{
      line-height: inherit;
    }
    .pagination .number a:hover{
      color: #fff;
      background-color: #333;
      border-color: #4d4d4d;
      text-decoration: none;
    }
    .pagination .current{
      color: #fff;
      background: #897863;
      border: 2px solid #897863;
    }
    .pagination .prev   a,
    .pagination .prev   a:hover,
    .pagination .next   a,
    .pagination .next   a:hover,
    .pagination .disabled{
      padding: 0px 5px;
    }
    .pagination .start  a:hover,
    .pagination .end    a:hover,
    .pagination .prev   a:hover,
    .pagination .next   a:hover{
      color: #fff;
      background-color: #222;
      border-color: #222;
    }
    .pagination .disabled{
      color: #aaa;
      background: #eee;
      border-color: #eee;
    }
    /* + + + + + レスポンシブ + + + + +  */
    body.rsbp-under-bp2 .pagination{
      font-size: 12px;
    }
    /* + + + + + /レスポンシブ + + + + +  */

/*  CategoryTopボタン
--------------------------------------------------- */
.CategoryTop.Button{
  color: #fff;
  background: rgba(34,34,34,0.875);
  border: none;
  
  color: #333;
  background: rgba(34,34,34,0.875);
  border: none;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.3);
  border-radius: 0.2em;

  border:1px solid #aaa;
  background: rgba(255,255,255,0.7);
  background-image: -webkit-repeating-linear-gradient(-90deg, rgba(90,181,169,0.1), rgba(90,181,169,0.1) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  background-image:         repeating-linear-gradient(-90deg, rgba(90,181,169,0.1), rgba(90,181,169,0.1) 3px, rgba(250,250,250,0.5) 3px, rgba(250,250,250,0.5) 6px);
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.15);

}
.CategoryTop.Button:hover{
  background: rgba(34,34,34,1);
}
.CategoryTop.Button:hover *{
  color: #fff;
}
.CategoryTop.Button span::before{
  color:#897863;
}
.CategoryTop.Button:hover span::before{
  color:#fff;
}

    /* + + + + + レスポンシブ + + + + +  */
    body.SpView .SknTplTextButton .Button .Label {
      display: inline-block;
      padding: 0 1em 0 0.5em;
    }
    
    body.SpView .SknTplTextButton .Button .Label em {
      margin: 0 0.2em;
      vertical-align:top;
    }
    
    /* + + + + + /レスポンシブ + + + + +  */




/*  ContentsNavi（次のページ・前のページ ボタン）
--------------------------------------------------- */
.ContentsNavi.Button{
  border-width: 1px; 
}
    /* Button common */
    .ContentsNavi.Button{
      position: absolute;
      top: 0%;
      top: calc(50% - 2.75em);
      top: calc(50% - 2.30em);
      font-size: 80%;
    }
    .ContentsNavi.Button:hover{
      padding-right: 0;
      padding-left:  0;
    }
    .ContentsNavi.Button .Label{
      padding: 0 0.75em;
    }
    .ContentsNavi.Button .Icon{
      border: none;
    }
    .ContentsNavi.Button .Icon::before{
      line-height: inherit;
    }
    /* PrevButton */
    .ContentsNavi.Button.Prev{
      left: 0px;
    }
    .ContentsNavi.Button.Prev:hover{
      left: -5px;
    }
    .ContentsNavi.Button.Prev .Label{
      padding-left: 0;
    }
    /* NextButton */
    .ContentsNavi.Button.Next{
      right: 0px;
    }
    .ContentsNavi.Button.Next:hover{
      right: -5px;
    }
    .ContentsNavi.Button.Next .Label{
      padding-right: 0;
    }

    /* + + + + + レスポンシブ + + + + +  */
    body.rsbp-under-bp2 .ContentsNavi.Button,
    body.rsbp-under-bp2 .ContentsNavi.Button:hover{
      padding: 1em 0;
    }
    body.rsbp-under-bp2 .ContentsNavi.Button .Label{
      display: none;
    }
    /* + + + + + /レスポンシブ + + + + +  */



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Column Setting                                 */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* ColumnGroup
--------------------------------------------------- */
.ColumnGroup{
  text-align: center;
}
    /* - - column common - -  */
    .ColumnGroup > .Column{
      width: 100%;
      margin: 0 auto 1.5em;
      text-align: left;
      text-align: justify;
    }
    .ColumnGroup > .Column > .inner{
      padding: 10px;
    }
    
    /* 要素数をクラス名に持たせて自動配置 ※ulにクラス名をつけて使用  */
    /* ColumnGroup（数字）elements が横並び数                         */
    /* FixedNumber をつけた場合は数を固定。それ以外は幅に応じて変化   */
    
    /* - - two columns - - */
    body                             .ColumnGroup4elements >             .Column:nth-child(1n),
    body                             .ColumnGroup3elements >             .Column:nth-child(1n),
    body.rsbp-over-bp3               .ColumnGroup2elements >             .Column:nth-child(1n),
    body:not([class*="rsbp"])        .ColumnGroup2elements >             .Column:nth-child(1n),
    body[class*="rsbp"]              .ColumnGroup2elements.FixedNumber > .Column:nth-child(1n) {
      width: 50%;
      float: left;
      /*2列*/
      width: 49.5%;
      width: 49.3%;
      /*width: 48.9%;*/
      float: none;
      display: inline-block;
      vertical-align: top;
      
    }
    
    
    /* - - three columns - - */
    body                             .ColumnGroup6elements >             .Column:nth-child(1n),
    body                             .ColumnGroup5elements >             .Column:nth-child(1n),
    body.rsbp-over-bp3               .ColumnGroup4elements >             .Column:nth-child(1n),
    body.rsbp-over-bp2               .ColumnGroup3elements >             .Column:nth-child(1n),
    body:not([class*="rsbp"])        .ColumnGroup3elements >             .Column:nth-child(1n),
    body[class*="rsbp"]              .ColumnGroup3elements.FixedNumber > .Column:nth-child(1n) {
      width: 33.3%;
      float: left;
      margin-bottom: 0;
    }

    /* - - four columns - - */
    body.rsbp-over-bp3               .ColumnGroup6elements >             .Column:nth-child(1n),
    body.rsbp-over-bp3               .ColumnGroup5elements >             .Column:nth-child(1n),
    body.rsbp-over-bp2               .ColumnGroup4elements >             .Column:nth-child(1n),
    body:not([class*="rsbp"])        .ColumnGroup4elements >             .Column:nth-child(1n),
    body[class*="rsbp"]              .ColumnGroup4elements.FixedNumber > .Column:nth-child(1n) {
      width: 25%;
      float: left;
      margin-bottom: 0;
    }
    
    /* - - five columns - - */
    /*body.rsbp-over-bp2               .ColumnGroup6elements >             .Column:nth-child(1n),*/
    body.rsbp-over-bp2               .ColumnGroup5elements >             .Column:nth-child(1n),
    body:not([class*="rsbp"])        .ColumnGroup5elements >             .Column:nth-child(1n),
    body[class*="rsbp"]              .ColumnGroup5elements.FixedNumber > .Column:nth-child(1n) {
      width: 20%;
      float: left;
      margin-bottom: 0;
    }
    
    /* - - six columns - - */
    body.rsbp-over-bp2               .ColumnGroup6elements >             .Column:nth-child(1n),
    body.rsbp-over-bp1               .ColumnGroup6elements >             .Column:nth-child(1n),
    body:not([class*="rsbp"])        .ColumnGroup6elements >             .Column:nth-child(1n),
    body[class*="rsbp"]              .ColumnGroup6elements.FixedNumber > .Column:nth-child(1n) {
      width: 16.6%;
      float: left;
      margin-bottom: 0;
    }
    
    /* - - seven columns - - */
    body.rsbp-over-bp2               .ColumnGroup7elements >             .Column:nth-child(1n),
    body.rsbp-over-bp1               .ColumnGroup7elements >             .Column:nth-child(1n),
    body:not([class*="rsbp"])        .ColumnGroup7elements >             .Column:nth-child(1n),
    body[class*="rsbp"]              .ColumnGroup7elements.FixedNumber > .Column:nth-child(1n) {
      width: 14.25%;
      float: left;
      margin-bottom: 0;
    }
    


        /*３コラムを1列に*/
        .Sp1Column .ColumnGroup3elements > .Column:nth-child(n) .Heading.Type5 {
            font-size: 112.5%;
            margin: 0em 0 1em;
        }

        /*画像（中）スクロール*/
        .SknTplImageParagraph.WithMiddle .ImageItem .Image img {
            width: auto;
        }
        
        /* + + + + + レスポンシブ + + + + +  */
        

        body.rsbp-under-bp2 .SknTplImageParagraph .TextItem{
          margin:0 5px;
        }

        body.rsbp-under-bp2 .ColumnGroup > .Column > .inner{
          /*padding: 5px;*/
        }
        
        
        body.rsbp-under-bp2 .ColumnGroup4elements.FixedNumber > .Column:nth-child(n),
        body.rsbp-under-bp2 .ColumnGroup4elements .ColumnX:nth-child(n){
          width: 48%;
          float: none;
          display:inline-block;
        }
        body.rsbp-under-bp2 .SknTplThumbnailList .ThumbnailList.Type2 > li > .inner{
          padding:10px;
          padding:0.4%;
        }
        body.rsbp-under-bp3 .ColumnGroup4elements.FixedNumber > .Column:nth-child(n),
        body.rsbp-under-bp3 .ColumnGroup4elements .ColumnX:nth-child(n){
          width: 48%;
          float: none;
          display:inline-block;
        }
        body.rsbp-under-bp3 .SknTplThumbnailList .ThumbnailList.Type2 > li > .inner{
          padding:2px;
        }
        /*３コラムを1列に*/
        body.rsbp-under-bp3 .Sp1Column .ColumnGroup3elements > .Column:nth-child(n){
          width: 100%;
          float:none;
          margin-bottom:1em;
        }
        
        /*4段ボックス*/
        body.rsbp-under-bp3  .LineColumn .AutoColumnGroup .Column:nth-child(1n){
          width: 100%;
          float:none;
          margin-bottom:1em;
        }
        
        /* + + + + + /レスポンシブ + + + + +  */



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Icon Setting                                   */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


/* 特殊なアイコン用のスタイル */

.icon-file-pdf::before,
.icon-file-excel::before,
.icon-file-word::before,
.icon-file-image::before,
.icon-file-archive::before{
  width: 1.25em;
  line-height: 1.25em;
  /*
          -webkit-transform: scale(1.25);
                  transform: scale(1.25);
  */
}


    /*ファイルアイコンカラー*/
    .icon-file-pdf::before {
      color:      #fff!important;
      background: #bb0708!important;
    }
    .icon-file-excel::before {
      color:      #fff!important;
      background: #02723b!important;
    }
    .icon-file-word::before {
      color:      #fff!important;
      background: #2b5797!important;
    }
    .icon-file-image::before {
      color:      #fff!important;
      background: #222!important;
    }
    .icon-file-archive::before {
      color:      #fff!important;
      background: #222063!important;
    }


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Other Setting                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* Scrollable 横スクロール
--------------------------------------------------- */
.Scrollable {
  overflow: auto;
  position: relative;
}
    .Scrollable > table {
      width: 800px; /* ここはスクロール対象の最大幅を入れる */
      /*width: 100%;*/
      margin-bottom: 0!important;
    }
    .Scrollable th{
      white-space: nowrap;
    }
    .Scrollable::-webkit-scrollbar{
      height: 1em;
      margin-top: 5px;
    }
    .Scrollable::-webkit-scrollbar-track{
      background: rgba(0,0,0,0.25);
    }
    .Scrollable::-webkit-scrollbar-thumb {
      background: #03c;
    }
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .Scrollable > table {
          width: 800px; /* ここはスクロール対象の最大幅を入れる */
         }

/* Scrollable 画像 横スクロール
--------------------------------------------------- */
  .Scrollable.Image {
    overflow: visible;
  }

        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .Scrollable.Image{
          overflow: auto;
          position: relative;
          margin:0 -2.5%;
          padding-left:2.5%;
          height:90vw;
          border:2px solid blue;
        }
        body.rsbp-under-bp3 .Scrollable.Image > img {
          width: auto!important; /* ここはスクロール対象の最大幅を入れる */
          margin-bottom: 0!important;
          max-width:850px;

       }


        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3.AfterServiceProductsDetail .Scrollable.Image{
          margin:0 -2.5%;
          padding-left:2.5%;
          border:2px solid blue;
        }
        body.rsbp-under-bp3.AfterServiceProductsDetail .Scrollable.Image > img {
          width: auto!important; /* ここはスクロール対象の最大幅を入れる */
          margin-bottom: 0!important;
          max-width:700px;
       }
       /*画像（中）スクロール*/
        body.rsbp-under-bp3 .SknTplImageParagraph.WithMiddle .Scrollable.Image > img {
            width: auto !important;
            margin-bottom: 0 !important;
            max-width: 500px;

        }


/*検索ボタン*/
.Search-bottom .submit {
    display: inline-block;
/*    width: 25px;
    height: 25px;
    overflow: hidden;
    position: absolute;
    margin: 0;*/
}
.Search-bottom #ContentC{
  display: none;
}
.Search-bottom.SearchPage #ContentC {
  display: inline-block;
}


.Search-bottom input[type="submit"] {
/*    padding: 10px 0 0 50px;
  margin: -2px 0 0 -2px;
  background: url(../img/common/button/button_search.png) no-repeat 1px 1px;*/
  background:#fff;
  cursor: pointer;
  padding:0 1.5em;
  border: none;
  letter-spacing:0.5em;
  text-indent:0.25em;
  box-shadow: 0 0.05em 0.05em rgba(0,0,0,0.5);
  border:1px solid #ccc;
}
.Search-bottom input[type="submit"]:hover{
  background:#333;
  color:#fff;
}
.Search-bottom span.icon-search-circled::before{
  margin-right:0.2em;
}


        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .Search-bottom .submit {
          width:100%;
          margin:0.5em auto;
        }
        body.rsbp-under-bp3 .SearchButton{
          width:100%;
          padding:0.2em;
        }      
        body.rsbp-under-bp3  .Search-bottom{
          margin: 0 0 0 0;
        }
        body.rsbp-under-bp3 .Search-bottom span, 
        body.rsbp-under-bp3 .Search-bottom span.Heading.Type5 {
          display: inline-block;
          margin: 0.5em 0 0.5em 0;
          width:100%;
          font-size:110%;
        }
        body.rsbp-under-bp3 .Search-bottom #ContentQ{
          width:100%;
          font-size:110%;
          padding:0.2em;
        }
        
        /* + + + + + /レスポンシブ + + + + +  */



/* CalendarBox
--------------------------------------------------- */
.CalendarBlock{
  text-align:center;
}
.CalendarBox {
  /*background: #f1f1f1;
  width:40%;*/
  display:inline-block;
}
    .CalendarBox .inner{
      padding: 10px 15px 20px;
    }
    .CalendarBox .Heading{
      color: #fff;
      text-align: center;
      font-weight: normal;
    }
        .CalendarBox .Heading .Main{
          font-size: 180%;
        }
        .CalendarBox .Heading .Sub{
          margin-right: 0.5em;
          
        }
    /* CalendarTable */
    .CalendarBox .CalendarTable{
      width: 50%;
      max-width: 275px;
      margin: 0 auto;
      border-collapse: separate;
      border-spacing: 3px;
    }
        .CalendarBox .CalendarTable th,
        .CalendarBox .CalendarTable td{
          text-align: center;
          vertical-align: middle;
          width: 14.285%;
          padding: 0;
          /*background: #fff;*/
        }
        .CalendarBox .CalendarTable th{
          font-size: 75%;
          font-weight: normal;
        }
            .CalendarBox .CalendarTable td .Day{
              border-radius: 5px;
              padding: 0.4em 0;
              width: 2em;
              display: inline-block;
              text-align: center;
              background: #eee
            }
            .CalendarBox .CalendarTable td .ClosingDay{
              color: #fff;
              background: #383c94;
            }
            .CalendarBox .CalendarTable td .EventDay{
              color: #fff;
              background: #0867B7;
            }
            .CalendarBox .CalendarTable td .Day a{
              color: #fff;
              text-decoration: underline;
              display:block;
            }
    
    
    
    
    
/*YOUTUBE動画再生*/
.YoutubeItem{
  text-align:center;
  max-width:600px;
  margin:10px auto;
}
        /* + + + + + レスポンシブ + + + + +  */
        body.rsbp-under-bp3 .YoutubeItem{
          
        }
        
        body.rsbp-under-bp3 .YoutubeItem iframe {

        }
            body.rsbp-under-bp3 .ThumbnailList.VideoList li .Image {
              position:relative;
              height: 250px;
            }

                body.rsbp-under-bp3 .ThumbnailList.VideoList li > .inner .ImageItem .Image iframe {
                  position: absolute;
                  top: 0;
                  right: 0;
                  width: 100% !important;
                  height: 100% !important;
                }



/*SknTplDecoratedBox TypeM*/
.SknTplDecoratedBox.TypeM > .DecoratedBox{
  background: linear-gradient( to bottom, rgba(255,196,214,0.5), rgba(255,196,214,0.2));
  background-attachment: scroll;
  background-attachment: fixed;
  border: 1px solid rgba(255,196,214,0.5);
  margin: 10px;
  padding: 25px;
}
.SknTplDecoratedBox.TypeM > .DecoratedBox .Heading.Type2{
  margin: 1em 0 0.75em;
}
.SknTplDecoratedBox.TypeM > .DecoratedBox > .inner{
  padding:15px;
}



/* PagenationBox
--------------------------------------------------- */

.PagenationBox {
  margin: 1.5em 0;
}
    .PagenationBox p{
      font-size: 14px;
      font-family: "Arial";
      font-weight: bold;
      line-height: 1.1;
      text-align: center;
    }
        .PagenationBox p span.Unit{
          display: inline-block;
          margin: 0 2px;
          text-align: center;
        }
            .PagenationBox p span.Unit a,
            .PagenationBox p span.Unit .current,
            .PagenationBox p span.Unit .invalid{
              display: block;
              border: none;
              float: none;
              margin: 0px;
              padding: 11px 0px;
              width: 35px;
              
              color: #333;
              background: #fff;
              border: 2px solid #4d4d4d;
            }
            .PagenationBox p span.Unit a{
              text-decoration: none;
              cursor: pointer;
            }
            .PagenationBox p span.Unit a:hover{
              text-decoration: none;
              color: #001c58;
              border-color: #001c58;
            }
            .PagenationBox p span.Unit .current,
            .PagenationBox p span.Unit .current:hover{
              color: #fff;
              background: #001c58;
              border-color: #001c58;
            }
            .PagenationBox p span.Unit .invalid{
              opacity: 0.25;
            }
    /* adjust icon */
    .PagenationBox span.Unit [class^="icon-"]:before,
    .PagenationBox span.Unit [class*=" icon-"]:before{
      margin: 0;
      position: relative;
      left: 0.25em;
    }
    .PagenationBox span.Unit [class^="icon-"] span,
    .PagenationBox span.Unit [class*=" icon-"] span{
      visibility: hidden;
    }
/* DecoratedBoxType1
--------------------------------------------------- */
.DecoratedBoxType1 {
  background: url(../img/common/decoration/dotline_gray_8px.png);
  padding: 10px;
}
    .DecoratedBoxType1 > .inner{
      background: #fff;
      padding: 30px;
    }
        .DecoratedBoxType1 > .inner > *{
          margin: 0;
        }
/* DecoratedBoxType1
--------------------------------------------------- */
.DecoratedBoxType2 {
}



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    FollowMenu Style                              */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* setting
--------------------------------------------------- 
body.rsbp-over-bp3 .FollowMenuContainer{
  position: absolute;
}*/
@media screen and (max-width: 1279px)  {
    .FollowMenuContainer{
      /*display: none;*/
    }
}
/* FollowMenuBlock
--------------------------------------------------- */
.FollowMenuBlock{
  /*background: #11100f url(../img/common/menu/side/bg/default.png) no-repeat 50% 0%;*/
  border: 0px solid #393837;
  padding: 0;
  width: 230px!important;
  margin-top:0px;
  /*right: 0px!important;
  left: auto!important;*/
  right:0;
  z-index: 10000;
}
    body.rsbp-over-bp3 .FollowMenuBlock .BlockHeader{
      margin: 0 0 15px;
    }
    body.rsbp-over-bp3 .FollowMenuBlock .BlockContents{
      margin: 0 0 15px;
    }
    body.rsbp-over-bp3 .FollowMenuBlock .BlockFooter{
      
    }
    
             /* + + + + + レスポンシブ + + + + +  */
            body.rsbp-under-bp2 .FollowMenuBlock{
              width:100%!important;
              top:0;
            }
            body.rsbp-under-bp2 .FollowMenuBlock {
              
            }
            
/*装飾0*/
.SknTplDecoratedBox{
  text-align:center;
}
.SknTplDecoratedBox > .DecoratedBox {
  background: linear-gradient( to bottom, rgba(10,210,230,0.5), rgba(10,210,230,0.125));
  background-attachment: scroll;
  background-attachment: fixed;
  border: 0px dashed rgba(10,210,230,0.5);
  
  background:#ddeaff;
  margin: 25px;
  padding: 25px;
}
.SknTplDecoratedBox > .DecoratedBox{
  
}
.SknTplDecoratedBox > .DecoratedBox > .inner {
    background:#fff;
    padding: 30px;
}
            
/*装飾1*/
.SknTplDecoratedBox.Type1{
  text-align:center;
}
.SknTplDecoratedBox.Type1 > .DecoratedBox {
  background: linear-gradient( to bottom, rgba(10,210,230,0.5), rgba(10,210,230,0.125));
  background-attachment: scroll;
  background-attachment: fixed;
  border: 0px dashed rgba(10,210,230,0.5);
  
  background:#ddeaff;
  margin: 25px;
  padding: 25px;
  display:inline-block;
}
.SknTplDecoratedBox.Type1 > .DecoratedBox.Type1{
  
}
.SknTplDecoratedBox > .DecoratedBox.Type1 > .inner {
    background:#fff;
    padding: 30px;
}
/*装飾2*/
.SknTplDecoratedBox.Type2{
  text-align:center;
}
.SknTplDecoratedBox.Type2 > .DecoratedBox {
  background: linear-gradient( to bottom, rgba(10,210,230,0.5), rgba(10,210,230,0.125));
  background-attachment: scroll;
  background-attachment: fixed;
  border: 0px dashed rgba(10,210,230,0.5);
  
  background:#eee1ba;
      background: -webkit-gradient(linear, left top, right bottom, from(#d0c39c), color-stop(0.10, #d0c39c), color-stop(0.10, #eee1ba), color-stop(0.5, #eee1ba), color-stop(0.5, #d0c39c), color-stop(0.60, #d0c39c), color-stop(0.60, #eee1ba), to(#eee1ba));
      background: -moz-linear-gradient(-45deg, #d0c39c 10%, #eee1ba 10%, #eee1ba 50%, #d0c39c 50%, #d0c39c 60%, #eee1ba 60%, #eee1ba);
      background: linear-gradient(-45deg, #d0c39c 10%, #eee1ba 10%, #eee1ba 50%, #d0c39c 50%, #d0c39c 60%, #eee1ba 60%, #eee1ba);
      background-size: 10px 10px;

  margin: 25px;
  padding: 25px;
  display:inline-block;
}
.SknTplDecoratedBox.Type2 > .DecoratedBox.Type2{
  
}
.SknTplDecoratedBox > .DecoratedBox.Type2 > .inner {
    background:#f9f1d8;
    padding: 30px;
}
/*見出し下で使用すること*/
.Patent{
  border-radius:6px;
  background:#f49a1c;
  color:#fff;
  font-weight:bold;
  display:inline-block;
  padding:4px 6px;
  line-height:1.1;
  font-size:0.8rem;
  position:absolute;
  top:5px;
  right:10px;
  text-align:center;
}

             /* + + + + + レスポンシブ + + + + +  */
            body.rsbp-under-bp2 .Patent{
              position:static;
              position:relative;
            } 	