@charset "UTF-8";
@import url("layout.css");
@import url("reset.css");
p {
  font-size: 108% !important;
}

/*: 見出し ::::::::::::::::::::::::::::::::::::::::::::::::::*/
h1, h2, h3, h4, h5, h6 {
  line-height: 1.5em;
}

/* --------- 色付き太字 ------------------------------ */
.h-type01 {
  color: #33485E;
  font-size: 172%;
}
.h-type01 img {
  vertical-align: middle;
  margin-right: 10px;
}

/* --------- 帯・白文字 ------------------------------ */
/* --------- カラー文字 ------------------------------ */
/* --------- 一部強調文字 ------------------------------ */
/* --------- 下線あり ------------------------------ */
/*: box ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* --------- 背景が白 ------------------------------ */
.box-type1 {
  background: #FFF;
  padding: 30px;
  /* SP */
}
@media (max-width: 768px) {
  .box-type1 {
    padding: 15px;
  }
}

/* --------- 背景がグレー ------------------------------ */
.box-type2 {
  background: #E9E9E9;
  padding: 15px;
}

/* --------- 背景なし、ラインのみ。 ------------------------------ */
.box-type3 {
  padding: 15px;
  border: 1px solid #999999;
}

/* --------- 内側15pxのみ ------------------------------ */
.box-type4 {
  padding: 0 15px;
}

/* --------- 内側30pxのみ ------------------------------ */
.box-type5 {
  padding: 0 30px;
}

/* --------- 背景が水色 ------------------------------ */
.box-lightblue {
  background: #C8E8F7;
  padding: 30px;
  /* SP */
}
@media (max-width: 768px) {
  .box-lightblue {
    padding: 15px;
  }
}

/* --------- 背景が赤色 ------------------------------ */
.box-red {
  background: #FFE1E2;
  padding: 15px;
  /* SP */
}
@media (max-width: 768px) {
  .box-red {
    padding: 15px;
  }
}

/*: 装飾 ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* --------- 角丸だけ ------------------------------ */
.rounded {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

/*: link ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* --------- button ------------------------------ */
.link-type01 {
  background: url(../img/bg_type1.png) repeat-x bottom white;
  font-size: 115%;
  margin-bottom: 10px;
}
.link-type01 a {
  background: url(../img/../img/i_arrow_02_lightblue.png) no-repeat 15px center;
  border: #C8C8C8 1px solid;
  color: #000;
  display: block;
  text-decoration: none;
  padding: 15px 15px 15px 35px;
}
.link-type01 a.blank {
  background: url(../img/icon_blank_lightblue.png) no-repeat 15px center;
}
.link-type01:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.link-type02 {
  background: url(../img/bg_type1.png) repeat-x bottom white;
  font-size: 108%;
  margin-bottom: 10px;
}
.link-type02 a {
  background: url(../img/../img/i_arrow_02_lightblue.png) no-repeat 0.8em 1.3em;
  border: 1px solid #179FDD;
  color: #000;
  display: block;
  text-decoration: none;
  padding: 15px 15px 15px 35px;
}
.link-type02 a.blank {
  background: url(../img/icon_blank_lightblue.png) no-repeat 0.8em 1.3em;
}
.link-type02:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.link-type03 {
  background: url(../img/bg_type1.png) repeat-x bottom white;
  border: #C8C8C8 1px solid;
  list-style: none;
  border-radius: 5px;
  /* CSS3草案 */
  -webkit-border-radius: 5px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px;
  /* Firefox用 */
}
.link-type03 a {
  background: url(../img/../img/i_arrow_02_lightblue.png) no-repeat 95% center;
  color: #000;
  display: block;
  text-decoration: none;
  padding: 15px 35px 15px 15px;
}
.link-type03 a.blank {
  background: url(../img/../img/icon_blank_lightblue.png) no-repeat 95% center;
}

.link-type04 {
  background: url(../img/bg_lightblue.png) repeat-x bottom #26c9ff;
  font-size: 115%;
  margin-bottom: 10px;
}
.link-type04 a {
  background: url(../img/../img/i_arrow_02_lightblue.png) no-repeat 15px center;
  border: #C8C8C8 1px solid;
  color: #FFF;
  display: block;
  text-decoration: none;
  padding: 15px 15px 15px 35px;
}
.link-type04 a.blank {
  background: url(../img/../img/icon_blank_white.png) no-repeat 15px center;
}
.link-type04:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.link-type05 {
  background: #179FDD;
  font-size: 129%;
  margin-bottom: 10px;
}
.link-type05 a {
  background: url(../img/i_arrow_01.png) no-repeat 98% center;
  border: #C8C8C8 1px solid;
  color: #FFF;
  display: block;
  text-decoration: none;
  padding: 10px 15px;
}
.link-type05 a.blank {
  background: url(../img/icon_blank_white.png) no-repeat 98% center;
}
.link-type05 a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.link-type05.v2 {
  background: none;
  margin: 20px 0 30px;
  font-weight: bold;
  /* Landscape phones and down */
}
@media (max-width: 768px) {
  .link-type05.v2 {
    margin: 0 0 10px;
  }
}
.link-type05.v2 a {
  background: #179FDD;
  display: inline;
  /* Landscape phones and down */
}
@media (max-width: 768px) {
  .link-type05.v2 a {
    display: block;
  }
}
.link-type05.v2 a span {
  background: url(../img/i_arrow_01.png) no-repeat right center;
  padding-right: 20px;
  /* Landscape phones and down */
}
@media (max-width: 768px) {
  .link-type05.v2 a span {
    display: block;
  }
}
.link-type05.v2 a.blank span {
  background-image: url(../img/icon_blank_white.png) !important;
}

/*　リンク
-----------------------------------*/
.link-arrow {
  background: url(../img/i_arrow_02_lightblue.png) left 0.2em no-repeat;
  padding: 0 0 0 20px;
}

.link-arrow-r {
  background: url(../img_common/arrow_01.png) right 0.45em no-repeat;
  padding: 0 8px 0 0;
}

.link-arrow-r:hover {
  background: url(../img_common/arrow_01_on.png) right 0.45em no-repeat;
}

.link-arrow02:hover {
  background: url(../img_common/arrow_01_on.png) left 0.45em no-repeat;
}

.link-opacity:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.link-opacity02:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

/* --------- back/next ------------------------------ */
.link-back {
  background: url(../img/i_arrow01_blue_type2_back.png) no-repeat left center;
  line-height: 1em;
  padding: 0 0 0 15px;
  text-decoration: none;
}
.link-back:hover {
  background-image: url(../img/i_arrow01_type2_back.png);
}

/* --------- icon ------------------------------ */
.blank {
  background: url(../img/icon_blank_lightblue.png) left 0.2em no-repeat;
  padding: 0 0 0 20px;
}
.blank:hover {
  background-image: url(../img/icon_blank_black.png);
}

a.pdf {
  background: url(../img/i_pdf.png) left center no-repeat !important;
  padding: 15px 25px;
  line-height: 2em;
}

/*: list ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　リストスタイルなし ------------------------------ */
ul.none {
  list-style: none;
}

/* ---------　ul type1（default） ------------------------------ */
ul.type1 {
  list-style: disc;
  padding-left: 25px;
}

/* ---------　type2 ------------------------------ */
ul.type2 a {
  background: url(../img/i_arrow_02_lightblue.png) left 0.2em no-repeat;
  padding: 0 0 0 20px;
}

ul.type2 a:hover {
  background: url(../img_common/arrow_01_on.png) left 0.45em no-repeat;
}

/* ---------　※用 ------------------------------ */
ul.type3 {
  list-style: none;
  margin-left: 1.0em;
}

ul.type3 li {
  text-indent: -1.0em;
}

/* ---------　(数字）用 ------------------------------ */
ul.type4 {
  list-style: none;
}

ul.type4 > li {
  padding-left: 1.9em;
  text-indent: -1.9em;
}

/* ---------　アンカーリンク用 ------------------------------ */
ul.type5 {
  list-style: none;
  zoom: 1;
  overflow: hidden;
}
ul.type5 > li {
  display: inline-block;
  float: left;
}
ul.type5 > li a {
  background: url(../img/i_arrow_04_lightblue.png) no-repeat left center;
  padding-left: 20px;
  line-height: 2em;
  white-space: nowrap;
  display: inline-block;
  padding-right: 30px;
}

/* ---------　ol type1（default） 数字 ------------------------------ */
ol.type1 {
  list-style: decimal;
  padding-left: 20px;
}

/* ---------　ol type2 カタカナ ------------------------------ */
ol.type2 {
  list-style: katakana;
  padding-left: 30px;
}

/* ---------　liにスペースをつける ------------------------------ */
.list-space03b > li {
  margin-bottom: 3px;
}

.list-space05b > li {
  margin-bottom: 5px;
}

.list-space10b > li {
  margin-bottom: 10px;
}

.list-space20b > li {
  margin-bottom: 20px;
}

/*: indent ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　(数字）用 ------------------------------ */
.indent-type1 {
  padding-left: 1.9em;
  text-indent: -1.9em;
}

/*: .block ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　.block ------------------------------ */
.block {
  display: block;
}

.inline {
  display: inline;
}

/* ---------　.normal ------------------------------ */
.normal {
  font-weight: normal !important;
}

/*: float ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　float ------------------------------ */
.float-l {
  float: left;
}

.float-r {
  float: right;
}

/* ---------　img ------------------------------ */
.img-l {
  float: left;
  margin: 0 20px 20px 0;
}

.img-r {
  float: right;
  margin: 0 0 20px 20px;
}

.img-c {
  text-align: center !important;
  margin: 0 0 20px 10px;
}

.vertical-middle {
  vertical-align: middle;
}

/* ---------　clear ------------------------------ */
.clearfix {
  zoom: 1;
  overflow: hidden;
}

.clear-all {
  clear: both;
}

*:after {
  display: block;
  clear: both;
}

.clear-l {
  clear: left;
}

.clear-r {
  clear: right;
}

.of-hide {
  overflow: hidden;
}

/*: border ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　dotted top ------------------------------ */
.b-dot-top {
  border-top: 1px dotted #999;
}

@media (max-width: 767px) {
  .b-dot-top-xs {
    border-top: 1px dotted #555;
  }
}
@media (max-width: 767px) {
  .b-dot-top-xs-space20t {
    border-top: 1px dotted #555;
    padding-top: 20px;
  }
}
/* ---------　dotted bottom ------------------------------ */
.line-dot-b {
  background: url(../img_common/bk-line_02.gif) bottom repeat-x;
  padding: 0 0 40px 0;
  margin: 0 0 40px 0;
}

/*: table ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　default ------------------------------ */
#contents table.type1 {
  border: 1px solid #999999;
  padding: 8px 8px;
}
#contents table.type1 th {
  background: #FFF;
  border: 1px solid #999999;
  color: #666;
  font-weight: bold;
  padding: 15px;
}
#contents table.type1 th.type1 {
  background: #1C6FB2;
  color: #FFF;
}
#contents table.type1 th.type2 {
  background: #F0F0F0;
  color: #666;
  font-weight: bold;
}
#contents table.type1 th.type3 {
  background: url(../img_common/bk_blue.gif);
  color: #FFF;
}
#contents table.type1 th.type4 {
  background: #EFEBD7;
}
#contents table.type1 td {
  border: 1px solid #999999;
  padding: 15px;
}
#contents table.type1 td.type1 {
  background: #EEF4FC;
}
#contents table.type1 td.type2 {
  background: #F0F0F0;
}
#contents table.type1 td.type3 {
  background: #D6E4F8;
}
#contents table.type1 td.type4 {
  background: #EFEBD7;
}
#contents table.type1 .none {
  background: none !important;
  border: none !important;
}
#contents table.type1 .column2 {
  width: 50%;
}
#contents table.type1 .column3 {
  width: 33%;
}
#contents table.type1 .column4 {
  width: 25%;
}
#contents table.type1 .column5 {
  width: 20%;
}
@media (min-width: 1200px) {
  #contents table.type1.width100 {
    width: 100%;
  }
}
@media (min-width: 768px) and (max-width: 1200px) {
  #contents table.type1.width100 {
    width: 100%;
  }
}
@media (max-width: 767px) {
  #contents table.type1.width100 {
    width: 100%;
  }
}

/*: space ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* ---------　top ------------------------------ */
.space00t {
  margin-top: 0 !important;
}

.space05t {
  margin-top: 5px !important;
}

.space10t {
  margin-top: 10px !important;
}

.space15t {
  margin-top: 15px !important;
}

.space20t {
  margin-top: 20px !important;
}

.space30t {
  margin-top: 30px !important;
}

.space40t {
  margin-top: 40px !important;
}

.space50t {
  margin-top: 50px !important;
}

.space60t {
  margin-top: 60px !important;
}

/* ---------　bottom ------------------------------ */
.space00b {
  margin-bottom: 0 !important;
}

.space05b {
  margin-bottom: 5px !important;
}

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

.space15b {
  margin-bottom: 15px !important;
}

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

.space25b {
  margin-bottom: 25px !important;
}

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

.space35b {
  margin-bottom: 35px !important;
}

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

.space45b {
  margin-bottom: 45px !important;
}

.space50b {
  margin-bottom: 50px !important;
}

.space55b {
  margin-bottom: 55px !important;
}

.space60b {
  margin-bottom: 60px !important;
}

.space65b {
  margin-bottom: 65px !important;
}

.space70b {
  margin-bottom: 70px !important;
}

.space75b {
  margin-bottom: 75px !important;
}

.space80b {
  margin-bottom: 80px !important;
}

/* ---------　left ------------------------------ */
.space05l {
  margin-left: 5px !important;
}

.space10l {
  margin-left: 10px !important;
}

.space20l {
  margin-left: 20px !important;
}

.space25l {
  margin-left: 25px !important;
}

.space30l {
  margin-left: 30px !important;
}

/* ---------　right ------------------------------ */
.space00r {
  margin-right: 0 !important;
}

.space05r {
  margin-right: 5px !important;
}

.space10r {
  margin-right: 10px !important;
}

.space20r {
  margin-right: 20px !important;
}

.space30r {
  margin-right: 30px !important;
}

.space40r {
  margin-right: 40px !important;
}

/* ---------　xs ------------------------------ */
@media (max-width: 767px) {
  .space00b-xs {
    margin-bottom: 0 !important;
  }

  .space05b-xs {
    margin-bottom: 5px !important;
  }

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

  .space15b-xs {
    margin-bottom: 15px !important;
  }

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

  .space25b-xs {
    margin-bottom: 25px !important;
  }

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

  .space05l-xs {
    margin-left: 5px !important;
  }

  .space10l-xs {
    margin-left: 10px !important;
  }

  .space20l-xs {
    margin-left: 20px !important;
  }

  .space25l-xs {
    margin-left: 25px !important;
  }

  .space30l-xs {
    margin-left: 30px !important;
  }

  .space00r-xs {
    margin-right: 0 !important;
  }

  .space05r-xs {
    margin-right: 5px !important;
  }

  .space10r-xs {
    margin-right: 10px !important;
  }

  .space20r-xs {
    margin-right: 20px !important;
  }

  .space30r-xs {
    margin-right: 30px !important;
  }

  .space40r-xs {
    margin-right: 40px !important;
  }
}
@media only screen and (min-device-width: 320px) and (orientation: landscape) {
  .space10b-xs {
    margin-bottom: 10px !important;
  }

  .space20b-xs {
    margin-bottom: 20px !important;
  }
}
/*: font ::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* --------- color------------------------------ */
.blue {
  color: #1c5ab0 !important;
}

.pink {
  color: #EB4050 !important;
}

.bold {
  font-weight: bold !important;
}

.gray {
  color: #999999 !important;
}

.red {
  color: red !important;
}

.purple {
  color: #c27cc2 !important;
}

.black {
  color: black !important;
}

.key {
  color: #179FDD;
}

.orange {
  color: #FA7115;
}

.color-link a {
  color: #0040a9;
  text-decoration: underline;
}

.color-link a:hover {
  text-decoration: none;
}

/* --------- size ------------------------------ */
.font10 {
  font-size: 72% !important;
}

.font11 {
  font-size: 79% !important;
}

.font12 {
  font-size: 86% !important;
}

.font13 {
  font-size: 93% !important;
}

.font15 {
  font-size: 108% !important;
}

.font16 {
  font-size: 115% !important;
}

.font17 {
  font-size: 122% !important;
}

.font18 {
  font-size: 129% !important;
}

.font19 {
  font-size: 136% !important;
}

.font20 {
  font-size: 143% !important;
}

.font21 {
  font-size: 150% !important;
}

.font22 {
  font-size: 158% !important;
}

.font23 {
  font-size: 165% !important;
}

.font24 {
  font-size: 172% !important;
}

.font25 {
  font-size: 179% !important;
}

.font26 {
  font-size: 186% !important;
}

.font27 {
  font-size: 193% !important;
}

.font28 {
  font-size: 200% !important;
}

.font29 {
  font-size: 207% !important;
}

.font30 {
  font-size: 214% !important;
}

/* --------- size xs ------------------------------ */
@media (max-width: 767px) {
  .font10-xs {
    font-size: 72% !important;
  }

  .font11-xs {
    font-size: 79% !important;
  }

  .font12-xs {
    font-size: 86% !important;
  }

  .font13-xs {
    font-size: 93% !important;
  }

  .font15-xs {
    font-size: 108% !important;
  }

  .font16-xs {
    font-size: 115% !important;
  }

  .font17-xs {
    font-size: 122% !important;
  }

  .font18-xs {
    font-size: 129% !important;
  }

  .font19-xs {
    font-size: 136% !important;
  }

  .font20-xs {
    font-size: 143% !important;
  }

  .font21-xs {
    font-size: 150% !important;
  }

  .font22-xs {
    font-size: 158% !important;
  }

  .font23-xs {
    font-size: 165% !important;
  }

  .font24-xs {
    font-size: 172% !important;
  }

  .font25-xs {
    font-size: 179% !important;
  }

  .font26-xs {
    font-size: 186% !important;
  }

  .font27-xs {
    font-size: 193% !important;
  }

  .font28-xs {
    font-size: 200% !important;
  }

  .font29-xs {
    font-size: 207% !important;
  }

  .font30-xs {
    font-size: 214% !important;
  }
}
/* --------- text-align ------------------------------ */
.txt-r {
  text-align: right;
}

.txt-l {
  text-align: left;
}

.txt-c {
  text-align: center;
}

@media (max-width: 767px) {
  .txt-r-xs {
    text-align: right;
  }

  .txt-l-xs {
    text-align: left;
  }

  .txt-c-xs {
    text-align: center;
  }
}
.col-xs-1-5, .col-sm-1-5, .col-md-1-5, .col-lg-1-5,
.col-xs-2-5, .col-sm-2-5, .col-md-2-5, .col-lg-2-5,
.col-xs-3-5, .col-sm-3-5, .col-md-3-5, .col-lg-3-5,
.col-xs-4-5, .col-sm-4-5, .col-md-4-5, .col-lg-4-5 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.col-xs-1-5 {
  width: 20%;
  float: left;
}

.col-xs-2-5 {
  width: 40%;
  float: left;
}

.col-xs-3-5 {
  width: 60%;
  float: left;
}

.col-xs-4-5 {
  width: 80%;
  float: left;
}

@media (min-width: 768px) {
  .col-sm-1-5 {
    width: 20%;
    float: left;
  }

  col-sm-2-5 {
    width: 40%;
    float: left;
  }

  col-sm-3-5 {
    width: 60%;
    float: left;
  }

  col-sm-4-5 {
    width: 80%;
    float: left;
  }
}
@media (min-width: 992px) {
  .col-md-1-5 {
    width: 20%;
    float: left;
  }

  .col-md-2-5 {
    width: 40%;
    float: left;
  }

  .col-md-3-5 {
    width: 60%;
    float: left;
  }

  .col-md-4-5 {
    width: 80%;
    float: left;
  }
}
@media (min-width: 1200px) {
  .col-lg-1-5 {
    width: 20%;
    float: left;
  }

  .col-lg-2-5 {
    width: 40%;
    float: left;
  }

  .col-lg-3-5 {
    width: 60%;
    float: left;
  }

  .col-lg-4-5 {
    width: 80%;
    float: left;
  }
}
