.contents {
  overflow: hidden;
  width: 100%;
  margin: 0 auto
}

.scond_contents {
  overflow: hidden;
  width: 100%;
  margin: 50 auto
}

.contents img, .scond_contents img {
	height: auto;
	max-width: 100%;
}

.contents p, .scond_contents p {
  margin-top: 20px;
  line-height: 2
}

.contents p:first-child, .scond_contents p:first-child {
  margin-top: 0
}

.contents h2, .scond_contents h2 {
  font-size: 3em;
  font-family: YakuHanMP, "Noto Serif Japanese", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN";
  font-weight: 600;
  text-align: center;
  line-height: 1.3;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .06em
}

[data-aos=fade-up] {
  -webkit-transform: translateY(25px);
  transform: translateY(25px)
}

.button-link, p.button-link {
  width: 320px;
  max-width: 100%;
  margin-top: 30px;
  line-height: 1.3
}

.button-link a, p.button-link a {
	display: block;
	padding: 12px 20px 13px;
	background: #7e735f;
	color: #fff;
	text-align: center;
	border-radius: 8px;
	-webkit-box-shadow: 0 6px 10px 0 rgba(4, 0, 0, .1);
	box-shadow: 0 6px 10px 0 rgba(4, 0, 0, .1);
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	font-weight: bold;
	border: 2px solid #7e735f;
}

.button-link.button-link_type_centering, p.button-link.button-link_type_centering {
  margin-right: auto;
  margin-left: auto
}

.button-link.button-link_type_small, p.button-link.button-link_type_small {
  width: 240px
}

.button-link.button-link_type_white a, p.button-link.button-link_type_white a {
  background: #fff;
  color: #7e735f;
}

.button-link.button-link_type_black a, p.button-link.button-link_type_black a {
  background: #7e735f;
  color: #fff;
}

.main-visual {
	position: relative;
	z-index: 1;
	max-width: 100%;
	background-color: #7e735f;
	/*background: #e3e3e3;*/
	padding-bottom: 70px;
}

.main-visual__eyecatch {
	width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
	/*padding: 215px 15px 265px;*/
	padding: calc(50vh - 250px) 15px calc(50vh - 200px);/* Editing calc(50vh - 155px) according to the height of the title */
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.main-visual__eyecatch p {
  margin-top: 30px;
  color: #fff;
  font-size: 1.583em
}

.main-visual__eyecatch__image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
  width: 100%;
  height: 100%;
  margin: 0 auto
}

.main-visual__eyecatch__image:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: #000;
  -webkit-animation: overlay 15s 1;
  animation: overlay 15s 1;
  opacity: .4;
  content: ""
}

.main-visual__eyecatch__image ul {
	position: relative;
	left: 50%;
	width: 100%;
	height: 100%
}

.main-visual__eyecatch__image ul>li {
  position: absolute;
  top: 0;
  left: 0;
  display: table;
  width: 100%;
  height: calc(100vh - 300px);
  opacity: 0;
  -webkit-animation: fade 15s infinite;
  animation: fade 15s infinite;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.main-visual__eyecatch__image ul>li:nth-child(1) {
  -webkit-animation-delay: -1.5s;
  animation-delay: -1.5s
}

.main-visual__eyecatch__image ul>li:nth-child(1) .main-visual__eyecatch__left span {
  -webkit-animation-delay: -1.5s;
  animation-delay: -1.5s;
  background: url(../jpg/main-visual-img-01@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(1) .main-visual__eyecatch__right span {
  -webkit-animation-delay: -1.5s;
  animation-delay: -1.5s;
  background: url(../jpg/main-visual-img-05@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(2) {
  -webkit-animation-delay: 3.5s;
  animation-delay: 3.5s
}

.main-visual__eyecatch__image ul>li:nth-child(2) .main-visual__eyecatch__left span {
  -webkit-animation-delay: 3.5s;
  animation-delay: 3.5s;
  background: url(../jpg/main-visual-img-03@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(2) .main-visual__eyecatch__right span {
  -webkit-animation-delay: 3.5s;
  animation-delay: 3.5s;
  background: url(../jpg/main-visual-img-06@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(3) {
  -webkit-animation-delay: 8.5s;
  animation-delay: 8.5s
}

.main-visual__eyecatch__image ul>li:nth-child(3) .main-visual__eyecatch__left span {
  -webkit-animation-delay: 8.5s;
  animation-delay: 8.5s;
  background: url(../jpg/main-visual-img-01@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(3) .main-visual__eyecatch__right span {
  -webkit-animation-delay: 8.5s;
  animation-delay: 8.5s;
  background: url(../jpg/main-visual-img-06@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(1) .main-visual__eyecatch__solo span {
  -webkit-animation-delay: -1.5s;
  animation-delay: -1.5s;
  background: url(../jpg/main-visual-img-01@2x.jpg) no-repeat center center;
  background-size: cover
}
.main-visual__eyecatch__image ul>li:nth-child(2) {
  -webkit-animation-delay: 3.5s;
  animation-delay: 3.5s
}

.main-visual__eyecatch__image ul>li:nth-child(2) .main-visual__eyecatch__solo span {
  -webkit-animation-delay: 3.5s;
  animation-delay: 3.5s;
  background: url(../jpg/main-visual-img-02@2x.jpg) no-repeat center center;
  background-size: cover
}

.main-visual__eyecatch__image ul>li:nth-child(3) {
  -webkit-animation-delay: 8.5s;
  animation-delay: 8.5s
}

.main-visual__eyecatch__image ul>li:nth-child(3) .main-visual__eyecatch__solo span {
  -webkit-animation-delay: 8.5s;
  animation-delay: 8.5s;
  background: url(../jpg/main-visual-img-01@2x.jpg) no-repeat center center;
  background-size: cover
}

p.main-visual__eyecatch__solo {
  overflow: hidden;
  position: relative;
  height: auto;
  min-height: 100%;
  margin-top: 0
}

p.main-visual__eyecatch__solo span {
  display: block;
  position: relative;
  width: 100%;
  height: calc(100vh - 230px);/*solo*/
}

p.main-visual__eyecatch__solo img {
  display: none
}
p.main-visual__eyecatch__left, p.main-visual__eyecatch__right {
  overflow: hidden;
  position: relative;
  height: auto;
  min-height: 100%;
  margin-top: 0
}

p.main-visual__eyecatch__left span, p.main-visual__eyecatch__right span {
  display: block;
  position: relative;
  width: 100%;
  height: calc(100vh - 160px)
}

p.main-visual__eyecatch__left img, p.main-visual__eyecatch__right img {
  display: none
}

@-webkit-keyframes fade {
  0% {
    opacity: 0
  }
  8% {
    opacity: 1
  }
  35% {
    opacity: 1
  }
  40% {
    opacity: 0
  }
  100% {
    opacity: 0
  }
}

@keyframes fade {
  0% {
    opacity: 0
  }
  8% {
    opacity: 1
  }
  35% {
    opacity: 1
  }
  40% {
    opacity: 0
  }
  100% {
    opacity: 0
  }
}

@-webkit-keyframes slidedown {
  0% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
  10% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  38% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  100% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
}

@keyframes slidedown {
  0% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
  10% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  38% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  100% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
}

@-webkit-keyframes slideup {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  10% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
  38% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@keyframes slideup {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  10% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
  38% {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@-webkit-keyframes overlay {
  0% {
    opacity: 0
  }
  8% {
    opacity: 0
  }
  20% {
    opacity: .4
  }
  100% {
    opacity: .4
  }
}

@keyframes overlay {
  0% {
    opacity: 0
  }
  8% {
    opacity: 0
  }
  20% {
    opacity: .4
  }
  100% {
    opacity: .4
  }
}

.main-visual__content {
  position: relative;
  z-index: 3;
  max-width: 1200px;
  margin: -70px auto 0;
  background: #fff
}

.main-visual__important {
  padding: 20px 30px;
  background: #ffe3e3;
  min-height: 70px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.main-visual__important>p, .main-visual__important>ul>li {
  padding: 3px 0 2px 40px;
  /*background: url(../../images/main-visual-important.png) no-repeat 0 3px;*/
  background-size: 24px auto;
  color: #c8143d;
  font-size: 1.333em
}

.main-visual__important>p+p, .main-visual__important>ul>li+li {
  margin-top: 10px
}

.main-visual__banner {
  background: #fff
}

.main-visual__lead {
  padding: 80px;
  color: #45494b;
  text-align: center
}

.main-visual__lead>h3 {
  color: #7e735f;
  font-size: 3em;
  line-height: 1.2;
  font-family: YakuHanMP, "Noto Serif Japanese", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN";
  font-weight: 600
}

.main-visual__banner+.main-visual__lead {
  border-top: 2px solid #e3e3e3
}

.introduction {
  padding-top: 70px;
  background: #f0f0f0
}

.introduction__title {
  color: #7e735f;
  font-size: 3em;
  font-family: YakuHanMP, "Noto Serif Japanese", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN";
  font-weight: 600;
  text-align: center;
  line-height: 1.3
}

.introduction__title~p {
  color: #45494b;
  text-align: center
}

.introduction__section {
  position: relative;
  margin-top: 50px;
  background: #f0f0f0;
  background: -webkit-linear-gradient(left, #f0f0f0 42%, #7e735f 42%);
  background: -webkit-gradient(linear, left top, right top, color-stop(42%, #f0f0f0), color-stop(42%, #7e735f));
  background: linear-gradient(to right, #f0f0f0 42%, #7e735f 42%)
}

.introduction__section+.introduction__section {
  margin-top: 0
}

.introduction__section .introduction__section__inner {
  overflow: hidden;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto
}

.introduction__section:nth-of-type(odd) {
    background: #7e735f;
    color: #fff;
    box-shadow: 2px 2px 5px 0 rgba(73,73,73,0.50);
    -webkit-box-shadow: 2px 2px 5px 0 rgba(73,73,73,0.50);
    padding-left: 10px;

}

.introduction__section:nth-of-type(odd) .introduction__content {
  float: right
}

.introduction__section:nth-of-type(odd) .introduction__img {
  float: left
}

.introduction__section:nth-of-type(odd) .introduction__img>img {
  position: relative
}

.introduction__section:nth-of-type(odd) .introduction__content__list>li span {
  border-bottom: 1px solid #ccc
}

.introduction__section:nth-of-type(odd) .introduction__content__list>li:before {
  background-image: url(../png/introduction-check-01.png);
}

.introduction__section:nth-of-type(even) {
    background: #fff;
    /*border-top: 1px solid #7e735f;
    border-bottom: 1px solid #7e735f;*/
    box-shadow: 2px 2px 5px 0 rgba(146,146,146,0.50);
    -webkit-box-shadow: 2px 2px 5px 0 rgba(146,146,146,0.50);
    padding-right: 10px;
}

.introduction__section:nth-of-type(even) .introduction__content__title {
	color: #7e735f
}

.introduction__section:nth-of-type(even) .introduction__content {
  float: left
}

.introduction__section:nth-of-type(even) .introduction__img {
  float: right
}

.introduction__section:nth-of-type(even) .introduction__img>img {
  position: relative
}

.introduction__section:nth-of-type(even) .introduction__content__list>li {
  color: #7e735f
}

.introduction__section:nth-of-type(even) .introduction__content__list>li span {
  border-bottom: 1px solid #7e735f
}

.introduction__section:nth-of-type(even) .introduction__content__list>li:before {
  background-image: url(../png/introduction-check-02.png);
}

.introduction__section:nth-of-type(1):after {
  position: absolute;
  right: -10px;
  top: 60px;
  width: 185px;
  height: 149px;
  /*background: url(../../images/introduction-num-01.png) no-repeat 0 0;*/
  background-size: 185px auto
}

.introduction__section:nth-of-type(2):after, .introduction__section:nth-of-type(4):after {
  position: absolute;
  left: 43%;
  top: 50px;
  width: 201px;
  height: 148px;
  /*background: url(../../images/introduction-num-02.png) no-repeat 0 0;*/
  background-size: 201px auto
}

.introduction__section:nth-of-type(3):after {
  position: absolute;
  right: -20px;
  top: 60px;
  width: 196px;
  height: 153px;
  /*background: url(../../images/introduction-num-03.png) no-repeat 0 0;*/
  background-size: 196px auto
}

.introduction__section:nth-of-type(4):after {
  width: 199px;
  height: 150px;
  /*background: url(../../images/introduction-num-04.png) no-repeat 0 0;*/
  background-size: 199px auto
}

.introduction__section:nth-of-type(1):after, .introduction__section:nth-of-type(2):after, .introduction__section:nth-of-type(3):after, .introduction__section:nth-of-type(4):after {
  content: ""
}

.introduction__content {
  width: 48.8%;
  max-width: 550px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.introduction__img {
  overflow: hidden;
  position: relative;
  width: 51.2%;
  margin: 60px 0px;
}

.introduction__img span {
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  width: 100%;
  height: 100%;
  background: #f5f5f5;
}

.introduction__content__title {
    position: relative;
    min-width: 425px;
    margin-top: 25px;
    font-size: 3em;
    font-family: YakuHanMP, "Noto Serif Japanese", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN";
    font-weight: 600;
    line-height: 1.2
}

.introduction__content__title>span {
    font-size: 1.4em
}

.introduction__content__list {
  margin-top: 25px;
  margin-bottom: 30px
}

.introduction__content__list>li {
  position: relative;
  margin-top: 10px;
  padding: 0 25px 0 1.3em;
  font-size: 1.667em;
  font-weight: 700
}

.introduction__content__list>li>span {
  padding-bottom: 5px
}

.introduction__content__list>li:before {
  display: block;
  position: absolute;
  top: .4em;
  left: 0;
  width: 18px;
  height: 17px;
  background: no-repeat 0 0;
  background-size: 18px auto;
  content: ""
}

.introduction2__title {
  color: #7e735f;
  font-size: 3em;
  font-family: YakuHanMP, "Noto Serif Japanese", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN";
  font-weight: 600;
  text-align: center;
  line-height: 1.3
}

.introduction2__title~p {
  color: #45494b;
  text-align: center
}

.introduction2__section {
    position: relative;
    margin-top: 0px;
    background: #f0f0f0;
    background: -webkit-linear-gradient(left, #f0f0f0 42%, #7e735f 42%);
    background: -webkit-gradient(linear, left top, right top, color-stop(42%, #f0f0f0), color-stop(42%, #7e735f));
    background: linear-gradient(to right, #f0f0f0 42%, #7e735f 42%)
}

.introduction2__section+.introduction2__section {
  margin-top: 0
}

.introduction2__section .introduction2__section__inner {
    overflow: hidden;
    width: auto;
    margin-bottom: 80px;
    margin-top: 5px;
}

.introduction2__section:nth-of-type(odd) {
    background: #7e735f;
    color: #fff;
    box-shadow: 2px 2px 5px 0 rgba(73,73,73,0.50);
    -webkit-box-shadow: 2px 2px 5px 0 rgba(73,73,73,0.50);
    padding-left: 10px;
}

.introduction2__section:nth-of-type(odd) .introduction2__content {
  float: right
}

.introduction2__section:nth-of-type(odd) .introduction2__img {
  float: left
}

.introduction2__section:nth-of-type(odd) .introduction2__img>img {
  position: relative

}
.introduction2__section:nth-of-type(odd) .introduction2__content__list>li span {
  border-bottom: 1px solid #ccc
}

.introduction2__section:nth-of-type(odd) .introduction2__content__list>li:before {
  background-image: url(../png/introduction-check-01.png)
}

.introduction2__section:nth-of-type(even) {
    background: #fff;
    /*border-top: 1px solid #7e735f;
    border-bottom: 1px solid #7e735f;*/
    box-shadow: 2px 2px 5px 0 rgba(146,146,146,0.50);
    -webkit-box-shadow: 2px 2px 5px 0 rgba(146,146,146,0.50);
    padding-right: 10px;

}

.introduction2__section:nth-of-type(even) .introduction2__content__title {
	color: #7e735f
}

.introduction2__section:nth-of-type(even) .introduction2__content {
  float: left
}

.introduction2__section:nth-of-type(even) .introduction2__img {
  float: right
}

.introduction2__section:nth-of-type(even) .introduction2__img>img {
    position: relative;
}
.introduction2__section:nth-of-type(even) .introduction2__content__list>li {
  color: #7e735f
}

.introduction2__section:nth-of-type(even) .introduction2__content__list>li span {
  border-bottom: 1px solid #7e735f
}

.introduction2__section:nth-of-type(even) .introduction2__content__list>li:before {
  background-image: url(../png/introduction-check-02.png)
}

/*.introduction2__section:nth-of-type(1):after {
  position: absolute;
  right: -10px;
  top: 60px;
  width: 185px;
  height: 149px;
  background: url(../../images/introduction-num-01.png) no-repeat 0 0;
  background-size: 185px auto
}

.introduction2__section:nth-of-type(2):after, .introduction2__section:nth-of-type(4):after {
  position: absolute;
  left: 43%;
  top: 50px;
  width: 201px;
  height: 148px;
  background: url(../../images/introduction-num-02.png) no-repeat 0 0;
  background-size: 201px auto
}

.introduction2__section:nth-of-type(3):after {
  position: absolute;
  right: -20px;
  top: 60px;
  width: 196px;
  height: 153px;
  background: url(../../images/introduction-num-03.png) no-repeat 0 0;
  background-size: 196px auto
}

.introduction2__section:nth-of-type(4):after {
  width: 199px;
  height: 150px;
  background: url(../../images/introduction-num-04.png) no-repeat 0 0;
  background-size: 199px auto
}

.introduction2__section:nth-of-type(1):after, .introduction2__section:nth-of-type(2):after, .introduction2__section:nth-of-type(3):after, .introduction2__section:nth-of-type(4):after {
  content: ""
}*/

.introduction2__content {
  width: 48.8%;
  max-width: 550px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.introduction2__img {
  overflow: hidden;
  position: relative;
  width: 51.2%;
  margin: 30px 0px;
}

.introduction2__img span {
    display: block;
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
}

.introduction2__content__title {
    position: relative;
    min-width: 425px;
    margin-top: 25px;
    font-size: 2.8em;
    font-family: YakuHanMP, "Noto Serif Japanese", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN";
    font-weight: 600;
    line-height: 1.2
}

.introduction2__content__title>span {
    font-size: 1.1em
}

.introduction2__content__list {
  margin-top: 25px;
  margin-bottom: 30px
}

.introduction2__content__list>li {
  position: relative;
  margin-top: 10px;
  padding: 0 25px 0 1.3em;
  font-size: 1.667em;
  font-weight: 700
}

.introduction2__content__list>li>span {
  padding-bottom: 5px
}

.introduction2__content__list>li:before {
  display: block;
  position: absolute;
  top: .4em;
  left: 0;
  width: 18px;
  height: 17px;
  background: no-repeat 0 0;
  background-size: 18px auto;
  content: ""
}

.service {
    padding-top: 50px;
    padding-right: 50px;
    padding-left: 50px;
    padding-bottom: 50px;
    background-repeat: no-repeat;
    background-position: 0 0;
    /*background-image: url(../../images/service-bg-01.png);*/
    background-color: #7e735f;
    background-size: 100% auto;
    color: #fff
}

.service__list {
  display: table;
  width: 1200px;
  max-width: 100%;
  margin: 50px auto;
  border-left: 1px solid #5a9590
}

.service__list>li {
  display: table-cell;
  overflow: hidden;
  width: 25%;
  vertical-align: bottom;
  border-right: 1px solid #5a9590;
  font-size: 1.416em;
  text-align: center;
  line-height: 1.3
}

.service__list>li>a {
  position: relative;
  display: block;
  padding: 200px 10px 30px;
  background: no-repeat center 20px;
  background-size: 160px auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s ease;
  transition: all .2s ease
}

.service__list>li>a:after {
  position: absolute;
  right: 10px;
  bottom: 0;
  width: 24px;
  height: 24px;
  /*background: url(../../images/service-arrow.png) no-repeat 0 0;*/
  background-size: 24px auto;
  content: ""
}

.service__list>li>a>span {
  display: block;
  font-size: 1.294em;
  font-weight: 600
}

/*.service__list>li:nth-child(1) a {
  background-image: url(../../images/service-img-01.png)
}

.service__list>li:nth-child(2) a {
  background-image: url(../../images/service-img-02.png)
}

.service__list>li:nth-child(3) a {
  background-image: url(../../images/service-img-03.png)
}

.service__list>li:nth-child(4) a {
  background-image: url(../../images/service-img-04.png)
}*/

.flow {
    padding: 100px 40px;
    background-image: url(../jpg/bg_reds@2x.jpg);
    background-repeat: no-repeat;
    background-size: 76% auto;
    background-position: right 71%;
}

.flow__title {
  color: #7e735f;
  text-align: center;
  line-height: 1.3
}

.flow__title~p {
  color: #45494b;
  text-align: center
}

.flow__list {
  display: table;
  width: calc(100% + 25px);
  max-width: 1225px;
  margin: 50px auto;
  table-layout: fixed
}

.flow__list>li {
  display: table-cell;
  vertical-align: top
}

.flow__list>li:before {
  position: absolute;
  top: 39%;
  left: -35px;
  z-index: 10;
  width: 52px;
  height: 52px;
  background: url(../png/introduction-check-02.png) no-repeat 0 0;
  background-size: 52px auto;
  content: ""
}

.flow__list>li:first-child:before {
  content: none
}

.flow__list>li p {
  margin-top: 0;
  line-height: 1.3;
  font-size: 2em;
}


.flow__list__item {
    position: relative;
    top: 0;
    display: table;
    width: calc(100% - 25px);
    margin: 0 13px 0 12px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    padding-top: 0px;
}

.flow__list__item>a {
    display: table-cell;
    height: 260px;
    padding: 20px 25px;
    /*background: #f2f2f2;*/
    color: #011319;
    text-align: center;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    border-color: #B1B3B3;
    border-width: 3px;
}

.flow__list__item img {
  position: absolute;
  top: -10px;
  right: 0;
  left: 0;
  margin: 0 auto
}
.flow__list__item_num {
	position: absolute;
	top: -10px;
	right: 0;
	left: 0;
	margin: 0 auto;
	height: 60px;
	width: 60px;
	border-radius: 50%;
	line-height: 60px;
	text-align: center;
	background-color: #7e735f;
	color: #FFFFFF;
	font-family: "Times New Roman", Times, serif;
	font-size: 3em;
}
.flow__list__item:after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 24px;
  height: 24px;
  /*background: url(../../images/flow-arrow-01.png) no-repeat 0 0;*/
  background-size: 24px auto;
  content: ""
}

.case {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    padding: 60px 0 110px;
    /*background: url(../../images/case-bg-01.png) repeat center top;*/
    background-size: auto 100%;
}
.case__title~p {
  color: #45494b;
  text-align: center
}
.case__title {
    margin-left: auto;
    margin-right: auto;
    height: 50px;
    padding-top: 25px;
    color: #7e735f;
    border-top: 1px solid #ECECEC;
}
.case__point {
	color: #45494b;
	text-align: center;
	margin-top: 50px;
}
.case__point ol{
	text-align: left;
	margin-left: auto;
	margin-right: auto;
	width: 40%;
	border: 5px solid #7e735f;
	border-radius: 11px;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
}
.case__point li{
	margin-bottom: 16px;
}
.case_text {
	font-size: 2em;
	font-weight: bold;
}
.case__point img {
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
	width: 90px;
	height: 90px;
}
.case__slider {
  position: relative;
  width: 100%;
  max-height: 480px;
  margin: 50px 0
}

.case__slider+.button-link {
  margin-top: 0
}

.swiper-container {
  overflow: visible!important
}

.case__slider__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.case__slider__item.swiper-slide-active {
  -webkit-box-shadow: 0 10px 20px 0 rgba(4, 0, 0, .1);
  box-shadow: 0 10px 20px 0 rgba(4, 0, 0, .1)
}

.case__slider__item>a {
  position: relative;
  display: table;
  table-layout: fixed;
  width: 100%;
  background: #fff
}

.case__slider__content, .case__slider__img {
	display: table-cell;
	width: 100%;
	vertical-align: top;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center;
}

.case__slider__img img {
	width: 100%;
}

.case__slider__content {
    padding: 30px 45px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    background-color: #F9F9F9;
}

.case__slider__content>dl {
  position: relative;
  z-index: 2
}

.case__slider__content>dl>dt {
    position: relative;
    margin-top: 30px;
    color: #7e735f;
    font-size: 1.6em;
    font-weight: 600;
    line-height: 1.3;
    text-indent: 2em
}

.case__slider__content>dl>dt:before {
    position: absolute;
    top: .5rem;
    left: 16px;
    width: 14px;
    height: 14px;
    background: #7e735f;
    content: "";
    border-radius: 4px;
}

.case__slider__content>dl>dt:first-child {
  margin-top: 0
}

.case__slider__content>dl>dd {
  margin-top: 15px;
  color: #45494b;
  font-size: 1.416rem;
  line-height: 1.6
}

.case__slider__content:before {
  position: absolute;
  top: 60px;
  right: 60px;
  z-index: 1;
  width: 120px;
  height: 104px;
  /*background: url(../../images/case-bg-02.png) no-repeat;*/
  background-size: 120px auto;
  content: ""
}

.case__slider__link {
    position: absolute;
    /*z-index: 2;*/
    bottom: 8px;
    width: calc(50% - 90px);
    padding-top: 5px;
    /*border-top: 1px solid #dbdbdb;*/
    color: #45494b;
    font-size: 1.333rem;
    line-height: 1.3;
    right: 9px;
    left: auto;
}

.case__slider__link>span {
  position: relative;
  float: right;
  display: block;
  color: #7e735f;
  text-align: right;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.case__slider__link>span:after {
  position: absolute;
  top: 50%;
  right: -35px;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  /*background: url(../../images/case-arrow.png) no-repeat 0 0;*/
  background-size: 24px auto;
  content: ""
}
.case__slider__arrow::after, .case__slider__arrow::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle
}

.case__slider__next, .case__slider__prev {
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 60px;
  height: 60px;
  margin-top: -45px;
  margin-left: -547px;
  /*background: #7e735f url(case-button-prev.png) no-repeat center;*/
  background-size: 14px auto;
  border-radius: 50%;
  text-indent: 100%;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  cursor: pointer;
  border: 2px solid #7e735f;
}

.case__slider__next::after, .case__slider__prev::after {
	box-sizing: border-box;
	width: 40px;
	height: 30px;
	border: 15px solid transparent;
	border-left: 23px solid #7e735f;
}
.case__slider__next::after, .case__slider__prev::after {
	/*left: 28px;*/	
	-moz-transform: translateX(50%);
	-webkit-transform: translateX(50%);
	-o-transform: translateX(50%);
	-ms-transform: translateX(50%);
	transform: translateX(50%);
}

.case__slider__prev::after {
  /*left: -3px;*/
  -moz-transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.case__slider__next {
  right: 50%;
  margin-right: -547px;
  left: inherit;
  /*background: #7e735f url(case-button-next.png) no-repeat center;*/
  background-size: 14px auto
}

.faq {
  padding: 100px 40px
}

.faq__list {
  display: table;
  width: calc(100% + 25px);
  max-width: 1225px;
  margin: 50px auto;
  table-layout: fixed
}

.faq__list>li {
  display: table-cell;
  vertical-align: top
}

.faq__list>li p {
  margin-top: 0;
  line-height: 1.6
}

.faq__list__item {
  position: relative;
  top: 0;
  display: table;
  width: calc(100% - 25px);
  margin: 0 13px 0 12px;
  -webkit-transition: all .2s ease;
  transition: all .2s ease
}

.faq__list__item>a {
  display: table-cell;
  height: 260px;
  padding: 20px 40px;
  background: #f2f2f2;
  color: #7e735f;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s ease;
  transition: all .2s ease
 }
 .faq__list__item_q {
	position: absolute;
	top: -10px;
	right: 0;
	left: 0;
	margin: 0 auto;
	height: 60px;
	width: 60px;
	border-radius: 50%;
	line-height: 60px;
	text-align: center;
	background-color: #7e735f;
	color: #FFFFFF;
	font-family: "Times New Roman", Times, serif;
	font-size: 3em;
  }
/*.faq__list__item:before {
  position: absolute;
  top: -10px;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 35px;
  height: 46px;
  background: url(faq-bg-01.png) no-repeat 0 0;
  background-size: 35px auto;
  content: ""
}*/

/*.faq__list__item:after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 24px;
  height: 24px;
  background: url(faq-arrow.png) no-repeat 0 0;
  background-size: 24px auto;
  content: ""
}*/

.seminar {
  padding: 80px 40px 100px!important;
  background: #f0f0f0
}

.seminar__title, h2.seminar__title {
  color: #7e735f;
  font-family: NotoSansJapanese;
  font-size: 2.833em;
  font-weight: 400
}

.seminar__banner {
  width: 1200px;
  max-width: 100%;
  margin: 55px auto 0
}

.seminar__banner:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden
}

.seminar__banner>li {
  float: left;
  width: 50%;
  color: #65676a;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.seminar__banner>li a {
  position: relative;
  top: 0;
  display: block
}

.seminar__banner a[target^=_blank] .seminar__banner__text {
  position: relative;
  padding-right: 20px
}

.seminar__banner a[target^=_blank] .seminar__banner__text:after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 11px;
  height: 11px;
  margin-top: -5px;
  /*background: url(../../images/icon-window.png) no-repeat right center;*/
  background-size: 11px auto;
  content: ""
}

.seminar__banner__image {
  overflow: hidden
}

.seminar__banner__image img {
  -webkit-transition: -webkit-transform .5s linear;
  transition: -webkit-transform .5s linear;
  transition: transform .5s linear;
  transition: transform .5s linear, -webkit-transform .5s linear
}

.seminar__banner__text {
  display: inline-block;
  margin-top: 10px
}

.seminar__list {
  max-width: 1200px;
  margin: 50px auto
}

.seminar__list>ul {
  margin-right: -30px
}

.seminar__list>ul>li {
  float: left;
  width: 33.3%;
  margin-top: 30px;
  vertical-align: top
}

.seminar__list>ul>li>a {
  display: block;
  position: relative;
  top: 0;
  margin-right: 30px;
  background: #fff;
  -webkit-transition: all .2s ease;
  transition: all .2s ease
}

.seminar__list>ul>li>a:after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 24px;
  height: 24px;
  /*background: url(../../images/seminar-arrow.png) no-repeat 0 0;*/
  background-size: 24px auto;
  content: ""
}

.seminar__list>ul:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden
}

.seminar__list dl {
  padding: 30px;
  color: #45494b
}

.seminar__list dl>dt {
  clear: left;
  float: left;
  width: 4.5em;
  font-size: 1.167em;
  font-weight: 700
}

.seminar__list dl>dd {
  overflow: hidden;
  font-size: 1.167em
}

.seminar__list__title {
  display: block;
  width: 100%;
  color: #fff;
  /*background: url(../../images/seminar-bg-01.jpg) no-repeat 0 0;*/
  background-size: cover;
  font-size: 1.667em;
  font-weight: 700;
  line-height: 1.2;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.seminar__list__title.seminar__list__title_type_01 {
  /*background: url(../../images/seminar-bg-01.jpg) no-repeat 0 0;*/
  background-size: cover
}

.seminar__list__title.seminar__list__title_type_02 {
  /*background: url(../../images/seminar-bg-02.jpg) no-repeat 0 0;*/
  background-size: cover
}

.seminar__list__title.seminar__list__title_type_03 {
  /*background: url(../../images/seminar-bg-03.jpg) no-repeat 0 0;*/
  background-size: cover
}

.seminar__list__status {
  float: left;
  display: table;
  position: relative;
  top: -10px;
  margin-top: 0;
  margin-left: 30px;
  padding: 4px 18px;
  background: #ea7a3d;
  color: #fff;
  font-weight: 400;
  line-height: 1
}

.news {
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 0 0;
  background: #fff
}

.news__title, h2.news__title {
    color: #7e735f;
    font-size: 2.833em;
    font-weight: 400
}

.tab {
  margin-top: 40px
}

.tab .is-hide {
  display: none
}

.tab__control {
  border-bottom: 4px solid #e2e2e2
}

.tab__control>ul {
  position: relative;
  max-width: 980px;
  margin: 0 auto -4px
}

.tab__control>ul:after {
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
  content: ""
}

.tab__control>ul>li {
  position: relative;
  float: left;
  width: 25%;
  padding: 25px;
  color: #65676a;
  font-size: 1.416em;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer
}

.tab__control>ul>li:before {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 40px;
  margin-top: -20px;
  background: #d8d8d8;
  content: ""
}

.tab__control>ul>li.is-active {
  position: relative;
  background: #f6f6f6;
  border-bottom: 4px solid #7e735f;
  color: #7e735f;
  font-weight: 700
}

.tab__content .tab__content__item {
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 0px
}

.news__list {
    margin: 0 auto
}

.news__list>ul {
  margin-top: 30px;
  border-top: 1px solid #d8d8d8
}

.news__list>ul>li {
  position: relative;
  border-bottom: 1px solid #d8d8d8;
  vertical-align: middle
}

.news__list>ul>li:after {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 7px;
  height: 6px;
  margin-top: -3px;
  /*background: url(../../images/news-arrow.png) no-repeat 0 0;*/
  background-size: 7px auto;
  content: ""
}

.news__list>ul>li>a {
  display: table;
  width: 100%;
  padding: 20px 40px 20px 20px;
  color: #65676a;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  table-layout: fixed
}

.news__list>ul>li .news__list__date, .news__list>ul>li .news__list__label, .news__list>ul>li .news__list__title {
  display: table-cell;
  font-size: 1.166em;
  line-height: 1.3
}

.news__list>ul>li .news__list__date {
  width: 7em
}

.news__list>ul>li .news__list__label {
  width: 95px;
  padding: 4px 2px;
  background: #6681a7;
  border-radius: 12px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  font-size: 1em;
  text-align: center
}

.news__list>ul>li .news__list__title {
  overflow: hidden;
  padding-left: 25px;
  vertical-align: middle
}

.news__list>ul>li .news__list__title p {
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  font-size: 1em;
  line-height: 1.3;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.news__list .is-new .news__list__title {
  position: relative;
  padding-left: 4.5em
}

.news__list .is-otherinfo .news__list__label {
  background: #6681a7
}

.news__list .is-irnews .news__list__label {
  background: #7dad5c
}

.news__list .is-column .news__list__label {
  background: #6681a7
}

.news__list .is-seminar .news__list__label {
  background: #e1a629
}

.news__list .is-seminarinfo .news__list__label {
  background: #e1a629
}

.news__list .is-midcap .news__list__label {
  background: #e4787f
}

.news__list .is-media .news__list__label {
  background: #9772a2
}

.news__list a[target^=_blank] .news__list__title p {
  padding-right: 21px;
  /*background: url(../../images/icon-window.png) no-repeat right center;*/
  background-size: 11px auto
}

.news__list a[href$=pdf] .news__list__title p {
  padding-right: 41px;
 /* background: url(../../images/icon-pdf.png) no-repeat right center;*/
  background-size: 25px auto
}

.news__banner {
  width: 980px;
  max-width: 100%;
  margin: 50px auto 0
}

.news__banner:after {
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
  content: ""
}

.news__banner>li {
  float: left;
  width: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.news__banner>li>a {
  position: relative;
  display: table;
  width: 100%;
  border: 1px solid #dbdbdb;
  -webkit-transition: all .2s ease;
  transition: all .2s ease
}

.news__banner>li>a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 7px;
  height: 6px;
  margin-top: -3px;
  /*background: url(../../images/news-arrow.png) no-repeat 0 0;*/
  background-size: 7px auto;
  content: ""
}

.news__banner>li>a[target^=_blank]:after {
  width: 11px;
  height: 11px;
  /*background: url(../../images/icon-window.png) no-repeat right center;*/
  background-size: 11px auto
}

.news__banner>li span {
  overflow: hidden;
  display: table-cell;
  width: 200px;
  vertical-align: middle
}

.news__banner>li p {
  display: table-cell;
  padding: 15px 30px;
  color: #65676a;
  font-size: 1.166em;
  vertical-align: middle;
  line-height: 1.7;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
.service__banner {
    width: 1280px;
    max-width: 100%;
    margin-top: 50px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 50px;
}

.service__banner:after {
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
  content: ""
}

.service__banner img {
    width: 100%;
}

.service__banner>li {
    float: left;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.service__banner>li>a {
    position: relative;
    display: table;
    width: 100%;
    border: 1px solid #dbdbdb;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    color: #FFFFFF;
    height: 100%;
}

.service__banner>li>a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 7px;
  height: 6px;
  margin-top: -3px;
 /* background: url(../../images/service-arrow.png) no-repeat 0 0;*/
  background-size: 7px auto;
  content: ""
}

.service__banner>li>a[target^=_blank]:after {
  width: 11px;
  height: 11px;
 /* background: url(../../images/icon-window.png) no-repeat right center;*/
  background-size: 11px auto
}

.service__banner>li .img_banner {
    overflow: hidden;
    display: table-cell;
    width: 60%;
    vertical-align: middle
}

.service__banner>li p {
    display: table-cell;
    /*padding: 15px 30px;*/
    /*color: #65676a;*/
    font-size: 1.6em;
    vertical-align: middle;
    line-height: 1.7;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold;
    padding-left: 3%;
}
