/*reset
-----------------------------------------------------------------------------*/
*:where {
  all: unset;
  display: revert;
}

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

img {
  vertical-align: top;
  width: 100%;
  height: auto;
  margin: 0;
}

h1,
h2,
p {
  margin: 0;
}

:root {
  --main-width: 400px;
}
@media screen and (max-width: 375px) {
  :root {
    --main-width: 100vw;
  }
}

/*PC
-----------------------------------------------------------------------------*/
html {
  scroll-behavior: smooth;
}

body {
  color: #000;
  font-size: 16px;
  font-family: "Noto Sans JP", "Noto Serif JP", "Poppins";
  width: 100%;
  background: linear-gradient(to right, #F9E6DA, #F7D3B8);
  margin: 0;
  position: relative;
}
body a {
  color: #000;
  text-decoration: none;
}
body .flex {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body .subcontent {
  width: calc(var(--main-width) * 0.93);
  margin: 0 auto;
}
body .note {
  color: #6C6C6C;
  font-size: 0.625em;
}
body .to-top-btn {
  right: 35px;
  bottom: 20px;
  display: none;
  position: fixed;
  z-index: 99;
  opacity: 1;
}
body .to-top-btn a {
  text-decoration: none;
}
body .to-top-btn a:hover {
  opacity: 0.9;
}
body .to-top-btn a img {
  width: 94px;
  height: 94px;
  display: block;
}
body .to-top-btn.show {
  display: block;
}
body .to-top-btn.show {
  display: block;
}

#leftWrap {
  width: 325px;
  top: 100px;
  right: calc(50% + var(--main-width) / 2 + 50px);
  position: fixed;
}
#leftWrap .title .topText {
  font-size: 19px;
  font-family: "Noto Serif JP";
  text-align: center;
  border-bottom: 2px solid #C90021;
  padding: 0 0 5px;
}
#leftWrap .title .mainText {
  font-size: 33px;
  text-align: center;
  margin: 0 0 70px;
}
#leftWrap .title .mainText span {
  font-size: 43px;
  font-weight: bold;
}
#leftWrap .induction .price {
  color: #FFF;
  font-weight: bold;
  text-align: center;
  width: calc(var(--main-width) * 0.58);
  background: #E06563;
  border-radius: 100vh;
  margin: 0 auto calc(var(--main-width) * 0.1);
  padding: calc(var(--main-width) * 0.02) 0 calc(var(--main-width) * 0.04);
  position: relative;
  -webkit-animation: jump 2s ease-in-out infinite;
          animation: jump 2s ease-in-out infinite;
}
@-webkit-keyframes jump {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}
@keyframes jump {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}
#leftWrap .induction .price span {
  font-size: 22px;
}
#leftWrap .induction .price::after {
  content: "";
  width: calc(var(--main-width) * 0.064);
  height: calc(var(--main-width) * 0.034);
  left: 50%;
  bottom: calc(var(--main-width) * -0.053);
  background: url(../images/red_arrow.svg) center center/100% 100%;
  position: absolute;
  transform: translateX(-50%);
}
#leftWrap .induction .text {
  text-align: center;
  margin: 0 0 30px;
}
#leftWrap .induction .reserve,
#leftWrap .induction .request {
  width: 272px;
  margin: 0 auto 20px;
  box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
  display: block;
  position: relative;
  overflow: hidden;
}
#leftWrap .induction .reserve::before,
#leftWrap .induction .request::before {
  content: "";
  width: 30px;
  height: 100%;
  top: -180px;
  left: 0;
  background-color: #ffffff;
  display: inline-block;
  position: absolute;
  transition: 300ms;
  -webkit-animation: btn 3.5s ease-in-out infinite;
          animation: btn 3.5s ease-in-out infinite;
}
@-webkit-keyframes btn {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@keyframes btn {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
#leftWrap .induction .reserve:hover,
#leftWrap .induction .request:hover {
  opacity: 0.8;
}

#mainWrap {
  width: 100%;
  max-width: var(--main-width);
  margin: 0 auto;
  overflow-x: hidden;
}
#mainWrap header {
  display: none;
}
#mainWrap .induction {
  padding: 0 0 calc(var(--main-width) * 0.12);
}
#mainWrap .induction .price {
  color: #FFF;
  font-weight: bold;
  text-align: center;
  width: calc(var(--main-width) * 0.58);
  background: #56B746;
  border-radius: 100vh;
  padding: calc(var(--main-width) * 0.02) 0 calc(var(--main-width) * 0.04);
  margin: 0 auto calc(var(--main-width) * 0.1);
  position: relative;
  -webkit-animation: jump 2s ease-in-out infinite;
          animation: jump 2s ease-in-out infinite;
}
@keyframes jump {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}
#mainWrap .induction .price span {
  font-size: 1.375em;
}
#mainWrap .induction .price::after {
  content: "";
  width: calc(var(--main-width) * 0.064);
  height: calc(var(--main-width) * 0.034);
  left: 50%;
  bottom: calc(var(--main-width) * -0.053);
  background: url(../images/green_arrow.svg) center center/100% 100%;
  position: absolute;
  transform: translateX(-50%);
}
#mainWrap .induction .text {
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.05);
}
#mainWrap .induction .flex {
  width: calc(var(--main-width) * 0.93);
}
#mainWrap .induction .flex .reserve {
  width: calc(var(--main-width) * 0.58);
}
#mainWrap .induction .flex .request {
  width: calc(var(--main-width) * 0.37);
}
#mainWrap .induction .flex .reserve,
#mainWrap .induction .flex .request {
  box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
  border-radius: 20px;
  display: block;
  position: relative;
  overflow: hidden;
}
#mainWrap .induction .flex .reserve::before,
#mainWrap .induction .flex .request::before {
  content: "";
  width: 30px;
  height: 100%;
  top: -180px;
  left: 0;
  background-color: #ffffff;
  display: inline-block;
  position: absolute;
  transition: 300ms;
  -webkit-animation: btn 3.5s ease-in-out infinite;
          animation: btn 3.5s ease-in-out infinite;
}
@keyframes btn {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  #mainWrap .induction .flex .reserve:hover,
#mainWrap .induction .flex .request:hover {
    opacity: 0.8;
  }
}
#mainWrap main .top {
  background: linear-gradient(to bottom, #FFF, #FFF0EB, #FFF);
  margin: 0;
  padding: 0 0 calc(var(--main-width) * 0.15);
}
#mainWrap main .top .subcontent {
  padding: calc(var(--main-width) * 0.04) 0 0;
}
#mainWrap main .top .subcontent picture {
  max-width: calc(var(--main-width) * 0.99);
}
#mainWrap main .top .subcontent .mainImg {
  position: relative;
}
#mainWrap main .top .subcontent .mainImg .catch {
  font-size: 1.1875em;
  font-family: "Noto Serif JP";
  text-align: center;
  width: calc(var(--main-width) * 0.86);
  left: calc(var(--main-width) * 0.03);
  bottom: calc(var(--main-width) * -0.08);
  background: #FFF;
  border-bottom: 2px solid #C90021;
  padding: calc(var(--main-width) * 0.025) 0;
  position: absolute;
}
#mainWrap main .top .subcontent .title {
  font-size: 1.9375em;
  text-align: center;
  margin: calc(var(--main-width) * 0.12) 0 calc(var(--main-width) * 0.04);
}
#mainWrap main .top .subcontent .title span {
  font-size: 1.2903em;
  font-weight: bold;
}
#mainWrap main .mediaWrap {
  background: #FFF;
  padding: 0 0 calc(var(--main-width) * 0.1);
}
#mainWrap main .mediaWrap .text {
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.05);
}
#mainWrap main .mediaWrap .slider-container {
  width: 485%;
  height: calc(var(--main-width) * 0.37);
  position: relative;
  overflow: hidden;
}
#mainWrap main .mediaWrap .slider {
  -webkit-animation: slide 20s infinite linear 0.5s both;
          animation: slide 20s infinite linear 0.5s both;
}
#mainWrap main .mediaWrap .slider .slide {
  width: 100%;
  height: calc(var(--main-width) * 0.37);
  margin: 0 15px 0 0;
}
#mainWrap main .mediaWrap .slider .slide picture {
  width: 100%;
  height: 100%;
  display: block;
}
#mainWrap main .mediaWrap .slider .slide img, #mainWrap main .mediaWrap .slider .slide source {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@-webkit-keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
#mainWrap main .cont01 {
  background: #FFF0EB;
}
#mainWrap main .cont01 .subcontent .konkatsu {
  margin: 0 0 calc(var(--main-width) * 0.13);
}
#mainWrap main .cont01 .subcontent .konkatsu .title {
  color: #C90021;
  font-size: 2.5em;
  font-family: "Noto Serif JP";
  font-weight: bold;
  text-align: center;
  padding: calc(var(--main-width) * 0.13) 0 calc(var(--main-width) * 0.05);
}
#mainWrap main .cont01 .subcontent .konkatsu .text {
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.05);
}
#mainWrap main .cont01 .subcontent .konkatsu picture {
  margin: 0 0 calc(var(--main-width) * 0.05);
  display: block;
}
#mainWrap main .cont01 .subcontent .question {
  padding: 0 0 calc(var(--main-width) * 0.13);
}
#mainWrap main .cont01 .subcontent .question .title {
  font-size: 1.4375em;
  font-family: "Noto Serif JP";
  font-weight: bold;
  text-align: left;
  margin: 0 0 calc(var(--main-width) * 0.05);
  padding: 0 0 0 calc(var(--main-width) * 0.19);
  position: relative;
}
#mainWrap main .cont01 .subcontent .question .title::before {
  content: "";
  width: calc(var(--main-width) * 0.213);
  height: calc(var(--main-width) * 0.218);
  top: calc(var(--main-width) * 0.021);
  left: calc(var(--main-width) * 0.013);
  background: url(../images/q_text.svg) center center/100% 100%;
  position: absolute;
}
#mainWrap main .cont01 .subcontent .question picture {
  margin: 0 0 calc(var(--main-width) * 0.02);
  display: block;
}
#mainWrap main .cont01 .induction {
  background: linear-gradient(#FFF0EB, #FFF);
}
#mainWrap main .cont02 {
  background: #FFF;
  padding: 0 0 calc(var(--main-width) * 0.09);
}
#mainWrap main .cont02 picture {
  width: calc(var(--main-width) * 0.65);
  margin: 0 auto calc(var(--main-width) * 0.09);
  display: block;
}
#mainWrap main .cont02 .titleWrap {
  position: relative;
}
#mainWrap main .cont02 .titleWrap .title {
  color: #00A283;
  font-size: 1.6875em;
  font-weight: bold;
  text-align: center;
}
#mainWrap main .cont02 .titleWrap picture {
  width: calc(var(--main-width) * 0.74);
  left: 50%;
  bottom: calc(var(--main-width) * -0.098);
  margin: 0;
  position: absolute;
  transform: translateX(-50%);
}
#mainWrap main .cont02 .text {
  text-align: center;
  margin: calc(var(--main-width) * 0.14) 0 calc(var(--main-width) * 0.2);
}
#mainWrap main .cont03 {
  background: linear-gradient(to bottom, #FFF 97%, #FFF0EB);
}
#mainWrap main .cont03 .border {
  width: calc(var(--main-width) * 0.9);
  margin: 0 auto;
  background: linear-gradient(to bottom, #927BB7, #32B7C0, #F39A3B);
  background-size: 100% 100%;
  border-radius: 9px;
  padding: 1px;
}
#mainWrap main .cont03 .border .contWrap {
  background: #FFF;
  border-radius: 9px;
  position: relative;
}
#mainWrap main .cont03 .border .contWrap .innerWrap {
  width: 100%;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .mainText {
  color: #FFF;
  font-size: 1.4375em;
  font-family: "Noto Serif JP";
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  top: calc(var(--main-width) * -0.213);
  left: 50%;
  background: #56B746;
  border-radius: 15px;
  width: calc(var(--main-width) * 0.8);
  margin: 0 auto calc(var(--main-width) * 0.08);
  padding: calc(var(--main-width) * 0.02) 0 calc(var(--main-width) * 0.03);
  position: absolute;
  transform: translateX(-50%);
  z-index: 2;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .mainText::after {
  content: "";
  bottom: calc(var(--main-width) * -0.069);
  left: 50%;
  border: 15px solid transparent;
  border-top: 15px solid #56B746;
  position: absolute;
  transform: translateX(-50%);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .mainText .dots {
  padding: 0.18em 0 0;
  background: url(../images/dots.svg) center center;
  background-position: top left;
  background-size: 1em 0.3em;
  background-repeat: repeat-x;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .mainText .age {
  font-size: 1.5em;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .topText {
  background: #FFF;
  border-radius: 9px;
  padding: calc(var(--main-width) * 0.16) 0 calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .topText .about {
  font-size: 1.25em;
  background-image: linear-gradient(to right, #000 4px, transparent 2px);
  background-size: calc(var(--main-width) * 0.016) calc(var(--main-width) * 0.005);
  background-position: left bottom;
  background-repeat: repeat-x;
  margin: 0 auto;
  width: calc(var(--main-width) * 0.58);
  padding: 0 0 calc(var(--main-width) * 0.013);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .subcontent {
  width: calc(var(--main-width) * 0.8);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .subcontent .number.flex {
  width: calc(var(--main-width) * 0.64);
  justify-content: flex-start;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .subcontent .number p {
  color: #FFF;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  width: calc(var(--main-width) * 0.29);
  background: #9A7FCD;
  border-radius: 100vh;
  padding: calc(var(--main-width) * 0.008) 0 calc(var(--main-width) * 0.013);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .subcontent .title {
  font-size: 1.6875em;
  font-weight: bold;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .subcontent .text {
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.053);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point01 {
  background-size: auto auto;
  background-color: rgb(255, 255, 255);
  background-image: repeating-linear-gradient(135deg, transparent, transparent calc(var(--main-width) * 0.013), rgb(245, 240, 247) calc(var(--main-width) * 0.013), rgb(245, 240, 247) calc(var(--main-width) * 0.021));
  padding: 0 0 calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point01 .subcontent {
  width: calc(var(--main-width) * 0.8);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point01 .subcontent .number.flex {
  width: calc(var(--main-width) * 0.64);
  -moz-column-gap: calc(var(--main-width) * 0.04);
       column-gap: calc(var(--main-width) * 0.04);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point01 .subcontent .number picture {
  width: calc(var(--main-width) * 0.25);
  transform: translateY(calc(var(--main-width) * -0.053));
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point01 .subcontent .title {
  color: #9A7FCD;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.04);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point01 .subcontent picture {
  margin: 0 0 calc(var(--main-width) * 0.034);
  display: block;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 {
  background-size: auto auto;
  background-color: rgb(255, 255, 255);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 5px, rgb(241, 249, 248) calc(var(--main-width) * 0.013), rgb(241, 249, 248) calc(var(--main-width) * 0.021));
  padding: 0 0 calc(var(--main-width) * 0.13);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .number.flex {
  -moz-column-gap: calc(var(--main-width) * 0.06);
       column-gap: calc(var(--main-width) * 0.06);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .number picture {
  width: calc(var(--main-width) * 0.17);
  transform: translateY(calc(var(--main-width) * -0.053));
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .number p {
  background: #26C9CB;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .title {
  color: #26C9CB;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .text {
  margin: 0 auto calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .imgWrap {
  width: calc(var(--main-width) * 0.8);
  background: #F2FDFC;
  padding: calc(var(--main-width) * 0.08) 0;
  margin: 0 auto calc(var(--main-width) * 0.093);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .imgWrap p {
  color: #26C9CB;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.093);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .imgWrap picture {
  width: calc(var(--main-width) * 0.69);
  margin: 0 auto;
  display: block;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .profile {
  color: #26C9CB;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list {
  width: calc(var(--main-width) * 0.78);
  margin: 0 auto calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list tr td {
  font-size: 0.9375em;
  font-weight: bold;
  text-indent: calc(var(--main-width) * 0.002);
  width: calc(var(--main-width) * 0.21);
  padding: 0 calc(var(--main-width) * 0.04) 5px 0;
  position: relative;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list tr td:first-child {
  width: calc(var(--main-width) * 0.2);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list tr td:first-child::after {
  width: calc(var(--main-width) * 0.17);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list tr td:last-child {
  width: calc(var(--main-width) * 0.3);
  padding: 0 0 calc(var(--main-width) * 0.008);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list tr td:last-child::after {
  width: calc(var(--main-width) * 0.32);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .list tr td::after {
  content: "";
  width: calc(var(--main-width) * 0.21);
  bottom: 0;
  left: 0;
  border-bottom: dotted 2px #CCCCCC;
  position: absolute;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .mark {
  width: calc(var(--main-width) * 0.82);
  background: #FFF;
  border: 1px solid #E3E4E7;
  border-radius: 15px;
  padding: calc(var(--main-width) * 0.08) 0 calc(var(--main-width) * 0.05);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .mark p {
  color: #5A5A5A;
  font-size: 0.625em;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.05);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point02 .subcontent .mark picture {
  width: calc(var(--main-width) * 0.5);
  margin: 0 auto;
  display: block;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 {
  background-color: rgb(255, 255, 255);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 5px, rgb(252, 236, 242) calc(var(--main-width) * 0.013), rgb(252, 236, 242) calc(var(--main-width) * 0.021));
  background-size: auto auto;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent {
  width: calc(var(--main-width) * 0.83);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .number.flex {
  -moz-column-gap: calc(var(--main-width) * 0.06);
       column-gap: calc(var(--main-width) * 0.06);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .number picture {
  width: calc(var(--main-width) * 0.2);
  transform: translateY(calc(var(--main-width) * -0.053));
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .number p {
  background: #FE6D7B;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .title {
  color: #FE6D7B;
  text-align: center;
  margin: 0 auto calc(var(--main-width) * 0.09);
  width: calc(var(--main-width) * 0.54);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .listWrap.flex {
  flex-wrap: wrap;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .listWrap .list {
  width: calc(var(--main-width) * 0.4);
  margin: 0 0 calc(var(--main-width) * 0.09);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .listWrap .list picture {
  margin: 0 auto calc(var(--main-width) * 0.04);
  display: block;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point03 .subcontent .listWrap .list p {
  text-align: center;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 {
  background-color: rgb(255, 255, 255);
  background-size: auto auto;
  background-image: repeating-linear-gradient(135deg, transparent, transparent 5px, rgb(255, 251, 241) calc(var(--main-width) * 0.013), rgb(255, 251, 241) calc(var(--main-width) * 0.021));
  border-radius: 9px;
  padding: 0 0 calc(var(--main-width) * 0.09);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent {
  width: calc(var(--main-width) * 0.83);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .number.flex {
  -moz-column-gap: calc(var(--main-width) * 0.06);
       column-gap: calc(var(--main-width) * 0.06);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .number picture {
  width: calc(var(--main-width) * 0.338);
  transform: translateY(calc(var(--main-width) * -0.053));
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .number p {
  background: #FF9F36;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .title {
  color: #FF9F36;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.09);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent picture {
  margin: 0 0 calc(var(--main-width) * 0.08);
  width: 100%;
  display: block;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .catchText {
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  text-underline-offset: 5px;
  margin: 0 0 calc(var(--main-width) * 0.053);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .text {
  text-align: left;
  margin: 0 0 calc(var(--main-width) * 0.053);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap {
  background: #FFFBF1;
  width: calc(var(--main-width) * 0.82);
  padding: calc(var(--main-width) * 0.08) 0;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap .title {
  font-size: 1.125em;
  font-weight: 500;
  margin: 0 0 calc(var(--main-width) * 0.06);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap .contText {
  color: #C90021;
  font-size: 1.0625em;
  font-weight: 500;
  text-align: center;
  width: calc(var(--main-width) * 0.72);
  background: #FFF;
  border-radius: 100vh;
  border: 2px solid #C90021;
  margin: 0 auto calc(var(--main-width) * 0.06);
  padding: calc(var(--main-width) * 0.013) 0;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap .contText.gr {
  color: #787878;
  border: 2px solid #787878;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap .text {
  text-align: center;
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap picture {
  width: calc(var(--main-width) * 0.63);
  margin: 0 auto calc(var(--main-width) * 0.08);
}
#mainWrap main .cont03 .border .contWrap .innerWrap .inner .point04 .subcontent .flowWrap picture:last-child {
  width: calc(var(--main-width) * 0.6);
  margin: 0 auto;
}
#mainWrap main .cont04 .induction {
  background: #FFF0EB;
  padding: calc(var(--main-width) * 0.12) 0;
}
#mainWrap main .cont04 .marriage {
  background: linear-gradient(#FFF0EB, #FFF 20%);
  padding: 0 0 calc(var(--main-width) * 0.093);
}
#mainWrap main .cont04 .marriage .subcontent {
  width: calc(var(--main-width) * 0.9);
  box-shadow: 0px calc(var(--main-width) * 0.013) calc(var(--main-width) * 0.04) 0px rgba(0, 0, 0, 0.35);
  border-radius: 20px;
  background: #FFF;
  padding: calc(var(--main-width) * 0.08) 0 calc(var(--main-width) * 0.053);
}
#mainWrap main .cont04 .marriage .subcontent .title {
  font-size: 1.4375em;
  font-family: "Noto Serif JP";
  font-weight: bold;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.08);
}
#mainWrap main .cont04 .marriage .subcontent picture {
  width: calc(var(--main-width) * 0.78);
  margin: 0 auto calc(var(--main-width) * 0.053);
  display: block;
}
#mainWrap main .cont04 .marriage .subcontent .text {
  font-family: "Noto Sands JP";
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.08);
}
#mainWrap main .cont05 {
  background: #FFF;
}
#mainWrap main .cont05 .title {
  font-size: calc(var(--main-width) * 0.1);
  font-weight: bold;
  margin: 0 0 0 calc(var(--main-width) * 0.053);
}
#mainWrap main .cont05 .text {
  color: #C90021;
  font-size: 1.125em;
  margin: 0 0 calc(var(--main-width) * 0.2) calc(var(--main-width) * 0.053);
}
#mainWrap main .cont05 .flow {
  background: #FAE5E9;
  position: relative;
}
#mainWrap main .cont05 .flow .flowWrap {
  width: 100%;
  top: calc(var(--main-width) * -0.106);
  left: 0;
  padding: 0 0 20px calc(var(--main-width) * 0.04);
  position: absolute;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap {
  cursor: -webkit-grab;
  cursor: grab;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap.flex {
  width: calc(var(--main-width) * 2.93);
  align-items: flex-start;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step {
  width: calc(var(--main-width) * 0.53);
  margin: 0 calc(var(--main-width) * 0.08) 0 0;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .number picture {
  margin: 0 auto calc(var(--main-width) * 0.06);
  width: calc(var(--main-width) * 0.26);
  display: block;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap {
  margin: 0 auto;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap .flowText {
  color: #C90021;
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  margin: 0 0 calc(var(--main-width) * 0.03);
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap .flowText.bl {
  color: #7191E4;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap .flowText.pk {
  color: #FC6078;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap picture {
  margin: 0 auto calc(var(--main-width) * 0.06);
  display: block;
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap .detail {
  margin: 0 auto calc(var(--main-width) * 0.06);
}
#mainWrap main .cont05 .flow .flowWrap .contWrap .step .contWrap .yoyaku {
  color: #C90021;
  text-align: center;
  background: #FFF;
  border: 1px solid #C90021;
  padding: calc(var(--main-width) * 0.013) 0;
}
#mainWrap main .cont06 {
  background: #FFF;
}
#mainWrap main .cont06 .title {
  font-size: 2.5em;
  font-weight: bold;
  margin: 0 0 0 calc(var(--main-width) * 0.053);
  padding: calc(var(--main-width) * 0.13) 0 0;
}
#mainWrap main .cont06 .text {
  color: #7191E4;
  font-size: 1.125em;
  margin: 0 0 calc(var(--main-width) * 0.08) calc(var(--main-width) * 0.053);
}
#mainWrap main .cont06 .flow {
  background: #EEF0FB;
  padding: calc(var(--main-width) * 0.13) 0;
}
#mainWrap main .cont06 .flow .flex {
  width: calc(var(--main-width) * 0.93);
  margin: 0 auto calc(var(--main-width) * 0.13);
  align-items: flex-start;
}
#mainWrap main .cont06 .flow .flex picture {
  width: calc(var(--main-width) * 0.34);
  display: block;
}
#mainWrap main .cont06 .flow .flex .textWrap {
  width: calc(var(--main-width) * 0.52);
}
#mainWrap main .cont06 .flow .flex .textWrap .main {
  color: #7191E4;
  font-size: 1.25em;
  font-weight: bold;
  margin: 0 0 calc(var(--main-width) * 0.026);
}
#mainWrap main .cont06 .flow .flex:last-child {
  margin: 0 auto;
}
#mainWrap main .cont07 {
  background: #FFF;
}
#mainWrap main .cont07 .title {
  font-size: 2.5em;
  font-weight: bold;
  margin: 0 0 0 calc(var(--main-width) * 0.05);
  padding: calc(var(--main-width) * 0.13) 0 0;
}
#mainWrap main .cont07 .text {
  color: #FC6078;
  font-size: 1.125em;
  margin: 0 0 calc(var(--main-width) * 0.1) calc(var(--main-width) * 0.05);
}
#mainWrap main .cont07 .flow {
  background: #FFEFF1;
}
#mainWrap main .cont07 .flow .flowWrap {
  width: calc(var(--main-width) * 0.9);
  margin: 0 auto;
  padding: calc(var(--main-width) * 0.05) 0;
}
#mainWrap main .cont07 .flow .flowWrap .step {
  padding: 0 0 calc(var(--main-width) * 0.06) calc(var(--main-width) * 0.008);
  position: relative;
}
#mainWrap main .cont07 .flow .flowWrap .step::before {
  content: "";
  width: calc(var(--main-width) * 0.034);
  height: calc(var(--main-width) * 0.034);
  top: calc(var(--main-width) * 0.018);
  left: calc(var(--main-width) * -0.03);
  background: #FC6078;
  position: absolute;
  border-radius: 100vh;
}
#mainWrap main .cont07 .flow .flowWrap .step::after {
  content: "";
  top: calc(var(--main-width) * 0.026);
  left: calc(var(--main-width) * -0.018);
  width: 100%;
  height: 100%;
  border-left: calc(var(--main-width) * 0.008) solid #FC6078;
  position: absolute;
}
#mainWrap main .cont07 .flow .flowWrap .step:last-child::after {
  height: calc(var(--main-width) * 0.34);
}
#mainWrap main .cont07 .flow .flowWrap .step.flex {
  align-items: flex-start;
}
#mainWrap main .cont07 .flow .flowWrap .step .number {
  color: #FC6078;
  font-size: 1.125em;
  font-family: "poppins";
  font-weight: 600;
}
#mainWrap main .cont07 .flow .flowWrap .step .contWrap {
  width: calc(var(--main-width) * 0.66);
  position: relative;
}
#mainWrap main .cont07 .flow .flowWrap .step .contWrap picture {
  margin: 0 0 calc(var(--main-width) * 0.04);
  display: block;
}
#mainWrap main .cont07 .flow .flowWrap .step .contWrap .textWrap .main {
  color: #FC6078;
  font-size: 1.5em;
  font-weight: bold;
  margin: 0 0 calc(var(--main-width) * 0.013);
}
#mainWrap main .cont07 .flow .flowWrap .step:last-child .contWrap::after {
  content: "";
  border-left: 3px dotted #FC6078;
  width: 100%;
  height: calc(var(--main-width) * 0.453);
  top: calc(var(--main-width) * 0.38);
  left: calc(var(--main-width) * -0.259);
  position: absolute;
}
#mainWrap main .cont07 .induction {
  padding: calc(var(--main-width) * 0.12) 0;
}
#mainWrap main .cont07 .induction .text {
  color: #000;
}

footer {
  background: #FFF;
  padding: calc(var(--main-width) * 0.1) 0 0;
}
footer .logo {
  width: calc(var(--main-width) * 0.49);
  margin: 0 auto calc(var(--main-width) * 0.09);
}
footer .detail {
  text-align: center;
  width: calc(var(--main-width) * 0.9);
  margin: 0 auto calc(var(--main-width) * 0.1);
}
footer .copy {
  color: #FFF;
  font-size: 0.625em;
  background: #C90021;
  padding: calc(var(--main-width) * 0.04) 0 calc(var(--main-width) * 0.04) calc(var(--main-width) * 0.05);
}

#rightWrap {
  color: #323232;
  width: 28%;
  min-width: 350px;
  max-width: 510px;
  bottom: 23%;
  left: calc(50% + var(--main-width) / 2 + 50px);
  position: fixed;
}
#rightWrap .logo {
  width: 184px;
  margin: 0 auto 30px;
  display: block;
}
#rightWrap .home {
  text-align: center;
}
#rightWrap .home a:hover {
  opacity: 0.8;
}
#rightWrap .detail {
  font-size: 13px;
  text-align: center;
  margin: 0 0 50px;
}
#rightWrap .copy {
  font-size: 10px;
  text-align: center;
}

@media screen and (750px <= width < 1200px) {
  #rightWrap {
    display: none;
  }
  #leftWrap {
    transform: translateX(calc(var(--main-width) / 2));
  }
  #mainWrap {
    transform: translateX(calc(var(--main-width) / 2));
  }
}
@media (max-width: 750px) {
  body .to-top-btn {
    right: 3vw;
    bottom: 3vw;
  }
  body .to-top-btn a img {
    width: 20vw;
    height: 20vw;
  }
  #leftWrap,
#rightWrap {
    display: none;
  }
  #mainWrap header {
    width: calc(var(--main-width) * 1);
    background: #FFF;
    margin: 0 auto;
    padding: calc(var(--main-width) * 0.01) 0 calc(var(--main-width) * 0.03);
    display: block;
    position: fixed;
    z-index: 3;
  }
  #mainWrap header .subcontent .topLogo {
    width: calc(var(--main-width) * 0.35);
  }
  #mainWrap header .subcontent .topLogo a {
    display: flex;
  }
  #mainWrap header .subcontent .topBtn {
    width: calc(var(--main-width) * 0.54);
  }
  #mainWrap main .top {
    padding: calc(var(--main-width) * 0.16) 0;
  }
}
@media (max-width: 375px) {
  body {
    font-size: 4.2vw;
    margin: 0;
  }
  body .to-top-btn {
    right: 0%;
    bottom: 0%;
  }
  body .to-top-btn a img {
    width: 20vw;
    height: 20vw;
  }
}
/*# sourceMappingURL=style.css.map */