@charset "UTF-8";
/* 変数の定義
--------------------------------------------------*/
/* reset
--------------------------------------------------*/
html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body, p {
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.8;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 769px) {
  body, p {
    font-size: 1.6rem;
  }
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
}

article, header, footer, aside, figure, figcaption, nav, section {
  display: block;
}

ol, ul, li {
  list-style: none;
}

a {
  text-decoration: none;
  opacity: 1;
  transition: all 0.4s ease-out;
}

a:hover {
  opacity: 0.7;
}

img {
  display: block;
  border-style: none;
  max-width: 100%;
  width: 100%;
  height: auto;
}

:focus {
  border-style: none;
  outline: none;
}

/* ie11以下のテキストルール */
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, body {
    font-family: Century, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  }
}
*, *::before, *::after {
  box-sizing: border-box;
}

/* 色の定義
--------------------------------------------------*/
/* テキストパーツ
--------------------------------------------------*/
.white {
  color: #fff;
}

.black {
  color: #484240;
}

.gray {
  color: #484240;
}

.blue {
  color: #0D43B8;
}

.yellow {
  color: #FFD63B;
}

.pink {
  color: #F75A5A;
}

.l-blue {
  color: #38D7C2;
}

.purple {
  color: #836CDD;
}

/* フォントの定義
--------------------------------------------------*/
html, body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: black;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: black;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 500;
}

html {
  font-size: 62.5%;
}

p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.8;
  color: black;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 769px) {
  p {
    font-size: 1.6rem;
  }
}

.jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.en {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 下層メインビジュアル
--------------------------------------------------*/
html, body {
  overflow-x: hidden;
}

body {
  background-color: white;
}

section {
  position: relative;
}

/* 404ページ
--------------------------------------------------*/
#error__wrapper {
  margin-top: 140px;
  margin-bottom: 100px;
}
#error__wrapper .main_ttl {
  text-align: center;
}
#error__wrapper .error_txt {
  text-align: center;
  margin-top: 30px;
}
#error__wrapper .btn_wrapper {
  margin-top: 30px;
}
#error__wrapper .main_btn {
  margin: auto;
  width: 280px;
  height: 70px;
  font-size: 2.4rem;
  padding-left: 80px;
}
#error__wrapper .main_btn .btn_icon {
  width: 50px;
  height: 50px;
  background-color: white;
}
#error__wrapper .main_btn .btn_icon::before {
  width: 21px;
  height: 18px;
  background-color: #0D43B8;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='21' height='18' viewBox='0 0 21 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.421875 7.92188L7.92188 0.421875C8.23438 0.140625 8.59375 0 9 0C9.40625 0 9.76562 0.140625 10.0781 0.421875C10.3594 0.734375 10.5 1.09375 10.5 1.5C10.5 1.90625 10.3594 2.26562 10.0781 2.57812L5.10938 7.5H19.5C19.9375 7.5 20.2969 7.64062 20.5781 7.92188C20.8594 8.20312 21 8.5625 21 9C21 9.4375 20.8594 9.79688 20.5781 10.0781C20.2969 10.3594 19.9375 10.5 19.5 10.5H5.10938L10.0781 15.4219C10.3594 15.7344 10.5 16.0938 10.5 16.5C10.5 16.9062 10.3594 17.2656 10.0781 17.5781C9.76562 17.8594 9.40625 18 9 18C8.59375 18 8.23438 17.8594 7.92188 17.5781L0.421875 10.0781C0.140625 9.76562 0 9.40625 0 9C0 8.59375 0.140625 8.23438 0.421875 7.92188Z' fill='%232756AF'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='21' height='18' viewBox='0 0 21 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.421875 7.92188L7.92188 0.421875C8.23438 0.140625 8.59375 0 9 0C9.40625 0 9.76562 0.140625 10.0781 0.421875C10.3594 0.734375 10.5 1.09375 10.5 1.5C10.5 1.90625 10.3594 2.26562 10.0781 2.57812L5.10938 7.5H19.5C19.9375 7.5 20.2969 7.64062 20.5781 7.92188C20.8594 8.20312 21 8.5625 21 9C21 9.4375 20.8594 9.79688 20.5781 10.0781C20.2969 10.3594 19.9375 10.5 19.5 10.5H5.10938L10.0781 15.4219C10.3594 15.7344 10.5 16.0938 10.5 16.5C10.5 16.9062 10.3594 17.2656 10.0781 17.5781C9.76562 17.8594 9.40625 18 9 18C8.59375 18 8.23438 17.8594 7.92188 17.5781L0.421875 10.0781C0.140625 9.76562 0 9.40625 0 9C0 8.59375 0.140625 8.23438 0.421875 7.92188Z' fill='%232756AF'/%3E%3C/svg%3E%0A");
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ヘッダー
--------------------------------------------------*/
#header {
  box-sizing: border-box;
}
#header #nav_head {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 60px;
  background-color: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(30px);
          backdrop-filter: blur(30px);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  #header #nav_head {
    height: 80px;
  }
}
#header .logo_wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 3.846vw;
}
@media screen and (min-width: 390px) {
  #header .logo_wrap {
    padding-left: 5.128vw;
  }
}
@media screen and (min-width: 769px) {
  #header .logo_wrap {
    padding-right: 3.571vw;
  }
}
@media screen and (min-width: 1000px) {
  #header .logo_wrap {
    padding-left: 7.142vw;
  }
}
#header .logo_icon {
  width: 26.153vw;
  max-width: 102px;
}
@media screen and (min-width: 769px) {
  #header .logo_icon {
    width: clamp(150px, 13.428vw, 188px);
    max-width: 100%;
  }
}
@media screen and (min-width: 1400px) {
  #header .logo_icon {
    width: 188px;
  }
}
#header .logo_txt {
  display: none;
}
@media screen and (min-width: 769px) {
  #header .logo_txt {
    display: block;
    position: relative;
    padding-left: 1.428vw;
    margin-left: 1.428vw;
    color: #484240;
    font-size: clamp(1.2rem, 1.142vw, 1.6rem);
    font-weight: 700;
  }
}
@media screen and (min-width: 1400px) {
  #header .logo_txt {
    padding-left: 20px;
    margin-left: 20px;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1000px) {
  #header .logo_txt .lg-view {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  #header .logo_txt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    width: 1px;
    height: 20px;
    border-left: 1px solid black;
  }
}
#header .header_btn_wrap {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  -moz-column-gap: 9px;
       column-gap: 9px;
  padding-right: 3.846vw;
}
@media screen and (min-width: 390px) {
  #header .header_btn_wrap {
    padding-right: 5.128vw;
  }
}
@media screen and (min-width: 769px) {
  #header .header_btn_wrap {
    -moz-column-gap: 1.428vw;
         column-gap: 1.428vw;
    padding-right: 3.571vw;
  }
}
@media screen and (min-width: 1000px) {
  #header .header_btn_wrap {
    padding-right: 7.142vw;
  }
}
@media screen and (min-width: 1400px) {
  #header .header_btn_wrap {
    -moz-column-gap: 20px;
         column-gap: 20px;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* フッター
--------------------------------------------------*/
footer {
  margin-top: 50px;
  background-color: #EBEBEB;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 40px 7.142vw 15px;
}
@media screen and (min-width: 1400px) {
  footer {
    padding: 40px 100px 15px;
  }
}
footer .logo_box_wrap {
  width: 160px;
}
@media screen and (min-width: 769px) {
  footer .logo_box_wrap {
    width: 150px;
  }
}
@media screen and (min-width: 1000px) {
  footer .logo_box_wrap {
    width: 16.928vw;
  }
}
@media screen and (min-width: 1400px) {
  footer .logo_box_wrap {
    width: 237px;
  }
}
footer .footer_link_wrap {
  width: 100%;
  margin-top: 30px;
}
@media screen and (min-width: 1000px) {
  footer .footer_link_wrap {
    width: auto;
    margin-top: 0;
  }
}
footer .footer_link_list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  -moz-column-gap: 2.857vw;
       column-gap: 2.857vw;
  margin-bottom: 35px;
}
@media screen and (min-width: 1400px) {
  footer .footer_link_list {
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
}
footer .footer_link {
  position: relative;
  width: 100%;
  margin-bottom: 7px;
}
@media screen and (min-width: 769px) {
  footer .footer_link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 0;
  }
}
footer .footer_link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 14px;
  height: 14px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='66' height='66' viewBox='0 0 66 66' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40.9149 25.0787C39.9032 15.3387 37.0627 6.63983 32.9964 -0.00595093C28.9302 6.63983 26.0896 15.3387 25.0779 25.0787C15.337 26.0907 6.63707 28.9319 -0.00708008 32.9992C6.63707 37.0664 15.337 39.9077 25.0779 40.9196C26.0896 50.6596 28.9302 59.3617 32.9964 66.0043C37.0627 59.3585 39.9032 50.6596 40.9149 40.9196C50.6558 39.9077 59.3558 37.0664 65.9999 32.9992C59.3558 28.9319 50.6558 26.0907 40.9149 25.0787Z' fill='%23484240'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 769px) {
  footer .footer_link::before {
    display: none;
  }
}
footer .footer_link:first-child .page_link::before {
  display: none;
}
footer .page_link {
  position: relative;
  color: #484240;
  font-size: 1.4em;
  line-height: 1.6;
  margin-left: 18px;
}
@media screen and (min-width: 769px) {
  footer .page_link {
    font-size: 1.6rem;
    margin-left: 0;
  }
}
@media screen and (min-width: 769px) {
  footer .page_link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -1.428vw;
    transform: translate(0, -50%);
    width: 1px;
    height: 10px;
    border-left: 1px solid #484240;
  }
}
@media screen and (min-width: 1400px) {
  footer .page_link::before {
    left: -20px;
  }
}
footer .page_link:hover {
  opacity: 1;
}
@media (any-hover: hover) {
  footer .page_link:hover {
    color: #0D43B8;
  }
}
footer .corpo_logo_wrap {
  width: 120px;
}
@media screen and (min-width: 1000px) {
  footer .corpo_logo_wrap {
    width: 160px;
    margin-left: auto;
  }
}
footer small {
  text-align: center;
  width: 100%;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  margin-top: 15px;
  color: #484240;
}
@media screen and (min-width: 769px) {
  footer small {
    font-size: 1.2rem;
  }
}

/* 流用パーツ
--------------------------------------------------*/
.inner-wrap {
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-wrap {
    width: calc(100% - 14.285vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-wrap {
    width: calc(100% - 200px);
    max-width: 1200px;
  }
}

.inner-wide-wrap {
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-wide-wrap {
    width: calc(100% - 28.571vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-wide-wrap {
    width: calc(100% - 400px);
    max-width: 1000px;
  }
}

.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .pc-view {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 850px) {
  .pc-view.blank {
    display: none;
  }
}

.sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  .sp-view {
    display: none;
  }
}

br.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  br.pc-view {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 850px) {
  br.pc-view.blank {
    display: none;
  }
}
br.sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  br.sp-view {
    display: none;
  }
}

.f_80 {
  font-size: 80%;
}

.under_line {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

/* 共通パーツ
--------------------------------------------------*/
.bg_shadow {
  position: absolute;
  width: 100%;
  height: 100%;
}
.bg_shadow::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  border: 1px solid #484240;
  box-sizing: border-box;
}
.bg_shadow::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 4px);
  mix-blend-mode: multiply;
}
@media screen and (min-width: 769px) {
  .bg_shadow::after {
    height: calc(100% + 6px);
  }
}
.bg_shadow.pink::after {
  background-color: #F75A5A;
  opacity: 0.5;
}
.bg_shadow.l-blue::after {
  background-color: #6DE1D2;
  opacity: 0.8;
}

.main_ttl {
  position: relative;
  line-height: 1.4;
  padding-left: 23px;
}
.main_ttl::before {
  content: "";
  position: absolute;
  top: 4.5px;
  left: 0;
  width: 18px;
  height: 18px;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.1594 6.84021C10.8835 4.18426 10.1089 1.81221 9 0C7.89114 1.81221 7.11653 4.18426 6.84064 6.84021C4.18432 7.11615 1.81185 7.89092 0 9C1.81185 10.1091 4.18432 10.8838 6.84064 11.1598C7.11653 13.8157 7.89114 16.1887 9 18C10.1089 16.1878 10.8835 13.8157 11.1594 11.1598C13.8157 10.8838 16.1882 10.1091 18 9C16.1882 7.89092 13.8157 7.11615 11.1594 6.84021Z' fill='%23F75A5A'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.1594 6.84021C10.8835 4.18426 10.1089 1.81221 9 0C7.89114 1.81221 7.11653 4.18426 6.84064 6.84021C4.18432 7.11615 1.81185 7.89092 0 9C1.81185 10.1091 4.18432 10.8838 6.84064 11.1598C7.11653 13.8157 7.89114 16.1887 9 18C10.1089 16.1878 10.8835 13.8157 11.1594 11.1598C13.8157 10.8838 16.1882 10.1091 18 9C16.1882 7.89092 13.8157 7.11615 11.1594 6.84021Z' fill='%23F75A5A'/%3E%3C/svg%3E%0A");
  transform: scale(0);
  transition: transform 0.2s ease-out;
  transition-delay: 0.3s;
}
.main_ttl.move::before {
  transform: scale(1);
}
.main_ttl.buyer::before {
  background-color: #F75A5A;
}
.main_ttl.seller::before {
  background-color: #38D7C2;
}

.sec_ttl {
  text-align: center;
  font-size: 9.23vw;
  font-weight: 700;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 390px) {
  .sec_ttl {
    font-size: clamp(3.1rem, 9.23vw, 3.6rem);
  }
}
@media screen and (min-width: 769px) {
  .sec_ttl {
    font-size: 4rem;
  }
}
.sec_ttl span {
  font-weight: 700;
  letter-spacing: 0.08em;
}

/* ボタン
--------------------------------------------------*/
.main_btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: clamp(97px, 28.461vw, 111px);
  height: 30px;
  border-radius: 100px;
  padding-left: 21px;
  font-size: clamp(1rem, 3.076vw, 1.2rem);
  font-weight: 700;
}
@media screen and (min-width: 390px) {
  .main_btn {
    width: 111px;
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 769px) {
  .main_btn {
    width: 180px;
    height: 50px;
    padding-left: 55px;
    font-size: 1.6rem;
  }
}
.main_btn .btn_icon {
  position: absolute;
  top: 50%;
  left: 7px;
  transform: translate(0, -50%);
  width: 10px;
  height: 10px;
  border-radius: 100%;
}
@media screen and (min-width: 769px) {
  .main_btn .btn_icon {
    left: 10px;
    width: 30px;
    height: 30px;
    background-color: white;
    transition: all 0.4s ease-out;
  }
}
.main_btn .btn_icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  transition: all 0.4s ease-out;
}
.main_btn:hover {
  opacity: 1;
}
.main_btn:hover.member_btn {
  background-color: #0051ff;
  border: 3px solid #0051ff;
}
.main_btn:hover.member_btn .btn_icon::before {
  background-color: #0051ff;
}
.main_btn:hover.contact_btn {
  background-color: #fff021;
  border: 3px solid #fff021;
}
.main_btn:hover.contact_btn .btn_icon::before {
  background-color: #fff021;
}
.main_btn.member_btn {
  color: white;
  background-color: #0D43B8;
  border: 2px solid #0D43B8;
}
@media screen and (min-width: 769px) {
  .main_btn.member_btn {
    border: 3px solid #0D43B8;
  }
}
.main_btn.member_btn .btn_icon::before {
  width: 10px;
  height: 10px;
  background-color: white;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 8C6.9 8 5.95833 7.60833 5.175 6.825C4.39167 6.04167 4 5.1 4 4C4 2.9 4.39167 1.95833 5.175 1.175C5.95833 0.391667 6.9 0 8 0C9.1 0 10.0417 0.391667 10.825 1.175C11.6083 1.95833 12 2.9 12 4C12 5.1 11.6083 6.04167 10.825 6.825C10.0417 7.60833 9.1 8 8 8ZM0 16V13.2C0 12.6333 0.145833 12.1125 0.4375 11.6375C0.729167 11.1625 1.11667 10.8 1.6 10.55C2.63333 10.0333 3.68333 9.64583 4.75 9.3875C5.81667 9.12917 6.9 9 8 9C9.1 9 10.1833 9.12917 11.25 9.3875C12.3167 9.64583 13.3667 10.0333 14.4 10.55C14.8833 10.8 15.2708 11.1625 15.5625 11.6375C15.8542 12.1125 16 12.6333 16 13.2V16H0ZM2 14H14V13.2C14 13.0167 13.9542 12.85 13.8625 12.7C13.7708 12.55 13.65 12.4333 13.5 12.35C12.6 11.9 11.6917 11.5625 10.775 11.3375C9.85833 11.1125 8.93333 11 8 11C7.06667 11 6.14167 11.1125 5.225 11.3375C4.30833 11.5625 3.4 11.9 2.5 12.35C2.35 12.4333 2.22917 12.55 2.1375 12.7C2.04583 12.85 2 13.0167 2 13.2V14ZM8 6C8.55 6 9.02083 5.80417 9.4125 5.4125C9.80417 5.02083 10 4.55 10 4C10 3.45 9.80417 2.97917 9.4125 2.5875C9.02083 2.19583 8.55 2 8 2C7.45 2 6.97917 2.19583 6.5875 2.5875C6.19583 2.97917 6 3.45 6 4C6 4.55 6.19583 5.02083 6.5875 5.4125C6.97917 5.80417 7.45 6 8 6Z' fill='%230D43B8'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 8C6.9 8 5.95833 7.60833 5.175 6.825C4.39167 6.04167 4 5.1 4 4C4 2.9 4.39167 1.95833 5.175 1.175C5.95833 0.391667 6.9 0 8 0C9.1 0 10.0417 0.391667 10.825 1.175C11.6083 1.95833 12 2.9 12 4C12 5.1 11.6083 6.04167 10.825 6.825C10.0417 7.60833 9.1 8 8 8ZM0 16V13.2C0 12.6333 0.145833 12.1125 0.4375 11.6375C0.729167 11.1625 1.11667 10.8 1.6 10.55C2.63333 10.0333 3.68333 9.64583 4.75 9.3875C5.81667 9.12917 6.9 9 8 9C9.1 9 10.1833 9.12917 11.25 9.3875C12.3167 9.64583 13.3667 10.0333 14.4 10.55C14.8833 10.8 15.2708 11.1625 15.5625 11.6375C15.8542 12.1125 16 12.6333 16 13.2V16H0ZM2 14H14V13.2C14 13.0167 13.9542 12.85 13.8625 12.7C13.7708 12.55 13.65 12.4333 13.5 12.35C12.6 11.9 11.6917 11.5625 10.775 11.3375C9.85833 11.1125 8.93333 11 8 11C7.06667 11 6.14167 11.1125 5.225 11.3375C4.30833 11.5625 3.4 11.9 2.5 12.35C2.35 12.4333 2.22917 12.55 2.1375 12.7C2.04583 12.85 2 13.0167 2 13.2V14ZM8 6C8.55 6 9.02083 5.80417 9.4125 5.4125C9.80417 5.02083 10 4.55 10 4C10 3.45 9.80417 2.97917 9.4125 2.5875C9.02083 2.19583 8.55 2 8 2C7.45 2 6.97917 2.19583 6.5875 2.5875C6.19583 2.97917 6 3.45 6 4C6 4.55 6.19583 5.02083 6.5875 5.4125C6.97917 5.80417 7.45 6 8 6Z' fill='%230D43B8'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 769px) {
  .main_btn.member_btn .btn_icon::before {
    width: 16px;
    height: 16px;
    background-color: #0D43B8;
  }
}
.main_btn.contact_btn {
  color: black;
  background-color: #FFD63B;
  border: 2px solid #FFD63B;
  padding-left: 24px;
}
@media screen and (min-width: 769px) {
  .main_btn.contact_btn {
    border: 3px solid #FFD63B;
    padding-left: 55px;
  }
}
.main_btn.contact_btn .btn_icon::before {
  width: 13px;
  height: 10px;
  background-color: white;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.8 14C1.305 14 0.88125 13.8286 0.52875 13.4859C0.17625 13.1432 0 12.7312 0 12.25V1.75C0 1.26875 0.17625 0.856771 0.52875 0.514062C0.88125 0.171354 1.305 0 1.8 0H16.2C16.695 0 17.1188 0.171354 17.4713 0.514062C17.8238 0.856771 18 1.26875 18 1.75V12.25C18 12.7312 17.8238 13.1432 17.4713 13.4859C17.1188 13.8286 16.695 14 16.2 14H1.8ZM9 7.875L1.8 3.5V12.25H16.2V3.5L9 7.875ZM9 6.125L16.2 1.75H1.8L9 6.125ZM1.8 3.5V1.75V12.25V3.5Z' fill='%23FFD63B'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.8 14C1.305 14 0.88125 13.8286 0.52875 13.4859C0.17625 13.1432 0 12.7312 0 12.25V1.75C0 1.26875 0.17625 0.856771 0.52875 0.514062C0.88125 0.171354 1.305 0 1.8 0H16.2C16.695 0 17.1188 0.171354 17.4713 0.514062C17.8238 0.856771 18 1.26875 18 1.75V12.25C18 12.7312 17.8238 13.1432 17.4713 13.4859C17.1188 13.8286 16.695 14 16.2 14H1.8ZM9 7.875L1.8 3.5V12.25H16.2V3.5L9 7.875ZM9 6.125L16.2 1.75H1.8L9 6.125ZM1.8 3.5V1.75V12.25V3.5Z' fill='%23FFD63B'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 769px) {
  .main_btn.contact_btn .btn_icon::before {
    width: 18px;
    height: 14px;
    background-color: #FFD63B;
  }
}

/* お問い合わせコンテンツ
--------------------------------------------------*/
.contact_wrap {
  width: calc(100% - 7.142vw);
  margin: auto;
  background-image: url(../img/contact_bg.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 30px;
}
@media screen and (min-width: 1400px) {
  .contact_wrap {
    width: calc(100% - 100px);
    max-width: 1300px;
  }
}
.contact_wrap::before {
  content: "CONTACT";
  position: absolute;
  top: 50%;
  left: 6px;
  transform: translate(0, -50%);
  font-size: clamp(1.5rem, 4.615vw, 1.8rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  color: white;
  font-family: "Montserrat", sans-serif;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 769px) {
  .contact_wrap::before {
    font-size: 2rem;
  }
}
.contact_wrap .contact_content_wrap {
  padding-top: 70px;
  padding-bottom: 60px;
}
.contact_wrap .sec_ttl {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  font-size: 3rem;
  font-feature-settings: "halt";
}
@media screen and (min-width: 769px) {
  .contact_wrap .sec_ttl {
    font-size: 3.4rem;
  }
}
@media screen and (min-width: 1000px) {
  .contact_wrap .sec_ttl {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .contact_wrap .sec_ttl {
    font-size: 4.5rem;
  }
}
.contact_wrap .sec_ttl::before, .contact_wrap .sec_ttl::after {
  content: "";
  position: absolute;
  top: 6px;
  left: -8px;
  width: 28px;
  height: 28px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.0788 12.9204C20.5577 7.9036 19.0945 3.42305 17 0C14.9055 3.42305 13.4423 7.9036 12.9212 12.9204C7.90371 13.4416 3.42238 14.9051 0 17C3.42238 19.0949 7.90371 20.5584 12.9212 21.0796C13.4423 26.0964 14.9055 30.5786 17 34C19.0945 30.5769 20.5577 26.0964 21.0788 21.0796C26.0963 20.5584 30.5776 19.0949 34 17C30.5776 14.9051 26.0963 13.4416 21.0788 12.9204Z' fill='white'/%3E%3C/svg%3E%0A");
  transform: scale(0);
  transition: transform 0.2s ease-out;
  transition-delay: 0.3s;
}
@media screen and (min-width: 769px) {
  .contact_wrap .sec_ttl::before, .contact_wrap .sec_ttl::after {
    top: 2px;
    left: -34px;
    width: 34px;
    height: 34px;
  }
}
@media screen and (min-width: 1000px) {
  .contact_wrap .sec_ttl::before, .contact_wrap .sec_ttl::after {
    top: 7px;
    left: -42px;
  }
}
@media screen and (min-width: 1200px) {
  .contact_wrap .sec_ttl::before, .contact_wrap .sec_ttl::after {
    top: 11px;
  }
}
.contact_wrap .sec_ttl::after {
  left: auto;
  right: -8px;
  transition-delay: 0.5s;
}
@media screen and (min-width: 769px) {
  .contact_wrap .sec_ttl::after {
    right: -34px;
  }
}
@media screen and (min-width: 1000px) {
  .contact_wrap .sec_ttl::after {
    right: -42px;
  }
}
.contact_wrap .sec_ttl.move::before, .contact_wrap .sec_ttl.move::after {
  transform: scale(1);
}
.contact_wrap .sec_ttl .en {
  font-size: 3.8rem;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .contact_wrap .sec_ttl .en {
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 1000px) {
  .contact_wrap .sec_ttl .en {
    font-size: 4.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .contact_wrap .sec_ttl .en {
    font-size: 4.9rem;
  }
}
.contact_wrap .contact_txt {
  position: relative;
  text-align: center;
  margin: 20px auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(1.6rem, 4.615vw, 1.8rem);
  font-weight: 700;
  line-height: 1.6;
  text-decoration: underline;
  text-underline-offset: -4px;
  text-decoration-thickness: 10px;
  -webkit-text-decoration-color: white;
  text-decoration-color: white;
}
@media screen and (min-width: 769px) {
  .contact_wrap .contact_txt {
    font-size: 2rem;
  }
}
.contact_wrap .contact_txt::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 15px;
  background-color: white;
}
.contact_wrap .border {
  position: relative;
  font-size: clamp(1.6rem, 4.615vw, 1.8rem);
  font-weight: 700;
  line-height: 1.6;
}
.contact_wrap .dotts {
  position: relative;
  font-weight: 700;
  background-image: radial-gradient(circle at center, white 2.5px, transparent 2.5px);
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 1.05em 0.5em;
  padding-top: 5px;
  display: inline-block;
  line-height: 1.6;
}
.contact_wrap .contact_btn_wrap {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: wrap;
  -moz-column-gap: 4.285vw;
       column-gap: 4.285vw;
  row-gap: 20px;
  margin-top: 30px;
}
@media screen and (min-width: 1400px) {
  .contact_wrap .contact_btn_wrap {
    -moz-column-gap: 60px;
         column-gap: 60px;
  }
}
.contact_wrap .member_btn_wrap .en {
  position: relative;
  color: #0D43B8;
  font-size: 2rem;
  line-height: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 10px;
  transform: scale(0);
  transition: transform 0.2s ease-out;
  transition-delay: 0.4s;
}
.contact_wrap .member_btn_wrap .en::before, .contact_wrap .member_btn_wrap .en::after {
  content: "";
  position: absolute;
  bottom: 3px;
  left: -15px;
  transform: rotate(45deg);
  width: 12.73px;
  height: 2px;
  border-radius: 1px;
  background-color: #0D43B8;
}
.contact_wrap .member_btn_wrap .en::after {
  left: auto;
  right: -15px;
  transform: rotate(-45deg);
}
.contact_wrap .member_btn_wrap .en.move {
  transform: scale(1);
}
.contact_wrap .main_btn {
  width: 280px;
  height: 70px;
  font-size: 2.4rem;
  padding-left: 80px;
}
.contact_wrap .main_btn .btn_icon {
  width: 50px;
  height: 50px;
  background-color: white;
}
.contact_wrap .main_btn .btn_icon::before {
  width: 26px;
  height: 26px;
  background-color: #0D43B8;
}
.contact_wrap .main_btn:hover.member_btn {
  border: 3px solid white;
}
.contact_wrap .main_btn:hover.contact_btn {
  border-color: white;
}
.contact_wrap .main_btn:hover.contact_btn .btn_icon {
  background-color: white;
}
.contact_wrap .main_btn:hover.contact_btn .btn_icon::before {
  background-color: #fff021;
}
.contact_wrap .contact_btn {
  background-color: white;
  border-color: white;
}
.contact_wrap .contact_btn .btn_icon {
  background-color: #FFD63B;
}
.contact_wrap .contact_btn .btn_icon::before {
  background-color: white;
}

@-webkit-keyframes shine {
  0% {
    background-position: 200% center;
  }
  100% {
    background-position: -100% center;
  }
}

@keyframes shine {
  0% {
    background-position: 200% center;
  }
  100% {
    background-position: -100% center;
  }
}
@-webkit-keyframes fade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/*# sourceMappingURL=style.css.map */