@charset "UTF-8";
/* ==============================


base.css


============================== */
/*-------------------------------
---------------------------------
初期設定
---------------------------------
-------------------------------*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  color: #000000;
  font-size: 14px;
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',"Lucida Grande",Osaka,'メイリオ','ＭＳ Ｐゴシック',"MS PGothic",sans-serif;
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  body {
    min-width: 768px;
  }
}
/*-------------------------------
---------------------------------
タグリセット
---------------------------------
-------------------------------*/
h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, figure {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
}

address {
  font-style: normal;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

button {
  padding: 0;
  background-color: transparent;
  border-width: 0;
  outline: none;
}

/*-------------------------------
---------------------------------
リンク設定
---------------------------------
-------------------------------*/
a {
  color: #432c99;
  text-decoration: underline;
  outline: none !important;
}
a:hover {
  color: #432c99;
  text-decoration: none;
}
a:visited {
  color: #432c99;
}

a.link01, a.link01_w, a.link01_b, a.link02, a.link02_b, a.link03, a.link03_w, a.link03_b, a.link04, a.link04_w, a.link04_b, a.link05, a.link05_b, a.link06, a.link06_b, a.link07, a.link08, a.link08_w, a.link09, a.link09_w, a.link09_b, a.link10,
span.link01,
span.link01_w,
span.link01_b,
span.link02,
span.link02_b,
span.link03,
span.link03_w,
span.link03_b,
span.link04,
span.link04_w,
span.link04_b,
span.link05,
span.link05_b,
span.link06,
span.link06_b,
span.link07,
span.link08,
span.link08_w,
span.link09,
span.link09_w,
span.link09_b,
span.link10 {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  min-height: 13px;
  line-height: 1.5;
  padding-left: 17px;
  text-indent: -17px;
}
a.pdf,
span.pdf {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  min-height: 16px;
  line-height: 1.5;
}
a.link01:before, a.link01_w:before, a.link01_b:before, a.link02:before, a.link02_b:before, a.link03:before, a.link03_w:before, a.link03_b:before, a.link04:before, a.link04_w:before, a.link04_b:before, a.link05:before, a.link05_b:before, a.link06:before, a.link06_b:before, a.link07:before, a.link08:before, a.link08_w:before, a.link09:before, a.link09_b:before, a.link10:before,
span.link01:before,
span.link01_w:before,
span.link01_b:before,
span.link02:before,
span.link02_b:before,
span.link03:before,
span.link03_w:before,
span.link03_b:before,
span.link04:before,
span.link04_w:before,
span.link04_b:before,
span.link05:before,
span.link05_b:before,
span.link06:before,
span.link06_b:before,
span.link07:before,
span.link08:before,
span.link08_w:before,
span.link09:before,
span.link09_b:before,
span.link10:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  top: -1px;
  left: 0;
  width: 13px;
  height: 13px;
  min-height: 1em;
  margin-right: 3px;
  background-position: 0 center;
  background-repeat: no-repeat;
  -webkit-background-size: 13px 13px !important;
  background-size: 13px 13px !important;
  vertical-align: middle;
}
a.inline_link,
span.inline_link {
  display: inline;
  position: relative;
  top: -1px;
  margin-left: 6px;
  padding-left: 0;
  -ms-word-break: break-all;
  word-break: break-all;
}
a.inline_link.link01:before, a.inline_link.link01_w:before, a.inline_link.link01_b:before, a.inline_link.link02:before, a.inline_link.link02_b:before, a.inline_link.link03:before, a.inline_link.link03_w:before, a.inline_link.link03_b:before, a.inline_link.link04:before, a.inline_link.link04_w:before, a.inline_link.link04_b:before, a.inline_link.link05:before, a.inline_link.link05_b:before, a.inline_link.link06:before, a.inline_link.link06_b:before, a.inline_link.link07:before, a.inline_link.link08:before, a.inline_link.link08_w:before, a.inline_link.link09:before, a.inline_link.link09_b:before, a.inline_link.link10:before,
span.inline_link.link01:before,
span.inline_link.link01_w:before,
span.inline_link.link01_b:before,
span.inline_link.link02:before,
span.inline_link.link02_b:before,
span.inline_link.link03:before,
span.inline_link.link03_w:before,
span.inline_link.link03_b:before,
span.inline_link.link04:before,
span.inline_link.link04_w:before,
span.inline_link.link04_b:before,
span.inline_link.link05:before,
span.inline_link.link05_b:before,
span.inline_link.link06:before,
span.inline_link.link06_b:before,
span.inline_link.link07:before,
span.inline_link.link08:before,
span.inline_link.link08_w:before,
span.inline_link.link09:before,
span.inline_link.link09_b:before,
span.inline_link.link10:before {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  top: -1px;
  margin-right: 3px;
  padding-right: 1px;
}

/*--------------------------
リンク設定　スマホ以外
--------------------------*/
@media only screen and (min-width: 768px) {
  a.tellink {
    pointer-events: none;
  }
}
/*--------------------------
リンク設定　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  a:hover {
    text-decoration: none !important;
  }

  a.inline_link,
  span.inline_link {
    display: inline;
    position: relative;
    top: -2px;
    margin-left: 6px;
    padding-left: 0;
  }

  a span.link01, a span.link01_w, a span.link01_b, a span.link02, a span.link02_b, a span.link03, a span.link03_w, a span.link03_b, a span.link04, a span.link04_w, a span.link04_b, a span.link05, a span.link05_b, a span.link06, a span.link06_b, a span.link07, a span.link08, a span.link08_w, a span.link09, a span.link09_b, a span.link10 {
    vertical-align: baseline;
  }
}
/*-------------------------------
---------------------------------
リンクアイコン設定
---------------------------------
-------------------------------*/
a.link01:before,
html.svg a.link01:before,
span.link01:before,
html.svg span.link01:before {
  background-image: url(../img/parts/icon_link01.svg);
}
a.link01_w:before,
html.svg a.link01_w:before,
span.link01_w:before,
html.svg span.link01_w:before {
  background-image: url(../img/parts/icon_link01_w.svg);
}
a.link01_b:before,
html.svg a.link01_b:before,
span.link01_b:before,
html.svg span.link01_b:before {
  background-image: url(../img/parts/icon_link01_b.svg);
}
a.link02:before,
html.svg a.link02:before,
span.link02:before,
html.svg span.link02:before {
  background-image: url(../img/parts/icon_link02.svg);
}
a.link02_b:before,
html.svg a.link02_b:before,
span.link02_b:before,
html.svg span.link02_b:before {
  background-image: url(../img/parts/icon_link02_b.svg);
}
a.link03:before,
html.svg a.link03:before,
span.link03:before,
html.svg span.link03:before {
  background-image: url(../img/parts/icon_link03.svg);
}
a.link03_w:before,
html.svg a.link03_w:before,
span.link03_w:before,
html.svg span.link03_w:before {
  background-image: url(../img/parts/icon_link03_w.svg);
}
a.link03_b:before,
html.svg a.link03_b:before,
span.link03_b:before,
html.svg span.link03_b:before {
  background-image: url(../img/parts/icon_link03_b.svg);
}
a.link04:before,
html.svg a.link04:before,
span.link04:before,
html.svg span.link04:before {
  background-image: url(../img/parts/icon_link04.svg);
}
a.link04_w:before,
html.svg a.link04_w:before,
span.link04_w:before,
html.svg span.link04_w:before {
  background-image: url(../img/parts/icon_link04_w.svg);
}
a.link04_b:before,
html.svg a.link04_b:before,
span.link04_b:before,
html.svg span.link04_b:before {
  background-image: url(../img/parts/icon_link04_b.svg);
}
a.link05:before,
html.svg a.link05:before,
span.link05:before,
html.svg span.link05:before {
  background-image: url(../img/parts/icon_link05.svg);
}
a.link05_b:before,
html.svg a.link05_b:before,
span.link05_b:before,
html.svg span.link05_b:before {
  background-image: url(../img/parts/icon_link05_b.svg);
}
a.link06:before,
html.svg a.link06:before,
span.link06:before,
html.svg span.link06:before {
  background-image: url(../img/parts/icon_link06.svg);
}
a.link06_b:before,
html.svg a.link06_b:before,
span.link06_b:before,
html.svg span.link06_b:before {
  background-image: url(../img/parts/icon_link06_b.svg);
}
a.link07:before,
html.svg a.link07:before,
span.link07:before,
html.svg span.link07:before {
  background-image: url(../img/parts/icon_link07.svg);
}
a.link08:before,
html.svg a.link08:before,
span.link08:before,
html.svg span.link08:before {
  background-image: url(../img/parts/icon_link08.svg);
}
a.link08_b:before,
html.svg a.link08_b:before,
span.link08_b:before,
html.svg span.link08_b:before {
  background-image: url(../img/parts/icon_link08_b.svg);
}
a.link09:before,
html.svg a.link09:before,
span.link09:before,
html.svg span.link09:before {
  background-image: url(../img/parts/icon_link09.svg);
}
a.link09_b:before,
html.svg a.link09_b:before,
span.link09_b:before,
html.svg span.link09_b:before {
  background-image: url(../img/parts/icon_link09_b.svg);
}
a.link10:before,
html.svg a.link10:before,
span.link10:before,
html.svg span.link10:before {
  background-image: url(../img/parts/icon_link10.svg);
}
a.pdf:after,
html.svg a.pdf:after,
span.pdf:after,
html.svg span.pdf:after {
  content: "";
  display: inline-block;
  position: relative;
  top: -1px;
  width: 16px;
  height: auto;
  min-height: 16px;
  margin: 0 2px 0 1px;
  background: url(../img/parts/ico_pdf01.png) 0 center no-repeat;
  vertical-align: middle;
}
a.trans:hover,
html.svg a.trans:hover,
span.trans:hover,
html.svg span.trans:hover {
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
a.trans:hover img,
html.svg a.trans:hover img,
span.trans:hover img,
html.svg span.trans:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  a.trans:hover,
  html.svg a.trans:hover,
  span.trans:hover,
  html.svg span.trans:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  a.trans:hover img,
  html.svg a.trans:hover img,
  span.trans:hover img,
  html.svg span.trans:hover img {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  }
}
@media only screen and (max-width: 767px) {
  a.trans:hover,
  html.svg a.trans:hover,
  span.trans:hover,
  html.svg span.trans:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  a.trans:hover img,
  html.svg a.trans:hover img,
  span.trans:hover img,
  html.svg span.trans:hover img {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  }
}

/*--------------------------
リンクアイコン設定　svg代替
--------------------------*/
@media only screen and (-webkit-max-device-pixel-ratio: 2), only screen and (max-resolution: 2dppx) {
  a.link01:before,
  span.link01:before {
    background-image: url(../img/parts/icon_link01.png);
  }
  a.link01_w:before,
  span.link01_w:before {
    background-image: url(../img/parts/icon_link01_w.png);
  }
  a.link01_b:before,
  span.link01_b:before {
    background-image: url(../img/parts/icon_link01_b.png);
  }
  a.link02:before,
  span.link02:before {
    background-image: url(../img/parts/icon_link02.png);
  }
  a.link02_b:before,
  span.link02_b:before {
    background-image: url(../img/parts/icon_link02_b.png);
  }
  a.link03:before,
  span.link03:before {
    background-image: url(../img/parts/icon_link03.png);
  }
  a.link03_w:before,
  span.link03_w:before {
    background-image: url(../img/parts/icon_link03_w.png);
  }
  a.link03_b:before,
  span.link03_b:before {
    background-image: url(../img/parts/icon_link03_b.png);
  }
  a.link04:before,
  span.link04:before {
    background-image: url(../img/parts/icon_link04.png);
  }
  a.link04_w:before,
  span.link04_w:before {
    background-image: url(../img/parts/icon_link04_w.png);
  }
  a.link04_b:before,
  span.link04_b:before {
    background-image: url(../img/parts/icon_link04_b.png);
  }
  a.link05:before,
  span.link05:before {
    background-image: url(../img/parts/icon_link05.png);
  }
  a.link05_b:before,
  span.link05_b:before {
    background-image: url(../img/parts/icon_link05_b.png);
  }
  a.link06:before,
  span.link06:before {
    background-image: url(../img/parts/icon_link06.png);
  }
  a.link06_b:before,
  span.link06_b:before {
    background-image: url(../img/parts/icon_link06_b.png);
  }
  a.link07:before,
  span.link07:before {
    background-image: url(../img/parts/icon_link07.png);
  }
  a.link08:before,
  span.link08:before {
    background-image: url(../img/parts/icon_link08.png);
  }
  a.link08_b:before,
  span.link08_b:before {
    background-image: url(../img/parts/icon_link08_b.png);
  }
  a.link09:before,
  span.link09:before {
    background-image: url(../img/parts/icon_link09.png);
  }
  a.link09_b:before,
  span.link09_b:before {
    background-image: url(../img/parts/icon_link09_b.png);
  }
  a.link10:before,
  span.link10:before {
    background-image: url(../img/parts/icon_link10.png);
  }
}
/*--------------------------
リンクアイコン設定　chrome , opera
--------------------------*/
@media all and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
  a.link01:before, a.link01_w:before, a.link01_b:before, a.link02:before, a.link02_b:before, a.link03:before, a.link03_w:before, a.link03_b:before, a.link04:before, a.link04_w:before, a.link04_b:before, a.link05:before, a.link05_b:before, a.link06:before, a.link06_b:before, a.link07:before, a.link08:before, a.link08_w:before, a.link09:before, a.link09_b:before, a.link10:before,
  span.link01:before,
  span.link01_w:before,
  span.link01_b:before,
  span.link02:before,
  span.link02_b:before,
  span.link03:before,
  span.link03_w:before,
  span.link03_b:before,
  span.link04:before,
  span.link04_w:before,
  span.link04_b:before,
  span.link05:before,
  span.link05_b:before,
  span.link06:before,
  span.link06_b:before,
  span.link07:before,
  span.link08:before,
  span.link08_w:before,
  span.link09:before,
  span.link09_b:before,
  span.link10:before,
  a.inline_link.link01:before,
  a.inline_link.link01_w:before,
  a.inline_link.link01_b:before,
  a.inline_link.link02:before,
  a.inline_link.link02_b:before,
  a.inline_link.link03:before,
  a.inline_link.link03_w:before,
  a.inline_link.link03_b:before,
  a.inline_link.link04:before,
  a.inline_link.link04_w:before,
  a.inline_link.link04_b:before,
  a.inline_link.link05:before,
  a.inline_link.link05_b:before,
  a.inline_link.link06:before,
  a.inline_link.link06_b:before,
  a.inline_link.link07:before,
  a.inline_link.link08:before,
  a.inline_link.link08_w:before,
  a.inline_link.link09:before,
  a.inline_link.link09_b:before,
  a.inline_link.link10:before,
  span.inline_link.link01:before,
  span.inline_link.link01_w:before,
  span.inline_link.link01_b:before,
  span.inline_link.link02:before,
  span.inline_link.link02_b:before,
  span.inline_link.link03:before,
  span.inline_link.link03_w:before,
  span.inline_link.link03_b:before,
  span.inline_link.link04:before,
  span.inline_link.link04_w:before,
  span.inline_link.link04_b:before,
  span.inline_link.link05:before,
  span.inline_link.link05_b:before,
  span.inline_link.link06:before,
  span.inline_link.link06_b:before,
  span.inline_link.link07:before,
  span.inline_link.link08:before,
  span.inline_link.link08_w:before,
  span.inline_link.link09:before,
  span.inline_link.link09_b:before,
  span.inline_link.link10:before {
    top: -1px;
  }
}
/*--------------------------
リンクアイコン設定　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  a.pdf:after,
  html.svg a.pdf:after {
    height: 15px;
    background: url(../img/parts/ico_pdf01_sp.png) 0 0 no-repeat;
    -moz-background-size: 16px 15px;
    -o-background-size: 16px 15px;
    -webkit-background-size: 16px 15px;
    background-size: 16px 15px;
  }
  a.trans:hover:hover,
  html.svg a.trans:hover:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  a.trans:hover:hover img,
  html.svg a.trans:hover:hover img {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  }

  #header .header_pane .header_inner #gnavi ul li ul.first_floor li a span.link03 b:after,
  html.svg #header .header_pane .header_inner #gnavi ul li ul.first_floor li a span.link03 b:after {
    background-image: url(../img/parts/icon_link03_w.svg);
  }
}
@media only screen and (max-width: 767px) and (-webkit-max-device-pixel-ratio: 2), only screen and (max-width: 767px) and (max-resolution: 2dppx) {
  #header .header_pane .header_inner #gnavi ul li ul.first_floor li a span.link03 b:after {
    background-image: url(../img/parts/icon_link03_w.png);
  }
}
/*--------------------------
----------------------------
common header
----------------------------
--------------------------*/
body #kandaicommon_header {
  position: relative;
  height: 25px;
  background-color: #fff;
}

/*--------------------------
----------------------------
common header　スマホ
----------------------------
--------------------------*/
@media only screen and (max-width: 767px) {
  body #kandaicommon_header {
    height: 42px;
    background-position: bottom left;
  }

  body #kandaicommon_header img.kandaicommon_title {
    padding: 8px 0 0 0;
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
  }

  body #kandaicommon_header ul#kandaicommon_navi {
    width: 190px;
    height: 42px;
    overflow: hidden;
  }

  body #kandaicommon_header ul#kandaicommon_navi li {
    float: left;
  }

  body #kandaicommon_header ul#kandaicommon_navi li.kandaicommon_navi01 {
    display: none;
  }

  body #kandaicommon_header ul#kandaicommon_navi li.kandaicommon_navi02 {
    width: 86px;
  }

  body #kandaicommon_header ul#kandaicommon_navi li.kandaicommon_navi03 {
    width: 104px;
  }

  body #kandaicommon_header ul#kandaicommon_navi li.kandaicommon_navi04 {
    width: 91px;
  }

  body #kandaicommon_header ul#kandaicommon_navi li.kandaicommon_navi04 a {
    margin-left: 9px;
  }
}
/*--------------------------
----------------------------
共通
----------------------------
--------------------------*/
/* PC時表示 */
.pc-revelation, .pctb-revelation {
  display: block !important;
}

.pc-revelation-i, .pctb-revelation-i {
  display: inline !important;
}

.pc-revelation-t, .pctb-revelation-t {
  display: table !important;
}

.pc-revelation-tc, .pctb-revelation-tc {
  display: table-cell !important;
}

.pc-revelation-l, .pctb-revelation-l {
  display: list-item !important;
}

/* PC時非表示 */
.tb-revelation, .sp-revelation, .sptb-revelation, .tb-revelation-i, .sp-revelation-i, .sptb-revelation-i, .tb-revelation-t, .sp-revelation-t, .sptb-revelation-t, .tb-revelation-tc, .sp-revelation-tc, .sptb-revelation-tc, .tb-revelation-l, .sp-revelation-l, .sptb-revelation-l {
  display: none !important;
}

body {
  max-width: none;
  min-width: 1025px;
  background-color: #ffffff;
  line-height: 2.2;
}
@media only screen and (max-width: 767px) {
  body {
    line-height: 1.7;
  }
}

div#container {
  max-width: none;
  min-width: 1025px;
}

.ui-flickable-wrapper {
  background-color: transparent !important;
}

/*--------------------------
共通　タブレット
--------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  /* タブレット時表示 */
  .tb-revelation, .pctb-revelation, .sptb-revelation {
    display: block !important;
  }

  .tb-revelation-i, .pctb-revelation-i, .sptb-revelation-i {
    display: inline !important;
  }

  .tb-revelation-t, .pctb-revelation-t, .sptb-revelation-t {
    display: table !important;
  }

  .tb-revelation-tc, .pctb-revelation-tc, .sptb-revelation-tc {
    display: table-cell !important;
  }

  .tb-revelation-l, .pctb-revelation-l, .sptb-revelation-l {
    display: list-item !important;
  }

  /* タブレット時非表示 */
  .pc-revelation, .sp-revelation, .pc-revelation-i, .sp-revelation-i, .pc-revelation-t, .sp-revelation-t, .pc-revelation-tc, .sp-revelation-tc, .pc-revelation-l, .sp-revelation-l {
    display: none !important;
  }

  .androidBold {
    font-family: monospace;
  }

  body {
    width: 100%;
    max-width: 1024px;
    min-width: 768px;
    -webkit-text-size-adjust: 100%;
  }

  div#container {
    width: 100%;
    max-width: 1024px;
    min-width: 768px;
    position: relative;
  }
}
/*--------------------------
共通　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  /* スマホ時表示 */
  .sp-revelation, .sptb-revelation {
    display: block !important;
  }

  .sp-revelation-i, .sptb-revelation-i {
    display: inline !important;
  }

  .sp-revelation-t, .sptb-revelation-t {
    display: table !important;
  }

  .sp-revelation-tc, .sptb-revelation-tc {
    display: table-cell !important;
  }

  .sp-revelation-l, .sptb-revelation-l {
    display: list-item !important;
  }

  /* スマホ時非表示 */
  .pc-revelation, .tb-revelation, .pctb-revelation, .pc-revelation-i, .tb-revelation-i, .pctb-revelation-i, .pc-revelation-t, .tb-revelation-t, .pctb-revelation-t, .pc-revelation-tc, .tb-revelation-tc, .pctb-revelation-tc, .pc-revelation-l, .tb-revelation-l, .pctb-revelation-l {
    display: none !important;
  }

  .androidBold {
    font-family: monospace;
  }

  body {
    width: 100%;
    max-width: 767px;
    min-width: 320px;
    -webkit-text-size-adjust: 100%;
  }

  div#container {
    width: 100%;
    max-width: 767px;
    min-width: 320px;
    position: relative;
  }
}
/*--------------------------
----------------------------
パーツ
----------------------------
--------------------------*/
.cmn_divide_xl {
  margin-bottom: 50px !important;
}

.cmn_divide_l {
  margin-bottom: 40px !important;
}

.cmn_divide_m {
  margin-bottom: 30px !important;
}

.cmn_divide_s {
  margin-bottom: 20px !important;
}

.cmn_divide_xs {
  margin-bottom: 10px !important;
}

.cmn_divide_em1 {
  margin-bottom: 1em !important;
}

.cmn_divide_non {
  margin-bottom: 0 !important;
}

/*---------------------
タイトル
---------------------*/
h3.cmn_title,
.h3_style_title {
  display: inline-block;
  position: relative;
  right: 1px;
  padding-left: 3px;
  background: url(../img/parts/ribbon_y_m.png) repeat-x center bottom;
  line-height: 1.3;
  font-size: 30px;
}
h3.cmn_title:before,
.h3_style_title:before {
  content: "";
  display: inline-block;
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 center;
  position: absolute;
  bottom: 0;
  left: -43px;
  width: 50px;
  height: 15px;
  background: url(../img/parts/ribbon_y_l.png) no-repeat right bottom;
  z-index: 1;
}
h3.cmn_title:after,
.h3_style_title:after {
  content: "";
  display: inline-block;
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 center;
  position: absolute;
  bottom: 0;
  right: -43px;
  width: 50px;
  height: 15px;
  background: url(../img/parts/ribbon_y_r.png) no-repeat left bottom;
  z-index: 1;
}
h3.cmn_title span,
.h3_style_title span {
  display: inline-block;
  position: relative;
  z-index: 2;
}

h4.cmn_title,
.h4_style_title {
  text-align: center;
}
h4.cmn_title span,
.h4_style_title span {
  display: inline-block;
  position: relative;
  min-height: 37px;
  padding-left: 40px;
  line-height: 1.3;
  text-align: left;
  font-size: 28px;
}
h4.cmn_title span:before,
.h4_style_title span:before {
  content: "";
  display: inline-block;
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 center;
  position: absolute;
  top: 50%;
  left: 0;
  width: 28px;
  height: 37px;
  margin-top: -16px;
  background: url(../img/parts/icon_flag.png) no-repeat 0 center;
}
h4.cmn_title.ti-10 span,
.h4_style_title.ti-10 span {
  text-indent: -10px;
}

/*---------------------
リスト
---------------------*/
dl.cmn_datalist {
  margin: 0;
}
dl.cmn_datalist dt {
  clear: left;
  float: left;
  font-weight: bold;
}
dl.cmn_datalist dd {
  margin-left: 0;
  padding-left: 4em;
}
dl.cmn_datalist dd p.colon {
  padding-left: 1em;
  text-indent: -1em;
}
dl.cmn_datalist dd.null {
  display: none;
}
dl.cmn_datalist.fluid dt {
  font-weight: normal;
}
dl.cmn_datalist.fluid dd {
  padding-left: 0;
}

ul.cmn_list {
  margin-left: 17px;
}
ul.cmn_list li {
  list-style-type: disc;
  list-style-position: outside;
  margin-bottom: 5px;
}

ol.cmn_list {
  margin-left: 25px;
}
ol.cmn_list li {
  list-style-type: decimal;
  list-style-position: outside;
  margin-bottom: 5px;
}

/*---------------------
本文
---------------------*/
div.article_inner {
  padding: 0 10px;
}

.cmn_text {
  margin: 0;
  line-height: 2.2;
  font-size: 14px;
}

.i1em {
  text-indent: 1em;
}

.rm1em {
  margin-right: 1em;
  font-weight: inherit;
}

.bm1em {
  margin-bottom: 1em !important;
}

.cmn_narrowing {
  padding: 0 10px;
}

.notes {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
}
.notes .inner {
  text-indent: 0;
}

/*---------------------
フロートブロック
---------------------*/
div.textarea {
  float: left;
}
div.textarea .reverse {
  float: right;
}

div.imgarea {
  float: right;
  text-align: right;
}
div.imgarea .reverse {
  float: left;
  text-align: left;
}
div.imgarea img {
  vertical-align: top;
}

div.textarea.one_column,
div.imgarea.one_column {
  float: none;
}

/*---------------------
テーブル + はみ出し処理
---------------------*/
div.tablepane {
  width: 100%;
  overflow: visible;
}
div.tablepane table {
  width: auto;
  width: 100%;
  margin-top: 1px;
}

table.cmn_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #aaaaaa;
  font-size: 13px;
}
table.cmn_table.allcenter th {
  text-align: center !important;
  vertical-align: middle !important;
}
table.cmn_table.allcenter td {
  text-align: center !important;
  vertical-align: middle !important;
}
table.cmn_table tbody td,
table.cmn_table th {
  padding: 8px 8px 7px;
  border: 1px solid #aaaaaa;
  vertical-align: top;
}
table.cmn_table th {
  background-color: #faf8e6;
  font-weight: normal;
  text-align: left;
  color: #000000;
}
table.cmn_table thead th,
table.cmn_table th.thead,
table.cmn_table tr.head th {
  padding: 8px 10px 7px;
  background-color: #faf8e6;
  vertical-align: top;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #000000;
}
table.cmn_table thead tr.normal th {
  background-color: #faf8e6;
  font-weight: normal;
  text-align: left;
  color: #000000;
}

/*--------------------------
パーツ　タブレット
--------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  h3.cmn_title,
  .h3_style_title {
    right: 2px;
  }
}
/*--------------------------
パーツ　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  .cmn_divide_xl {
    margin-bottom: 7.81% !important;
  }

  .cmn_divide_l {
    margin-bottom: 6.25% !important;
  }

  .cmn_divide_m {
    margin-bottom: 4.7% !important;
  }

  .cmn_divide_s {
    margin-bottom: 3.125% !important;
  }

  .cmn_divide_xs {
    margin-bottom: 1.56% !important;
  }

  /*---------------------
  タイトル
  ---------------------*/
  h3.cmn_title,
  .h3_style_title {
    background: url(../img/parts/ribbon_y_sp_m.png) repeat-x center bottom;
    -moz-background-size: 1px 11px;
    -o-background-size: 1px 11px;
    -webkit-background-size: 1px 11px;
    background-size: 1px 11px;
    line-height: 1.3;
    font-size: 19px;
    font-weight: bold;
  }
  h3.cmn_title:before,
  .h3_style_title:before {
    content: "";
    display: inline-block;
    position: relative;
    background-repeat: no-repeat;
    background-position: 0 center;
    position: absolute;
    bottom: 0;
    left: -43px;
    width: 50px;
    height: 11px;
    background: url(../img/parts/ribbon_y_sp_l.png) no-repeat left bottom;
    -moz-background-size: 50px 11px;
    -o-background-size: 50px 11px;
    -webkit-background-size: 50px 11px;
    background-size: 50px 11px;
    z-index: 1;
  }
  h3.cmn_title:after,
  .h3_style_title:after {
    content: "";
    display: inline-block;
    position: relative;
    background-repeat: no-repeat;
    background-position: 0 center;
    position: absolute;
    bottom: 0;
    right: -43px;
    width: 50px;
    height: 11px;
    background: url(../img/parts/ribbon_y_sp_r.png) no-repeat right bottom;
    -moz-background-size: 50px 11px;
    -o-background-size: 50px 11px;
    -webkit-background-size: 50px 11px;
    background-size: 50px 11px;
    z-index: 1;
  }

  h4.cmn_title span,
  .h4_style_title span {
    min-height: 18px;
    padding-left: 30px;
    line-height: 1.3;
    font-size: 19px;
    font-weight: bold;
  }
  h4.cmn_title span:before,
  .h4_style_title span:before {
    width: 20px;
    height: 27px;
    min-height: 1.3em;
    background: url(../img/parts/icon_flag_sp.png) no-repeat 0 center;
    -moz-background-size: 20px 27px;
    -o-background-size: 20px 27px;
    -webkit-background-size: 20px 27px;
    background-size: 20px 27px;
  }

  /*---------------------
  本文
  ---------------------*/
  div.article_inner {
    padding: 0;
    overflow: hidden;
  }

  .cmn_text {
    line-height: 1.7;
    font-size: 15px;
  }

  .cmn_narrowing {
    padding: 0;
  }

  /*---------------------
  フロートブロック
  ---------------------*/
  div.textarea,
  div.imgarea {
    float: none;
  }

  div.imgarea {
    margin-top: 2%;
  }

  /*---------------------
  テーブル + はみ出し処理
  ---------------------*/
  div.tablepane {
    width: 100%;
    max-width: 767px;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translateZ(0px);
  }
  div.tablepane table {
    width: auto;
    width: 100%;
  }
  div.tablepane table.wide {
    width: 747px;
  }
  div.tablepane table.wide li div,
  div.tablepane table.wide th div,
  div.tablepane table.wide td div {
    width: 100%;
    background-image: url(../../common/img/parts/transparent.gif);
    padding-right: 5px;
  }

  table.cmn_table {
    width: 100%;
    font-size: 15px;
  }
  table.cmn_table .td_type01 {
    background-color: #faf8e6;
    text-align: left;
  }
  table.cmn_table .td_type02 {
    text-align: right;
  }
  table.cmn_table td div.a23ex {
    width: 100%;
    background-image: url(../../common/img/parts/transparent.gif);
    padding-right: 5px;
  }
}
/*--------------------------
パンくず
--------------------------*/
.breadcrumb_navi {
  padding: 11px 0 13px;
}
.breadcrumb_navi .breadcrumb {
  width: 100%;
  margin: 0 auto;
}
.breadcrumb_navi ul {
  margin: 0;
  padding: 0;
}
.breadcrumb_navi ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.breadcrumb_navi ul li {
  display: inline;
  font-size: 12px;
}
.breadcrumb_navi ul li ~ li {
  padding-left: 0;
}
.breadcrumb_navi ul li ~ li:before {
  content: ">";
  position: relative;
  top: 0;
  width: 11px;
  padding-right: 5px;
}

.breadcrumb_navi ul li.home a,
html.svg .breadcrumb_navi ul li.home a {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  top: -1px;
  text-indent: 300%;
  white-space: nowrap;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: 0 0;
  width: 11px;
  height: 14px;
  background: url(../img/parts/icon_link10.svg) no-repeat 0 1px;
  -moz-background-size: 11px 11px;
  -o-background-size: 11px 11px;
  -webkit-background-size: 11px 11px;
  background-size: 11px 11px;
}

/*--------------------------
パンくず　svg代替
--------------------------*/
@media only screen and (-webkit-max-device-pixel-ratio: 2), only screen and (max-resolution: 2dppx) {
  .breadcrumb_navi ul li.home a {
    background: url(../img/parts/icon_link10.png) no-repeat 0 0;
    -moz-background-size: 11px 11px;
    -o-background-size: 11px 11px;
    -webkit-background-size: 11px 11px;
    background-size: 11px 11px;
  }
}
/*--------------------------
パンくず　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  .breadcrumb_navi,
  html.svg .breadcrumb_navi {
    padding: 15px 0 10px;
    background-color: #ffffff;
  }
  .breadcrumb_navi ul li,
  html.svg .breadcrumb_navi ul li {
    font-size: 13px;
  }
}
/*-------------------------------
---------------------------------
共通レイアウト 
---------------------------------
-------------------------------*/
div#container {
  position: relative;
}

#header {
  min-width: 1050px;
}
#header .header_inner {
  position: relative;
}
#header .header_inner .contents_inner.logo {
  padding-top: 25px;
  padding-bottom: 19px;
  background: url(../img/parts/audience.png) no-repeat 430px 6px;
}
#header .header_inner .contents_inner.logo:before {
  content: "";
  display: inline-block;
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background: url(../img/parts/rainbow.png) repeat center center;
}
#header .header_inner .contents_inner.logo h1 {
  position: relative;
  width: 330px;
  height: 67px;
  z-index: 10;
}

#gnavi {
  clear: both;
  position: relative;
  height: 76px;
  padding: 0 0 4px;
  background-color: #fff000;
}
#gnavi:before, #gnavi:after {
  content: "";
  display: inline-block;
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 center;
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background: url(../img/parts/rainbow.png) repeat center center;
}
#gnavi:before {
  display: none;
  top: 0;
}
#gnavi:after {
  bottom: 0;
}
#gnavi ul {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  zoom: 100%;
}
#gnavi ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}
#gnavi ul:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
#gnavi ul li {
  float: left;
  width: 171px;
  height: 100%;
  vertical-align: middle;
  border-right: 1px solid #000;
  border-left: 1px solid #000;
}
#gnavi ul li ~ li {
  border-left-width: 0;
}
#gnavi ul li.message, #gnavi ul li.cheer, #gnavi ul li.expo, #gnavi ul li.research {
  width: 172px;
}
#gnavi ul li a {
  display: block;
  width: 100%;
  height: 72px;
  text-indent: 300%;
  white-space: nowrap;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(../img/parts/navi_pc.png);
  font-weight: bold;
  -ms-word-break: break-all;
  word-break: break-all;
}
#gnavi ul li.current {
  background-color: #000;
}
#gnavi ul li.current a {
  background-color: #000;
  color: #fff;
}
#gnavi ul li.current a span {
  color: #fff;
}
#gnavi ul li.inactive {
  background-color: #bcbcbc;
}
#gnavi ul li.inactive a {
  background-color: #bcbcbc;
  color: #757575;
}
#gnavi ul li.inactive a span {
  color: #757575;
}
#gnavi ul li.message a {
  background-position: 0 0;
}
#gnavi ul li.message.current a, #gnavi ul li.message:hover a {
  background-position: 0 -72px;
}
#gnavi ul li.message.inactive a, #gnavi ul li.message.inactive:hover a {
  background-position: 0 -144px;
}
#gnavi ul li.runner a {
  background-position: -170px 0;
}
#gnavi ul li.runner.current a, #gnavi ul li.runner:hover a {
  background-position: -170px -72px;
}
#gnavi ul li.runner.inactive a, #gnavi ul li.runner.inactive:hover a {
  background-position: -170px -144px;
}
#gnavi ul li.volunteer a {
  background-position: -340px 0;
}
#gnavi ul li.volunteer.current a, #gnavi ul li.volunteer:hover a {
  background-position: -340px -72px;
}
#gnavi ul li.volunteer.inactive a, #gnavi ul li.volunteer.inactive:hover a {
  background-position: -340px -144px;
}
#gnavi ul li.cheer a {
  background-position: -510px 0;
}
#gnavi ul li.cheer.current a, #gnavi ul li.cheer:hover a {
  background-position: -510px -72px;
}
#gnavi ul li.cheer.inactive a, #gnavi ul li.cheer.inactive:hover a {
  background-position: -510px -144px;
}
#gnavi ul li.expo a {
  background-position: -681px 0;
}
#gnavi ul li.expo.current a, #gnavi ul li.expo:hover a {
  background-position: -681px -72px;
}
#gnavi ul li.expo.inactive a, #gnavi ul li.expo.inactive:hover a {
  background-position: -681px -144px;
}
#gnavi ul li.research a {
  background-position: -852px 0;
}
#gnavi ul li.research.current a, #gnavi ul li.research:hover a {
  background-position: -852px -72px;
}
#gnavi ul li.research.inactive a, #gnavi ul li.research.inactive:hover a {
  background-position: -852px -144px;
}

#sns {
  position: absolute;
  top: 0;
  width: 100%;
  padding-top: 19px;
}
#sns ul.socialList {
  margin: 0;
  padding: 0;
  float: right;
  min-height: 30px;
  max-height: 32px;
  overflow: hidden;
  zoom: 100%;
}
#sns ul.socialList li {
  margin: 0;
  padding: 0;
  list-style: none;
}
#sns ul.socialList:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
#sns ul.socialList li {
  float: left;
}
#sns ul.socialList li ~ li {
  padding-left: 10px;
}
#sns ul.socialList li .fb_iframe_widget span {
  vertical-align: top !important;
}
#sns h2.logo_official {
  clear: right;
  padding-top: 2px;
}
#sns h2.logo_official img {
  float: right;
}

#contentsfield {
  width: 100%;
}

.contents_inner {
  width: 1030px;
  margin: 0 auto;
}
.gnavi_center {
  width: 859px;
}
.past {
  padding: 20px 0 0;
}
.past .past_info {
  display: inline-block;
  border: 2px solid #fff000;
  background: #fffcca;
  width: 100%;
  padding: 8px 13px;
  text-align: center;
}

.lead {
  padding: 46px 0 20px;
  text-align: center;
}
.lead strong {
  display: block;
  margin-top: 33px;
  line-height: 1.8;
  font-size: 20px;
  font-weight: bold;
}
.lead p {
  margin-top: 33px;
  line-height: 2;
  text-align: left;
  font-size: 16px;
}
.lead p ~ p {
  margin-top: 1em;
}

#pageBottom {
  position: fixed;
  right: 11px;
  bottom: 14px;
  z-index: 99999;
}
#pageBottom a {
  display: block;
  width: 49px;
  height: 49px;
  text-indent: 300%;
  white-space: nowrap;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(../img/parts/page_top.png);
}
#pageBottom a:hover {
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
#pageBottom a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #pageBottom a:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  #pageBottom a:hover img {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  }
}
@media only screen and (max-width: 767px) {
  #pageBottom a:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  #pageBottom a:hover img {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  }
}

#footer {
  position: relative;
  min-width: 1050px;
  background-color: #08086c;
  color: #ffffff;
}
#footer .footer_inner {
  width: 1030px;
  margin: 0 auto;
  padding: 21px 10px 23px;
}
#footer .footer_inner div.copyright {
  text-align: center;
}
#footer .footer_inner div.copyright small {
  display: inline-block;
  line-height: 1.5;
  font-size: 12px;
}

/*--------------------------
共通レイアウト 　タブレット
--------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header {
    min-width: 768px;
  }
  #header .header_inner .contents_inner.logo {
    padding-top: 37px;
    padding-bottom: 27px;
    padding-left: 2px;
    background: url(../img/parts/audience_tb.png) no-repeat 297px 6px;
  }
  #header .header_inner .contents_inner.logo:before {
    background: url(../img/parts/rainbow_tb.png) repeat center center;
  }
  #header .header_inner .contents_inner.logo h1 {
    width: 283px;
    height: 52px;
  }
  #header .header_inner .contents_inner.logo h1 a {
    display: inline-block;
    width: 283px;
    height: 52px;
    background: url(../img/parts/logo_tb.png) no-repeat 0 0;
    overflow: hidden;
  }
  #header .header_inner .contents_inner.logo h1 a img {
    visibility: hidden;
  }

  .contents_inner {
    width: 748px;
  }
  .gnavi_center {
    width: 624px;
  }

  #gnavi {
    width: 100%;
    height: 90px;
  }
  #gnavi:before, #gnavi:after {
    background: url(../img/parts/rainbow_tb.png) repeat center center;
  }
  #gnavi ul {
    position: relative;
    height: auto;
  }
  #gnavi ul li {
    display: block;
    height: auto;
  }
  #gnavi ul li a {
    height: 86px;
    background-image: url(../img/parts/navi_tb.png);
  }
  #gnavi ul li.message {
    width: 111px;
  }
  #gnavi ul li.message a {
    background-position: 0 0;
  }
  #gnavi ul li.message.current a, #gnavi ul li.message.current:hover a {
    background-position: 0 -86px;
  }
  #gnavi ul li.message:hover a {
    background-position: 0 0;
  }
  #gnavi ul li.message.inactive a, #gnavi ul li.message.inactive:hover a {
    background-position: 0 -172px;
  }
  #gnavi ul li.runner {
    width: 124px;
  }
  #gnavi ul li.runner a {
    background-position: -109px 0;
  }
  #gnavi ul li.runner.current a, #gnavi ul li.runner.current:hover a {
    background-position: -109px -86px;
  }
  #gnavi ul li.runner:hover a {
    background-position: -109px 0;
  }
  #gnavi ul li.runner.inactive a, #gnavi ul li.runner.inactive:hover a {
    background-position: -109px -172px;
  }
  #gnavi ul li.volunteer {
    width: 125px;
  }
  #gnavi ul li.volunteer a {
    background-position: -232px 0;
  }
  #gnavi ul li.volunteer.current a, #gnavi ul li.volunteer.current:hover a {
    background-position: -232px -86px;
  }
  #gnavi ul li.volunteer:hover a {
    background-position: -232px 0;
  }
  #gnavi ul li.volunteer.inactive a, #gnavi ul li.volunteer.inactive:hover a {
    background-position: -232px -172px;
  }
  #gnavi ul li.cheer {
    width: 154px;
  }
  #gnavi ul li.cheer a {
    background-position: -356px 0;
  }
  #gnavi ul li.cheer.current a, #gnavi ul li.cheer.current:hover a {
    background-position: -356px -86px;
  }
  #gnavi ul li.cheer:hover a {
    background-position: -356px 0;
  }
  #gnavi ul li.cheer.inactive a, #gnavi ul li.cheer.inactive:hover a {
    background-position: -356px -172px;
  }
  #gnavi ul li.expo {
    width: 110px;
  }
  #gnavi ul li.expo a {
    background-position: -509px 0;
  }
  #gnavi ul li.expo.current a, #gnavi ul li.expo.current:hover a {
    background-position: -509px -86px;
  }
  #gnavi ul li.expo:hover a {
    background-position: -509px 0;
  }
  #gnavi ul li.expo.inactive a, #gnavi ul li.expo.inactive:hover a {
    background-position: -509px -172px;
  }
  #gnavi ul li.research {
    width: 124px;
  }
  #gnavi ul li.research a {
    background-position: -618px 0;
  }
  #gnavi ul li.research.current a, #gnavi ul li.research.current:hover a {
    background-position: -618px -86px;
  }
  #gnavi ul li.research:hover a {
    background-position: -618px 0;
  }
  #gnavi ul li.research.inactive a, #gnavi ul li.research.inactive:hover a {
    background-position: -618px -172px;
  }

  #sns {
    padding-top: 21px;
  }
  #sns h2.logo_official {
    padding-top: 4px;
  }

  div#contents {
    padding-bottom: 32px;
  }

  .lead {
    padding: 37px 0 22px;
  }
  .lead strong
  p {
    margin-top: 22px;
  }

  #footer {
    width: 100%;
    max-width: 1024px;
    min-width: 768px;
  }
  #footer .footer_inner {
    width: 100%;
  }
}
/*--------------------------
共通レイアウト 　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  .contents_inner {
    width: 100%;
  }

  #header {
    min-width: 320px;
  }
  #header .header_inner .contents_inner.logo {
    padding: 13px 10px 15px;
    background-image: none;
  }
  #header .header_inner .contents_inner.logo:before {
    height: 4px;
    background: url(../img/parts/rainbow_sp.png) repeat center center;
    -moz-background-size: 320px 1px;
    -o-background-size: 320px 1px;
    -webkit-background-size: 320px 1px;
    background-size: 320px 1px;
  }
  #header .header_inner .contents_inner.logo h1 {
    display: block;
    float: none;
    width: 221px;
    height: 41px;
  }
  #header .header_inner .contents_inner.logo h1 a {
    display: block;
    width: 221px;
    height: 41px;
    background: url(../img/parts/logo_sp.png) no-repeat 0 0;
    -moz-background-size: 221px 41px;
    -o-background-size: 221px 41px;
    -webkit-background-size: 221px 41px;
    background-size: 221px 41px;
    overflow: hidden;
  }
  #header .header_inner .contents_inner.logo h1 a img {
    visibility: hidden;
  }

  #gnavi {
    position: relative;
    height: auto;
    padding-top: 4px;
  }
  #gnavi:before, #gnavi:after {
    display: inline-block;
    background: url(../img/parts/rainbow_sp.png) repeat center center;
    -moz-background-size: 320px 1px;
    -o-background-size: 320px 1px;
    -webkit-background-size: 320px 1px;
    background-size: 320px 1px;
  }
  #gnavi ul {
    position: relative;
    height: auto;
  }
  #gnavi ul li {
    display: list-item;
    width: 50% !important;
    height: auto;
    border-top: 1px solid #000;
    border-right-width: 0;
    border-left-width: 0;
  }
  #gnavi ul li a {
    display: table;
    height: 100%;
    min-height: 52px;
    text-indent: 0px;
    white-space: normal;
    overflow: visible;
    background-image: none;
    text-decoration: none !important;
    font-size: 15px;
  }
  #gnavi ul li a span {
    display: table-cell;
    height: 52px;
    *height: auto;
    padding: 0;
    line-height: 1.3;
    text-align: center;
    vertical-align: middle;
    color: #000;
  }
  #gnavi ul li a span i {
    letter-spacing: -1px;
    font-style: normal;
  }
  #gnavi ul li.message, #gnavi ul li.volunteer, #gnavi ul li.expo {
    clear: left;
  }
  #gnavi ul li.message a, #gnavi ul li.volunteer a, #gnavi ul li.expo a {
    border-right: 0 solid #000;
  }
  #gnavi ul li.message, #gnavi ul li.runner {
    border-top: 0;
  }
  #gnavi ul li.runner, #gnavi ul li.cheer, #gnavi ul li.research {
    border-right: 0;
  }
  #gnavi ul li.runner a, #gnavi ul li.cheer a, #gnavi ul li.research a {
    position: relative;
    left: -1px;
    border-left: 1px solid #000;
  }

  #sns {
    overflow: hidden;
    position: relative;
    padding-top: 15px;
  }
  #sns ul {
    list-style: none outside none;
    float: left;
    margin: 0 0 0 0;
    padding: 0;
    position: relative;
    left: 50%;
  }
  #sns ul li {
    float: left;
    position: relative;
    left: -50%;
  }
  #sns ul.socialList {
    float: left;
    min-height: 0;
    max-height: none;
    overflow: visible;
  }
  #sns ul.socialList li ~ li {
    padding-left: 20px;
  }
  #sns h2.logo_official {
    clear: both;
    height: 34px;
    padding-top: 0;
    text-align: center;
  }
  #sns h2.logo_official a {
    display: inline-block;
    width: 122px;
    height: 34px;
    background: url(../img/parts/logo_official_sp.png) no-repeat 0 0;
    -moz-background-size: 122px 34px;
    -o-background-size: 122px 34px;
    -webkit-background-size: 122px 34px;
    background-size: 122px 34px;
    overflow: hidden;
  }
  #sns h2.logo_official a img {
    float: none;
    visibility: hidden;
  }

  div#wrapper {
    min-width: 320px;
    margin: auto;
  }

  div#contents {
    min-height: 0;
    padding: 0;
    padding-bottom: 50px;
  }

  #contentsfield {
    float: none;
    position: relative;
    width: 100%;
    margin-left: 0;
    overflow: visible;
  }

  #contents_area {
    max-width: none;
    min-height: 300px;
  }

  .past {
    padding: 15px 10px 0;
    text-align: center;
  }

  .lead {
    padding: 35px 10px 15px;
  }
  .lead div.contents_inner {
    overflow: hidden;
  }
  .lead strong {
    margin-top: 20px;
    font-size: 17px;
  }
  .lead p {
    margin-top: 20px;
    line-height: 1.7;
    font-size: 15px;
  }

  #pageBottom {
    right: 0;
    background-color: transparent;
  }
  #pageBottom:after {
    content: ".";
    display: block;
    margin-top: -1em;
    line-height: 1;
    color: transparent;
  }
  #pageBottom a {
    width: 54px;
    height: 54px;
    background-image: url(../img/parts/page_top_sp.png);
    -moz-background-size: 54px 54px;
    -o-background-size: 54px 54px;
    -webkit-background-size: 54px 54px;
    background-size: 54px 54px;
  }
  #pageBottom a img {
    visibility: hidden;
  }

  #footer {
    width: 100%;
    min-width: 320px;
    margin-left: 0;
    overflow: hidden;
  }
  #footer .footer_inner {
    width: 100%;
    padding: 20px 10px;
  }
  #footer .footer_inner div.copyright small {
    display: block;
    margin-bottom: 0;
    font-size: 9px;
  }
}
/*--------------------------
----------------------------
自由入力領域 アイコン制御
----------------------------
--------------------------*/
.differentiate_icon a,
html.svg .differentiate_icon a {
  /* デフォルト=内部リンク */
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  min-height: 13px;
  line-height: 1.5;
  padding-left: 17px;
  text-indent: -17px;
}
.differentiate_icon a.pdf,
html.svg .differentiate_icon a.pdf {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  min-height: 16px;
  line-height: 1.5;
}
.differentiate_icon a:before,
html.svg .differentiate_icon a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  top: -1px;
  left: 0;
  width: 13px;
  height: 13px;
  min-height: 1em;
  margin-right: 3px;
  background-position: 0 center;
  background-repeat: no-repeat;
  -webkit-background-size: 13px 13px !important;
  background-size: 13px 13px !important;
  vertical-align: middle;
  background-image: url(../img/parts/icon_link01.svg);
}
.differentiate_icon a[href^="http://"]:before, .differentiate_icon a[href^="https://"]:before,
html.svg .differentiate_icon a[href^="http://"]:before,
html.svg .differentiate_icon a[href^="https://"]:before {
  /* 絶対リンクなら */
  background-image: url(../img/parts/icon_link04.svg);
}
.differentiate_icon a[href^="http://www.kansai-u.ac.jp"]:before, .differentiate_icon a[href^="https://www.kansai-u.ac.jp"]:before, .differentiate_icon a[href*="kansai-u.ac.jp"]:before,
html.svg .differentiate_icon a[href^="http://www.kansai-u.ac.jp"]:before,
html.svg .differentiate_icon a[href^="https://www.kansai-u.ac.jp"]:before,
html.svg .differentiate_icon a[href*="kansai-u.ac.jp"]:before {
  /* 関大内へのリンクなら */
  background-image: url(../img/parts/icon_link03.svg);
}
.differentiate_icon a[href^="http://www.kansai-u.ac.jp/marathon/"]:before, .differentiate_icon a[href^="https://www.kansai-u.ac.jp/marathon/"]:before,
html.svg .differentiate_icon a[href^="http://www.kansai-u.ac.jp/marathon/"]:before,
html.svg .differentiate_icon a[href^="https://www.kansai-u.ac.jp/marathon/"]:before {
  /* サイト内リンクなら */
  background-image: url(../img/parts/icon_link01.svg);
}
.differentiate_icon a.textlnk[href$="jpg"]:before, .differentiate_icon a.textlnk[href$="JPG"]:before, .differentiate_icon a.textlnk[href$="jpeg"]:before, .differentiate_icon a.textlnk[href$="JPEG"]:before, .differentiate_icon a.textlnk[href$="gif"]:before, .differentiate_icon a.textlnk[href$="GIF"]:before, .differentiate_icon a.textlnk[href$="png"]:before, .differentiate_icon a.textlnk[href$="PNG"]:before,
html.svg .differentiate_icon a.textlnk[href$="jpg"]:before,
html.svg .differentiate_icon a.textlnk[href$="JPG"]:before,
html.svg .differentiate_icon a.textlnk[href$="jpeg"]:before,
html.svg .differentiate_icon a.textlnk[href$="JPEG"]:before,
html.svg .differentiate_icon a.textlnk[href$="gif"]:before,
html.svg .differentiate_icon a.textlnk[href$="GIF"]:before,
html.svg .differentiate_icon a.textlnk[href$="png"]:before,
html.svg .differentiate_icon a.textlnk[href$="PNG"]:before {
  /* 画像へのテキストリンク */
  background-image: url(../img/parts/icon_link01.svg);
}
.differentiate_icon a[href^="mailto:"]:before,
html.svg .differentiate_icon a[href^="mailto:"]:before {
  /* メールアドレス */
  background-image: url(../img/parts/icon_link08.svg);
}
.differentiate_icon a[href$="pdf"]:before, .differentiate_icon a[href$="PDF"]:before, .differentiate_icon a[href$="doc"]:before, .differentiate_icon a[href$="DOC"]:before, .differentiate_icon a[href$="docx"]:before, .differentiate_icon a[href$="DOCX"]:before, .differentiate_icon a[href$="xls"]:before, .differentiate_icon a[href$="XLS"]:before, .differentiate_icon a[href$="xlsx"]:before, .differentiate_icon a[href$="XLSX"]:before,
html.svg .differentiate_icon a[href$="pdf"]:before,
html.svg .differentiate_icon a[href$="PDF"]:before,
html.svg .differentiate_icon a[href$="doc"]:before,
html.svg .differentiate_icon a[href$="DOC"]:before,
html.svg .differentiate_icon a[href$="docx"]:before,
html.svg .differentiate_icon a[href$="DOCX"]:before,
html.svg .differentiate_icon a[href$="xls"]:before,
html.svg .differentiate_icon a[href$="XLS"]:before,
html.svg .differentiate_icon a[href$="xlsx"]:before,
html.svg .differentiate_icon a[href$="XLSX"]:before {
  /* ファイル=ダウンロード */
  background-image: url(../img/parts/icon_link05.svg);
}
.differentiate_icon a[href$="pdf"]:after, .differentiate_icon a[href$="PDF"]:after,
html.svg .differentiate_icon a[href$="pdf"]:after,
html.svg .differentiate_icon a[href$="PDF"]:after {
  content: "";
  display: inline-block;
  position: relative;
  top: -1px;
  width: 16px;
  height: auto;
  min-height: 16px;
  margin: 0 2px 0 1px;
  background: url(../img/parts/ico_pdf01.png) 0 center no-repeat;
  vertical-align: middle;
}

/*--------------------------
リンクアイコン設定　svg代替
--------------------------*/
@media only screen and (-webkit-max-device-pixel-ratio: 2), only screen and (max-resolution: 2dppx) {
  .differentiate_icon a {
    /* デフォルト=内部リンク */
    display: inline-block;
    vertical-align: middle;
    *vertical-align: auto;
    *zoom: 1;
    *display: inline;
  }
  .differentiate_icon a:before {
    background-image: url(../img/parts/icon_link01.png);
  }
  .differentiate_icon a[href^="http://"]:before, .differentiate_icon a[href^="https://"]:before {
    /* 絶対リンクなら */
    background-image: url(../img/parts/icon_link04.png);
  }
  .differentiate_icon a[href^="http://www.kansai-u.ac.jp"]:before, .differentiate_icon a[href^="https://www.kansai-u.ac.jp"]:before, .differentiate_icon a[href*="kansai-u.ac.jp"]:before {
    /* 関大内へのリンクなら */
    background-image: url(../img/parts/icon_link03.png);
  }
  .differentiate_icon a[href^="http://www.kansai-u.ac.jp/marathon/"]:before, .differentiate_icon a[href^="https://www.kansai-u.ac.jp/marathon/"]:before {
    /* サイト内リンクなら */
    background-image: url(../img/parts/icon_link01.png);
  }
  .differentiate_icon a.textlnk[href$="jpg"]:before, .differentiate_icon a.textlnk[href$="JPG"]:before, .differentiate_icon a.textlnk[href$="jpeg"]:before, .differentiate_icon a.textlnk[href$="JPEG"]:before, .differentiate_icon a.textlnk[href$="gif"]:before, .differentiate_icon a.textlnk[href$="GIF"]:before, .differentiate_icon a.textlnk[href$="png"]:before, .differentiate_icon a.textlnk[href$="PNG"]:before {
    /* 画像へのテキストリンク */
    background-image: url(../img/parts/icon_link01.png);
  }
  .differentiate_icon a[href^="mailto:"]:before {
    /* メールアドレス */
    background-image: url(../img/parts/icon_link08.png);
  }
  .differentiate_icon a[href$="pdf"]:before, .differentiate_icon a[href$="PDF"]:before, .differentiate_icon a[href$="doc"]:before, .differentiate_icon a[href$="DOC"]:before, .differentiate_icon a[href$="docx"]:before, .differentiate_icon a[href$="DOCX"]:before, .differentiate_icon a[href$="xls"]:before, .differentiate_icon a[href$="XLS"]:before, .differentiate_icon a[href$="xlsx"]:before, .differentiate_icon a[href$="XLSX"]:before {
    /* ファイル=ダウンロード */
    background-image: url(../img/parts/icon_link05.png);
  }
}
/*--------------------------
リンクアイコン設定　スマホ
--------------------------*/
@media only screen and (max-width: 767px) {
  .differentiate_icon a[href$="pdf"]:after, .differentiate_icon a[href$="PDF"]:after,
  html.svg .differentiate_icon a[href$="pdf"]:after,
  html.svg .differentiate_icon a[href$="PDF"]:after {
    height: 15px;
    background: url(../img/parts/ico_pdf01_sp.png) 0 0 no-repeat;
    -moz-background-size: 16px 15px;
    -o-background-size: 16px 15px;
    -webkit-background-size: 16px 15px;
    background-size: 16px 15px;
  }
}
/*--------------------------
----------------------------
colorbox
----------------------------
--------------------------*/
#cboxOverlay {
  z-index: 99998 !important;
}

#colorbox {
  z-index: 99999 !important;
}

/*-------------------------------
---------------------------------
clearfix
---------------------------------
-------------------------------*/
.clearfix {
  zoom: 100%;
}
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
