/* color
pink #edbed3;
*/
img {
  height: auto;
}
.header:not(.is-inverted) a {
  color: #fff;
}
.header:not(.is-inverted) .brand-logo img {
  -webkit-filter: brightness(0) invert(1);
  -moz-filter: brightness(0) invert(1);
  -ms-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
.fv {
  background-size: cover;
  background-position: center center;
}
.fv__inner {
  flex-direction: column;
  align-items: center;
  padding-top: calc(3% + 120px);
  padding-bottom: calc(3% + 60px);
  background-color: rgba(252, 138, 125, 0.8);
}
@media (max-width: 767px) {
  .fv__inner {
    padding-left: 0;
    padding-right: 0;
  }
}
.fv__text {
  font-weight: bold;
  font-size: 13px;
  letter-spacing: 0.2em;
  margin-top: 0.5em;
}
@media (min-width: 768px) {
  .fv__text {
    font-size: 1.6vw;
  }
}
.fv__cta__wrapper {
  display: flex;
  margin: 40px 0;
  position: relative;
}
.fv__cta__icon {
  /* margin-top: -30px;
  margin-right: -15px; */
  position: absolute;
  top: -33px;
  left: -35px;
}
@media (max-width: 767px) {
  .fv__cta__icon {
    width: 30px;
    height: 30px;
    top: -18px;
    left: -18px;
  }
}
.fv__cta__btn {
  font-size: 18px;
  background-color: #f4f7f7;
  color: #fc4732;
  text-decoration: none;
  padding: 1em;
  border-radius: 2.5em;
  text-align: center;
  display: inline-block;
  font-weight: bold;
}
@media (min-width: 768px) {
  .fv__cta__btn {
    padding: 1.5em;
    min-width: 460px;
  }
}
section h2::after {
  /* background-color: #ea8fb8; */
  display: none;
}
section.contact-area h2::after,
section.footer-menu__inner h2::after,
h2.feature__title::after {
  display: none;
}

.section-trouble__top {
  flex-wrap: wrap;
}
.section-feature__number {
  font-weight: bold;
  text-align: center;
  font-size: 1.4em;
}
.section-feature__number span {
  background-color: #fc8a7d;
  color: #fff;
  font-size: 0.8em;
  padding: 0.25em 0.5em;
  display: inline-block;
}

.section-trouble {
  background-color: #fff;
}
.section-trouble__unit {
  background-color: #f9f9f9;
  box-shadow: 0 6px 3px rgba(0, 0, 0, 0.2);
  border-radius: 2em;
  padding: 15px;
}
.section-trouble__unit .a {
  padding: 0 5px;
  width:34px;
}
.section-trouble__sentence {
  flex:1;
}
.section-trouble__subttl {
  font-size: 1rem;
}
.section-trouble__text {
  font-size: 0.9rem;
}
@media screen and (min-width: 768px) {
  .section-trouble__unit {
    width: calc(50% - 30px);
  }
  .section-feature__number {
    text-align: left;
  }
}

.section__block {
  padding: 60px 0;
}
.section__block__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  padding: 15px;
}
.section__block__inner > div {
  padding: 0 5px;
}
@media (min-width: 768px) {
  .section__block__inner {
    width: 66.6%;
  }
}
@media (min-width: 992x) {
  .section__block__inner {
    justify-content: space-between;
    width: 66.6%;
  }
}
.bg-gray {
  background-color: #fbfbfb;
}
.bg-pink {
  background-color: #fc8a7d;
  color: #fff;
}
.section__heading {
  font-size: 2.3vw;
  margin-bottom: 0.25em;
  text-align: center;
  color: #fc4732;
}
@media screen and (max-width: 767px) {
  .section__heading {
    font-size: 6vw;
  }
}
.section__message {
  text-align: center;
  margin-bottom: 2em;
}
.posttype__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-left: -15px;
  margin-right: -15px;
}
.posttype__item {
  width: 33.3%;
  padding: 15px;
  transition: opacity 0.3s;
  cursor: pointer;
}
.posttype__item.is-row {
  width: 100%;
}
#posttype-contents .posttype__item__inner {
  background-color: #fff;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.posttype__item__inner.is-row {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .posttype__item__inner.is-row .posttype__banner {
    width: 33.3%;
    padding-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  .posttype__item,
  .posttype__item__inner.is-row .posttype__banner {
    width: 100%;
  }
}
.posttype__item__inner.is-row .posttype__text {
  flex: 1;
}
.posttype__item__inner.is-row .posttype__title {
  margin-top: 0;
  margin-bottom: 1em;
  border-bottom: 1px solid #333;
  padding-bottom: 0.5em;
}
.posttype__item:hover {
  opacity: 0.7;
}
.posttype__item img {
  height: auto;
}
.posttype__item .posttype__details {
  padding: 15px;
}
.posttype__item a {
  color: #333;
  text-decoration: none;
}
.posttype__details__footer .date {
  color: #ccc;
}
.posttype__details__footer .link-btn {
  font-size: 0.8em;
  font-weight: bold;
  border-bottom: 2px solid #ea8fb8;
}
.posttype__details__footer {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 15px;
  margin-top: auto;
}
.posttype__title {
  /* margin: 0.5em 0 1em 0; */
  margin-bottom: 1em;
}
.seminar__date {
  background-color: #ea8fb8;
  padding: 0.25em 0.5em;
  color: #fff;
  margin-bottom: 0.5em;
}

.influencer__list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}
.influencer__item {
  width: 33.3%;
  padding: 15px;
  text-align: center;
}
.influencer__item img {
  width: 80%;
  border-radius: 50%;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .influencer__item {
    width: 100%;
  }
}
.faq__list {
  margin: 30px 0;
  /* border-top: 1px solid #777; */
  display: flex;
  flex-wrap: wrap;
}
.faq__item {
  padding: 15px;
}
@media (min-width: 768px) {
  .faq__item {
    /* border-bottom: 1px solid #777;
  padding: 0.5em 0.5em 0.5em 0;
  position: relative; */
    width: 50%;
  }
}
.faq__item__inner {
  border: 2px solid #fc4732;
  border-radius: 2em;
  padding: 30px;
  height: 100%;
}
.faq__q {
  display: flex;
  font-weight: bold;
  margin-bottom: 0.5em;
  align-items: baseline;
}
.faq__q::before {
  content: "Q.";
}
.faq__a {
  /* display: none;
  margin: 0;
  padding: 0 0 0 0.5em; */
  font-size: 0.85em;
  text-align: justify;
}
/* .faq__a::before {
  content: "A.";
  color: #02a5bc;
  font-weight: bold;
} */
.js-faq-toggle {
  margin-left: auto;
  position: absolute;
  top: 10px;
  right: 5px;
  width: 20px;
  height: 20px;
  display: block;
  transition: 0.3s;
  cursor: pointer;
}
.js-faq-toggle:hover {
  opacity: 0.4;
}
.js-faq-toggle::before,
.js-faq-toggle::after {
  content: "";
  display: block;
  background-color: #666;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transition: 0.3s;
}
.js-faq-toggle::before {
  width: 15px;
  height: 1px;
}
.js-faq-toggle::after {
  width: 1px;
  height: 15px;
}

.faq__item.is-open .js-faq-toggle::before,
.faq__item.is-open .js-faq-toggle::after {
  transform: rotate(45deg);
}

.footer-menu__inner .h6 {
  font-weight: 700;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  line-height: 1.5;
}

.footer {
  padding: 0;
}

.feature__heading {
  text-align: center;
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .feature__heading {
    padding: 15px;
  }
  .feature__message br {
    display: none;
  }
}
.feature__message {
  font-size: 1.1rem;
  font-weight: bold;
  background-color: #fc8a7d;
  color: #fff;
  padding: 2em;
  border-radius: 4em;
  display: inline-block;
  position: relative;
}
@media (min-width: 768px) {
  .feature__message {
    font-size: 1.4rem;
  }
}
.feature__message::after {
  content: "";
  display: block;
  border: 20px solid transparent;
  border-top: 20px solid #fc8a7d;
  position: absolute;
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, 100%);
}
.feature__title {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 30px;
}
.feature__title .sub {
  color: #fc8a7d;
  font-size: 1.2rem;
}
@media (max-width: 767px) {
  .feature__title .sub {
    letter-spacing: normal;
  }
}
.feature__title .strong {
  color: #fc8a7d;
  font-size: 1.6em;
}

/* 余白調整 */
.section-feature {
  padding: 0;
}
.section-feature__inner {
  background-color: #f4f7f7;
  padding: 15px 15vw 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 767px) {
  .section-feature__number {
    text-align: left;
  }
  .section-feature__inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.section-trouble__inner {
  padding-top: 30px;
  padding-bottom: 30px;
}
.section-trouble__unit {
  margin: 15px;
}
@media (max-width: 767px) {
  .section-trouble__unit {
    width: 100%;
    margin: 15px 0;
  }
  .section-trouble__text {
    font-size: 0.8rem;
  }
}
.section-trouble__ttl {
  padding: 30px 0;
  color: #fc4732;
}
section h2::after {
  margin-bottom: 30px;
}
.section-feature__unit {
  margin: 30px 0 !important;
  padding: 0 !important;
  align-items: center;
  border: none !important;
}
@media (min-width: 768px) {
  .section-feature__unit:nth-child(even) {
    flex-direction: row-reverse;
  }
}
.section-feature__subttl {
  margin: 15px 0;
}
.section-feature__text {
  margin-top: 0;
}
.section-feature__img {
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  .section-feature__img {
    margin: 0 30px 0 0;
    width: 40%;
  }
  .section-feature__unit:nth-child(even) .section-feature__img {
    margin: 0 0 0 30px;
  }
}

/* CTA部分 */
.cta {
  background-size: cover;
  background-position: center center;
}
.cta__inner {
  background-color: rgba(190, 140, 160, 0.7);
  padding: 30px 0;
}
.cta p {
  color: #fff;
  font-weight: bold;
  font-size: 1.4em;
  margin-bottom: 1em;
}

/* flow作り直し */
.section-flow {
  padding: 120px 0 90px 0;
}
.section-flow__inner {
  position: relative;
}
.section-flow__ttl {
  color: #fc4732;
  display: inline-block;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  padding: 15px;
  white-space: nowrap;
}
.section-flow__list {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #fc4732;
  padding: 30px 0;
  margin-top: -1.6em;
}
@media (min-width: 768px) {
  .section-flow__list {
    padding: 60px;
  }
}
.flow__item {
  width: 100%;
  padding: 15px;
}
@media (min-width: 768px) {
  .flow__item {
    /* width: 33.3%; */
    padding: 15px;
  }
}
@media (min-width: 768px) {
  .flow__item__inner {
    display: flex;
    align-items: baseline;
  }
}
.flow__item__inner > * {
  margin: 0 15px;
}
.step-number {
  font-weight: bold;
  display: flex;
  align-items: center;
}
.step-number .pink-circle {
  display: block;
  position: relative;
  width: 2em;
  height: 2em;
  margin-left: 5px;
}
.step-number .pink-circle .pink-circle-number {
  color: #fff;
  position: absolute;
  font-size: 1.4em;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.step-number .pink-circle .pink-circle-back {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  width: 2em;
  height: 2em;
  background-color: #fc8a7d;
  z-index: 1;
}
.step-title {
  margin: 0.5em 0;
}

/* 最下部コンタクト */
.cta--bottom {
  /* background-color: #ea8fb8; */
  background-size: cover;
  background-position: center center;
}
.cta--bottom__inner {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  padding: 10rem 0;
  color: #fff;
  background-color: rgba(252, 138, 125, 0.8);
}
.cta--bottom__inner p {
  margin-bottom: 1em;
}
@media (max-width: 767px) {
  .cta--bottom__inner {
    padding: 8rem 30px;
  }
  .cta--bottom__left {
    text-align: center;
  }
}
@media (min-width: 768px) {
  .cta--bottom__left {
    flex: 1;
    padding-right: 30px;
  }
  .cta--bottom__right {
    width: 38%;
  }
}
.cta--bottom__title {
  font-size: 1.6em;
  margin-bottom: 0.5em;
}
.cta--bottom__title::after {
  display: none;
}

.cta__btn {
  font-size: 18px;
  background-color: #fc4732;
  color: #fff;
  text-decoration: none;
  padding: 1em;
  border-radius: 2.5em;
  text-align: center;
  display: inline-block;
  font-weight: bold;
  margin: 0;
}
@media (min-width: 768px) {
  .cta__btn {
    padding: 1.5em;
    min-width: 460px;
  }
}
.bg-pink .cta__btn {
  background-color: #fff;
  color: #fc4732;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  font-weight: bold;
}
.cta__icon {
  position: absolute;
  top: -33px;
  left: -35px;
}
@media (max-width: 767px) {
  .cta__icon {
    width: 30px;
    height: 30px;
    top: -18px;
    left: -18px;
  }
}
.cta__wrapper {
  display: flex;
  justify-content: center;
  margin-top: 45px;
  position: relative;
}

.block__list {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0 15px;
}
@media (min-width: 768px) {
  .block__list {
    padding: 0 15vw;
  }
  .list--4 .list__item {
    width: 50%;
    padding: 15px 30px;
  }
}
@media (min-width: 992px) {
  .list--4 .list__item {
    width: 25%;
    padding: 15px 30px;
  }
}
.list__item p {
  text-align: justify;
}
.list__item__name {
  font-size: 1.2em;
  margin-bottom: 0.5em;
  text-align: center;
}
.list__item__img {
  margin-bottom: 0.5em;
}

.section__block__title {
  font-size: 22px;
  margin-bottom: 0.25em;
}
@media (max-width: 565px) {
  .section__block__title br {
    display: none;
  }
}
.d-flex {
  display: flex;
}
.align-items-end {
  align-items: flex-end;
}
.justify-content-center {
  justify-content: center;
}
.mb-4 {
  margin-bottom: 1em;
}

.btn--cta--white {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  font-size: 18px;
  background-color: #fff;
  color: #fc4732;
  text-decoration: none;
  padding: 1em;
  border-radius: 2.5em;
  text-align: center;
  display: inline-block;
  font-weight: bold;
}
@media (min-width: 768px) {
  .btn--cta--white {
    padding: 1.5em;
    min-width: 460px;
  }
}
a {
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.8;
}

.container--wide {
  padding: 0 15vw;
}
.img--square {
  text-align: center;
}
.img--square img {
  height: 200px;
  width: 200px;
  object-fit: contain;
}

.p-4 {
  padding: 1em;
}

@media (max-width: 767px) {
  .icon-threeline {
    width: 30px;
    height: 30px;
  }
}
