@charset "utf-8";

/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
   * メイン
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* -------------------------------------------------------------------------------------------------
   * セクショニング
/* ---------------------------------------------------------------------------------------------- */

#main {}

#main-contents {
  background: url("../../_images/_common/bg.png") repeat-y;
  background-position: top;
  background-size: cover;
}

#main-contents > .section {
  padding-top: 100px;
  padding-bottom: 100px;
}

#main-contents div.body {
  max-width: 1240px;
  padding:0 20px;
  margin: 0 auto;
  overflow: hidden;
}

#main-contents .column ~ .column {
  margin-top: 40px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {

 #main-contents div.body {
   max-width: 100%;
	 padding:0 20px;
	 margin: 0 auto;
	 overflow: hidden;
	}
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {

#main-contents > .section {
  padding-top: 50px;
  padding-bottom: 50px;
}

#main-contents div.body {
  max-width: 100%;
	padding:0 20px;
	margin: 0 auto;
	overflow: hidden;
}

#main-contents .column ~ .column {
  margin-top: 20px;
}

}

/* ****************************************************************************************************
   * ビジュアル
**************************************************************************************************** */
/* ----------------------------------------------------------------------------------------------------
   * 共通
/* ------------------------------------------------------------------------------------------------- */

body#layout-lower
.visual {
  background: url("../../_images/cases/visual.jpg") no-repeat;
  background-size: cover;
}

/* ----------------------------------------------------------------------------------------------------
   * タイトル
/* ------------------------------------------------------------------------------------------------- */

body#layout-lower
.visual .title::before {
  background: url("../../_images/cases/title.png") no-repeat;
  width: 249px;
  height: 36px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {

body#layout-lower
.visual .title::before {
  background: url("../../_images/cases/title.png") no-repeat;
  background-size: 125px 18px;
  width: 125px;
  height: 18px;
}

}


/* ****************************************************************************************************
   * 事例紹介
**************************************************************************************************** */
/* ----------------------------------------------------------------------------------------------------
   * 共通
/* ------------------------------------------------------------------------------------------------- */

.cases {
  position: relative;
}

.cases .body {}

#cases {
  padding-top: 70px !important;
  padding-bottom: 0 !important;
}

#cases-1 {
  padding-top: 0 !important;
}
#cases-2 {
  padding-top: 0 !important;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {

#cases {
  padding-top: 30px !important;
  padding-bottom: 0 !important;
}

}

/* ----------------------------------------------------------------------------------------------------
   * タイトル
/* ------------------------------------------------------------------------------------------------- */

.cases .title {
  position: relative;
  font-size: 40px;
  color:#004cc7;
  font-weight: bold;
  line-height: 1.8;
}

.cases .title-1 {
  position: relative;
  font-size: 30px;
  color:#333333;
  border-bottom:2px solid #004cc7;
  text-align: center;
  font-weight: bold;
  line-height: 1.8;
}

.cases .text {
  font-size: 18px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {

.cases .title {
  position: relative;
  font-size: 20px;
  color:#004cc7;
  font-weight: bold;
  line-height: 1.8;
}

.cases .title-1 {
  position: relative;
  font-size: 18px;
  color:#333333;
  border-bottom:2px solid #004cc7;
  text-align: center;
  font-weight: bold;
  line-height: 1.8;
}

.cases .text {
  font-size: 16px;
}

}

/* ----------------------------------------------------------------------------------------------------
   * 内容
/* ------------------------------------------------------------------------------------------------- */

.cases .contents {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
  position: relative;
  margin-top: 100px;
}

.cases .contents .content {
  width: 41%;
  order: 2;
}

.cases .content .item {
  border:1px solid #cfd9de;
  background: #fff;
  padding: 20px;
}

.cases .content .item ~ .item {
  margin-top: 20px;
}

.cases .content .item p.color-1 {
  color: #004cc7;
}


.cases .contents .images {
  position: relative;
  width: 55%;
  z-index: 1;
}

.cases .contents .images img {
  position: relative;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {

.cases .contents {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: space-between;
  position: relative;
  margin-top: 50px;
}

.cases .contents .content {
  width: 100%;
  order: 2;
  margin-top: 1em;
}
.cases .contents .images {
  position: relative;
  width: 100%;
  z-index: 1;
  margin-top: 0;
}

.cases .contents .images img {
  position: relative;
}

}

/* ----------------------------------------------------------------------------------------------------
   * リスト
/* ------------------------------------------------------------------------------------------------- */

.cases ul.layout-flex-3 {}

.cases ul.layout-flex-3 li {
  margin-bottom: 50px;
  padding: 0;
}

.cases ul.layout-flex-3 li .caption {
  text-align: center;
}

.cases ul.layout-flex-3 li .caption span {
  display: block;
  color: #004cc7;
  font-size: 18px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {

.cases ul.layout-flex-3 {}

.cases ul.layout-flex-3 li {
  width: 48%;
  margin-bottom: 50px;
  padding: 0;
}

.cases ul.layout-flex-3 li .caption {
  text-align: left;
  font-size: 14px;
}

.cases ul.layout-flex-3 li .caption span {
  display: block;
  color: #004cc7;
  font-size: 16px;
}

}

/* ----------------------------------------------------------------------------------------------------
   * テーブル
/* ------------------------------------------------------------------------------------------------- */

.cases table td {
  text-align: center;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {

.cases .scroll-hint > table {
  width: 820px;
  margin: 0;
}
.scroll-hint-icon-wrap {
  margin-top: 0 !important;
}

}