@charset "UTF-8";
/* 
font-family: "Noto Sans JP", sans-serif;
font-family: "Noto Serif JP", serif;
*/
html {
  scroll-padding-top: 21.096vw;
}

body {
  font-size: 4vw;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin: 0 auto;
  position: relative;
  color: #1f1f1f;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
  padding-top: 21.096vw;
}

.top_only_txt {
  width: 90%;
  margin: 0 auto 20vw;
}

/*--------------------cmn--------------------*/
.cmn_ttl {
  font-size: 7.4666666667vw;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: 500;
  color: #88b847;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 8vw;
  text-align: center;
}

.cmn_address {
  width: 30.6666666667vw;
  border: 0.2666666667vw solid #e48b88;
  border-radius: 999px;
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  font-family: "Zen Maru Gothic", sans-serif;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 4vw;
}

.cmn_tel p {
  display: inline-block;
  font-size: 8vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
  color: #e48b88;
  position: relative;
  z-index: 1;
  padding-left: 0.9411764706em;
  font-family: "Zen Maru Gothic", sans-serif;
}
.cmn_tel p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7058823529em;
  height: 0.7058823529em;
  transform: translate(0%, -40%);
  background: url(/img/common/telicon.png) no-repeat center center/contain;
}

.line_btn {
  width: 100%;
  border: 0.2666666667vw solid #88b847;
  border-radius: 999px;
  padding: 4vw;
  background: #fff;
  text-align: center;
}
.line_btn p {
  display: inline-block;
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  position: relative;
  z-index: 1;
  padding-left: 2.5em;
  padding-right: 2.1428571429em;
  font-family: "Zen Maru Gothic", sans-serif;
}
.line_btn p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.2857142857em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/arwb.png) no-repeat center center/contain;
}
.line_btn p::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 1.7857142857em;
  height: 1.7857142857em;
  transform: translate(0%, -50%);
  background: url(/img/common/line.png) no-repeat center center/contain;
}

.con_btn {
  width: 100%;
  border: 0.2666666667vw solid #6382cb;
  border-radius: 999px;
  background: #fff;
  padding: 4vw;
  text-align: center;
}
.con_btn p {
  display: inline-block;
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  position: relative;
  z-index: 1;
  padding-left: 2.8571428571em;
  padding-right: 2.1428571429em;
  font-family: "Zen Maru Gothic", sans-serif;
}
.con_btn p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.2857142857em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/arwb.png) no-repeat center center/contain;
}
.con_btn p::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 1.7142857143em;
  height: 1.2857142857em;
  transform: translate(0%, -50%);
  background: url(/img/common/mail.png) no-repeat center center/contain;
}

/*--------------------cmn--------------------*/
/*--------------------header--------------------*/
.header {
  width: 100%;
  padding: 0;
  position: fixed;
  z-index: 10;
  top: 0;
  background: #fff;
  padding: 2.6666666667vw;
}
.header_logo {
  width: 50%;
}
.header_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.header_info {
  display: none;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding-right: 30px;
}
.header_l {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-direction: column;
  gap: 5px;
}
.header_r {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
}
.header_sns {
  width: 30px;
  height: 30px;
}
.header_sns img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.header_nav {
  display: none;
  width: 100%;
  background: #88b847;
  padding: 19px;
}
.header_nav_list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.header_nav_item {
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
}
.header_nav_item:not(:last-child) {
  padding-right: 1.875em;
  border-right: 1px solid #fff;
}
.header_nav_item:not(:first-child) {
  padding-left: 1.8125em;
}
.header_nav_item a {
  color: #fff;
}

/*--------------------header--------------------*/
/*--------------------footer--------------------*/
.footer {
  width: 100%;
  padding: 4vw 0;
}
.footer_reserve {
  width: 100%;
  border: 0.2666666667vw solid #6382cb;
  background: #6382cb;
  border-radius: 999px;
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 4vw;
  margin-top: 2.6666666667vw;
}
.footer_info {
  margin-bottom: 8vw;
}
.footer .inner {
  border-top: 0.5333333333vw solid #edf7df;
  border-bottom: 0.5333333333vw solid #edf7df;
  padding: 13.3333333333vw 0 4vw;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}
.footer_logo {
  width: 100%;
  text-align: center;
}
.footer_address {
  text-align: center;
}
.footer_address span {
  font-size: 3.4666666667vw;
}
.footer_tel {
  text-align: center;
}
.footer_tel span {
  display: block;
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 4vw;
}
.footer_tel p {
  font-size: 11.2vw;
}
.footer_sns {
  width: 8vw;
  height: 8vw;
}
.footer_sns img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer_nav {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 4%;
  margin-bottom: 12vw;
}
.footer_nav_list:nth-child(1) {
  width: 48%;
}
.footer_nav_list:nth-child(2) {
  width: 48%;
}
.footer_nav_item {
  width: 100%;
  font-size: 3.7333333333vw;
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  font-family: "Zen Maru Gothic", sans-serif;
}
.footer_nav_item:not(:last-child) {
  margin-bottom: 4vw;
}
.footer_nav_item a {
  color: #1f1f1f;
}
.footer_sub {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 5.3333333333vw;
  margin-bottom: 8vw;
}
.footer_subb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 4vw;
  margin-bottom: 8vw;
}
.footer_subtxt {
  font-size: 4vw;
  line-height: 2.25em;
  letter-spacing: 0em;
  font-weight: 400;
  margin-bottom: 8vw;
}
.footer_subtxt_bg {
  background: #edf7df;
}
.footer_subtxt_big {
  font-size: 4.8vw;
  color: #e48b88;
  font-weight: 700;
}

.copy_right {
  font-size: 3.2vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
  color: #727272;
}

.sp_box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8vw;
  margin-bottom: 12vw;
}

/*--------------------footer--------------------*/
/*--------------------mv--------------------*/
.mv {
  width: 100%;
  position: relative;
  z-index: 1;
  height: 120vw;
  background: url(/img/common/mvill.png) no-repeat left bottom/20%;
}
.mv_img {
  width: 80%;
  height: 106.6666666667vw;
  border-bottom-left-radius: 16vw;
  border-top-left-radius: 16vw;
  overflow: hidden;
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  transform: translate(0%, -50%);
}
.mv_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mv_catch {
  width: 90%;
  position: absolute;
  z-index: -1;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.mv_sub {
  width: 60%;
  position: absolute;
  z-index: -1;
  bottom: 9.3333333333%;
  right: 7%;
  transform: translate(0%, 0%);
}
.mv_sub img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/*--------------------mv--------------------*/
/*--------------------sv--------------------*/
.sv_news .sv_img img {
  -o-object-position: 30%;
     object-position: 30%;
}

.sv {
  width: 100%;
  height: 86.6666666667vw;
  position: relative;
  z-index: 1;
}
.sv::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: 0%;
  left: 0%;
  width: 18.6458333333%;
  height: 15%;
  transform: translate(0%, 0%);
  background: url(/img/sv/svill.png) no-repeat left bottom/contain;
}
.sv_img {
  position: absolute;
  z-index: -2;
  top: 0%;
  right: 50%;
  transform: translate(50%, 0%);
  width: 100%;
  height: 80vw;
  overflow: hidden;
}
.sv_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sv_catch {
  width: 90%;
  font-size: 8vw;
  text-align: center;
  line-height: 1.45;
  letter-spacing: 0;
  font-weight: 700;
  color: #88b847;
  font-family: "Zen Maru Gothic", sans-serif;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 0.8vw 0.8vw 0.5333333333vw #ffffff, -0.8vw 0.8vw 0.5333333333vw #ffffff, 0.8vw -0.8vw 0.5333333333vw #ffffff, -0.8vw -0.8vw 0.5333333333vw #ffffff, 0.8vw 0px 0.5333333333vw #ffffff, 0px 0.8vw 0.5333333333vw #ffffff, -0.8vw 0px 0.5333333333vw #ffffff, 0px -0.8vw 0.5333333333vw #ffffff;
}

/*--------------------sv--------------------*/
/*--------------------voice--------------------*/
.voice {
  width: 100%;
}
.voice_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16vw;
}
.voice_item {
  width: 100%;
  padding: 4vw;
  background: #fbf7ed;
  border-radius: 8vw;
}
.voice_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.voice_img {
  width: 34.6666666667vw;
  height: 34.6666666667vw;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 5.3333333333vw;
}
.voice_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.voice_box {
  width: 100%;
}
.voice_star {
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 2.6666666667vw;
}
.voice_star_y {
  font-size: 5.3333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 0;
  color: #f4d819;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-left: 2.6666666667vw;
  margin-right: 2.6666666667vw;
}
.voice_star_b {
  font-size: 5.8666666667vw;
  line-height: 0.5;
  letter-spacing: 0em;
  font-weight: 500;
  color: #f4d819;
  font-family: "Zen Maru Gothic", sans-serif;
}
.voice_ttl {
  font-size: 6.4vw;
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 4vw;
}
.voice_in {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.3333333333vw 0;
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 500;
  color: #88b847;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 8vw;
}
.voice_namae {
  margin-right: 2.6666666667vw;
}

/*--------------------voice--------------------*/
/*--------------------flow--------------------*/
.flow_link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 4vw;
  padding-bottom: 0;
}
.flow_link a {
  width: 90%;
  background: #6382cb;
  border-radius: 999px;
  padding: 5.3333333333vw;
}
.flow_link a p {
  text-align: center;
  font-size: 4.2666666667vw;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 500;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
  z-index: 1;
}
.flow_link a p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.125em;
  height: 0.625em;
  transform: translate(0%, -50%);
  background: url(/img/common/arwnews.png) no-repeat center center/contain;
}

.flow {
  width: 100%;
}
.flow .line_btn {
  width: 100%;
  text-align: center;
}
.flow .line_btn p {
  padding-right: 0;
}
.flow .line_btn p::before {
  display: none;
}
.flow .con_btn {
  width: 100%;
  text-align: center;
  padding-left: 0;
  padding-right: 0;
}
.flow .con_btn p {
  padding-right: 0;
}
.flow .con_btn p::before {
  display: none;
}
.flow_reserve {
  width: 100%;
  background: #6382cb;
  border: 0.2666666667vw solid #6382cb;
  border-radius: 999px;
  font-size: 3.7333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 5.0666666667vw 0;
}
.flow_tel {
  border: 0.2666666667vw solid #e48b88;
  border-radius: 999px;
  width: 100%;
  text-align: center;
  padding: 1.3333333333vw;
  background: #fff;
}
.flow_tel span {
  display: block;
  font-size: 4vw;
  text-align: center;
}
.flow_tel p {
  font-size: 6.9333333333vw;
  text-align: center;
}
.flow_box {
  width: 100%;
  border-radius: 8vw;
  background: #fbf7ed;
  padding: 8vw 4vw;
}
.flow_flex {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 4vw;
}
.flow_flex:not(:last-child) {
  margin-bottom: 10.6666666667vw;
}
.flow_num {
  width: 13.3333333333vw;
}
.flow_item {
  width: calc(100% - 17.3333333333vw);
  margin-top: 2.1333333333vw;
}
.flow_item_ttl {
  font-size: 5.8666666667vw;
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 2.6666666667vw;
}
.flow_item_txt {
  margin-bottom: 4vw;
}
.flow_sub {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 2.6666666667vw;
  border-radius: 8vw;
}

#rai .flow_box {
  position: relative;
  z-index: 1;
}
#rai .flow_box::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -20vw;
  right: 0%;
  width: 32vw;
  height: 26.6666666667vw;
  transform: translate(10%, 0%);
  background: url(/img/flow/illu_r.png) no-repeat center center/contain;
}

#online {
  background: #fbf7ed;
}
#online .flow_box {
  background: #fff;
  position: relative;
  z-index: 1;
}
#online .flow_box::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -20vw;
  right: 0%;
  width: 40vw;
  height: 22.4vw;
  transform: translate(5%, 0%);
  background: url(/img/flow/illu.png) no-repeat center center/contain;
}

/*--------------------flow--------------------*/
/*--------------------relax--------------------*/
.intro {
  width: 100%;
}
.intro_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-direction: column-reverse;
  gap: 16vw;
}
.intro_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-direction: column-reverse;
  gap: 8vw;
}
.intro_img {
  width: 100%;
  height: 66.6666666667vw;
  overflow: hidden;
  border-radius: 8vw;
}
.intro_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.intro_box {
  width: 100%;
}
.intro_box_ttl {
  font-size: 6.4vw;
  line-height: 1.5714285714em;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
  z-index: 1;
  padding-left: 1.0714285714em;
  margin-bottom: 4vw;
}
.intro_box_ttl::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -40%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}

.menu {
  width: 100%;
  background: #fbf7ed;
}
.menu_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5.3333333333vw;
  padding: 8vw 4vw;
  border-bottom: 0.2666666667vw solid #88b847;
}
.menu_flex:first-child {
  border-top: 0.2666666667vw solid #88b847;
}
.menu_img {
  width: 100%;
  height: 53.3333333333vw;
  overflow: hidden;
  border-radius: 8vw;
}
.menu_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.menu_box {
  width: 100%;
}
.menu_box_ttl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.6666666667vw;
}
.menu_box_ttl span:nth-child(1) {
  font-size: 6.4vw;
  line-height: 1.5em;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  font-family: "Zen Maru Gothic", sans-serif;
  width: 100%;
}
.menu_box_ttl span:nth-child(2) {
  font-size: 5.3333333333vw;
  line-height: 1.8333333333em;
  letter-spacing: 0em;
  font-weight: 900;
  color: #e48b88;
  font-family: "Zen Maru Gothic", sans-serif;
  width: 100%;
  text-align: right;
}
.menu_box_ttl span:nth-child(2) span {
  font-size: 3.7333333333vw;
  margin-left: 0.5333333333vw;
}
.menu_txt {
  margin-bottom: 5.3333333333vw;
}
.menu_btn {
  width: 1005;
  background: #6382cb;
  border-radius: 999px;
  padding: 5.3333333333vw;
}
.menu_btn p {
  text-align: center;
  font-size: 4.2666666667vw;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 500;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
  z-index: 1;
}
.menu_btn p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.125em;
  height: 0.625em;
  transform: translate(0%, -50%);
  background: url(/img/common/arwnews.png) no-repeat center center/contain;
}

/*--------------------relax--------------------*/
/*--------------------cou--------------------*/
.hou {
  width: 100%;
}
.hou_ttl {
  margin-bottom: 2.6666666667vw;
}
.hou_sub {
  font-size: 4.8vw;
  line-height: 1.2;
  letter-spacing: 0em;
  font-weight: 500;
  text-align: center;
  margin-bottom: 13.3333333333vw;
}
.hou_sub span:nth-child(1) {
  color: #6382cb;
}
.hou_sub .subc {
  color: #e48b88;
}
.hou_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-direction: column-reverse;
  gap: 8vw;
}
.hou_flex:not(:last-child) {
  margin-bottom: 16vw;
}
.hou_img {
  width: 48vw;
  height: 48vw;
  border-radius: 8vw;
  overflow: hidden;
}
.hou_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hou_box {
  width: 100%;
}
.hou_box_ttl {
  font-size: 6.4vw;
  line-height: 1.5357142857em;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 4vw;
}

.about {
  width: 100%;
  background: #fbf7ed;
}
.about_boldtxt {
  text-align: center;
  font-weight: 700;
  margin-bottom: 16vw;
  letter-spacing: 0.03em;
  line-height: 1.7;
}
.about_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8vw;
  margin-bottom: 8vw;
}
.about_img {
  width: 100%;
  height: 40vw;
  border-radius: 8vw;
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.about_img img {
  width: 90%;
}
.about_box {
  width: 100%;
}
.about_box_ttl {
  font-size: 6.4vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #e48b88;
  position: relative;
  z-index: 1;
  font-family: "Zen Maru Gothic", sans-serif;
  padding-left: 1em;
  padding-right: 2.5em;
  display: inline-block;
  margin-bottom: 5.3333333333vw;
}
.about_box_ttl::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}
.about_box_ttl::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 2.2142857143em;
  height: 0.2857142857em;
  transform: translate(0%, -50%);
  background: url(/img/cou/dott.png) no-repeat center center/contain;
}
.about_list li {
  font-size: 4vw;
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 400;
  color: #1f1f1f;
  position: relative;
  z-index: 1;
  padding-left: 1.5625em;
}
.about_list li:not(:last-child) {
  margin-bottom: 6.6666666667vw;
}
.about_list li::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 1.125em;
  height: 1.125em;
  transform: translate(0%, -50%);
  background: url(/img/cou/peke.png) no-repeat center center/contain;
}
.about_txt {
  position: relative;
  z-index: 1;
  margin-bottom: 29.3333333333vw;
}
.about_txt::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -25%;
  left: 50%;
  width: 3.875em;
  height: 0.5em;
  transform: translate(-50%, 0%);
  background: url(/img/cou/dott.png) no-repeat center center/contain;
}
.about_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12vw;
  margin-bottom: 16vw;
}
.about_item {
  width: 100%;
}
.about_item_ttl {
  font-size: 6.4vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  text-align: center;
  margin-bottom: 4vw;
}
.about_item_img {
  width: 100%;
  height: 48vw;
  background: #fff;
  border-radius: 8vw;
  border: 1.0666666667vw solid #edf7df;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-bottom: 4vw;
}
.about_item_img img {
  width: 40%;
}
.about_item_list li {
  text-indent: -1em;
  padding-left: 1.2em;
}
.about_item_list li span {
  color: #e48b88;
}
.about_intro {
  width: 100%;
}
.about_intro_ttl {
  font-size: 6.4vw;
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 500;
  color: #e48b88;
  position: relative;
  z-index: 1;
  font-family: "Zen Maru Gothic", sans-serif;
  padding-left: 1em;
  padding-right: 2.5em;
  display: inline-block;
  margin-bottom: 5.3333333333vw;
}
.about_intro_ttl::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}
.about_intro_ttl::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 2.2142857143em;
  height: 0.2857142857em;
  transform: translate(0%, -50%);
  background: url(/img/cou/dott.png) no-repeat center center/contain;
}
.about_intro_item:not(:last-child) {
  margin-bottom: 12vw;
}
.about_intro_box {
  background: #fff;
  background: url(/img/cou/clover.png) no-repeat right 5% top 2%/20%, #fff;
  padding: 8vw 4vw;
  border-radius: 8vw;
  position: relative;
  z-index: 1;
}
.about_intro_box::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -20vw;
  right: 0%;
  width: 32vw;
  height: 26.6666666667vw;
  transform: translate(10%, 0%);
  background: url(/img/cou/illu_r.png) no-repeat center center/contain;
}
.about_intro_box_ttl {
  font-size: 5.0666666667vw;
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
  z-index: 1;
  padding-left: 0.75em;
  margin-bottom: 4vw;
}
.about_intro_box_ttl::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.3333333333em;
  height: 0.3333333333em;
  transform: translate(0%, -50%);
  background: #e48b88;
  border-radius: 50%;
}
.about_intro_box_txt {
  margin-bottom: 4vw;
}
.about_intro_dl dt {
  font-size: 4vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
  color: #fff;
  background: #88b847;
  border-radius: 999px;
  padding: 2.4vw 4vw;
  display: inline-block;
  margin-bottom: 2.6666666667vw;
}

#cmenu {
  background: #fff;
}
#cmenu .menu_wrap {
  position: relative;
  z-index: 1;
}
#cmenu .menu_wrap::before {
  content: "";
  position: absolute;
  bottom: -20vw;
  right: 0%;
  width: 48vw;
  height: 26.6666666667vw;
  transform: translate(5%, 0%);
  background: url(/img/flow/illu.png) no-repeat center center/contain;
}

#menu .menu_wrap {
  position: relative;
  z-index: 1;
}
#menu .menu_wrap::before {
  content: "";
  position: absolute;
  bottom: -20vw;
  right: 0%;
  width: 48vw;
  height: 26.6666666667vw;
  transform: translate(5%, 0%);
  background: url(/img/flow/illu.png) no-repeat center center/contain;
}

/*--------------------cou--------------------*/
/*--------------------worries--------------------*/
#young .worries_item {
  background: #fbf7ed;
  position: relative;
  z-index: 1;
}
#young .worries_item::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 4vw;
  height: 4.5333333333vw;
  transform: translate(-100%, -50%);
  background: url(/img/worries/sankaku.png) no-repeat center center/contain;
}

#mid .worries_item {
  background: #eff3fc;
  position: relative;
  z-index: 1;
}
#mid .worries_item::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 4vw;
  height: 4.5333333333vw;
  transform: translate(-100%, -50%);
  background: url(/img/worries/sankaku02.png) no-repeat center center/contain;
}

#old .worries_item {
  background: #fbf0f0;
  position: relative;
  z-index: 1;
}
#old .worries_item::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 4vw;
  height: 4.5333333333vw;
  transform: translate(-100%, -50%);
  background: url(/img/worries/sankaku03.png) no-repeat center center/contain;
}

.worries {
  width: 100%;
}
.worries_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8vw;
}
.worries_flex:not(:last-child) {
  margin-bottom: 16vw;
}
.worries_img {
  text-align: center;
  width: 100%;
  margin: 0 auto;
}
.worries_img figure {
  width: 32vw;
  margin: 0 auto 4vw;
}
.worries_img figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.worries_img figcaption {
  font-size: 6.4vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #e48b88;
  font-family: "Zen Maru Gothic", sans-serif;
  display: inline-block;
  padding-left: 1.0357142857em;
  padding-right: 1.0357142857em;
  position: relative;
  z-index: 1;
}
.worries_img figcaption::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}
.worries_img figcaption::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}
.worries_box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex-direction: column-reverse;
  gap: 5.3333333333vw;
}
.worries_item {
  width: 100%;
  border-radius: 8vw;
  padding: 8vw 5.3333333333vw;
}
.worries_item_ttl {
  font-size: 5.8666666667vw;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 5.3333333333vw;
}
.worries_item_txt {
  margin-bottom: 5.3333333333vw;
}
.worries_item_link {
  font-size: 4.2666666667vw;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 500;
  color: #6382cb;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
  z-index: 1;
  display: inline-block;
  padding-right: 1.6875em;
  border-bottom: 0.5333333333vw solid #6382cb;
  padding-bottom: 0.625em;
}
.worries_item_link::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.125em;
  height: 0.625em;
  transform: translate(0%, -90%);
  background: url(/img/common/arwh.png) no-repeat center center/contain;
}

.inworries {
  width: 100%;
}
.inworries_box {
  width: 100%;
  background: #fbf7ed;
  padding: 8vw 5.3333333333vw;
  border-radius: 8vw;
  margin-bottom: 16vw;
}
.inworries_box_ttl {
  font-size: 5.8666666667vw;
  line-height: 1.8333333333em;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 5.3333333333vw;
}
.inworries_item {
  margin-bottom: 8vw;
}
.inworries_item_ttl {
  font-size: 6.4vw;
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 500;
  color: #e48b88;
  position: relative;
  z-index: 1;
  font-family: "Zen Maru Gothic", sans-serif;
  padding-left: 1em;
  padding-right: 2.5em;
  display: inline-block;
  margin-bottom: 4vw;
}
.inworries_item_ttl::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}
.inworries_item_ttl::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 2.2142857143em;
  height: 0.2857142857em;
  transform: translate(0%, -50%);
  background: url(/img/cou/dott.png) no-repeat center center/contain;
}
.inworries_item_txt {
  background: #edf7df;
  padding: 8vw 5.3333333333vw;
  border-radius: 8vw;
  position: relative;
  z-index: 1;
  background: url(/img/worries/clover.png) no-repeat right 4% bottom/30%, #edf7df;
}
.inworries_item_txt::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0%;
  right: 5.3333333333vw;
  width: 13.3333333333vw;
  height: 10.6666666667vw;
  transform: translate(0%, -100%);
  background: url(/img/worries/ill04.png) no-repeat center center/contain;
}

/*--------------------worries--------------------*/
/*--------------------top--------------------*/
.ret {
  width: 100%;
  padding-bottom: 0;
}
.ret_ttl {
  margin-bottom: 5.3333333333vw;
}
.ret_txt {
  font-size: 4.2666666667vw;
  line-height: 1.6363636364em;
  letter-spacing: 0em;
  font-weight: 500;
  margin-bottom: 21.3333333333vw;
}
.ret_txt span {
  font-size: 5.3333333333vw;
  margin-right: 0.8vw;
}
.ret_list {
  padding: 8vw 4vw;
  background: #fbf7ed;
  border-radius: 8vw;
  position: relative;
  z-index: 1;
}
.ret_list::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0%;
  left: 50%;
  width: 100%;
  height: 6.9333333333vw;
  transform: translate(-50%, -150%);
  background: url(/img/common/decobdr.png) no-repeat center center/1080px;
}
.ret_item {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 4vw;
}
.ret_item:not(:last-child) {
  margin-bottom: 10.6666666667vw;
}
.ret_num {
  width: 12vw;
  height: 12vw;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-size: 5.3333333333vw;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 700;
  color: #fff;
  background: url(/img/common/cloverbg.png) no-repeat center center/contain;
}
.ret_box {
  width: calc(100% - 16vw);
  margin-top: 2.6666666667vw;
}
.ret_box_ttl {
  font-size: 5.8666666667vw;
  line-height: 1.3;
  letter-spacing: 0;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  margin-bottom: 4vw;
}

.top_relax {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
  gap: 8vw;
  margin-bottom: 20vw;
}
.top_relax_box {
  width: 100%;
}
.top_relax_box_ttl {
  text-align: left;
  margin-bottom: 4vw;
}
.top_relax_box_txt .koko {
  position: relative;
  z-index: 1;
}
.top_relax_box_txt .koko::before {
  width: 110%;
  content: "ここえむ";
  position: absolute;
  z-index: -1;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -80%);
  font-size: 3.2vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #6382cb;
}
.top_relax_box_txt .hana {
  position: relative;
  z-index: 1;
}
.top_relax_box_txt .hana::before {
  width: 110%;
  content: "はなえむ";
  position: absolute;
  z-index: -1;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -80%);
  font-size: 3.2vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #6382cb;
}
.top_relax_img {
  width: 100%;
  height: 80vw;
  border-radius: 8vw;
  overflow: hidden;
}
.top_relax_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top_sec_ttl {
  width: 90%;
  font-size: 6.4vw;
  margin: 20vw auto 5.3333333333vw;
  text-align: center;
}

.top_sec_txt {
  width: 94%;
  margin: 0 auto;
  font-size: 4.2666666667vw;
  line-height: 1.6363636364em;
  letter-spacing: 0em;
  font-weight: 500;
  text-align: center;
  margin-bottom: 20vw;
}

.reason {
  background: #fbf7ed;
}
.reason_wrap {
  position: relative;
  z-index: 1;
}
.reason_wrap::before {
  content: "";
  position: absolute;
  bottom: -20vw;
  right: 0%;
  width: 32vw;
  height: 26.6666666667vw;
  transform: translate(10%, 0%);
  background: url(/img/common/lillb.png) no-repeat center center/contain;
}
.reason_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8vw;
}
.reason_flex:nth-child(even) {
  flex-direction: row-reverse;
}
.reason_flex:not(:last-child) {
  margin-bottom: 16vw;
}
.reason_img {
  width: 100%;
  height: 66.6666666667vw;
  border-radius: 8vw;
  overflow: hidden;
}
.reason_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.reason_box {
  width: 100%;
}
.reason_box_ttl {
  font-size: 6.4vw;
  line-height: 1.5714285714em;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  justify-content: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4vw;
  margin-bottom: 5.3333333333vw;
  text-align: center;
}

.owner_btn {
  width: 100%;
  border: 0.2666666667vw solid #88b847;
  border-radius: 999px;
  padding: 2.4vw 5.0666666667vw 2.9333333333vw;
  background: #fff;
  text-align: center;
  margin-top: 2.6666666667vw;
}
.owner_btn p {
  display: inline-block;
  font-size: 4vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #1f1f1f;
  position: relative;
  z-index: 1;
  padding-right: 1.9285714286em;
  font-family: "Zen Maru Gothic", sans-serif;
}
.owner_btn p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.2857142857em;
  height: 0.7142857143em;
  transform: translate(0%, -40%);
  background: url(/img/common/arwb.png) no-repeat center center/contain;
}
.owner_sub {
  font-size: 5.3333333333vw;
  margin-bottom: 4vw;
}
.owner_ttl {
  font-size: 12vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
  color: #88b847;
  font-family: "Zen Maru Gothic", sans-serif;
  text-align: center;
  margin-bottom: 12vw;
}
.owner_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-bottom: 8vw;
}
.owner_box {
  width: 100%;
}
.owner_dl {
  margin-bottom: 8vw;
}
.owner_dl_box:not(:last-child) {
  margin-bottom: 10.6666666667vw;
}
.owner_dl_box dt {
  font-size: 5.8666666667vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #e48b88;
  position: relative;
  z-index: 1;
  padding-left: 1.0357142857em;
  margin-bottom: 2.6666666667vw;
}
.owner_dl_box dt::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0%;
  width: 0.7142857143em;
  height: 0.7142857143em;
  transform: translate(0%, -50%);
  background: url(/img/common/clover.png) no-repeat center center/contain;
}
.owner_dl_box dd span {
  width: 100%;
  display: block;
  text-align: center;
  font-size: 3.7333333333vw;
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 700;
  color: #88b847;
}
.owner_img {
  width: 100%;
  height: 80vw;
  overflow: hidden;
  border-radius: 8vw;
}
.owner_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.owner_txt {
  padding: 8vw 5.3333333333vw;
  border-radius: 8vw;
  background: url(/img/cou/clover.png) no-repeat right 5% top 3%/20%, #edf7df;
}
.owner_txt span {
  font-size: 5.8666666667vw;
  margin-bottom: 8vw;
  text-align: center;
  display: block;
  font-weight: 700;
}

.company {
  width: 100%;
}
.company_dl {
  position: relative;
  z-index: 1;
}
.company_dl::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -20vw;
  right: 0%;
  width: 40vw;
  height: 22.1333333333vw;
  transform: translate(5%, 0%);
  background: url(/img/cou/illu.png) no-repeat center center/contain;
}

.cmn_dl {
  width: 100%;
  border: 0.2666666667vw solid #88b847;
  border-radius: 8vw;
  padding: 8vw 4vw;
}
.cmn_dl_box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  padding: 4vw;
}
.cmn_dl_box:not(:last-child) {
  border-bottom: 0.2666666667vw solid #88b847;
}
.cmn_dl_box dt {
  width: 100%;
  font-weight: 700;
  color: #88b847;
}
.cmn_dl_box dd {
  width: 100%;
}

.googlemap {
  display: none;
}
.googlemap iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border: none;
}

.top_news {
  background: #fbf7ed;
}
.top_news_inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8vw;
}
.top_news_ttl {
  line-height: 1.15em;
  margin: 0;
}
.top_news_box {
  width: 100%;
  text-align: center;
}
.top_news_post {
  width: 100%;
}
.top_news_btn {
  width: 100%;
  background: #6382cb;
  border-radius: 999px;
  padding: 5.3333333333vw;
  text-align: center;
}
.top_news_btn p {
  font-size: 4.2666666667vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
  z-index: 1;
}
.top_news_btn p::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 0%;
  width: 1.125em;
  height: 0.625em;
  transform: translate(0%, -50%);
  background: url(/img/common/arwnews.png) no-repeat center center/contain;
}

/*--------------------top--------------------*/
.cmn_txt {
  font-size: 4vw;
  line-height: 2.25em;
  letter-spacing: 0em;
  font-weight: 400;
  color: #1f1f1f;
}

.w-100 {
  width: 100%;
}