@charset "UTF-8";
#mainvisual h1 img {
  width: 100%;
}
#mainvisual {
  box-shadow: 0 0 8px #dfdfdf;
  position: relative;
  z-index: 1;
}
.tt1_sec {
  padding: 5rem 0 3rem;
  background: url(../images/top/bg1.png) no-repeat right -5rem top 1.875rem;
}
.tt1_sec .container .wrap_content1 {
  /* padding: 0rem 26rem; */
  margin-bottom: 7rem;
  position: relative;
  /* text-align: center; */
  display: flex;
}
.tt1_sec .container h2 {
  position: relative;
  z-index: 5;
}
.tt1_sec .container .wrap_content1 .decor3 {
  position: absolute;
  left: 15rem;
  top: -8rem;
}

.tt1_sec .container .wrap_content1 .decor4 {
  position: absolute;
  right: 15rem;
  bottom: 7rem;
}
.tt1_sec .container .wrap_content1 p {
  margin-bottom: 4rem;
  font-size: 1.4rem;
  position: relative;
  margin-right: 5rem;
}
.tt1_sec .container .wrap_content2 {
  display: flex;
  justify-content: space-between;
}
.tt1_sec .container .wrap_content2 .content {
  width: 48%;
  background: #faf9fd;
  padding: 4rem;
  border-radius: 1.5rem;
}
.tt1_sec .container .wrap_content2 .content .title {
  position: relative;
}
.tt1_sec .container .wrap_content2 .content .title figure {
  position: absolute;
  right: 0;
  top: -8rem;
  margin: auto;
  width: 9rem;
}
.tt1_sec .container .wrap_content2 .content ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 0.3125rem;
}
.tt1_sec .container .wrap_content2 .content ul li:last-child {
  margin-bottom: 0;
}
.tt1_sec .container .wrap_content2 .content ul li:after {
  display: flex;
  align-items: flex-start;
  width: 1.25rem;
  height: 100%;
  font-family: FontAwesome;
  content: "\f046";
  position: absolute;
  left: 0px;
  top: -0.1rem;
  transition: all ease 0.3s;
  font-size: 1.6rem;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) {
  .tt1_sec .container .wrap_content1 p {
    /* margin-bottom: 2rem; */
  }
   .tt1_sec .container .wrap_content1 .decor3{
    left: 0;
    top: -10rem;
  }
  .tt1_sec .container .wrap_content1 .decor4 {
    bottom: 10rem;
    z-index: 1;
    right: 0;
  }
  .tt1_sec {
    padding: 7rem 0 5rem;
    background-size: 40% auto;
  }
  .tt1_sec .container .wrap_content1 {
    padding: 0 1.5rem;
    flex-wrap: wrap;
    margin-bottom: 5rem;
  }
  .tt1_sec .container .wrap_content1 p {
    margin-bottom: 2rem;
    margin-right: 0;
    z-index: 2;
  }
  .tt1_sec .container .wrap_content1 .btn1 {
    width: 100%;
    justify-content: center;
    position: relative;
    z-index: 5;
  }
  .tt1_sec .container .wrap_content2 {
    flex-wrap: wrap;
  }
  .tt1_sec .container .wrap_content2 .content {
    width: 100%;
    margin-bottom: 5rem;
    padding: 4rem 2rem;
  }
  .tt1_sec .container .wrap_content2 .content:last-child {
    margin-bottom: 0;
  }
  .tt1_sec .container .wrap_content2 .content .title figure {
    top: -6rem;
  }
  .tt1_sec .container .wrap_content2 .content .title figure img {
    height: 9rem;
  }
}
/* ========== end △ */

.tt2_sec {
  padding: 4rem 0 5rem;
  background: #f2e9f5;
}
.tt2_sec .container .wrap_content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  /* flex: 2; */
  padding: 0px 0rem;
}
.tt2_sec .container .wrap_content .content {
  width: 26rem;
  margin-bottom: 5rem;
  margin: 0 2rem 2.5rem;
}
.tt2_sec .container .wrap_content .content figure {
  margin: 0 0 2rem;
  display: flex;
  justify-content: center;
}
.tt2_sec .container .wrap_content .content figure img {
  /* width: 50%; */
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) {
  .tt2_sec {
    padding: 4rem 0 5rem;
  }
  .tt2_sec .container .wrap_content .content figure img {
    
  }
  .tt2_sec .container .wrap_content .content figure {
    margin-bottom: 1rem;
  }
  .tt2_sec .container .wrap_content {
    flex-wrap: wrap;
    padding: 0;
  }
  .tt2_sec .container .wrap_content .content {
    width: 85%;
    margin: 0 0 2.5rem;
  }
  .tt2_sec .container .wrap_content .content p {
    /* display: none; */
  }
}
/* ========== end △ */

.tt3_sec {
  padding: 4rem 0 5rem;
}
.tt3_sec .container .wrap_content {
  display: flex;
}
.tt3_sec .container .wrap_content .left {
  margin-right: 10rem;
}
.tt3_sec .container .wrap_content .left h2 {
  margin-bottom: 5rem;
}
.tt3_sec .container .wrap_content .right {
  width: 100%;
}
.tt3_sec .container .content {
  width: 100%;
  /* margin: 0 auto 5rem; */
}
.tt3_sec .container .content dl {
  border-bottom: 1px solid #e8e8e8;
  display: flex;
  align-items: center;
  padding: 2rem 0;
  width: 100%;
}
.tt3_sec .container .content dl dt {
  display: flex;
  align-items: center;
  /* margin-bottom: 1rem; */
  margin-right: 2rem;
  /* padding: 1rem 2rem; */
}
.tt3_sec .container .content dl dt span {
  margin-right: 2rem;
}
.tt3_sec .container .content dl dt a {
  background: #f2e9f5;
  min-width: 11rem;
  text-align: center;
  color: #6c4ea3;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tt3_sec .container .content dl dt a:hover {
  background: #6c4ea3;
  color: #fff;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) {
  .tt3_sec {
    padding: 3rem 0 5rem;
  }
  .tt3_sec .container .content {
    /* width: 100%; */
    margin-bottom: 0;
  }
.tt3_sec .container .content dl {
  flex-wrap: wrap;
  padding: 1rem 0;
}
  .tt3_sec .container .content dl dd {
    width: 100%;
    padding-left: 8.5rem;
  }
  .tt3_sec .container .wrap_content {
 flex-wrap: wrap;
    justify-content: center;
}
.tt3_sec .container .wrap_content .left {
  margin-right: 0;
  margin-bottom: 2rem;
}
.tt3_sec .container .wrap_content .left h2 {
  margin-bottom: 3rem;
}
}
/* ========== end △ */