@charset "UTF-8";
/**=========================================
* NAME:module.css
* OUTLINE:各パーツのスタイルの詳細を記述します;
*
* 1.CONTENTS_LIST
* 2.CONTACT_BLOCK
* 3.LOWER_TITLE
* 4.LOCAL_NAVIGATION
* 5.2_COLUMN_BLOK
* 6.SECTION01
* 7.SECTION02
* 8.TABLE
* SP1.SMART_PHONE-640
* SP2.SMART_PHONE-480
=========================================*/
/**=========================================
* 1.CONTENTS_LIST
* * コンテンツリストのスタイルを記述します。
=========================================*/
.contents_list {
  background-image: url(/saikaihatsu/common/img/link_image/link_image_bg.jpg);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}
.contents_list .section-container {
  width: 945px;
}
.contents_list .contents_list-block {
  margin: 95px 0 42px 0;
}
.contents_list .block_item {
  width: 290px;
  height: auto;
  box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.05);
  background-color: #fff;
}
.contents_list .block_item a {
  background-image: url(/saikaihatsu/common/img/link_image/link_right_arrow.png);
  background-repeat: no-repeat;
  background-position: right bottom;
}
.contents_list .img-block_item {
  margin: 3px 3px 0;
  border-bottom: 3px solid #f4a900;
  width: 284px;
  height: 169px;
}
.contents_list .content-block_item h2 {
  text-align: center;
}
.contents_list .content-block_item p {
  margin-top: 24px;
  min-height: 88px;
  font-size: 14px;
  line-height: 22px;
}
.contents_list .content-block_item-container {
  padding: 35px 40px 42px 40px;
}

/**=========================================
* 2.CONTACT_BLOCK
* * コンタクトブロックのスタイルを記述します。
=========================================*/
/* for_bg-wrapper */
.bg_white-wrapper {
  background-color: #fbfbfb;
}

.contact_info {
  background-image: url(/saikaihatsu/common/img/bg_wrapper.png);
  background-repeat: repeat;
  background-position: center top;
}
.contact_info .section-container {
  width: 920px;
}
.contact_info .contact_info-block {
  margin: 95px 0;
  padding: 50px 100px 45px;
  border: 2px solid #e1e3e6;
  background-color: #fff;
}
.contact_info .content-block_item {
  margin-top: 27px;
}
.contact_info .contact_info-name {
  float: left;
  width: 320px;
}
.contact_info .contact_info-detail {
  float: left;
  margin-left: 54px;
  width: 311px;
}

/**=========================================
* 3.LOWER_TITLE
* * 下層ページタイトルのスタイルを記述します。
=========================================*/
.main_title_container {
  height: 240px;
  background-image: url(/saikaihatsu/common/img/page_title_bg.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}

.main_title {
  margin: 0 auto;
  padding-top: 102px;
  width: 920px;
}

/**=========================================
* 4.LOCAL_NAVIGATION
* * 下層ナビゲーションのスタイルを記述します。
=========================================*/
.local-nav {
  margin: 68px auto 0;
  border-bottom: 1px solid #d5d5d5;
  padding-bottom: 95px;
  width: 920px;
}
.local-nav > ul {
  margin-left: -25px;
}
.local-nav .local-nav-item {
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.05);
  margin-left: 25px;
  border: 1px solid #deddd9;
  width: 290px;
}
.local-nav .local-nav-item > a {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: 3px solid #f4a900;
}
.local-nav .img-block {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
  width: 100%;
  height: 158px;
}
.local-nav .img-block img {
  background-color: #fff;
  position: absolute;
  width: 100%;
  height: auto;
}

/**=========================================
* 5.2_COLUMN_BLOK
* * 2カラムブロックのスタイルを記述します。
=========================================*/
.column2-block {
  overflow: hidden;
  width: 100%;
}
.column2-block .block_item {
  position: relative;
  float: left;
  width: 470px;
}
.column2-block .block_item-right {
  float: right;
  width: 410px;
}

.bg-wrapper-white {
  background-image: url(/saikaihatsu/common/img/bg_wrapper.png);
  background-repeat: repeat;
  background-position: center top;
}

.bg-wrapper-gray {
  background-image: url(/saikaihatsu/common/img/bg_wrapper_gray.png);
  background-repeat: repeat;
  background-position: center top;
}

/**=========================================
* 6.SECTION01
* * セクションのスタイルを記述します。
=========================================*/
.section-block01 {
  padding: 95px 40px;
}
.section-block01-title {
  text-align: center;
}
.section-block01-lead {
  padding-top: 34px;
  font-size: 16px;
  line-height: 1.75;
  text-align: center;
}
.section-block01-body {
  margin-top: 94px;
}

/**=========================================
* 7.SECTION02
* * セクションのスタイルを記述します。
=========================================*/
.section-block02 {
  margin-top: 40px;
  border-top: 1px dotted #d1d1d1;
  padding-top: 40px;
}
.section-block02:first-child {
  margin-top: 0;
  border-top: none;
  padding-top: 0;
}
.section-block02-title {
  padding-top: 53px;
}
.section-block02-title:first-child {
  padding-top: 0;
}
.section-block02-lead {
  padding-top: 23px;
  font-size: 14px;
  line-height: 2;
}
.section-block02-lead:first-child {
  margin-top: -7px;
  padding-top: 0;
}
.section-block02-list {
  margin-top: 22px;
}
.section-block02-list li {
  background: url(/saikaihatsu/common/img/list_style_disc.png) no-repeat left 6px;
  margin-top: 1px;
  padding-left: 15px;
  font-size: 14px;
  line-height: 1.85;
}
.section-block02-list li:first-child {
  margin-top: 0;
}

/**=========================================
* 8.TABLE
* * 表のスタイルを記述します。
=========================================*/
.table {
  border-collapse: separate;
  border-top: 1px solid #cacaca;
  width: 100%;
  text-align: left;
}
.table th {
  background-image: url(/saikaihatsu/common/img/bg_gray.png);
  background-repeat: repeat;
  background-position: left top;
  vertical-align: middle;
  border-bottom: 1px solid #cacaca;
  padding: 12px 0;
  font-size: 14px;
  line-height: 1.4;
  font-weight: normal;
  text-align: center;
}
.table th .letter-space {
  display: inline-block;
  margin-right: -1em;
  letter-spacing: 1em;
}
.table td {
  vertical-align: middle;
  border-bottom: 1px solid #cacaca;
  padding: 12px 14px;
  line-height: 1.4;
  text-align: left;
}

/**=========================================
* SP1.SMARTPHONE-640
* * スマートフォン用のスタイルを記述します。
=========================================*/
@media screen and (max-width: 640px) {
  /**=========================================
  * 1.CONTENTS_LIST
  =========================================*/
  .contents_list {
    background-image: url(/saikaihatsu/common/img/link_image/sp_link_image_bg.jpg);
  }
  .contents_list .section-container {
    width: 100%;
  }
  .contents_list .contents_list-block {
    margin: 0;
  }
  .contents_list .block_item {
    margin: 0 0 10.9375% 0;
    width: 100%;
    box-shadow: none;
  }
  .contents_list .block_item a {
    background-image: none;
  }
  .contents_list .img-block_item {
    margin: 0;
    border-top: 3px solid #f4a900;
    border-bottom: none;
    width: 100%;
    height: auto;
  }
  .contents_list .img-block_item img {
    position: static;
  }
  .contents_list .content-block_item {
    position: relative;
  }
  .contents_list .content-block_item:before {
    content: "";
    position: absolute;
    width: 97%;
    height: 100%;
    background-image: url(/saikaihatsu/common/img/link_image/sp_link_right_arrow.png);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 4%;
  }
  .contents_list .content-block_item h2 {
    text-align: left;
  }
  .contents_list .content-block_item p {
    margin-top: 4.0740740741%;
    min-height: 4.5em;
    font-size: 18px;
    line-height: 27px;
  }
  .contents_list .content-block_item-container {
    padding: 7.5% 10.9375% 7.5% 7.8125%;
    border-bottom: 1px solid #e8e8e8;
  }

  /**=========================================
  * 2.CONTACT_BLOCK
  =========================================*/
  .contact_info .section-container {
    width: 100%;
  }
  .contact_info .contact_info-block {
    margin: 0;
    padding: 0;
    border: none;
    border-top: 1px solid #b6d2e7;
    background-color: transparent;
  }
  .contact_info .content-block_item {
    margin-top: 0;
  }
  .contact_info .contact_info-title {
    padding: 10.9375% 7.8125% 0;
    width: 84.375%;
    background-color: #fff;
  }
  .contact_info .contact_info-name {
    float: none;
    padding: 6.09375% 7.8125% 9.21875%;
    width: 84.375%;
    background-color: #fff;
  }
  .contact_info .contact_info-detail {
    float: none;
    margin-left: 0;
    width: 100%;
    background-color: #f0f1f4;
  }
  .contact_info .contact_info-phone a {
    position: relative;
    display: block;
    padding: 5.78125% 7.8125% 5%;
    width: 84.375%;
  }
  .contact_info .contact_info-phone a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto 0;
    width: 5.625%;
    height: 25.7142857143%;
    background-image: url(/saikaihatsu/common/img/contact/sp_arrow_right.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .contact_info .contact_info-mail span {
    display: block;
    padding: 5.625% 7.8125%;
    border-top: 1px solid #fff;
    width: 84.375%;
  }

  /**=========================================
  * 3.LOWER_TITLE
  =========================================*/
  .main_title_container {
    background-image: url(/saikaihatsu/common/img/sp_page_title_bg.jpg);
    padding: 15% 7.8125% 15.625%;
    height: auto;
  }

  .main_title {
    padding-top: 0;
    width: 100%;
  }

  /**=========================================
  * 4.LOCAL_NAVIGATION
  =========================================*/
  .local-nav {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    border-bottom: none;
    padding: 12.03125% 7.8125% 0;
    width: 100%;
  }
  .local-nav > ul {
    display: table;
    margin-left: 0;
    width: 100%;
    height: 30%;
  }
  .local-nav .local-nav-item {
    float: none;
    position: relative;
    display: table-cell;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 0;
    width: 33%;
    height: 100%;
    box-shadow: none;
    border-top: none;
    border-right: none;
    border-left: 1px solid #deddd9;
    padding: 0 1px 1px;
    vertical-align: top;
  }
  .local-nav .local-nav-item:after {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: url(/saikaihatsu/img/feature/sp_link_arrow_bottom.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    width: 100%;
    height: 14.2045454545%;
  }
  .local-nav .local-nav-item:first-child {
    border-left: none;
  }
  .local-nav .local-nav-item.item01 {
    width: 32.962962963%;
  }
  .local-nav .local-nav-item.item01:after {
    border-left: none;
  }
  .local-nav .local-nav-item.item02 {
    width: 33.7037037037%;
  }
  .local-nav .local-nav-item.item03 {
    width: 33.3333333333%;
  }
  .local-nav .local-nav-item.item03:after {
    border-right: none;
  }
  .local-nav .local-nav-item > a {
    height: 100%;
  }
  .local-nav .img-block {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 10%;
    height: auto;
  }
  .local-nav .img-block img {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    max-width: 100%;
    vertical-align: top;
  }
  .local-nav .local-nav-item:first-child .img-block {
    border-left: none;
  }

  /**=========================================
  * 5.2_COLUMN_BLOK
  * * 2カラムブロックのスタイルを記述します。
  =========================================*/
  .column2-block .block_item {
    float: none;
    width: 100%;
  }
  .column2-block .block_item img {
    height: auto;
  }
  .column2-block .block_item-right {
    float: none;
    width: 100%;
  }
  .column2-block .block_item-right img {
    height: auto;
  }

  /**=========================================
  * 6.SECTION_BLOCK01
  =========================================*/
  .section-block01 {
    padding: 10.3125% 7.8125%;
  }
  .section-block01:first-child {
    padding-top: 14.0625%;
  }
  .section-block01-lead {
    padding-top: 4.0740740741%;
    font-size: 18px;
    line-height: 1.58;
  }
  .section-block01-body {
    margin-top: 13.5185185185%;
  }
  .section-block01 img {
    height: auto;
  }

  /**=========================================
  * 7.SECTION_BLOCK02
  =========================================*/
  .section-block02 {
    margin-top: 9.2592592593%;
    border-top: 1px solid #e9e9e9;
    padding-top: 9.2592592593%;
  }
  .section-block02:first-child {
    margin-top: 0;
    border-top: none;
    padding-top: 0;
  }
  .section-block02-title {
    padding-top: 9.2592592593%;
  }
  .section-block02-title:first-child {
    padding-top: 0;
  }
  .section-block02-lead {
    padding-top: 4.2592592593%;
    font-size: 18px;
    line-height: 1.58;
  }
  .section-block02-lead:first-child {
    margin-top: -1.2962962963%;
    padding-top: 0;
  }
  .section-block02-list {
    margin-top: 4.2592592593%;
  }
  .section-block02-list li {
    background: url(/saikaihatsu/common/img/list_style_disc.png) no-repeat left 3px;
    margin-top: 0%;
    padding-left: 15px;
    font-size: 18px;
    line-height: 1.58;
  }
  .section-block02-list li:first-child {
    margin-top: 0;
  }
  .section-block02 .block_item {
    margin-top: 0;
  }
  .section-block02 .block_item.block_item-right {
    margin-top: 4.2592592593%;
  }
  .section-block02 .block_item.block_item-image {
    margin-top: 4.2592592593%;
  }
  .section-block02 img {
    height: auto;
  }

  /**=========================================
  * 8.TABLE
  =========================================*/
  .table {
    width: 100%;
  }
  .table thead th {
    padding: 2.5% 3%;
  }
  .table thead td {
    padding: 2.5% 3%;
  }
  .table tr {
    width: 100%;
  }
  .table th {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.6% 3%;
  }
  .table td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.6% 3%;
  }
}
/**=========================================
* SP2.SMARTPHONE-480
* * スマートフォン用のスタイルを記述します。
=========================================*/
@media screen and (max-width: 480px) {
  /**=========================================
  * 1.CONTENTS_LIST
  =========================================*/
  .contents_list .content-block_item p {
    font-size: 12px;
    line-height: 18px;
  }

  /**=========================================
  * 6.SECTION01
  =========================================*/
  .section-block01-lead {
    font-size: 12px;
  }

  /**=========================================
  * 7.SECTION02
  =========================================*/
  .section-block02-lead {
    font-size: 12px;
  }
  .section-block02-list li {
    font-size: 12px;
  }

  /**=========================================
  * 8.TABLE
  =========================================*/
  .table tr th {
    font-size: 10px;
  }
  .table tr th .letter-space {
    font-size: 10px;
  }
  .table tr th .small {
    font-size: 8px;
  }
  .table tr td {
    font-size: 10px;
  }
}
