@charset "utf-8";
/* CSS Document */
.wrapper {
  padding-top: 80px;
}
.main {
  background: url("../images/jirei/main.jpg") no-repeat top center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 44vh;
}
.cont {
	padding: 80px 0 40px;
}
.main.flex {
  flex-direction: column;
  align-items: center;
  color: #fff;
  font-size: 40px;
  letter-spacing: 2px;
}
.main.flex img {
	width: 60px;
	margin-bottom: -10px;
}
.main.flex p {
	margin-top: -10px;
	font-weight: bold;
}
.txt {
  text-align: center;
  margin-bottom: 40px;
}
.case {
  margin-bottom: 120px;
}
h3 {
  font-size: 30px;
  color: #009FA8;
      margin-bottom: 30px;
  position: relative;
}
h3::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #0097A7;
  position: absolute;
  bottom: -10px;
  left: 0px;
}
h3 span {
  font-size: 24px;
}
h4 {
  font-size: 22px;
  margin-bottom: 10px;
}
h4 + p {
  font-size: 18px;
  margin-bottom: 40px;
}
.cont .flex {
  justify-content: space-between;
  flex-wrap: wrap;
}
.cont .flex-item {
	margin-bottom: 5px;
	width: 470px;
	position: relative;
}
.cont .flex-item.mae::before {
  position: absolute;
  content: "Before";
  top: 15px;
  left: 15px;
  background: #3E3A39;
  color: #fff;
  padding: 7px;
  border-radius: 40px;
  width: 150px;
  text-align: center;
  letter-spacing: 1px;
}
.cont .flex-item.icon-arrowBlueYoko::after {
  content: "";
  width: 16px;
  height: 24px;
  background-image: url(../images/jirei/icon-arrowBlueYoko.png);
  background-repeat: no-repeat;
  position: absolute;
  left: -30px;
  top: calc(50% - 12px);
  background-size: contain;
}
.cont .flex-item.icon-arrowBlackYoko::after {
  content: "";
  width: 16px;
  height: 24px;
  background-image: url("../images/jirei/icon-arrowBlackYoko.png");
  background-repeat: no-repeat;
  position: absolute;
  left: -30px;
  top: calc(50% - 12px);
  background-size: contain;
}
.cont .flex-item.ato::before {
  position: absolute;
  content: "After";
  top: 15px;
  left: 15px;
  background: #009FA8;
  color: #fff;
  padding: 7px;
  border-radius: 40px;
  width: 140px;
  text-align: center;
  letter-spacing: 1px;
}
.cont .case .txt1 {
  margin-bottom: 30px;
}
.cont .case2 .flex-item {
  width: 300px;
  position: relative;
}
.cont .case2 .flex {
	justify-content: space-between;
	margin-bottom: 35px;
}
.cont .case2 .flex2 {
	justify-content: center;
	margin-bottom: 5px;
}
.cont .case2 .flex2 .last {
  margin-left: 40px;
}
.cont .case5 .flex2 .flex-item {
  width: 300px;
}