@charset "UTF-8";
/*=======================================

Variables

========================================*/
.noto-sansL {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}

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

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

.m-plus_1p-thin {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.m-plus_1p-light {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.m-plus_1p-regular {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus_1p-medium {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.m-plus_1p-bold {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.m-plus_1p-extrabold {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.m-plus_1p-black {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.m-plus_r-thin {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.m-plus_r-light {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.m-plus_r-regular {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus_r-medium {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.m-plus_r-bold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.m-plus_r-extrabold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.m-plus_r-black {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 900;
  font-style: normal;
}

/*=======================================

Reset

========================================*/
/* A Modern CSS Reset */
*, *::before, *::after {
  padding: 0;
  margin: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul[role=list], ol[role=list] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

img, picture {
  max-width: 100%;
  display: block;
}

input, button, textarea, select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/*=======================================

spacer

========================================*/
.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.px-15 {
  padding-left: 0.9375rem !important;
  padding-right: 0.9375rem !important;
}

.px-30 {
  padding-left: 1.875rem !important;
  padding-right: 1.875rem !important;
}

.pl-10 {
  padding-left: 0.5rem;
}

.pt-20 {
  padding-top: 1.25rem !important;
}

.pt-60 {
  padding-top: 3.75rem !important;
}

.pt-80 {
  padding-top: 5rem !important;
}

.pb-40 {
  padding-bottom: 2rem !important;
}

.pb-60 {
  padding-bottom: 3.75rem !important;
}

.my-40 {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

.my-60 {
  margin-top: 3.75rem !important;
  margin-bottom: 3.75rem !important;
}

.mb-30 {
  margin-bottom: 1.875rem !important;
}

.mb-15 {
  margin-bottom: 0.9375rem !important;
}

.py-40 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.py-60 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.py-30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.py-15 {
  padding-top: 0.9375rem !important;
  padding-bottom: 0.9375rem !important;
}

.pa-15 {
  padding: 0.625rem !important;
}

@media (min-width: 768px) {
  .px-md-30 {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .pl-md-15 {
    padding-left: 0.9375rem !important;
  }
  .pt-md-10 {
    padding-top: 10px !important;
  }
  .pt-md-128 {
    padding-top: 8rem !important;
  }
  .pt-md-64 {
    padding-top: 4rem !important;
  }
  .pt-md-82 {
    padding-top: 5.125rem !important;
  }
  .pb-md-42 {
    padding-bottom: 2.625rem !important;
  }
  .pb-md-30 {
    padding-bottom: 1.875rem !important;
  }
  .pb-md-60 {
    padding-bottom: 60px !important;
  }
  .pb-md-64 {
    padding-bottom: 4rem !important;
  }
  .pb-md-128 {
    padding-bottom: 8rem !important;
  }
  .mb-md-32 {
    margin-bottom: 2rem !important;
  }
  .mb-md-60 {
    margin-bottom: 60px !important;
  }
  .mr-md-15 {
    margin-right: 0.9375rem !important;
  }
  .ml-md-15 {
    margin-left: 0.9375rem !important;
  }
  .mr-md-15 {
    margin-right: 0.9375rem !important;
  }
  .mr-md-32 {
    margin-right: 2rem !important;
  }
  .mx-md-15 {
    margin-left: 0.9375rem !important;
    margin-right: 0.9375rem !important;
  }
  .pl-md-35 {
    padding-left: 2.1875rem !important;
  }
  .pl-md-15 {
    padding-left: 0.9375rem !important;
  }
  .pr-md-35 {
    padding-right: 2.1875rem !important;
  }
  .pr-md-15 {
    padding-right: 0.9375rem !important;
  }
  .mt-md-30 {
    margin-top: 1.875rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-40 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
}
@media (min-width: 992px) {
  .pr-Blg-15 {
    padding-right: 0.9375rem !important;
  }
  .pb-Blg-60 {
    padding-bottom: 3.75rem !important;
  }
  .pb-Blg-80 {
    padding-bottom: 80px !important;
  }
  .mb-Blg-0 {
    margin-bottom: 0 !important;
  }
  .py-Blg-80 {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
}
@media (min-width: 1024px) {
  .pa-lg-30 {
    padding: 30px !important;
  }
  .pl-lg-0 {
    padding-left: 0 !important;
  }
  .px-lg-48 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }
  .pt-lg-232 {
    padding-top: 11.375rem !important;
  }
  .pt-lg-65 {
    padding-top: 4.0625rem !important;
  }
  .pl-lg-48 {
    padding-left: 3rem !important;
  }
  .pr-lg-48 {
    padding-right: 3rem !important;
  }
  .pr-lg-30 {
    padding-right: 1.875rem !important;
  }
  .pb-lg-30 {
    padding-bottom: 1.875rem !important;
  }
  .pb-lg-65 {
    padding-bottom: 7.1875rem !important;
  }
  .mb-lg-69 {
    margin-bottom: 4.3125rem !important;
  }
  .pl-lg-24 {
    padding-left: 1.5rem !important;
  }
  .pr-lg-24 {
    padding-right: 1.5rem !important;
  }
}
@media (min-width: 960px) {
  .px-blg-0 {
    padding-left: 0;
    padding-right: 0;
  }
}
/*=======================================

Base

========================================*/
body {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  color: #555555;
}

h1, h2, h3, h4, h5, p {
  letter-spacing: 2px;
  margin-bottom: 0;
}

p {
  color: #333333;
}

ul {
  list-style: none;
}

a {
  display: block;
  text-decoration: none;
  color: #555555;
}

.main a {
  color: #4B0082;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.main a:hover {
  color: #cfbedb;
}

.w-fit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.heigth-100 {
  height: 100%;
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.ct-max-width {
  max-width: 1024px;
  height: 100%;
  margin-inline: auto;
}

.font-color-BRL {
  color: #F4F0E9;
}

.font-color-WH {
  color: #fff;
}

.top-5 {
  top: 7%;
}

@media (min-width: 768px) {
  .top-md-16 {
    top: 16%;
  }
}
@media (min-width: 1024px) {
  .top-lg-20 {
    top: 20%;
  }
  .top-lg-26 {
    top: 26%;
  }
}
.dotted-h3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.dotted-h3::before,
.dotted-h3::after {
  content: "";
  width: 100%;
  height: 3px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 10px 0;
}

.dotted-h3:before {
  background: url(../images/border-dotted-L.svg) no-repeat center/cover;
}

.dotted-h3:after {
  background: url(../images/border-dotted-R.svg) no-repeat center/cover;
}

@media (min-width: 768px) {
  .dotted-h3 {
    padding: 0 15px;
  }
  .dotted-h3::before,
  .dotted-h3::after {
    width: 0;
    height: 2px;
  }
  .dotted-h3:before {
    margin-right: 0.5rem;
  }
  .dotted-h3:after {
    margin-left: 0.5rem;
  }
  .dotted-h3 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media (min-width: 1024px) {
  .dotted-h3 {
    font-size: 1.5rem;
  }
}
.bg-gry {
  background-color: #EEEEEE;
}

.bg-bl {
  background-color: #F4F0E9;
}

.break-span-sp {
  display: block;
}

.break-span {
  display: block;
}

@media (min-width: 640px) {
  .break-span-sm {
    display: block;
  }
}
@media (min-width: 992px) {
  .break-span-Blg {
    display: block;
  }
}
@media (min-width: 1024px) {
  .break-span-lg {
    display: block;
  }
}
.page-head {
  height: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 768px) {
  .page-head {
    height: 12rem;
  }
}
@media (min-width: 1280px) {
  .page-head {
    height: 15.625rem;
  }
}
.p-relative {
  position: relative;
  z-index: 1;
}

.m-sm-none {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

@media (min-width: 768px) {
  .m-sm-none {
    margin-right: 0.9375rem !important;
    margin-left: 0.9375rem !important;
  }
}
.border-r-20 {
  border-radius: 20px;
}
.border-r-30 {
  border-radius: 30px;
}
.txt-align-c {
  text-align: center;
}

/*=======================================

Bootstrap customize

========================================*/
/* grid */
.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 1.875rem;
  --bs-gutter-y: 0;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 1024px) {
  .container,
  .container-xxl,
  .container-xl,
  .container-lg,
  .container-md,
  .container-sm {
    padding-right: var(--bs-gutter-x);
    padding-left: var(--bs-gutter-x);
  }
}
.row {
  --bs-gutter-x: 0.9375rem;
  --bs-gutter-y: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: var(--bs-gutter-x);
  margin-left: var(--bs-gutter-x);
}

@media (min-width: 768px) {
  .row > * {
    padding-right: 0;
    padding-left: 0;
  }
}
/* navbar */
.navbar {
  --bs-navbar-padding-y: 0;
}

.navbar-brand {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0.9375rem;
  margin-right: 0;
  font-size: 0.8rem;
  color: #555555;
  text-decoration: none;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .navbar-brand {
    padding-left: 0;
  }
}
@media (min-width: 1024px) {
  .navbar-brand {
    --bs-gutter-x: 1.875rem;
    font-size: 1rem;
  }
}
.navbar-collapse {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
}

.navbar-collapse > ul {
  gap: 20px;
  padding: 30px 0;
}

.nav-link {
  display: block;
  padding: 0 0.8125rem;
  color: #555555;
}

#menu-header_menu > .menu-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 576px) {
  .navbar > .container-fluid {
    --cs-navbar-sm-padding-y: 1.25rem;
    padding-top: calc(var(--cs-navbar-sm-padding-y) * 0.5);
    padding-bottom: calc(var(--cs-navbar-sm-padding-y) * 0.5);
    background-color: #fff;
  }
  a.nav-link {
    font-size: 0.8rem;
  }
}
.table {
  margin-bottom: 2rem;
  border-color: #CCCCCC;
  margin-top: 2rem;
}

header {
  width: 100%;
  height: 60px;
  display: block;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 99;
}

@media (min-width: 640px) {
  header {
    position: relative;
  }
}
@media (min-width: 768px) {
  header {
    height: 80px;
  }
}
@media (min-width: 1024px) {
  header {
    height: 100px;
  }
}
.img-logo {
  --header-logo-Wsize: 3.07984375rem;
  --header-logo-Hsize: 2.50474375rem;
  width: calc(var(--header-logo-Wsize) * 0.5);
  height: calc(var(--header-logo-Hsize) * 0.5);
}

.header-logo-font {
  font-size: 0.8rem;
  margin-bottom: 0;
}

@media (min-width: 640px) {
  .header-logo-font {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  .navbar-nav > .menu-item > a {
    color: #555555;
    font-family: "M PLUS 1p", sans-serif;
    font-weight: 400;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    font-size: 0.75rem;
  }
  .navbar-nav > .menu-item > a:hover {
    color: #808080;
  }
  .navbar-nav > .menu-item:nth-last-child(1) {
    padding: 0.75rem;
    background: url(../images/img_button_contact.svg) no-repeat center/contain;
  }
  .img-logo {
    width: calc(var(--header-logo-Wsize) * 0.7);
    height: calc(var(--header-logo-Hsize) * 0.7);
  }
}
@media (min-width: 1024px) {
  .header-logo-font {
    font-size: 1.3125rem;
  }
  .img-logo {
    width: var(--header-logo-Wsize);
    height: var(--header-logo-Hsize);
  }
  .navbar-nav > .menu-item > a {
    font-size: 1rem;
  }
}
footer {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #444444;
  color: #fff;
}

.footer-wrap {
  max-width: 1024px;
  margin-inline: auto;
}

.footer-logo_img {
  --footer-logo-Wsize: 3.0625rem;
  --footer-logo-Hsize: 2.5rem;
  margin-inline: auto;
}

.copy-light {
  color: #fff;
}

.footer-wrap {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}

.footer-inner {
  padding-top: 2.1875rem;
  padding-bottom: 2.1875rem;
}

.footer-inner > ul {
  display: block;
  text-align: center;
  padding: 0;
}

.footer-inner > ul > li {
  padding-top: 1.25rem;
}

.footer-inner > ul > li:nth-child(1) {
  padding-top: 0;
}

.footer-inner > ul > li > a {
  color: #fff;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 400;
  font-size: 0.8rem;
}

.footer-logo {
  margin-top: 2.5rem;
  text-align: center;
}

.footer-logo_img {
  width: calc(var(--footer-logo-Wsize) * 0.7);
  height: calc(var(--footer-logo-Hsize) * 0.7);
}

.footer-logo > p {
  font-size: 0.75rem;
  color: #fff;
  margin-top: 0.625rem;
}

.copy-light {
  font-size: 0.5rem;
  margin-top: 1.125rem;
  text-align: center;
}

@media (min-width: 768px) {
  .footer-inner {
    padding-top: 2.1875rem;
    padding-bottom: 4rem;
  }
  .footer-inner > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer-inner > ul > li {
    padding-top: 0rem;
    padding-left: 1.875rem;
  }
  .footer-inner > ul > li:nth-child(1) {
    padding-left: 0;
  }
  .footer-inner > ul > li > a {
    font-size: 1rem;
  }
  .footer-inner > ul > li > a:hover {
    color: #808080;
  }
  .footer-logo {
    margin-top: 4.3125rem;
    text-align: center;
  }
  .footer-logo_img {
    width: var(--footer-logo-Wsize);
    height: var(--footer-logo-Hsize);
  }
  .footer-logo > p {
    font-size: 1.125rem;
    margin-top: 1.125rem;
  }
  .copy-light {
    font-size: 0.875rem;
  }
}
.first-view {
  background: -webkit-gradient(linear, left top, left bottom, from(#f4f0e9), color-stop(70%, #f4f0e9), color-stop(30%, #e5e5e5), to(#e5e5e5));
  background: linear-gradient(180deg, #f4f0e9 0%, #f4f0e9 70%, #e5e5e5 30%, #e5e5e5 100%);
  padding-bottom: 0.75rem;
}

.first-view_wrap {
  height: 25rem;
  background: url(../images/img_firstView.png) no-repeat 45% 50%/210%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.first-view_wrap > h2 {
  text-align: center;
  padding-bottom: 4rem;
}

@media (min-width: 768px) {
  .first-view_wrap {
    height: 40vh;
    background: url(../images/img_firstView.png) no-repeat center bottom/120%;
  }
  .first-view_wrap > h2 {
    font-size: 1.85rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1024px) {
  .first-view_wrap {
    height: 45vh;
    background: url(../images/img_firstView.png) no-repeat center bottom/100%;
  }
  .first-view_wrap > h2 {
    font-size: 2.25rem;
    padding-bottom: 8rem;
  }
}
@media (min-height: 960px) {
  .first-view_wrap {
    height: 30vh;
  }
}
@media (min-width: 1280px) {
  .first-view_wrap {
    height: 35rem;
    background: url(../images/img_firstView.png) no-repeat center bottom/120%;
  }
  .first-view_wrap > h2 {
    font-size: 2.25rem;
    padding-bottom: 8rem;
  }
}
@media (min-width: 1536px) {
  .first-view {
    background: -webkit-gradient(linear, left top, left bottom, from(#f4f0e9), color-stop(80%, #f4f0e9), color-stop(85%, #e5e5e5), to(#e5e5e5));
    background: linear-gradient(180deg, #f4f0e9 0%, #f4f0e9 80%, #e5e5e5 85%, #e5e5e5 100%);
  }
  .first-view_wrap {
    height: 35rem;
    background: url(../images/img_firstView.png) no-repeat center bottom/85%;
  }
  .first-view_wrap > h2 {
    font-size: 2.25rem;
    padding-bottom: 10rem;
  }
}
.read {
  padding-top: 2.6875rem;
  padding-bottom: 2.6875rem;
  color: #fff;
  background: #444444 url(../images/img_circle01.png) no-repeat center/cover;
}

.read p {
  margin-bottom: 0;
  color: #fff;
  text-align: center;
  letter-spacing: 2px;
  font-size: 0.9rem;
}

@media (min-width: 768px) {
  .read {
    padding-top: 5.5625rem;
    padding-bottom: 5.5625rem;
  }
  .read p {
    font-size: 1.5rem;
  }
}
.appeal-point_txt p {
  color: #555555;
  font-size: 0.75rem;
  letter-spacing: normal;
  line-height: 1.7rem;
}

@media (min-width: 768px) {
  .appeal-point_txt h2 {
    line-height: 36px;
  }
  .font-size-md-50 {
    font-size: 3.1rem;
  }
}
@media (min-width: 1024px) {
  .appeal-point_txt h2 {
    font-size: 1.5rem;
    line-height: 30px;
  }
  .font-size-lg-70 {
    font-size: 4.375rem;
  }
}
.bg-BRL {
  background-color: #F4F0E9;
}

.bg-BL {
  background-color: #444444;
}

.col-inner {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 25px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.col-inner p {
  color: #fff;
}

.inner-img {
  width: 100%;
  margin-bottom: 20px;
}

.inner-img img {
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 768px) {
  .col-inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .col-inner p {
    color: #fff;
    max-width: 400px;
  }
  .inner-img {
    margin-bottom: 0;
    width: 30%;
    height: 100%;
  }
}
@media (min-width: 992px) {
  .col-inner p {
    color: #fff;
    max-width: 198px;
  }
  .inner-img {
    width: 165px;
    height: 229px;
  }
  .inner-img img {
    height: 100%;
  }
}
.contact-botton {
  margin-top: 20px;
  margin-inline: auto;
  background: url(../images/img_button_contactWh.svg) no-repeat center/contain;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 300px;
}

.contact-botton-a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1remx;
  padding: 15px 0;
  color: #555555 !important;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.contact-botton-a:hover {
  color: #4B0082 !important;
}

.w-custom img {
  width: 80%;
  margin-inline: auto;
}

@media (min-width: 768px) {
  .contact-botton {
    width: auto;
  }
  .contact-botton-a {
    font-size: 20px;
  }
  .w-custom img {
    width: 100%;
  }
}
.img-concept {
  background-image: url(../images/img_concept.png), -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgb(244, 240, 233)));
  background-image: url(../images/img_concept.png), linear-gradient(0deg, rgb(255, 255, 255), rgb(244, 240, 233));
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.rainbow-box {
  width: 100%;
  margin-top: 2.5rem;
  margin-inline: auto;
  margin-bottom: 2.5rem;
  padding: 0 15px;
}

.rainbow-box-wrap {
  padding: 4px;
  border-radius: 20px;
  position: relative;
}

.rainbow-box-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(45deg, rgba(139, 197, 63, 0.55), rgb(139, 197, 63) 0%, rgb(240, 240, 155) 22%, rgb(0, 113, 187) 47%, rgb(0, 255, 255) 67%, rgb(233, 91, 156) 91%);
  border-radius: 20px;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  padding: 4px;
}

.rainbow-box-wrap p {
  color: #333333;
  padding: 30px;
}

.rBox-inner img {
  border-radius: 0 0 15px 15px;
}

@media (min-width: 768px) {
  .rainbow-box {
    width: 66%;
    margin-top: 3rem;
    margin-bottom: 3rem;
    padding: 0 30px;
  }
}
@media (min-width: 1280px) {
  .rainbow-box {
    max-width: 670px;
    margin-top: 4.375rem;
    padding: 0;
  }
  .rainbow-box-wrap p {
    padding: 40px;
  }
}
.cItem-title {
  padding: 10px 0;
  border-radius: 30px;
  background-color: #fff;
}

.cItem-title h4 {
  padding-left: 40px;
  position: relative;
}

.cItem-title h4::before {
  content: "①";
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.cItem-title .no2::before {
  content: "②";
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.cItem-title .no3::before {
  content: "③";
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.cBreak-span {
  display: block;
}

.cItem-txt {
  padding: 0 15px;
}

@media (min-width: 768px) {
  .cItem-title h4 {
    padding-left: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .cItem-title h4::before {
    content: "1.";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(-100%, -50%);
            transform: translate(-100%, -50%);
  }
  .cItem-title .no2::before {
    content: "2.";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(-100%, -50%);
            transform: translate(-100%, -50%);
  }
  .cItem-title .no3::before {
    content: "3.";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(-100%, -50%);
            transform: translate(-100%, -50%);
  }
  .cBreak-span {
    display: contents;
  }
  .cItem-txt {
    padding: 0;
    max-width: 71.972%;
    margin-inline: auto;
  }
}
.ideal-messege {
  display: block;
  color: #fff;
  text-align: center;
  font-size: 1.654rem;
  padding: 1.8rem 0;
}

.ideal-img1::before {
  content: "";
  width: 100%;
  height: 35%;
  position: absolute;
  bottom: -40px;
  left: 0;
  z-index: -1;
  background: url(../images/img_ideal01.svg) no-repeat center/cover;
}

.ideal-img2::before {
  content: "";
  width: 100%;
  height: 50%;
  position: absolute;
  bottom: -70px;
  left: 0;
  z-index: -1;
  background: url(../images/img_ideal02.svg) no-repeat center/contain;
}

.ideal-img3::before {
  content: "";
  width: 100%;
  height: 20%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: url(../images/img_ideal03.svg) no-repeat center/contain;
}

@media (min-width: 768px) {
  .ideal-messege {
    font-size: 1.875rem;
    padding: 2.5rem 0;
  }
  .ideal-img1::before {
    height: 55%;
    bottom: -40px;
    background: url(../images/img_ideal01.svg) no-repeat center/80%;
  }
  .ideal-img2::before {
    height: 65%;
    bottom: -13%;
    background: url(../images/img_ideal02.svg) no-repeat center/40%;
  }
  .ideal-img3::before {
    width: 100%;
    height: 35%;
    position: absolute;
    bottom: 0;
    background: url(../images/img_ideal03.svg) no-repeat center/contain;
  }
}
@media (min-width: 1024px) {
  .ideal-messege {
    font-size: 3.75rem;
    padding: 4.5rem 0;
  }
  .ideal-img2::before {
    bottom: -20px;
    background: url(../images/img_ideal02.svg) no-repeat center/40%;
  }
  .ideal-img3::before {
    height: 40%;
    position: absolute;
    bottom: 5%;
    background: url(../images/img_ideal03.svg) no-repeat center/contain;
  }
}
.border-YBR {
  border: 1px solid #DDD1BB;
  border-radius: 20px;
}

.img-service {
  background-image: url(../images/img_service.png), -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgb(244, 240, 233)));
  background-image: url(../images/img_service.png), linear-gradient(0deg, rgb(255, 255, 255), rgb(244, 240, 233));
}

.bg-color-BL {
  background-color: #E6DDCD;
}

.bg-color-BRL {
  background-color: #F4F0E9;
}

.bg-color-Y {
  background-color: #F4F0E9;
}

.toc-font-size {
  font-size: 24px;
}

.toc-sib-font-size {
  font-size: 16px;
}

.table-of-contents {
  position: relative;
}

.table-of-contents::before {
  content: none;
  color: #DDD1B3;
  position: absolute;
  top: 50%;
  left: 10%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 3.5rem;
}

@media (min-width: 768px) {
  .toc-font-size {
    font-size: 18px;
  }
  .toc-sib-font-size {
    font-size: 14px;
  }
  .table-of-contents::before {
    content: "❶";
    top: 15%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    font-size: 2.25rem;
  }
  .toc-no2::before {
    content: "❷";
  }
  .toc-no3::before {
    content: "❸";
  }
  .toc-no4::before {
    content: "❹";
  }
}
@media (min-width: 1024px) {
  .toc-font-size {
    font-size: 24px;
  }
  .toc-sib-font-size {
    font-size: 16px;
  }
  .table-of-contents::after {
    content: "";
    width: 17px;
    height: 17px;
    border: 0;
    border-bottom: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(45deg) translate(-50%, 0);
            transform: rotate(45deg) translate(-50%, 0);
    position: absolute;
    bottom: 15%;
    left: 50%;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .table-of-contents a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .table-of-contents a:active {
    color: #4B0082;
  }
  .table-of-contents:hover a {
    color: #4B0082;
  }
  .table-of-contents:hover::after {
    bottom: 10%;
    border-bottom: solid 2px #4B0082;
    border-right: solid 2px #4B0082;
  }
}
.junp-space {
  height: 30px;
}

.img-about {
  background-image: url(../images/img_about.png), -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgb(244, 240, 233)));
  background-image: url(../images/img_about.png), linear-gradient(0deg, rgb(255, 255, 255), rgb(244, 240, 233));
}

.img-privacy {
  background-image: url(../images/img_circle01.png), -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgb(244, 240, 233)));
  background-image: url(../images/img_circle01.png), linear-gradient(0deg, rgb(255, 255, 255), rgb(244, 240, 233));
}

.p-font1 {
  font-size: 16px;
}

.p-font-name {
  font-size: 28px;
}

.p-font-eNeme {
  font-size: 10px;
}

@media (min-width: 768px) {
  .p-font1 {
    font-size: 14px;
  }
}
.d-768-block {
  display: none;
}

.d-768-none {
  display: block;
}

@media (max-width: 768px) {
  .sm-img-size {
    width: 55%;
    margin-inline: auto;
  }
  .pt-smonly-15 {
    padding-top: 0.9375rem !important;
  }
  .p-row-direction {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .order-m3 {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
  .d-768-block {
    display: block;
  }
  .d-768-none {
    display: none;
  }
}
.p-contents {
  margin-inline: auto;
}

.p-contents h4 {
  margin: 30px 0;
  padding: 10px 15px;
  background-color: #fff;
  font-size: 16px;
  font-weight: 400;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 20px;
}

.p-contents h5 {
  margin-bottom: 8px;
}

.overview th {
  border-bottom: 3px solid #CCC;
}

.img-coontact {
  background-image: url(../images/img_contact.png), -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgb(244, 240, 233)));
  background-image: url(../images/img_contact.png), linear-gradient(0deg, rgb(255, 255, 255), rgb(244, 240, 233));
}

.contact-customize p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400s;
}

.cform {
  width: 100%;
}

.col-md-7 > input,
.col-md-7 > select,
.col-md-7 > button,
.col-md-7 > textarea {
  width: 100%;
  border: 1px solid #CCC;
  padding: 10px;
}

.required {
  color: red;
}

.col-md-7 > select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-overflow: ellipsis;
  cursor: pointer;
}

.select-wrapper {
  position: relative;
}

.select-wrapper::after {
  content: "";
  width: 0;
  height: 0;
  border-width: 16px 10px 0 10px;
  border-style: solid;
  border-color: black transparent transparent transparent;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}

.check-box {
  margin: 30px 0;
  background-color: #F4F0E9;
  padding-block: 20px;
  border-radius: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
}

@media (min-width: 768px) {
  .check-box {
    margin: 60px 30px;
  }
}
.custom-botton {
  display: inline-block;
  margin: 0 15px;
  padding: 20px 60px;
  background: transparent url(../images/img_button_conform.svg) no-repeat center/100% 100%;
  border: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.custom-botton:hover {
  color: #4B0082;
}

.select-wrapper.no-after::after {
  display: none;
}/*# sourceMappingURL=style.css.map */


/* 20240907追加CSS */

.poricy-check {
	text-align: center;
	width: fit-content;
	margin-inline: auto;
	margin-top: 50px;
}
.poricy-check a {
	text-decoration: underline!important;
	color: #4B0082!important;
}