@charset "utf-8";
/* CSS Document */

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

  PC用マスター：master_pc.css
  @media print, screen and (min-width: 768px)

  ※株式会社シーイーシーの全サイトに共通で使用するcssです。
  ※本cssは、管理者以外の編集は不可となります。

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



/* -------------

sp,pcの切換

------------- */

.sp_only{
  display: none;
}
.pc_only{
  display: block;
}




/* -------------

テキスト標準

------------- */

h1 {}
h2 { font-size: 3.0rem; }
h3 { font-size: 2.6rem; }
h4 { font-size: 2.2rem; }
h5 { font-size: 1.8rem; }

h1, h2, h3, h4, h5 {
  border-color: #5330c1;
  font-weight: 900;
}

a:hover {color:#333333; opacity: 0.8; text-decoration: none !important;}

/* -------------

横スクロール時
背景切れ対処

------------- */

#header_h1, header, #pc_nav, footer, #breadcrumb {
  min-width: 1000px;
}

/* -------------

ヘッダー上段

------------- */

#header_h1 {
  height: 3rem;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,f4f4f4+100 */
  background: #ffffff; /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 0%, #f4f4f4 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 0%,#f4f4f4 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 0%,#f4f4f4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f4f4f4',GradientType=0 ); /* IE6-9 */
}

#h1_area {
  overflow: hidden;
  width: 960px;
  height: 3rem;
  margin: 0 auto;
  padding: 0 2rem 0 2rem;
}
#h1_area p.catchcopy {
  font-weight: 100;
  font-size: 1.1rem;
  line-height: 3rem;
  /*width: auto;*/
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  float: left;
  position: relative;
  z-index: 100;
}

#top_banner {
  position: fixed;
  top: 0.1rem;
  margin: 0 auto;
  float: right;
  width: 960px;
  font-size: 1.0rem;
  font-weight: 900;
}
  #top_banner ul {
    list-style: none;
    padding: 0;
    margin: 0;
    width: auto;
    max-width: 50%;
    float: right;
  }
    #top_banner ul li {
      display:inline-block;
      line-height: 3rem;
      float: right;
      /*padding: 0 1.6rem;*/
      border-left: 0.1rem solid #7559cc;
      border-right: 0.1rem solid #372081;
      background-color: #5330c1;
      color: #ffffff;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#5330c1+0,3f2594+100 */
      background: #5330c1; /* Old browsers */
      background: -webkit-linear-gradient(#5330c1 0%, #3f2594 100%);
      background: -o-linear-gradient(#5330c1 0%, #3f2594 100%);
      background: linear-gradient(#5330c1 0%, #3f2594 100%); /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */ /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5330c1', endColorstr='#3f2594',GradientType=0 ); /* IE6-9 */
    }
    #top_banner ul li a {
      color: #ffffff;
      padding: 0 1.6rem;
    }
    #top_banner ul li.leftmost a {
      border-left: none;
      /*
      display:block;
      width:100%;
      height:100%;
      */
    }
    #top_banner ul li.rightmost a {
      border-right: none;
      /*
      display:block;
      width:100%;
      height:100%;
      */
    }
    #top_banner ul li:hover {
      opacity: 0.9;
    }
/* -------------

ヘッダー下段

------------- */

header {
  position: fixed;
  top:0;
  z-index:999;
}

#header_siteid {
  padding: 1.4rem 0rem;
  height: 5.0rem;
}
  #siteid_area {
    width: 960px;
    margin: 0 auto;
    padding: 0 2rem;
    overflow: hidden;
  }
  #siteid_logo {
    float: left;
    width: auto;
    max-height: 5.0rem;
    position: relative;
    z-index: 100;
  }
  #siteid_logo img {
    height: 50px;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;

  }
  #cec_logo {
    float: right;
    display: block;
    height: 4.2rem;
    padding-left: 3rem;
    position: relative;
    z-index: 100;
  }
  #cec_logo img {
    height: 42px;
    padding-top: 0.5rem;
  }



#switch_pcPos{
  position: absolute;
  top: -5.4rem;
  margin-top: 0rem;
  width: 960px;
  z-index: 1;
}
/*ガタンとなるのを防ぐ*/
#switch_pcPos.hide{
  top: -4.4rem;
}


#switch_pcPos ul.acMenu{
    list-style: none;
    padding-right: calc(83px + 3rem) ;
    margin: 0;
    width: auto;
    float: right;
}
#switch_pcPos ul.acMenu li {
    display: block;
    text-align: left;
    list-style: none;
    font-weight:normal;
    border-right: none;
    vertical-align: middle;
  }
#switch_pcPos ul.acMenu li:hover {
  background-color: inherit;
}
#switch_pcPos ul.acMenu li:nth-of-type(1) {
    border-left:none;
  }
#switch_pcPos ul.acMenu li a {
    display: inherit;
    padding: 0;
    text-decoration: none;
  }


  /* 表示切り替え↓ */
  li.switch_sp {
    display: block;
    width: auto;
    float: right;
    font-size: 1.2rem;
  }
    #lang {
      width: auto;
      height: 2.8rem;
      float: left;
      background-color: #ffffff;
      padding: 0rem 1.2rem 0rem 2.2rem;
      border-right: 0.1rem solid #cccccc;
      line-height: 2.8rem;
      background-image: url("../img/lang_icon.svg");
      background-repeat: no-repeat;
      background-position: center left;
    }
#global_nav #lang a{
  color: #333333;
}

      /*IEでのフォントずれ対処*/
      @media all and (-ms-high-contrast:none) {   
        #lang {
          background-position: 0rem 0.1rem;
          padding-left: 2.3rem;
        }
      }
    #fontsize {
      width: auto;
      height: 2.8rem;
      float: left;
      background-color: #ffffff;
      padding: 0rem 1.2rem;
      border-right: 0.1rem solid #cccccc;
    }
      #fontsize button {
        width: 4rem;
        padding: 0rem;
        line-height: 2.8rem;
        border: none;
        font-size: 1.2rem;
      }
        #fontsize button.fz_m {
          margin-left: 0.8rem;
          border-right: 0.1rem solid #ffffff;
        }
        #fontsize button.fz_l {
          
        }
        #fontsize button.no {
          background-color: #eeeeee;
          color: #333333;
          cursor: pointer;
        }
        #fontsize button.on {
          background-color: #5330c1;
          color: #ffffff;
          cursor: default;
        }
        
    /* 表示切り替え↑ */

    /* 検索↓ */
    #search_box {
      margin: 0;
      padding: 0;
      margin-left: 1.2rem;
      float: left;
      width: auto;
      font-size: 1.1rem;
    }
    #search_box #q_sp {
			float: left;
			width: 8rem;
			height: 2.6rem;
			padding: 0 0.9rem;
			border: 1px solid #d0d0d0;
			border-right: none;
			color: #666;
      font-size: 1.1rem;
    }
    #search_box #btSearch_sp {
      width: 2.7rem;
      height: 2.7rem;
      background-color: #5330c1;
    }

/* -------------

グローバルナビ

------------- */


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

/*モバイル用を非表示↓*/
/*#nav_toggle, #global_nav{ display: none !important; }*/
#nav_toggle{display: none;}

/*colors.css*/
#global_nav {
  /*
  position: absolute;
  top:calc(3rem + 7.8rem);
  */
}
#global_nav {
  background-color: #e99620;
}
#global_nav li:hover,#global_nav li.active {
  background-color: #E8A64A;
}
#global_nav a {
  color: #ffffff;
}
  /*colors.css*/

#global_navInner{
  width: 960px;
  margin: 0 auto;
  padding: 0 0.2rem;
  position: relative;
}
/*
#global_nav .switch_sp{
  display: none;
}

#global_nav .bnr,#global_nav .switch_sp{
  display: none;
}
*/
ul.acMenu  {
  overflow: hidden;
  display: table;
  table-layout: fixed;
  width: 100%;
}
ul.acMenu #global_navInner {
  width: 960px;
  margin: 0 auto;
  padding: 0 0.2rem;
}
  ul.acMenu li {
    display: table-cell;
    text-align: center;
    box-sizing: border-box;

    list-style: none;
    font-weight: 900;
    border-right: 0.1rem solid #ffffff;
    vertical-align: middle;
  }
  ul.acMenu li:nth-of-type(1) {
    border-left: 0.1rem solid #ffffff;
  }
  ul.acMenu li a {
    display: block;
    padding: 1.4rem 2rem;
    text-decoration: none;
  }


/*モバイル用を非表示↑*/


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









#pc_nav {
  background-color: #f8f8f8;
}
  #gnaviInner {
    width: 960px;
    margin: 0 auto;
    padding: 0 0.2rem;
  }

    #gnaviInner ul {
      overflow: hidden;
      display: table;
      table-layout: fixed;
      width: 100%;
    }
      #gnaviInner li {
        display: table-cell;
        text-align: center;
        box-sizing: border-box;
        
        list-style: none;
        font-weight: 900;
        border-right: 0.1rem solid #ffffff;
        vertical-align: middle;
      }
      #gnaviInner li.gnavi_top {
        border-left: 0.1rem solid #ffffff;
      }
      #gnaviInner li a {
        display: block;
        padding: 1.4rem 2rem;
        text-decoration: none;
      }

/* -------------

コンテンツ

------------- */

#containerInner{
  margin: 0 auto;
  width: 960px;
  padding: 2rem 2rem;
}

/* -------------

インフォメーション
（下層ページ下部共通設置）

------------- */

#info_area {
  width: 960px;
}
  #info_area div.tel {
    float: left;
  }
    #info_area div.tel p.tel_left {
      float: left;
      padding-right: 2.5rem;
      padding-top: 0.5rem;
    }

    #info_area div.tel p.tel_right {
      float: left;
      padding-left: 2.5rem;
      border-left: 0.2rem solid #eeeeee;
    }
  #info_area div.mail:hover {
    opacity: 0.9;
  }

/* -------------

サイトマップ

------------- */

#sitemap {
  width: 100%;
}
  #sitemap #sitemapInner{
    width: 960px;
  }
    #sitemap #sitemapInner ul {
      width: 23%;
    }

/* -------------

コピーライト

------------- */
#copyrightInner ul a:hover li {
  opacity: 0.7 ;
}

/* -------------

pageトップに戻るボタン

------------- */

.page-top a:hover {
    opacity: 0.7;
}

/* -------------

パンくずリスト

------------- */
div.breadcrumb {
  width: 100%;
  min-width: 1000px;
  height: 34px;
  background-color: #f8f8f8;
}
div.breadcrumb ol.breadcrumbInner {
  width: 960px;
  padding: 0 20px;
  margin: 0 auto;
  font-size: 1.2rem;
}
div.breadcrumb ol.breadcrumbInner li {
  line-height: 34px;
  display:inline;/*横に並ぶように*/
  list-style: none;
}
div.breadcrumb ol.breadcrumbInner li:after {
  content: '>';
  padding: 0 5px;
  color: #cccccc;
}
div.breadcrumb ol.breadcrumbInner li:last-child:after {
  content: '';
}
div.breadcrumb ol.breadcrumbInner li a {
  color: #666666;
}