@charset "UTF-8";

:root {
  --main-color: ;
  --red-color: #cc4947;
  --blue-color: #40a0c2;
  --lightpink-color: #f1a5bc;
  --pink-color: #f1487c;
  --gd-color: linear-gradient(130deg, #f8467c 0%, #fa964d 100%);
}

html {
  scroll-behavior: smooth;
}

body {
  color: #3f4c51;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.5;
}

img {
  max-width: 100%;
}

.br-pc {
  display: block;
}

.br-sp {
  display: none;
}

@media (max-width: 530px) {

  .br-pc {
    display: none;
  }

  .br-sp {
    display: block;
  }
}

.inner {
  max-width: 680px;
  padding: 0 20px;
  margin: 0 auto;
}

.text {
  font-size: 18px;
  margin-bottom: 40px;
  line-height: 2;
}

.text--bold {
  font-size: 20px;
  font-weight: 700;
}

.text--bold--18px {
  font-size: 18px;
  font-weight: 700;
}

.text--underline {
  font-weight: 700;
  text-decoration: underline;
}

.text--margin80 {
  margin: 80px 0;
}

.text--right {
  font-size: 20px;
  text-align: right;
}

.text--blue {
  color: var(--blue-color);
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
}

.text--red {
  color: var(--red-color);
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
}


/* ========================================
カメラスクールオプトインLP
========================================= */

.header {
  padding: 10px 20px;
  background-color: #94bac8;
  color: #fff;
  font-family: "Zen Maru Gothic", serif;
}

.header__text {
  font-size: 18px;
  text-align: center;
}

@media (max-width: 768px) {
  .header__text {
    font-size: 16px;
  }
}

.fv img {
  width: 100%;
}

.cta {
  padding: 50px 0;
  background-color: #eff7fa;
  overflow: hidden;
  position: relative;
}

.circle--left {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background-color: #b7d9e5;
  position: absolute;
  left: -30px;
  bottom: 20px;
}

.border-circle--left {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  border: 1px solid #16a9de;
  position: absolute;
  left: 20px;
  bottom: -5px;
}

.circle--right {
  width: 130px;
  height: 130px;
  border-radius: 50%;
  background-color: #cdecf7;
  position: absolute;
  top: -50px;
  right: -10px;
}

.border-circle--right {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  border: 1px solid #16a9de;
  position: absolute;
  top: 50px;
  right: -5px;
}

.cta__text {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 16px;
  font-size: 20px;
  position: relative;
  z-index: 2;
}

@media (max-width: 768px) {
  .cta__text {
    text-align: center;
  }
}

@media (max-width: 420px) {
  .cta__text {
    font-size: 16px;
  }
}

.cta__text::before,
.cta__text::after {
  background-color: #3c94b4;
  content: "";
  width: 3em;
  height: 1px;
}

.cta__text::before {
  margin-right: 10px;
  transform: rotate(60deg);
}

.cta__text::after {
  margin-left: 10px;
  transform: rotate(-60deg);
}

@media (max-width: 768px) {
  .cta__text::before {
    margin-right: 0;
  }

  .cta__text::after {
    margin-left: 0;
  }
}

.cta__form {
  width: 30rem;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

@media (max-width: 768px) {
  .cta__form {
    width: 100%;
  }
}

.cta__form input {
  background-color: #fff;
}

@media (max-width: 768px) {
  ::placeholder {
    font-size: 14px;
  }
}

.cta__btn {
  width: 300px;
  display: inline-block;
  padding: 10px 0;
  background-color: #ca6665;
  border-radius: 10px;
  box-shadow: 0px 7px 0px 0px rgba(171, 105, 104, 1);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}

@media (max-width: 375px) {
  .cta__btn {
    width: 280px;
  }

  .cta__form {
    width: 100%;
  }
}

.cta__btn:hover {
  box-shadow: 0px 0px 0px 0px rgba(171, 105, 104, 1);
  transform: translateY(5px);
  transition: 0.3s;
}

.greeting {
  background: url(../img/bg02.png) no-repeat;
  object-fit: cover;
}

.greeting__inner {
  max-width: 900px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .greeting__inner {
    flex-direction: column;
    padding-bottom: 40px;
  }
}

.greeting__contents {
  width: 60%;
}

@media (max-width: 768px) {
  .greeting__contents {
    width: 100%;
  }
}

.greeting__title {
  height: 10rem;
  display: inline-block;
  padding: 0.2em 3em 0 0;
  margin-bottom: 1em;
  border-top: 1px solid #dcb6b5;
  color: #dcb6b5;
  font-family: Bitter;
  font-size: 20px;
  transform: rotate(-90deg);
}

.greeting__img {
  width: 33%;
  margin-right: 10px;
}

@media (max-width: 768px) {
  .greeting__img {
    width: 40%;
  }
}

.greeting__img img {
  box-shadow: 18px 18px 0px 0px rgba(195, 222, 231, 1);
}

.cta--flex {
  padding: 50px 20px;
  background-color: #eff7fa;
  position: relative;
  overflow: hidden;
}

.big-circle--left {
  width: 190px;
  height: 190px;
  border-radius: 50%;
  background-color: #b7d9e5;
  position: absolute;
  top: -30px;
  left: -80px;
}

.big-border-circle--left {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  border: 1px solid #16a9de;
  position: absolute;
  top: -10px;
  left: 80px;
}

.big-circle--right {
  width: 130px;
  height: 130px;
  border-radius: 50%;
  background-color: #cdecf7;
  position: absolute;
  right: -20px;
  bottom: -50px;
}

.big-border-circle--right {
  width: 105px;
  height: 105px;
  border-radius: 50%;
  border: 1px solid #16a9de;
  position: absolute;
  right: -45px;
  bottom: 20px;
}

.cta__inner {
  max-width: 800px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

@media (max-width: 768px) {
  .cta__inner {
    flex-direction: column;
  }
}

@media (max-width: 768px) {
  .cta__img {
    margin-bottom: 20px;
  }

  .cta__img--left{
    margin-left: -60px;
  }
}

.cta__contents {
  width: 80%;
  color: #1a1f22;
  text-align: center;
}

@media (max-width: 768px) {
  .cta__contents {
    width: 100%;
  }
}

.cta--flex .cta__text {
  margin-top: 1em;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}

@media (max-width: 375px) {
  .cta--flex .cta__text {
    font-size: 16px;
  }
}

.text--small {
  font-size: 13px;
}

.profile {
  padding-bottom: 20px;
  background: url(../img/bg02.png);
  object-fit: cover;
  position: relative;
}

.profile::before,
.profile::after,
.reazon::after {
  content: url(../img/down-arrow.svg);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.profile::before {
  top: -30px;
}

.profile::after {
  bottom: -40px;
  z-index: 2;
}

.section__title {
  padding: 60px 10px 40px;
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}

@media (max-width: 768px) {
  .section__title {
    font-size: 24px;
  }
}

.section__title--redline {
  background: url(../img/red-line01.svg) no-repeat;
  background-position: 60% 160%;
}

.section__title--redline:nth-child(3) {
  background-position: 30% 160%;
}

@media (max-width: 768px) {
  .section__title--redline {
    background-position: 0% 290%;
  }

  .section__title--redline:nth-child(3) {
    background-position: 100% 290%;
  }
}

.section__img {
  margin-bottom: 40px;
}

.section__list {
  max-width: 720px;
  padding: 20px 15px 20px 25px;
  margin: 0 auto 40px;
  background-color: #fff;
  font-size: 20px;
}

@media (max-width: 768px) {
  .section__list {
    font-size: 18px;
  }
}

.section__item {
  margin-bottom: 8px;
  text-indent: -1.5em;
  padding-left: 1em;
}

.section__item:last-child {
  margin-bottom: 0;
}

.section__item::before {
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-top: -6px;
  margin-right: 4px;
  background: url(../img/check-icon.png) no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.reazon {
  padding-bottom: 20px;
  background: url(../img/bg.png);
  position: relative;
}

.reazon::after {
  bottom: -35px;
}

.composition {
  padding-bottom: 20px;
  background: url(../img/bg02.png);
}

.movie__list {
  max-width: 870px;
  margin: 0 auto;
}

.movie__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5%;
  padding: 40px 30px;
  margin: 0 20px 30px;
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid var(--blue-color);
}

@media (max-width: 768px) {
  .movie__item {
    flex-direction: column;
    gap: 20px;
    padding: 40px 0 0 0;
  }
}

.movie__contents {
  width: 55%;
}

@media (max-width: 768px) {
  .movie__contents {
    width: 100%;
    padding: 0 20px;
  }
}

.movie__icon {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 20px;
  background: var(--blue-color);
  color: #fff;
  font-size: 14px;
}

.movie__title {
  margin: 10px 0 20px;
  font-size: 20px;
  font-weight: 700;
}

.item__text {
  margin-bottom: 0.5em;
  font-size: 16px;
}

.movie__img {
  width: 45%;
}

@media (max-width: 768px) {
  .movie__img {
    width: 100%;
    text-align: center;
  }
}

.movie__img img {
  border-radius: 10px;
}

@media (max-width: 768px) {
  .movie__img img {
    border-radius: 0 0 10px 10px ;
  }
}

.present {
  padding: 0 20px;
  margin-bottom: 40px;
}

.present__inner {
  max-width: 830px;
  padding: 30px 22px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid var(--red-color);
}

@media (max-width: 530px) {
  .present__title-wrapper img {
    width: 15%;
  }
}

.present__title {
  margin-bottom: 40px;
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  line-height: 2;
  position: relative;
}

@media (max-width: 768px) {
  .present__title {
    font-size: 18px;
  }
}

.present__title .text--red {
  font-size: 24px;
}

@media (max-width: 768px) {
  .present__title .text--red {
    font-size: 18px;
  }
}

.present__title-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}

.present__img {
  width: 38%;
  margin: 0 auto 40px;
}

@media (max-width: 768px) {
  .present__img {
    width: 80%;
  }
}

.present__img img {
  filter: drop-shadow(10px 10px 0px rgba(195, 222, 231, 1));
}

.present__list {
  font-size: 18px;
  margin-bottom: 40px;
}

@media (max-width: 768px) {
  .present__list {
    font-size: 16px;
  }
}

.present__item {
  margin-bottom: 10px;
  text-indent: -1em;
  padding-left: 1em;
}

.present .text:last-child {
  margin-bottom: 0;
}

.cta--flex .cta__form {
  width: 100%;
  margin: 0;
}

.message {
  padding-bottom: 50px;
  background: url(../img/bg02.png);
}

.cta--bottom {
  padding-bottom: 10px;
}

.cta--bottom .circle--left {
  bottom: 140px;
}

.cta--bottom .border-circle--left {
  bottom: 120px;
}

.cta--bottom__img {
  padding: 0 20px;
  margin: 0 auto 50px;
  position: relative;
  z-index: 2;
}

.notation {
  margin-top: 80px;
  color: #7e8e94;
  font-size: 13px;
  text-align: center;
  text-decoration: underline;
}

footer {
  padding: 16px 0;
  background-color: #75b5cc;
  text-align: center;
}

.copyright {
  color: #fff;
  font-size: 15px;
}

/* ========================================
  オンラインサロンCAUSE
========================================= */

.salon-cta {
  text-align: center;
}

.salon-cta .cta__text {
  margin: 60px 0 40px;
  color: var(--blue-color);
  font-size: 20px;
}

@media (max-width: 768px) {
  .salon-cta .cta__text {
    margin: 60px 0 40px;
    color: var(--blue-color);
  }
}

.text--pink {
  color: var(--pink-color);
  font-size: 20px;
  font-weight: 700;
}

.text--32px {
  font-size: 32px;
}

@media (max-width: 768px) {
  .text--32px {
    font-size: 28px;
  }
}

.salon__btn {
  width: 400px;
  height: 60px;
  display: block;
  margin: 50px auto 60px;
  align-content: center;
  background: var(--gd-color);
  border-radius: 35px;
  box-shadow: 0px 0px 15px rgba(136.34, 122.85, 122.85, 0.1);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  transition: all 0.4s;
}

.salon__btn::after {
  content: url(../img/salon/arrow.svg);
  margin-left: 1em;
  vertical-align: middle;
  transition: all 0.4s;
  position: relative;
  left: 0;
}

.salon__btn:hover:after {
  position: relative;
  left: 15px;
}

@media (max-width: 768px) {
  .salon__btn {
    width: 290px;
    height: 50px;
    margin: 30px auto 40px;
    font-size: 14px;
  }
}

.leading {
  padding-bottom: 20px;
  background-color: #fff9f9;
}

.salon-section__title {
  padding: 30px 0;
  margin-bottom: 50px;
  background-color: var(--lightpink-color);
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}

@media (max-width: 768px) {
  .salon-section__title {
    padding: 20px 10px;
    font-size: 24px;
  }
}

.leading .section__img {
  width: 45%;
  margin: 0 auto 40px;
}

@media (max-width: 768px) {
  .leading .section__img {
    width: 80%;
    margin: 0 auto 40px;
  }
}

.introduction {
  background-color: #fffce9;
  padding-bottom: 20px;
}

.salon-page .section__list {
  border-radius: 10px;
}

.introduction .section__item::before {
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-top: -6px;
  margin-right: 4px;
  background: url(../img/salon/check-icon-pink.png) no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.introduction .section__list {
  font-weight: 700;
}

.introduction .section__item {
  margin-bottom: 20px;
}

.introduction .section__item:last-child {
  margin-bottom: 0;
}

.introduction__list {
  max-width: 840px;
  padding: 0 20px;
  margin: 0 auto;
}

.introduction__item {
  padding: 30px 30px 30px 25px;
  margin-bottom: 30px;
  background-color: #fff;
  border-radius: 10px;
}

.introduction__item-title {
  text-indent: -1.25em;
  padding-left: 1em;
  margin-bottom: 30px;
  font-size: 20px;
  font-weight: 700;
}

.introduction__item-title::before {
  content: "1";
  width: 23px;
  height: 23px;
  display: inline-block;
  padding-left: 1.5em;
  background-color: var(--pink-color);
  border-radius: 50%;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.introduction__item:nth-child(2) .introduction__item-title::before {
  content: "2";
}

.introduction__item:nth-child(3) .introduction__item-title::before {
  content: "3";
}

.introduction__item:nth-child(4) .introduction__item-title::before {
  content: "4";
}

.introduction__item:nth-child(5) .introduction__item-title::before {
  content: "5";
}

.item__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 25px;
}

@media (max-width: 768px) {
  .item__inner {
    flex-direction: column;
  }
}

.item__img {
  width: 40%;
}

@media (max-width: 768px) {
  .item__img {
    width: 100%;
    text-align: center;
  }
}

.item__img img {
  border-radius: 10px;
}

.item__contents {
  width: 60%;
}

@media (max-width: 768px) {
  .item__contents {
    width: 100%;
  }
}

.introduction .item__text {
  line-height: 2;
}

.recommend .section__list {
  padding: 30px;
  border-radius: 10px;
  border: 1px solid var(--blue-color);
  font-size: 18px;
}

.recommend .section__item {
  margin-bottom: 10px;
  line-height: 2;
}

.arrow {
  margin-bottom: 30px;
  text-align: center;
}

.gain__list {
  margin-top: 50px;
}

.gain__item {
  display: flex;
  align-items: center;
  gap: 22px;
  padding-right: 10px;
  margin-bottom: 30px;
  border-radius: 10px;
  border: 1px solid var(--pink-color);
}

.gain__img {
  width: 27%;
}

.gain__img img {
  border-radius: 10px 0 0 10px;
}

@media (max-width: 768px) {
  .gain__img img {
    width: 150px;
  }
}

.gain__text {
  background: var(--gd-color);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 18px;
  font-weight: 700;
}

@media (max-width: 768px) {
  .gain__text {
    width: 70%;
    font-size: 16px;
  }
}

.detail {
  background-color: #fff9f9;
  padding-bottom: 20px;
}

.wrapper {
  padding: 0 20px;
}

.detail__list {
  max-width: 820px;
  padding: 0 30px;
  margin: 0 auto 40px;
  background-color: #fff;
  border-radius: 15px;
}

.detail__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 30px 0;
  border-bottom: 1px solid #c4bcbc;
}

@media (max-width: 768px) {
  .detail__item {
    flex-direction: column;
  }
}

.detail__item:first-child {
  align-items: flex-start;
}

@media (max-width: 768px) {
  .detail__item:first-child {
    align-items: center;
  }
}

.detail__item:nth-child(3) {
  padding-bottom: 0;
}

@media (max-width: 768px) {
  .detail__item:nth-child(3) {
    padding-bottom: 30px;
  }

  .detail__item:nth-child(4),
  .detail__item:nth-child(5) {
    padding-bottom: 0;
  }
}

.detail__item:nth-child(5) {
  border-bottom: none;
}

.detail__img {
  width: 32%;
}

@media (max-width: 768px) {
  .detail__img {
    width: 80%;
    margin-bottom: 10px;
  }

  .detail__item:nth-child(3) .detail__img{
    margin-bottom: 0;
  }


}

.detail__img img {
  border-radius: 10px;
}

.detail__img--top {
  width: 70%;
  margin: 0 0 0 auto;
  display: block;
}

.detail__img--bottom {
  width: 70%;
}

.detail__item:nth-child(3) .detail__img--top {
  width: 60%;
  position: relative;
  z-index: 2;
}

.detail__item:nth-child(3) .detail__img--bottom {
  width: 60%;
  position: relative;
  top: -30px;
}

.detail__contents {
  width: 65%;
}

@media (max-width: 768px) {
  .detail__contents {
    width: 100%;
  }
}

.detail__title {
  margin-bottom: 20px;
  color: var(--pink-color);
  font-size: 20px;
  font-weight: 700;
}

.detail__title::before {
  content: "01";
  display: inline-block;
  margin-right: 2%;
  color: #95bfcf;
  font-weight: 700;
}

.detail__item:nth-child(2) .detail__title::before {
  content: "02";
}

.detail__item:nth-child(3) .detail__title::before {
  content: "03";
}

.detail__item:nth-child(4) .detail__title::before {
  content: "04";
}

.detail__item:nth-child(5) .detail__title::before {
  content: "05";
}

.detail__text {
  font-size: 16px;
}

.detail__text--small {
  margin: 10px 0;
  font-size: 15px;
}

.detail-theme__list {
  padding: 13px;
  border-radius: 10px;
  border: 1px solid #efb9ca;
}

.detail-theme__item {
  margin-bottom: 5px;
  font-size: 15px;
  position: relative;
}

.detail-theme__item::before {
  content: url(../img/salon/polygon.svg);
  width: 10px;
  height: 10px;
  display: inline-block;
}

.impression__list {
  max-width: 640px;
  margin: 0 auto;
}

.impression__item {
  margin-bottom: 42px;
  padding: 22px 70px;
  background-color: #fff;
  border-radius: 10px;
  position: relative;
}

.impression__item:nth-child(odd):before {
  content: "";
  width: 70px;
  height: 70px;
  background-image: url(../img/salon/detail-icon01.png),
    url(../img/salon/Union.png);
  background-repeat: no-repeat, no-repeat;
  background-position: center, center;
  background-size: 55% 55%, 100% 100%;
  display: inline-block;
  position: absolute;
  top: -5%;
  left: -2%;
}

.impression__item:nth-child(2):before {
  content: "";
  width: 70px;
  height: 70px;
  background-image: url(../img/salon/detail-icon02.png),
    url(../img/salon/Union02.png);
  background-repeat: no-repeat, no-repeat;
  background-position: center, center;
  background-size: 55% 55%, 100% 100%;
  display: inline-block;
  position: absolute;
  top: -5%;
  right: -2%;
}

.impression__item:nth-child(3):before {
  background-image: url(../img/salon/detail-icon03.png),
    url(../img/salon/Union.png);
}

.impression__text {
  font-size: 16px;
  line-height: 2;
}

.environment .section__img {
  width: 60%;
  margin: 50px auto 45px;
}

.price,
.special-price,
.guarantee,
.lastly {
  background-color: #fff9f9;
  padding-bottom: 20px;
}

.guarantee {
  background-color: #fff9f9;
}

.text--24px {
  font-size: 24px;
  font-weight: 700;
}

.summary {
  padding-bottom: 60px;
}

.summary__title {
  margin-bottom: 40px;
}

.summary__title .text--pink{
  font-size: 24px;
}

.summary__title::before {
  content: url(../img/salon/polygon02.svg);
  width: 18px;
  height: 18px;
  display: inline-block;
}

.summary .section__list {
  padding: 0 20px;
}

.summary .section__item .text {
  margin-bottom: 10px;
  text-indent: 0.1em;
}

.summary .section__item::before {
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-top: -6px;
  margin-right: 4px;
  background: url(../img/salon/check-icon.png) no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.summary__item-title {
  margin-bottom: 20px;
}

.summary__item-title::before {
  content: "";
  width: 18px;
  height: 18px;
  display: inline-block;
  background-color: var(--pink-color);
  border-radius: 50%;
  line-height: 1.5;
}

.summary__item .text {
  text-indent: 1em;
}

.summary__item:nth-child(2) {
  margin-bottom: 40px;
}

.summary__item:nth-child(2) .text {
  margin-bottom: 0;
  text-indent: -1em;
  padding-left: 1em;
}

.summary__flow-list {
  padding: 8% 0 8% 8%;
  margin: 20px 0 40px;
  border-radius: 20px;
  border: 1px solid #d07c7b;
}

.summary__flow-item {
  width: 90%;
  padding: 0px 0 60px 60px;
  margin: 0 auto;
  border-left: 1px solid #c2c2c2;
  font-size: 18px;
  position: relative;
}

.summary__flow-item:nth-child(4) {
  padding-bottom: 0;
}

.summary__flow-item::before {
  content: "";
  width: 60px;
  height: 60px;
  display: inline-block;
  background-image: url(../img/salon/flow01.png);
  background-position: center;
  background-size: 100% 100%;
  position: absolute;
  top: -15px;
  left: -30px;
  vertical-align: middle;
}

@media (max-width: 768px) {
  .summary__flow-item::before {
    top: -5px;
    left: -30px;
  }
}

.summary__flow-item:nth-child(2):before {
  background-image: url(../img/salon/flow02.png);
}

.summary__flow-item:nth-child(3):before {
  background-image: url(../img/salon/flow03.png);
}

.summary__flow-item:nth-child(4):before {
  background-image: url(../img/salon/flow04.png);
}

.lastly .inner {
  max-width: 640px;
  padding: 30px;
  background-color: #fff;
  border-radius: 10px;
}

.lastly .section__img {
  width: 63%;
  margin: 0 auto 40px;
}

.lastly .text--right {
  font-size: 18px;
}

.salon-footer {
  background-color: #ed7e7e;
}

.salon-page .notation {
  margin: 0 0 10px;
  color: #fff;
}

/* ========================================
  動画視聴ページ
========================================= */

.movie-page .circle--left {
  width: 176px;
  height: 176px;
  border-radius: 50%;
  background-color: #b7d9e5;
  position: absolute;
  left: -60px;
  bottom: 0;
}

.movie-page .border-circle--left {
  width: 104px;
  height: 104px;
  border-radius: 50%;
  border: 1px solid #16a9de;
  position: absolute;
  left: 70px;
  bottom: -50px;
}

.movie-page .circle--right {
  width: 183px;
  height: 183px;
  border-radius: 50%;
  background-color: #cdecf7;
  position: absolute;
  top: -60px;
  right: -20px;
}

.movie-page .border-circle--right {
  width: 92px;
  height: 92px;
  border-radius: 50%;
  border: 1px solid #16a9de;
  position: absolute;
  top: 80px;
  right: -20px;
}

.header__img {
  width: 50%;
  margin: 0 auto;
  position: relative;
  text-align: center;
  z-index: 2;
}

@media (max-width: 768px) {
  .header__img {
    width: 90%;
  }
}

.movie-seminar {
  padding: 40px 0;
  background: url(../img/bg02.png);
  text-align: center;
}

.movie-seminar__title {
  padding: 10px 0;
}

.movie-seminar__title::before {
  content: url(../img/arrow-right.svg);
  width: 20px;
  height: 20px;
  display: inline-block;
}

.movie-seminar .section__img {
  margin-top: 40px;
}

/* ========================================
  サンキューページ
========================================= */

.thanks-page {
  background: url(../img/bg.png);
  object-fit: cover;
}

.text--green {
  color: #06c755;
}

.thanks-header {
  padding: 40px 0;
  margin-top: 20px;
  text-align: center;
}

.thanks-header h1,
.thanks-header .text--red {
  font-size: 48px;
}

@media (max-width: 768px) {
  .thanks-header h1,
  .thanks-header .text--red {
    font-size: 24px;
  }
}

.line__btn {
  width: 400px;
  height: 60px;
  display: block;
  margin: 30px auto 60px;
  align-content: center;
  background: #06c755;
  border-radius: 35px;
  box-shadow: 0px 0px 15px rgba(136.34, 122.85, 122.85, 0.1);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  transition: all 0.4s;
}

@media (max-width: 768px) {
  .line__btn {
    width: 290px;
    height: 50px;
    margin: 30px auto 40px;
    font-size: 14px;
  }
}

.line__btn::after {
  content: url(../img/salon/arrow.svg);
  margin-left: 1em;
  vertical-align: middle;
  transition: all 0.4s;
  position: relative;
  left: 0;
}

.line__btn:hover::after {
  position: relative;
  left: 15px;
}

.line__text {
  padding: 0 1em;
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.line__text .text--bold {
  margin: 0 1em;
}

@media (max-width: 375px) {
  .line__text .text--bold{
    font-size: 16px;
  }
}

.thanks-page .present__inner {
  border: 1px solid #96C4D5;
}

.thanks-page .present__item {
  position: relative;
}

.thanks-page .present__item::before {
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-top: -6px;
  margin-right: 4px;
  background: url(../img/salon/check-icon.png) no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.line__text--bottom {
  margin: 20px 0;
  font-size: 24px;
  font-weight: 700;
  text-align: center;
}

.line__text--bottom .text--red {
  font-size: 24px;
}

/* ========================================
  レビューページ
========================================= */

.review-header {
  padding: 20px;
  background-color: var(--lightpink-color);
  color: #fff;
  text-align: center;
}

.review__icon-text {
  margin-bottom: 20px;
  font-size: 28px;
  font-weight: 700;
}

.review__title {
  font-size: 36px;
  font-weight: 700;
}

@media (max-width: 768px) {
  .review__title {
    font-size: 28px;
    font-weight: 700;
  }
}

.comment {
  padding: 50px 0 60px;
  background-color: #fff9f9;
}

.comment__contents {
  text-align: center;
}

.comment__title {
  font-size: 24px;
}

.comment__contents img {
  margin: 30px 0;
}

.comment__contents .text {
  line-height: 1.5;
}

.form__title {
  padding: 0 0 10px 5px;
  margin-bottom: 40px;
  border-bottom: 3px solid var(--lightpink-color);
}

/* マイスピーフォームのスタイル上書き */
input,
textarea {
  background: #fff;
}

.content_form .input_unit {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

form.myForm input[type="text"],
form.myForm textarea {
  width: 100%;
  border: 1px solid #a0a0a0;
}

form.myForm .required .my_column.my_left label:first-child:after {
  display: none;
}

.content_form label {
  padding-left: 20px;
  border-left: 3px solid var(--lightpink-color);
  font-size: 18px;
  font-weight: 700;
}

.content_form .input_unit .my_left.my_column {
  padding: 0 0 10px;
}

.content_form .input_unit .my_right.my_column {
  width: 100%;
}

.comment__area {
  margin-top: 60px;
}

.comment__list-wrapper {
  padding: 30px;
  background-color: #fff;
  border: 1px solid var(--lightpink-color);
  border-radius: 10px;
}

.comment__item {
  padding-bottom: 1em;
  margin-bottom: 30px;
  border-bottom: 1px solid #738187;
}

.comment__info {
  margin-bottom: 20px;
  position: relative;
}

.comment__info::before {
  content: "";
  width: 45px;
  height: 45px;
  margin-right: 50px;
  background-image: url(../img/comment.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 55% 55%;
  border: 1px solid var(--lightpink-color);
  border-radius: 50%;
  display: inline-block;
  position: absolute;
}

.name {
  margin-left: 60px;
  font-size: 16px;
  font-weight: 700;
}

.date {
  margin-left: 60px;
  color: #738187;
  font-size: 14px;
}

.comment__text {
  font-size: 16px;
  font-weight: 400;
}

.comment__btn-wrapper {
  display: inline-block;
  position: relative;
}

.comment__btn-wrapper::after {
  display: inline-block;
  content: url(../img/salon/arrow.svg);
  vertical-align: middle;
  position: absolute;
  top: 55%;
  right: 20%;
  transition: all 0.4s;
}

.comment__btn-wrapper:hover::after {
  position: absolute;
  transform: translate(1rem, 0);
  transition: all 0.4s;
}

.comment__btn {
  width: 310px;
  height: 60px;
  display: block;
  margin: 30px auto 0;
  align-content: center;
  background: linear-gradient(117deg, #ed80a1 0%, #ff578a 100%);
  border-radius: 35px;
  box-shadow: 0px 0px 15px rgba(136.34, 122.85, 122.85, 0.1);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  text-indent: -3em;
  transition: all 0.4s;
  position: relative;
}

@media (max-width: 768px) {
  .comment__btn {
    width: 280px;
    text-indent: -2em;
  }
}

.more {
  text-indent: 0;
}

@media (max-width: 768px) {
  .more {
    width: 220px;
  }
}

.review-page footer {
  background-color: #ed7e7e;
}