@charset "UTF-8";
/*
====>> サイト(案件)毎にスタイルを記述していくファイル <<====

・このファイルはサイト(案件)独自のスタイルを記述するファイル
・ここに記述するファイルは、接頭辞に「p-」を付けたセレクタにする事　/　例：「.p-project-item」

*/
/*		TOPページ
-----------------------------------------------------*/
.p-lp {
  max-width: 100%;
  font-family: var(--base-serif);
  overflow: hidden;
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .p-lp {
    padding-top: 50px;
  }
}
.p-lp p {
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-lp p {
    font-size: 14px;
  }
}
.p-lp .is-anime-fadein {
  opacity: 0;
  transform: translateY(20px);
  animation: fadein 0.8s forwards;
  animation-delay: 1s;
}
@media screen and (max-width: 767px) {
  .p-lp .is-anime-fadein {
    animation: fadein 0.5s forwards;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.p-lp-mv {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: 638px;
}
@media screen and (max-width: 767px) {
  .p-lp-mv {
    align-items: flex-start;
    aspect-ratio: 390/844;
    background: url(../../img/members/mv_sp_bg.png) no-repeat center center/cover;
  }
  .p-lp-mv .l-container_wide {
    margin: 0 auto;
  }
}
.p-lp-mv_content {
  width: 50%;
  padding: 80px 0;
}
@media screen and (max-width: 767px) {
  .p-lp-mv_content {
    width: 100%;
    padding: 40px 0;
  }
}
.p-lp-mv_title {
  font-size: 5rem;
  font-size: clamp(3rem, 3.2679738562vw, 5rem);
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: #333;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-lp-mv_title {
    font-size: 3.4rem;
    font-size: clamp(2.4rem, 8.7179487179vw, 3.4rem);
    margin-bottom: 25px;
  }
}
.p-lp-mv_catch {
  color: var(--color-gold);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px 5%;
}
.p-lp-mv_catch p {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 124px;
  width: clamp(8rem, 8.1045751634vw, 12.4rem);
  aspect-ratio: 1;
  font-size: 2.4rem;
  font-size: clamp(1.6rem, 1.568627451vw, 2.4rem);
  letter-spacing: 0.2em;
  text-indent: 0.2em;
  line-height: 1.5;
  text-align: center;
  border: 1px solid var(--color-gold);
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .p-lp-mv_catch p {
    width: 124px;
    width: clamp(8rem, 31.7948717949vw, 12.4rem);
    aspect-ratio: 1;
    font-size: 2.4rem;
    font-size: clamp(1.6rem, 6.1538461538vw, 2.4rem);
  }
}
.p-lp-mv_catch_multi {
  max-width: 31px;
  width: 31px;
  width: 8%;
  aspect-ratio: 1;
  background: url(../../img/members/mv_multi.svg) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .p-lp-mv_image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
    margin: 0 auto;
  }
  .p-lp-mv_image img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
@media screen and (max-width: 767px) {
  .p-lp-mv_image {
    width: 108%;
    position: relative;
    left: 0;
    margin: 13px 0 18px -4%;
  }
  .p-lp-mv_image img {
    width: 100%;
    height: auto;
  }
}
.p-lp-mv .c-btn_wrap {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .p-lp-mv .c-btn_wrap {
    margin-top: 25px;
  }
}
.p-lp-mv .c-btn_wrap .c-link_btn {
  max-width: 337px;
  width: 100%;
}

/*p-lp-mv*/
section.is-bg-gold {
  background: #bda36c;
  background: url(../../img/members/benefits_bg.svg) repeat top left/229px auto, linear-gradient(90deg, rgb(204, 176, 119) 0%, rgb(249, 234, 199) 50%, rgb(204, 176, 119) 100%);
}
@media screen and (max-width: 767px) {
  section.is-bg-gold {
    background: url(../../img/members/benefits_bg.svg) repeat top left/138px auto, linear-gradient(90deg, rgb(204, 176, 119) 0%, rgb(249, 234, 199) 50%, rgb(204, 176, 119) 100%);
  }
}

.p-lp-benefits {
  padding: 150px 0 120px;
}
@media screen and (max-width: 767px) {
  .p-lp-benefits {
    padding: 65px 0 80px;
  }
}
.p-lp-benefits_head {
  display: flex;
  align-items: center;
  gap: 1em;
  font-size: 3.2rem;
  font-size: clamp(2rem, 2.6666666667vw, 3.2rem);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: var(--color-gold);
  margin-bottom: 35px;
}
@media screen and (max-width: 767px) {
  .p-lp-benefits_head {
    font-size: 2rem;
    margin-bottom: 25px;
  }
}
.p-lp-benefits_head img {
  width: clamp(9.8rem, 12.3333333333vw, 14.8rem);
  mix-blend-mode: multiply;
}
@media screen and (max-width: 767px) {
  .p-lp-benefits_head img {
    width: 90px;
    height: auto;
  }
}
.p-lp-benefits .c-unit {
  gap: 20px 4%;
}
.p-lp-benefits .c-unit + .c-unit {
  margin-top: 110px;
}
@media screen and (max-width: 767px) {
  .p-lp-benefits .c-unit + .c-unit {
    margin-top: 60px;
  }
}
.p-lp-benefits .c-link_btn02 {
  margin-top: 30px;
  margin-left: auto;
}
.p-lp-benefits .c-btn_wrap {
  margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .p-lp-benefits .c-btn_wrap {
    margin-top: 60px;
  }
}

/*p-lp-benefits*/
.p-lp-special {
  padding: 100px 0 110px;
  background: url(../../img/members/special_bg.png) repeat-y top center/100% auto;
}
@media screen and (max-width: 767px) {
  .p-lp-special {
    background-image: url(../../img/members/special_bg_sp.png);
    padding: 65px 0;
  }
}
.p-lp-special_content {
  position: relative;
  padding: 80px 60px;
  background: #ffffff;
  background: repeat top left/auto linear-gradient(45deg, rgb(255, 255, 255) 10%, rgb(237, 234, 218) 45%, rgb(232, 228, 207) 50%, rgb(237, 234, 218) 55%, rgb(250, 249, 244) 80%, rgb(253, 252, 250) 100%);
}
@media screen and (max-width: 767px) {
  .p-lp-special_content {
    padding: 42px 28px 78px;
    background: linear-gradient(45deg, rgb(252, 252, 250) 0%, rgb(234, 229, 209) 20%, rgb(252, 252, 250) 40%, rgb(234, 229, 209) 60%, rgb(252, 252, 250) 80%, rgb(234, 229, 209) 100%);
  }
}
.p-lp-special_content::before {
  content: "";
  display: block;
  width: calc(100% - 50px);
  height: calc(100% - 40px);
  position: absolute;
  top: 20px;
  left: 25px;
  pointer-events: none;
  background: url(../../img/members/special_flame.svg) no-repeat center/100% 100%;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content::before {
    width: calc(100% - 14px);
    height: calc(100% - 16px);
    top: 8px;
    left: 7px;
    background-image: url(../../img/members/spesial_flame_sp.svg);
  }
}
@media screen and (max-width: 767px) {
  .p-lp-special_content .l-container {
    max-width: 100%;
    width: 100%;
  }
}
.p-lp-special_content_item + .p-lp-special_content_item {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_item + .p-lp-special_content_item {
    margin-top: 75px;
  }
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_item .l-container_short {
    max-width: 100%;
    width: 100%;
  }
}
.p-lp-special_content dl {
  display: flex;
  align-items: center;
  gap: 2rem;
  margin: 50px 0;
}
@media screen and (max-width: 1023px) {
  .p-lp-special_content dl {
    flex-direction: column;
  }
}
.p-lp-special_content dl dt {
  font-size: 3.6rem;
  font-size: clamp(2.4rem, 3vw, 3.6rem);
  font-weight: 500;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content dl dt {
    font-size: 2.4rem;
    font-size: clamp(1.6rem, 6.1538461538vw, 2.4rem);
    text-align: center;
  }
}
.p-lp-special_content dl dd {
  font-size: 1.6rem;
  letter-spacing: 0.12em;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content dl dd {
    font-size: 1.4rem;
    text-align: center;
  }
}
.p-lp-special_content_list h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  position: relative;
  font-size: 2.8rem;
  color: var(--color-gold);
  letter-spacing: 0.6em;
  text-indent: 0.6em;
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list h3 {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.5em;
    text-indent: 0.5em;
  }
}
.p-lp-special_content_list h3::before, .p-lp-special_content_list h3::after {
  content: "";
  max-width: 185px;
  flex: 1;
  height: 1px;
  border-top: 1px solid var(--color-gold);
}
.p-lp-special_content_list h3 span {
  flex-shrink: 0;
  position: relative;
  display: flex;
  align-items: center;
  gap: 0;
  position: relative;
}
.p-lp-special_content_list h3 span::before, .p-lp-special_content_list h3 span::after {
  content: "";
  display: block;
  width: 20px;
  aspect-ratio: 20/36;
  background: url(../../img/members/special_title_deco.svg) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list h3 span::before, .p-lp-special_content_list h3 span::after {
    width: 10px;
  }
}
.p-lp-special_content_list h3 span::after {
  transform: scale(-1, 1);
}
.p-lp-special_content_list ul {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 40px 6%;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list ul {
    flex-direction: column;
    align-items: center;
  }
}
.p-lp-special_content_list ul li {
  max-width: 324px;
  flex: 1;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list ul li {
    max-width: 222px;
    width: 75%;
  }
}
.p-lp-special_content_list.is-online h3 {
  letter-spacing: 0.12em;
  text-indent: 0.12em;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list.is-online h3 {
    letter-spacing: 0;
    text-indent: 0;
  }
}
.p-lp-special_content_list.is-online ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 22px 2%;
  padding: 50px 40px 45px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list.is-online ul {
    padding: 30px 15px;
  }
}
.p-lp-special_content_list.is-online ul::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url("../../img/members/special_online-list_flame.svg") no-repeat center center/100% 100%;
}
@media screen and (max-width: 767px) {
  .p-lp-special_content_list.is-online ul::before {
    background-image: url("../../img/members/special_online-list_flame_sp.svg");
  }
}
.p-lp-special_content_list.is-online ul li {
  flex: unset;
  display: flex;
  align-items: center;
  gap: 0.5em;
  max-width: 100%;
  width: 49%;
  font-size: 2rem;
  letter-spacing: 0.12em;
  font-weight: 500;
  color: #a18765;
}
@media screen and (max-width: 1023px) {
  .p-lp-special_content_list.is-online ul li {
    width: 100%;
    font-size: 1.4rem;
  }
}
.p-lp-special_content_list.is-online ul li::before {
  content: "";
  flex-shrink: 0;
  display: block;
  width: 26px;
  aspect-ratio: 1;
  background: url(../../img/members/special_online_list_icon.svg) no-repeat center/contain;
}
.p-lp-special_content_list.is-online ul li:first-child {
  width: 100%;
}
.p-lp-special .c-btn_wrap {
  margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .p-lp-special .c-btn_wrap {
    margin-top: 60px;
  }
}

/*p-lp-special*/
.p-lp-flow {
  padding: 155px 0 180px;
}
@media screen and (max-width: 767px) {
  .p-lp-flow {
    padding: 70px 0 100px;
  }
}
.p-lp-flow .c-card-flex {
  gap: 80px 8%;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .p-lp-flow .c-card-flex {
    max-width: 290px;
    width: 100%;
    margin: 0 auto;
  }
}
.p-lp-flow .c-card-flex_item {
  width: 28% !important;
}
@media screen and (max-width: 767px) {
  .p-lp-flow .c-card-flex_item {
    width: 100% !important;
  }
}
.p-lp-flow .c-card-flex_image {
  background-color: #fafafa;
  position: relative;
  margin-bottom: 70px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.12);
}
.p-lp-flow .c-card-flex_image img {
  max-width: 100%;
  height: auto;
}
.p-lp-flow .c-card-flex_text {
  font-weight: 500;
  text-align: left;
  letter-spacing: 0.08em;
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .p-lp-flow .c-card-flex_text {
    text-align: center;
  }
}
@media screen and (min-width: 1024px) {
  .p-lp-flow .c-card-flex_text span {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .p-lp-flow .c-card-flex_text span {
    display: inline-block;
  }
}
.p-lp-flow_num {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  width: 20%;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
}
@media screen and (max-width: 767px) {
  .p-lp-flow_num {
    width: 30%;
    transform: translate(-50%, 55%);
  }
}
.p-lp-flow .c-btn_wrap {
  margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .p-lp-flow .c-btn_wrap {
    margin-top: 60px;
  }
}

/*p-lp-flow*/