@charset "UTF-8";
/*
	Filename: home
	Version: 1.0.1
*/
/*-----------------------------------------------------
	kv
------------------------------------------------------*/
.kv-slider {
  position: relative;
  height: 100vh;
  min-height: 1150px;
  overflow: hidden;
  isolation: isolate;
}
@supports (height:100svh) { .kv-slider{ height:100svh; }}

.kv-media {
  position: absolute;
	inset: 0;
  width: 100%;
	height: 100%;
  overflow: hidden;
}
.kv-foreground {
  display: grid;
	place-items: center;
  position: absolute;
	inset: 0;
	z-index: 50;
	width: 100%;
  pointer-events: none;
}
.kv-foreground .kv-pane {
  width: min(900px,92vw);
  max-width: 900px;
  margin-inline: auto;
  text-align: center;
  color: #fff;
  pointer-events: auto;
}

.kv-caption {
	position: relative;
	min-height: 3.5em;
}
.kv-cap {
  position: absolute;
	inset: auto 0 0 0;
	margin: auto;
  opacity: 0;
	transform: translateY(8px);
  transition: opacity 1s ease, transform 1s ease;
  will-change: opacity, transform;
}
.kv-cap.is-show {
  opacity: 1;
	transform: translateY(0);
  transition-delay: .5s,.5s;
}
.kv-title,.kv-lead {
  font-family: "Noto Serif",serif;
  font-size: 38px;
	font-weight: 600;
	line-height: 2;
	letter-spacing: .1em;
  color: #fff;
  text-shadow: 0 0 16px var(--main-color), 0 0 16px var(--main-color);
  white-space: pre-line;
}
.kv-title {
	font-size: 28px;
}

.kv-btn {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 72px;
}
.kv-circle {
  display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
  width: 204px;
	height: 189px;
	margin-top: 28px;
	padding: 5px;
  background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
  font-family: "Noto Serif",serif;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: .05em;
	text-align:center;
  color: #FAFA58;
}
.kv-circle span {
	display: block;
	font-size: 14px;
	font-weight: 400;
	color: #fff;
}
.kv-circle span em {
	font-size: 18px;
	font-weight: 400;
	color: #fff;
}
.kv-circle.green { 
	background-image: url("../img/home/kv_text_bg_green.png");
}
.kv-circle.orange {
	background-image: url("../img/home/kv_text_bg_orange.png");
}
.kv-circle.blue {
	background-image: url("../img/home/kv_text_bg_blue.png");
}
.kv-stage, .kv-reveal {
	position: absolute;
	inset: 0;
}
.kv-stage-img, .kv-reveal-img {
	display: block;
  width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.kv-reveal {
  pointer-events: none;
	opacity: 0;
	z-index: 10;
  clip-path: circle(0px at 50% 85%);
	will-change: clip-path,opacity;
}
.kv-ui {
  display: flex;
	align-items: flex-end;
	justify-content: center;
  position: absolute;
	inset: 0;
  z-index: 40;
  pointer-events: none;
}
.kv-ui .curve {
  position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
  z-index: 30;
  height: 330px;
	background: #FBF5EB;
  -webkit-mask: radial-gradient(120% 160% at 50% 0, transparent 60%, #000 60.2%);
          mask: radial-gradient(120% 160% at 50% 0, transparent 60%, #000 60.2%);
}
.kv-ui .kv-thumbs {
  display: flex;
	gap: 32px;
  position: relative;
  margin: 0 0 35px 0;
  pointer-events: auto;
}
.kv-thumb {
  width: 80px;
	height: 80px;
	margin: 0;
	padding: 0;
  background: transparent;
	border: none;
	cursor: pointer;
	border-radius: 9999px;
  box-shadow: 0 0 0 2px rgba(255,255,255,.05);
}
.kv-thumb:nth-of-type(1), .kv-thumb:nth-of-type(5) {
	margin-top: -16px;
}
.kv-thumb:nth-of-type(2), .kv-thumb:nth-of-type(4) {
	margin-top: -8px;
}
.kv-thumb::before {
  content: "";
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
  background-image: var(--thumb);
	background-size: cover;
	background-position: center;
}
.kv-thumb.is-active::before {
	box-shadow: 0 0 0 2px #fff;
}
@media (prefers-reduced-motion: reduce){
	.kv-reveal {
		display:none;
	}
}

@media screen and (max-width:1199px) {
	.kv-slider {
		height: auto;
		min-height: auto;
	}
	.kv-media {
		position: relative;
		inset: auto;
		height: auto;
		overflow: hidden;
	}
	.kv-stage {
		position: relative;
		inset: auto;
	}
	.kv-reveal {
		position: absolute;
		inset: 0;
	}
	.kv-title, .kv-lead {
		font-size: 2.585vw;
	}
	.kv-title {
		font-size: 1.751vw;
	}
	.kv-btn {
		gap: 4.587vw;
	}
	.kv-circle {
		width: 15.013vw;
		height: 13.928vw;
		margin-top: 2.085vw;
		font-size: 1.418vw;
	}
	.kv-circle span {
		font-size: 1.084vw;
	}
	.kv-circle span em {
		font-size: 1.334vw;
	}
	.kv-stage-img, .kv-reveal-img {
		width: 100%;
		height: auto;
		object-fit: contain;
	}
	.kv-ui .kv-thumbs {
		gap: 2.002vw;
		margin: 0 0 calc(3.753vw + env(safe-area-inset-bottom)) 0;
	}
	.kv-ui .curve {
		height: 23.353vw;
	}
	.kv-thumb{
		width: 5.838vw;
		height: 5.838vw;
	}
	.kv-thumb:nth-of-type(1), .kv-thumb:nth-of-type(5) {
		margin-top: -1.334vw;
	}
	.kv-thumb:nth-of-type(2), .kv-thumb:nth-of-type(4) {
		margin-top: -0.667vw;
	}
}
@media (min-width: 751px){
  #kv-sp-thumbs {
		display: none !important;
	}
}

@media (max-width: 750px) {
  #kv-slider .kv-thumbs, .kv-title {
		display: none !important;
	}
  .kv-foreground {
    align-items: flex-start;
    justify-items: center;
    padding-top: 80px;
    padding-bottom: 16px;
  }
  .kv-foreground .kv-pane {
		margin-top: 0;
	}
  .kv-caption {
		min-height: 15.5em;
	}
  .kv-title, .kv-lead {
		font-size: 5.067vw;
	}
  .kv-btn {
		gap: 2.133vw;
	}
  .kv-circle {
    width: 29.067vw;
		height: 28vw;
		margin-top: 3.733vw;
		font-size: 2.667vw;
  }
  .kv-circle span {
		font-size: 1.867vw;
	}
  .kv-circle span em {
		font-size: 2.4vw;
	}
  .kv-ui .curve {
		height: 20vw;
	}
  #kv-sp-thumbs {
    visibility: hidden;
    opacity: 0;
    transition: opacity .2s ease;
		will-change: transform, opacity;
    transform: translate(calc(-50% + var(--tx, 0px)), var(--ty, 0px));
    display: flex;
    gap: 4.267vw;
    pointer-events: auto;
    z-index: 9998;
  }
  #kv-sp-thumbs.is-on {
    visibility: visible;
    opacity: 1;
  }
  body > #kv-sp-thumbs.is-fixed {
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(var(--sp-thumbs-offset, 35px) + env(safe-area-inset-bottom));
  }
  #kv-slider > #kv-sp-thumbs {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: var(--sp-thumbs-offset, 35px);
  }
  #kv-sp-thumbs .kv-thumb {
    width: 12.8vw;
		height: 12.8vw;
		margin: 0;
		padding: 0;
    background: transparent;
		border-radius: 9999px;
		border: none;
		cursor: pointer;
    box-shadow: 0 0 0 2px rgba(255,255,255,.05);
  }
  #kv-sp-thumbs .kv-thumb::before{
    content:"";
		display:block;
		width:100%;
		height:100%;
		border-radius:50%;
    background-image: var(--thumb);
    background-size: cover;
    background-position: center;
  }
  #kv-sp-thumbs .kv-thumb.is-active::before{ box-shadow: 0 0 0 2px #fff; }
  #kv-sp-thumbs .kv-thumb:nth-of-type(1),
  #kv-sp-thumbs .kv-thumb:nth-of-type(5){ margin-top: -4.267vw; }
  #kv-sp-thumbs .kv-thumb:nth-of-type(2),
  #kv-sp-thumbs .kv-thumb:nth-of-type(4){ margin-top: -2.133vw; }
}

/*-----------------------------------------------------
	#home_nav
------------------------------------------------------*/
#home_nav {
	padding: 64px 0 40px;
	background: #FBF5EB;
}
@media screen and (max-width: 1440px) {
	#home_nav {
		padding: 64px 40px 40px;
	}
}
@media screen and (max-width: 750px) {
	#home_nav {
		padding: 40px 16px;
	}
	#home_nav ul.flex, body.is_float #home_nav ul.flex {
		justify-content: center;
		gap: 24px 12px;
	}
	#home_nav ul.flex li {
		padding-top: 10px;
	}
	#home_nav ul.flex li a {
		font-size: 12px;
	}
	#home_nav ul.flex li a span {
		font-size: 12px;
	}
	#home_nav ul.flex li a .nav_icon {
		top: -10px;
	}
	#home_nav ul.flex li a .nav_icon img, body.is_float #home_nav ul.flex li a .nav_icon img {
		width: 32px;
		height: 32px;
	}
}
@media screen and (max-width: 414px) {
	#home_nav ul.flex {
		gap: 24px 12px;
	}
	#home_nav ul.flex li:nth-of-type(5),
	#home_nav ul.flex li:nth-of-type(6),
	#home_nav ul.flex li:nth-of-type(7) {
		padding-right: 10px;
		padding-left: 10px;
	}
}
.f_map {
	padding: 80px 0;
	text-align: center;
}
.f_map img {
	width: 700px;
	max-width: 100%;
}
@media screen and (max-width: 750px) {
	.f_map {
		padding: 40px 0;
	}
}
/*-----------------------------------------------------
	#campaign
------------------------------------------------------*/
#campaign {
  padding: 64px 40px;
	background: #FFFAED;
  text-align: center;
}
#campaign .wrap {
  width: 1360px;
}
#campaign img {
  max-width: 100%;
}
@media screen and (max-width: 750px) {
  #campaign {
    padding: 40px 16px;
  }
}
/*-----------------------------------------------------
	#first
------------------------------------------------------*/
#first {
	position: relative;
  padding: 88px 40px 100px;
	background: #FFFCF6;
  text-align: center;
}
#first .wrap {
	width: 844px;
}
#first .wrap h2 {
	position: relative;
	margin-bottom: 50px;
}
#first .wrap h2::before {
  content: "";
  display: block;
  position: absolute;
	top: 50%;
	left: -109px;
	transform: translateY(-50%);
  width: 159px;
  height: 126px;
  background: url("../img/home/first_l_illust.svg") no-repeat center center;
  background-size: cover;
}
#first .wrap h2::after {
  content: "";
  display: block;
  position: absolute;
	top: 50%;
	right: -109px;
	transform: translateY(-50%);
  width: 159px;
  height: 126px;
  background: url("../img/home/first_r_illust.svg") no-repeat center center;
  background-size: cover;
}
#first .wrap h2 img {
	max-width: 100%;
}
#first .wrap img.first_img {
	width: 100%;
	margin-bottom: 24px;
	border-radius: 40px;
}
#first .wrap p {
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;
	text-align: left;
}
#first .center {
	position: absolute;
	bottom: -37px;
	left: 0;
	width: 100%;
}
#first .center .link_more {
	width: 360px;
	max-width: 100%;
	background: #77A336;
}
#first .center .link_more::before {
	background: #597E21;
}
@media screen and (max-width: 1100px) {
	#first {
		padding: 218px 40px 100px;
	}
	#first .wrap h2::before {
		top: -136px;
		left: 0;
		transform: none;
	}
	#first .wrap h2::after {
		top: -136px;
		right: 0;
		transform: none;
	}
}
@media screen and (max-width: 750px) {
	#first {
		padding: 152px 16px 68px;
	}
	#first .wrap h2 {
		margin-bottom: 40px;
	}
	#first .wrap h2::before {
		top: -91px;
		width: 79px;
		height: 63px;
	}
	#first .wrap h2::after {
		top: -91px;
		width: 79px;
		height: 63px;
	}
	#first .wrap img.first_img {
		border-radius: 16px;
	}
	#first .wrap p {
		font-size: 14px;
	}
	#first .center {
		bottom: -30px;
	}
	#first .center a.link_more {
		text-align: center;
	}
}
/*-----------------------------------------------------
	#problem
------------------------------------------------------*/
#problem {
  padding-top: 133px;
	padding-bottom: 40px;
  background: #F0EDE7;
}
#problem h2 {
  margin-bottom: 48px;
	text-align: center;
}
#problem h2 span {
  color: #77A336;
}
.swiper_clip {
  --slide-h: 270px;
  --zoom: 1.16;
  --overspill: calc((var(--zoom) - 1) * var(--slide-h) / 2);
  position: relative;
  padding-block: var(--overspill);
  overflow: hidden;
}

@media (max-width: 1199.98px) {
  .swiper_clip{ --slide-h: 250px; --zoom: 1.14; }
}
@media (max-width: 999.98px) {
  .swiper_clip{ --slide-h: 200px; --zoom: 1.12; }
}
@media (max-width: 749.98px) {
  .swiper_clip{ --slide-h: 240px; --zoom: 1.10; }
}
@media (max-width: 413.98px) {
  .swiper_clip{ --slide-h: 180px; --zoom: 1.08; }
}

.swiper {
  --bleed: 0.5px;
  height: var(--slide-h);
  overflow: visible;
}
.swiper-wrapper {
	padding-bottom: 30px;
	overflow: visible;
}
.swiper .swiper-slide {
	position:relative;
  margin: 0 !important;
	padding: 0!important;
	overflow: visible;
}
.swiper .swiper-slide img {
  display: block;
  width: calc(100% + (var(--bleed) * 2));
  height: 100%;
	object-position: center;
  object-fit: cover;
  transform: translateX(calc(var(--bleed) * -1)) scale(1) !important;
  transform-origin: center;
	transition: transform .6s ease;
}
.swiper .swiper-slide.is-zoom {
	z-index: 5;
}
.swiper .swiper-slide.is-zoom img {
  transform: translateX(calc(var(--bleed) * -1)) scale(var(--zoom)) !important;
}
.swiper .swiper-slide-active img,
.swiper .swiper-slide-prev img ,
.swiper .swiper-slide-next img {
  transform: translateX(calc(var(--bleed) * -1)) scale(1) !important;
}

.problem_list {
	gap: 15px;
	position: relative;
	z-index: +1;
	margin-top: -40px;
}
.problem_list li {
	position: relative;
	width: calc((100% - 90px) / 7);
	background: rgba(227,168,172,.71);
	border-radius: 16px;
}
.problem_list li:nth-of-type(2) {
	background: rgba(250,193,0,.71);
}
.problem_list li:nth-of-type(3) {
	background: rgba(196,215,23,.71);
}
.problem_list li:nth-of-type(4) {
	background: rgba(95,189,186,.71);
}
.problem_list li:nth-of-type(5) {
	background: rgba(175,191,226,.71);
}
.problem_list li:nth-of-type(6) {
	background: rgba(202,132,120,.71);
}
.problem_list li:nth-of-type(7) {
	background: rgba(192,184,94,.71);
}
.problem_list li a {
	display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
	width: 100%;
	height: 100%;
	padding: 20px 23px;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: #fff;
	text-align: center;
}
.problem_list li a img {
	display: block;
	margin-top: 12px;
}
@media screen and (max-width: 1250px) {
	.problem_list li a {
		padding: 20px 15px;
		font-size: 16px;
	}
}
@media screen and (max-width: 1000px) {
	#problem h2 {
		font-size: 35px;
	}
	.problem_list {
		margin-top: -20px;
	}
	.problem_list li {
		width: calc((100% - 15px) / 2);
	}
	.problem_list li:nth-of-type(1), .problem_list li:nth-of-type(2), .problem_list li:nth-of-type(3) {
		width: calc((100% - 30px) / 3);
	}
}
@media screen and (max-width: 750px) {
	#problem {
		padding-top: 92px;
	}
	#problem h2 {
		margin-bottom: 24px;
		font-size: 28px;
	}
	.problem_list {
		gap: 8px;
	}
	.problem_list li {
		width: calc((100% - 8px) / 2);
	}
	.problem_list li:nth-of-type(1), .problem_list li:nth-of-type(2), .problem_list li:nth-of-type(3) {
		width: calc((100% - 16px) / 3);
	}
	.problem_list li {
		border-radius: 4px;
	}
	.problem_list li a {
		padding: 8px;
		font-size: 13px;
	}
	.problem_list li a img {
		width: 45px;
		height: 8px;
		margin-top: 5px;
	}
}
/*-----------------------------------------------------
	#data
------------------------------------------------------*/
#data {
	position: relative;
  padding-top: 64px;
	padding-bottom: 40px;
  background: #FBF5EB;
}
#data::after {
  content: "";
  display: block;
  position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
  width: 420px;
  height: 49px;
  background: url("../img/home/data_arrow.svg") no-repeat center center;
  background-size: cover;
}
#data .wrap.flex {
	position: relative;
	justify-content: space-between;
}
#data .wrap.flex::before {
  content: "";
  display: block;
  position: absolute;
	top: -95px;
	right: -65px;
  width: 159px;
  height: 117px;
  background: url("../img/home/data_illust_01.svg") no-repeat center center;
  background-size: cover;
}
#data .wrap.flex::after {
  content: "";
  display: block;
  position: absolute;
	bottom: -20px;
	left: -52px;
  width: 155px;
  height: 119px;
  background: url("../img/home/data_illust_02.svg") no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1330px) {
	#data .wrap.flex::before {
		right: -20px;
	}
	#data .wrap.flex::after {
		left: -20px;
	}
}
.data_l {
	width: 55%;
	padding-top: 50px;
}
.data_l img {
	width: 100%;
	max-width: 638px;
}
.data_r {
	position: relative;
	width: 41%;
}
.graph_area {
  display: flex;
	justify-content: space-between;
  align-items: flex-end;
  position: relative;
	width: 417px;
}
.graph_text {
	position: absolute;
	top: 45px;
	left: -43px;
	width: 226px;
	z-index: 1;
}
.graph_arrow {
	position: absolute;
	top: 23px;
	left: 32px;
	z-index: 1;
	width: 369px;
	overflow: hidden;
}
.graph_arrow div {
	transform: translate(-100%,100%) rotate(30deg);
	opacity: 0;
	transition: all 1.5s .7s;
}
.data_r.start .graph_arrow div {
	transform: translate(0%,0%) rotate(0deg);
	opacity: 1;
}
.graph_text {
	opacity: 0;
	transition: all 1.5s 2s;
}
.data_r.start .graph_text {
	opacity: 1;
}
.bar {
	position: relative;
	width: 79px;
}
.bar-inner {
  display: flex;
  align-items: flex-end;
  position: relative;
  width: 100%;
  height: 413px;
  overflow: hidden;
}
.bar-inner img {
  display: block;
  width: 100%;
  height: auto;
  --reveal-h: 0%;
  -webkit-mask-image: linear-gradient(#000, #000);
          mask-image: linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: bottom;
          mask-position: bottom;
  -webkit-mask-size: 100% var(--reveal-h);
          mask-size: 100% var(--reveal-h);
  transition:
    -webkit-mask-size var(--dur,1s) ease var(--delay,0s),
            mask-size var(--dur,1s) ease var(--delay,0s);
  will-change: -webkit-mask-size, mask-size;
}
.start .bar-inner img {
	--reveal-h: 100%;
}
@supports not (-webkit-mask-size: 100% 100%) and not (mask-size: 100% 100%) {
  .bar-inner img {
    --reveal: 0%;
    clip-path: inset(0 0 calc(100% - var(--reveal)) 0);
    transition: clip-path var(--dur,1s) ease var(--delay,0s);
  }
  .start .bar-inner img {
		--reveal: 100%;
	}
}
.data_r .bar p {
	margin-top: 5px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
}
.data_r p.small {
	margin-top: 21px;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
	text-align: right;
}
@media screen and (max-width: 1100px) {
	.data_l {
		width: 100%;
		margin-bottom: 45px;
		padding-top: 50px;
		text-align: center;
	}
	.data_r {
		width: 417px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 750px) {
	#data {
		padding-top: 48px;
		padding-bottom: 48px;
	}
	#data::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 210px;
		height: 24px;
		background: url("../img/home/data_arrow.svg") no-repeat center center;
		background-size: cover;
	}
	#data .wrap.flex {
		position: relative;
		justify-content: space-between;
	}
	#data .wrap.flex::before {
		top: -55px;
		right: -16px;
		width: 77px;
		height: 80px;
		background: url("../img/home/sp_data_illust_01.svg") no-repeat center center;
		background-size: cover;
	}
	#data .wrap.flex::after {
		bottom: -40px;
		left: -16px;
		width: 55px;
		height: 80px;
		background: url("../img/home/sp_data_illust_02.svg") no-repeat center center;
		background-size: cover;
	}
	.data_l {
		padding-top: 0;
	}
}
@media screen and (max-width: 530px) {
	.data_l {
		width: 100%;
	}
	.data_r {
		width: 343px;
		padding-top: 50px;
	}
	.graph_area {
		width: 262px;
		margin: 0 auto;
	}
	.graph_text {
		position: absolute;
		top: 8px;
		left: 15px;
		width: 160px;
	}
	.graph_arrow {
		top: 23px;
		left: 49px;
		width: 240px;
	}
	.bar {
		position: relative;
		width: 52px;
	}
	.bar-inner {
		display: flex;
		align-items: flex-end;
		position: relative;
		width: 100%;
		height: 223px;
		overflow: hidden;
	}

	.data_r .bar p {
		font-size: 12px;
	}
	.data_r p.small {
		font-size: 11px;
	}
}
/*-----------------------------------------------------
	#feature
------------------------------------------------------*/
#feature {
	position: relative;
  padding-top: 96px;
	padding-bottom: 100px;
}
#feature .midasi_03_wrap {
	margin-bottom: 64px;
}
.point_midasi {
	align-items: center;
}
.point_midasi span.point_l {
	width: 116px;
}
.point_midasi span.point_l span.point_text {
	font-family: "Inter", sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0.05em;
	background: linear-gradient(90deg, #CAF684, #A3D56A);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.point_midasi span.point_l span.point_num {
	font-size: 48px;
	font-weight: 500;
	letter-spacing: 0;
	color: #E3A8AC;
}
.point_midasi span.point_r {
	width: calc(100% - 116px);
	font-family: "Noto Serif", serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.1em;
}
#feature p, #feature ul li {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
#feature ul li {
	margin-left: 20px;
	list-style-type: disc;
}
#feature span.bold {
	font-weight: 700;
}
#feature .center {
	position: absolute;
	bottom: -37px;
	left: 0;
	z-index: 1;
	width: 100%;
}
#feature .center .link_more {
	width: 360px;
	max-width: 100%;
	background: #C58075;
}
#feature .center .link_more::before {
	background: #A96E64;
}
@media screen and (max-width: 750px) {
	#feature {
		padding-top: 64px;
		padding-bottom: 64px;
	}
	#feature .midasi_03_wrap {
		margin-bottom: 40px;
	}
	.point_midasi span.point_l {
		width: 86px;
	}
	.point_midasi span.point_l span.point_text {
		font-size: 14px;
	}
	.point_midasi span.point_l span.point_num {
		font-size: 36px;
	}
	.point_midasi span.point_r {
		width: calc(100% - 86px);
		font-size: 20px;
	}
	#feature .center {
		position: relative;
		bottom: 0;
	}
	#feature .center a.link_more {
		text-align: center;
	}
}
/* point_sec_01 */
.point_sec_01 .wrap {
	position: relative;
	margin-bottom: 64px;
}
.point_sec_01 .wrap::before {
  content: "";
  display: block;
  position: absolute;
	top: -195px;
	left: 0;
	z-index: -1;
  width: 168px;
  height: 194px;
  background: url("../img/home/feature_illust_01.svg") no-repeat center center;
  background-size: cover;
}
.point1_fukidasi {
  content: "";
  display: block;
  position: absolute;
	top: -110px;
	right: 0;
	z-index: 1;
  width: 372px;
  height: 133px;
}
.point1_fukidasi img, .point2_fukidasi img, .point3_fukidasi img, .point4_fukidasi img, .point5_fukidasi img, .point6_fukidasi img {
  width: 100%;
}
.point_sec_01 .wrap .point_midasi {
	margin-bottom: 37px;
}
.point_col {
	justify-content: space-between;
	position: relative;
	margin-bottom: 23px;
}
.point_col_child {
	width: 48.9%;
}
.point_col_child img {
	width: 100%;
}
.point_col_child.flex {
	gap: 16px;
}
.point_col_child_img {
	width: calc((100% - 16px) / 2);
}
@media screen and (max-width: 1240px) {
	.point1_fukidasi {
		top: -8.871vw;
		width: 30vw;
		height: 10.726vw;
	}
}
@media screen and (max-width: 1000px) {
	.point_sec_01 .wrap .point_midasi {
		margin-bottom: 90px;
	}
}
@media screen and (max-width: 750px) {
	.point_sec_01 .wrap {
		margin-bottom: 40px;
	}
	.point_sec_01 .wrap::before {
		top: -115px;
		left: -16px;
		width: 64px;
		height: 118px;
		background: url("../img/home/sp_feature_illust_01.svg") no-repeat center center;
		background-size: cover;
	}
	.point1_fukidasi {
		top: -42px;
		width: 248px;
		height: 88px;
	}
	.point_sec_01 .wrap .point_midasi {
		margin-bottom: 55px;
	}
	.point_col_child {
		width: 100%;
	}
	.point_col_child.flex {
		gap: 8px;
		margin-top: 32px;
	}
	.point_col_child_img {
		width: calc((100% - 8px) / 2);
	}
}

/* point_sec_02 */
.point_sec_02 .wrap {
	margin-bottom: 156px;
}
.point_col_child2 .point_midasi span.point_r {
  font-size: 24px;
}
.point_sec_02 .wrap .point_midasi {
	margin-bottom: 54px;
}
.point_col2 {
	justify-content: space-between;
}
.point_col_child2 {
	position: relative;
	width: 48.3%;
}
.point2_fukidasi {
  content: "";
  display: block;
  position: absolute;
	top: -38px;
	right: -31px;
	z-index: 1;
  width: 228px;
  height: 140px;
}
.point3_fukidasi {
  content: "";
  display: block;
  position: absolute;
	top: -38px;
	right: -86px;
	z-index: 1;
  width: 302px;
  height: 153px;
}
.point_col_child2 img {
	width: 100%;
	margin-bottom: 24px;
}
@media screen and (max-width: 1360px) {
	.point3_fukidasi {
		right: -30px;
	}
}
@media screen and (max-width: 1240px) {
	.point_col_child2 .point_midasi span.point_r {
		font-size: 22px;
	}
	.point3_br {
		display: none;
	}
	.point2_fukidasi {
		top: -3.226vw;
		right: -2.419vw;
		width: 18.387vw;
		height: 11.29vw;
	}
	.point3_fukidasi {
		top: -3.226vw;
		right: -2.419vw;
		width: 24.355vw;
		height: 12.339vw;
	}
}
@media screen and (max-width: 750px) {
	.point_sec_02 .wrap {
		margin-bottom: 40px;
	}
	.point_col_child2 .point_midasi span.point_r {
		font-size: 20px;
	}
	.point_sec_02 .wrap .point_midasi {
		margin-bottom: 38px;
	}
	.point_col_child2 {
		width: 100%;
	}
	.point_col_child2.order2 {
		margin-bottom: 40px;
	}
	.point2_fukidasi {
		top: -26px;
		right: 0;
		width: 152px;
		height: 93px;
	}
	.point3_fukidasi {
		top: -26px;
		right: 0;
		width: 201px;
		height: 102px;
	}
	.point_col_child2 img {
		margin-bottom: 16px;
	}
}

/* point_sec_03 */
.point_sec_03 {
	padding: 48px 0 64px;
	background: #FFFCF7;
}
.point_sec_03 .wrap {
	position: relative;
}
.point_sec_03 .wrap::before {
  content: "";
  display: block;
  position: absolute;
	top: 150px;
	left: -92px;
	z-index: 0;
  width: 151px;
  height: 120px;
  background: url("../img/home/feature_illust_02.svg") no-repeat center center;
  background-size: cover;
}
.point_sec_03 .wrap::after {
  content: "";
  display: block;
  position: absolute;
	bottom: 0;
	right: -131px;
	z-index: 0;
  width: 151px;
  height: 120px;
  background: url("../img/home/feature_illust_03.svg") no-repeat center center;
  background-size: cover;
}
.point_sec_03 .wrap .point_midasi {
	margin-bottom: 64px;
}
@media screen and (max-width: 1440px) {
	.point_sec_03 .wrap::after {
		right: -70px;
	}
}
.point4_fukidasi {
  content: "";
  display: block;
  position: absolute;
	top: -48px;
	right: -23px;
	z-index: 1;
  width: 274px;
  height: 167px;
}
.point5_fukidasi {
  content: "";
  display: block;
  position: absolute;
	top: -48px;
	right: -57px;
	z-index: 1;
  width: 218px;
  height: 183px;
}
@media screen and (max-width: 1360px) {
	.point_sec_03 .wrap::after {
		right: -30px;
	}
	.point5_fukidasi {
		right: -30px;
	}
}
@media screen and (max-width: 1240px) {
	.point4_fukidasi {
		top: -3.871vw;
		right: -2.419vw;
		width: 22.097vw;
		height: 13.468vw;
	}
	.point5_fukidasi {
		top: -3.871vw;
		right: -2.419vw;
		width: 17.581vw;
		height: 14.758vw;
	}
}
@media screen and (max-width: 1090px) {
	.point5_br {
		display: none;
	}
}
@media screen and (max-width: 750px) {
	.point_sec_03 {
		padding: 40px 0;
	}
	.point_sec_03 .wrap::before {
		display: none;
	}
	.point_sec_03 .wrap::after {
		display: none;
	}
	.point_sec_03 .wrap .point_midasi {
		margin-bottom: 34px;
	}
	.point4_fukidasi {
		top: -18px;
		right: 0;
		width: 183px;
		height: 111px;
	}
	.point5_fukidasi {
		top: -37px;
		right: 0;
		width: 145px;
		height: 122px;
	}
}

/* point_sec_04 */
.point_sec_04 {
	padding-top: 81px;
}
.point_sec_04 .wrap {
	position: relative;
}
.point_sec_04 .wrap .point_midasi {
	margin-bottom: 37px;
}
.point_sec_04 .wrap .point_midasi span.point_r {
  font-size: 32px;
}
.point6_fukidasi {
  content: "";
  display: block;
  position: absolute;
	top: -162px;
	right: -32px;
	z-index: 1;
  width: 418px;
  height: 179px;
}
.point_full {
	position: relative;
	margin-bottom: 12px;
}
.point_full img {
	width: 100%;
}
@media screen and (max-width: 1240px) {
	.point6_fukidasi {
		top: -13.065vw;
		right: -2.581vw;
		width: 33.71vw;
		height: 14.435vw;
	}
}
@media screen and (max-width: 1050px) {
	.point6_fukidasi {
		top: -8.065vw;
	}
	.point_sec_04 .wrap .point_midasi {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 750px) {
	.point_sec_04 {
		padding: 40px 0;
	}
	.point_sec_04 .wrap .point_midasi {
		margin-bottom: 57px;
	}
	.point_sec_04 .wrap .point_midasi span.point_r {
		font-size: 20px;
	}
	.point6_fukidasi {
		top: -41px;
		right: 0;
		width: 211px;
		height: 73px;
	}
	.point_full {
		margin-bottom: 16px;
	}
}
/*-----------------------------------------------------
	#doctor
------------------------------------------------------*/
#doctor {
	position: relative;
	z-index: 0;
  padding-top: 132px;
	padding-bottom: 107px;
  background: #FFFAED;
	background: linear-gradient(180deg, rgba(255, 250, 237, 1) 0%, rgba(255, 250, 237, 1) 29.9%, rgba(251, 244, 234, 1) 30%, rgba(251, 244, 234, 1) 100%);
}
#doctor .wrap {
	position: relative;
}
#doctor .wrap::before {
  content: "";
  display: block;
  position: absolute;
	top: -90px;
	right: -84px;
	z-index: -1;
  width: 239px;
  height: 182px;
  background: url("../img/home/doctor_illust_01.svg") no-repeat center center;
  background-size: cover;
}
#doctor .wrap::after {
  content: "";
  display: block;
  position: absolute;
	bottom: -10px;
	left: -135px;
	z-index: -1;
  width: 238px;
  height: 182px;
  background: url("../img/home/doctor_illust_02.svg") no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1350px) {
	#doctor .wrap::before {
		right: -30px;
	}
}
#doctor .wrap h2 {
	margin-bottom: 16px;
  font-family: "Cormorant Infant", serif;
	font-size: 52px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #D1CA00;
	text-align: center;
}
#doctor .wrap h2 span.dark {
	color: #83AD12;
}
#doctor .wrap h2 span.mincho {
	display: block;
	font-size: 40px;
	font-weight: 700;
	color: var(--text-color);
}
#doctor .wrap p {
	margin-bottom: 40px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.7;
	letter-spacing: 0.05em;
	text-align: center;
}
#doctor .center {
	position: absolute;
	bottom: -37px;
	left: 0;
	width: 100%;
}
#doctor .center .link_more {
	width: 360px;
	max-width: 100%;
	background: #D1CA00;
}
#doctor .center .link_more::before {
	background: #A5A800;
}
.doctor_top {
	gap: 40px;
}
.doctor_top_child {
	width: calc((100% - 80px) / 3);
	background: #F5EDDF;
	border-radius: 32px;
}
.doctor_top_child img {
	width: 100%;
	border-radius: 32px 32px 0 0;
}
.doctor_text {
	padding: 24px;
	text-align: center;
}
.doctor_type {
	padding: 4px 32px;
	background: #B3CC40;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #fff;
}
.doctor_type.red {background: #C58075;}
.doctor_type.blue {background: #7F97B0;}
.doctor_text h3 {
	margin: 4px 0 8px;
	font-family: "Noto Serif", serif;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.7;
	letter-spacing: 0.1em;
}
.doctor_text p {
	margin-bottom: 0 !important;
	padding: 16px;
	background: #fff;
	border-radius: 8px;
	font-size: 14px !important;
	font-weight: 400 !important;
	letter-spacing: 0.1em !important;
}
.doctor_text p span.bold {
	font-weight: 600;
}
.doctor_bottom {
	justify-content: space-between;
	margin: 40px 0;
}
.doctor_bottom_img {
	position: relative;
	border-radius: 32px;
}
.doctor_bottom_img a:hover, .doctor_bottom_img a:hover img {
	opacity: 1;
}
.doctor_bottom_img::before {
  content: "";
  display: block;
  position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	pointer-events: none;
  width: 100%;
  height: 100%;
  background: rgba(4,0,0,1);
	border-radius: 32px;
	mix-blend-mode: color;
	transition: opacity 0.6s ease;
}
.doctor_bottom_img::after {
  content: "";
  display: block;
  position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	pointer-events: none;
  width: 100%;
  height: 100%;
  background: #231815;
	background: linear-gradient(90deg, rgba(35, 24, 21, .29) 0%, rgba(118, 11, 85, .29) 100%);
	border-radius: 32px;
	mix-blend-mode: multiply;
	transition: opacity 0.6s ease;
}
.doctor_bottom_img:hover::before,
.doctor_bottom_img:hover::after {
  opacity: 0;
}
.doctor_bottom_img img {
	width: 100%;
	border-radius: 32px;
}
.doctor_bottom_l {
	width: 39.4%;
}
.doctor_bottom_l .doctor_bottom_img .name {
	position: absolute;
	bottom: 32px;
	left: 32px;
	z-index: 3;
	font-family: "Noto Serif", serif;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #fff;
}
.doctor_bottom_l .doctor_bottom_img .name span {
	display: block;
	font-size: 18px;
}
.doctor_bottom_r {
	gap: 10px;
	width: 59.6%;
}
.doctor_bottom_r .doctor_bottom_img {
	width: calc((100% - 20px) / 3);
}
.doctor_bottom_r .doctor_bottom_img .name {
	position: absolute;
	bottom: 16px;
	left: 16px;
	z-index: 3;
	font-family: "Noto Serif", serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #fff;
}
.doctor_bottom_r .doctor_bottom_img .name span {
	display: block;
	font-size: 14px;
}
.doctor_bottom_text {
	position: relative;
	z-index: 1;
	padding: 32px;
	background: rgba(255,255,255,.5);
	border: 8px solid #fff;
	text-align: center;
}
.doctor_bottom_text::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 411px;
  height: 8px;
  background: rgba(251, 244, 234, 1);
}
.border_bottom {
	position: relative;
	z-index: 2;
	margin-top: -8px;
	text-align: center;
}
.doctor_bottom_text h4 {
	margin-bottom: 24px;
	font-size: 32px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.05em;
}
.doctor_bottom_text p {
	margin-bottom: 0 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 2 !important;
	letter-spacing: 0.05em !important;
	text-align: left !important;
}
.doctor_br {
	display: none;
}
@media screen and (max-width: 1240px) {
	#doctor .wrap h2 {
		font-size: 47px;
	}
	#doctor .wrap h2 span.mincho {
		font-size: 35px;
	}
	.doctor_top {
		gap: 20px;
	}
	.doctor_top_child {
		width: calc((100% - 40px) / 3);
	}
	.doctor_text {
		padding: 16px;
	}
	.doctor_bottom_l .doctor_bottom_img .name {
		font-size: 23px;
	}
	.doctor_bottom_r .doctor_bottom_img {
		width: calc((100% - 20px) / 3);
	}
	.doctor_bottom_r .doctor_bottom_img .name {
		font-size: 16px;
	}
	.doctor_bottom_text h4 {
		font-size: 28px;
	}
}
@media screen and (max-width: 1030px) {
	.doctor_br {
		display: block;
	}
}
@media screen and (max-width: 750px) {
	#doctor {
		padding-top: 64px;
		padding-bottom: 64px;
		background: linear-gradient(180deg, rgba(255, 250, 237, 1) 0%, rgba(255, 250, 237, 1) 52.9%, rgba(251, 244, 234, 1) 53%, rgba(251, 244, 234, 1) 100%);
	}
	#doctor .wrap::before {
		top: -8px;
		right: -16px;
		width: 101px;
		height: 112px;
		background: url("../img/home/sp_doctor_illust_01.svg") no-repeat center center;
		background-size: cover;
	}
	#doctor .wrap::after {
		bottom: -66px;
		left: -16px;
		width: 124px;
		height: 112px;
		background: url("../img/home/sp_doctor_illust_02.svg") no-repeat center center;
		background-size: cover;
	}
	#doctor .wrap h2 {
		font-size: 36px;
	}
	#doctor .wrap h2 span.mincho {
		font-size: 28px;
	}
	#doctor .wrap p {
		font-size: 14px;
	}
	#doctor .center {
		position: relative;
		bottom: 0;
		margin-top: 24px;
	}
	#doctor .center a.link_more {
		text-align: center;
	}
	.doctor_top {
		gap: 40px 0;
	}
	.doctor_top_child {
		width: 100%;
		border-radius: 16px;
	}
	.doctor_top_child img {
		border-radius: 16px 16px 0 0;
	}
	.doctor_text h3 {
		font-size: 20px;
	}
	.doctor_bottom {
		margin: 40px 0 24px;
	}
	.doctor_bottom_img {
		border-radius: 16px;
	}
	.doctor_bottom_img::before {
		border-radius: 16px;
	}
	.doctor_bottom_img::after {
		border-radius: 16px;
	}
	.doctor_bottom_img img {
		border-radius: 16px;
	}
	.doctor_bottom_l {
		width: 100%;
		margin-bottom: 8px;
	}
	.doctor_bottom_l .doctor_bottom_img .name {
		bottom: 16px;
		left: 16px;
		font-size: 20px;
	}
	.doctor_bottom_l .doctor_bottom_img .name span {
		font-size: 12px;
	}
	.doctor_bottom_r {
		gap: 8px;
		width: 100%;
	}
	.doctor_bottom_r .doctor_bottom_img {
		width: calc((100% - 8px) / 2);
	}
	.doctor_bottom_r .doctor_bottom_img .name {
		font-size: 16px;
	}
	.doctor_bottom_r .doctor_bottom_img .name span {
		font-size: 12px;
	}
	.doctor_bottom_text {
		padding: 24px 16px;
	}
	.doctor_bottom_text::after {
		width: 162px;
	}
	.doctor_bottom_text h4 {
		margin-bottom: 16px;
		font-size: 20px;
	}
	.doctor_br {
		display: none;
	}
}

/*-----------------------------------------------------
	#about
------------------------------------------------------*/
#about {
  padding: 100px 0;
}
.about_01, .about_03 {
	position: relative;
	z-index: 0;
	width: calc(100% - 24px);
	margin-right: 24px;
	margin-bottom: 40px;
	padding: 64px 24px 70px;
	background: #E0F0E2;
}
.about_02, .about_04 {
	position: relative;
	z-index: 0;
	width: calc(100% - 24px);
	margin-left: 24px;
	margin-bottom: 40px;
	padding: 64px 24px 70px;
}
.about_02 {
	background: #FFEDAB;
}
.about_03 {
	background: #F6BFBC;
}
.about_04 {
	background: #B8D9F3;
}
.about_01::after, .about_03::after {
	content: "";
  position: absolute;
  right: 0;
  bottom: 0;
	z-index: -1;
  width: 31.5%;
  height: 50%;
  background: #CAE5CD;
  clip-path: polygon(
    100% 0%,
    100% 100%,
    0%   100%
  );
  pointer-events: none;
}
.about_03::after {
  background: #E3A8AC;
}
.about_02::after, .about_04::after {
	content: "";
  position: absolute;
  left: 0;
  bottom: 0;
	z-index: -1;
  width: 31.5%;
  height: 50%;
  background: #FFE379;
  clip-path: polygon(
    0 0,
    100% 100%,
    0 100%
  );
  pointer-events: none;
}
.about_04::after {
  background: #72BBE8;
}
#about .wrap {
	justify-content: space-between;
	position: relative;
  width: 1264px;
	background: rgba(255, 255, 255, 0);
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 23.9%, rgba(255, 255, 255, 1) 24%, rgba(255, 255, 255, 1) 100%);
}
#about .about_02 .wrap, #about .about_04 .wrap {
	background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 23.9%, rgba(255, 255, 255, 1) 24%, rgba(255, 255, 255, 1) 100%);
}
#about .wrap::after {
  content: "";
  display: block;
  position: absolute;
	bottom: -41px;
	left: -41px;
	z-index: -1;
  width: 167px;
  height: 167px;
  background: url("../img/home/about_illust_01.svg") no-repeat center center;
  background-size: cover;
}
#about .about_02 .wrap::after {
	right: -41px;
	left: auto;
  background: url("../img/home/about_illust_02.svg") no-repeat center center;
  background-size: cover;
}
#about .about_03 .wrap::after {
  background: url("../img/home/about_illust_03.svg") no-repeat center center;
  background-size: cover;
}
#about .about_04 .wrap::after {
	right: -41px;
	left: auto;
  background: url("../img/home/about_illust_04.svg") no-repeat center center;
  background-size: cover;
}
.about_photo {
	position: relative;
	z-index: 1;
	width: 33%;
}
.about_photo img {
	position: relative;
	top: -20px;
	z-index: 1;
	width: 100%;
}
.about_text {
	width: 67%;
	padding: 90px 48px 90px 24px;
}
.about_02 .about_text {
	padding: 80px 24px 80px 48px;
}
.about_03 .about_text {
	padding: 30px 48px 30px 24px;
}
.about_04 .about_text {
	padding: 80px 0 80px 48px;
}
.about_text h2 {
	margin-bottom: 23px;
	font-family: "Noto Serif", serif;
	font-size: 32px;
	font-weight: 600;
	line-height: 1.7;
	letter-spacing: 0.1em;
	text-align: center;
}
.about_text p {
	margin-bottom: 17px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: 0.05em;
}
.about_text .flex {
	justify-content: space-between;
	margin-bottom: 11px;
}
.about_text .flex .price_btn {
	width: 48.3%;
	padding: 16.5px 20px;
	border: 1px solid var(--text-color);
	font-family: "Noto Serif", serif;
	font-size: 20px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.1em;
	text-align: center;
}
.about_text .flex .price_btn.pink {
	padding: 22px 20px 10px;
	background: #F5E6E3;
	border: 1px solid #F5E6E3;
	color: #D4686F;
}
.about_text .flex .price_btn.pink .pinksmall {
	font-size: 14px;
}
.about_text .flex .price_btn mark {
	position: relative;
	z-index: 0;
	background: none;
	font-style: normal;
}
.about_text .flex .price_btn mark::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 6px;
  background: #FFDDA7;
  z-index: -1;
}
.about_text .flex .price_btn em {
	margin-left: 3px;
	font-family: "Cormorant Infant", serif;
	font-size: 64px;
	font-weight: 400;
	font-style: italic;
	line-height: 1;
	letter-spacing: 0;
}
.about_text .flex .price_btn span {
	margin-right: 3px;
	font-family: "Cormorant Infant", serif;
	font-size: 48px;
	font-weight: 400;
	font-style: italic;
	line-height: 1;
	letter-spacing: 0;
}
.about_text .flex .price_btn .small {
	font-family: "Noto Serif", serif;
	font-size: 12px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.1em;
}
.about_text ul li {
	font-size: 14px;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0.1em;
}
.about_text .center .link_more {
	width: 360px;
	max-width: 100%;
	margin-top: 32px;
	background: #72BD7C;
}
.about_text .center .link_more::before {
	background: #56A160;
}
.about_02 .about_text .center .link_more {
	background: #E3C144;
}
.about_02 .about_text .center .link_more::before {
	background: #C2A433;
}
.about_03 .about_text .center .link_more {
	background: #E37C83;
}
.about_03 .about_text .center .link_more::before {
	background: #C96269;
}
.about_04 .about_text .center .link_more {
	background: #61B4E8;
}
.about_04 .about_text .center .link_more::before {
	background: #4291C2;
}
@media screen and (max-width: 1435px) {
	#about .about_02 .wrap::after, #about .about_04 .wrap::after {
		right: -12px;
	}
}
@media screen and (max-width: 1345px) {
	#about .wrap {
		background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 1.9%, rgba(255, 255, 255, 1) 2%, rgba(255, 255, 255, 1) 100%);
	}
	#about .about_02 .wrap, #about .about_04 .wrap {
		background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 1.9%, rgba(255, 255, 255, 1) 2%, rgba(255, 255, 255, 1) 100%);
	}
	.about_text {
		width: 67%;
		padding: 40px 24px;
	}
	.about_03 .about_text {
		padding: 40px 24px;
	}
	.about_text .flex .price_btn {
		width: 70%;
		margin-bottom: 10px;
	}
	.about_text .flex .price_btn.pink {
		padding: 20px 5px;
	}
}
@media screen and (max-width: 1100px) {
	.about_text h2 {
		font-size: 28px;
	}
	.about_text .flex .price_btn {
		width: 100%;
	}
}
@media screen and (max-width: 900px) {
	#about .wrap {
		width: calc(100% - 24px);
		margin-left: 24px;
		background: #fff;
	}
	#about .about_02 .wrap, #about .about_04 .wrap {
		margin-right: 24px;
		margin-left: 0;
		background: #fff;
	}
	.about_photo {
		width: 100%;
	}
	.about_photo img {
		left: -24px;
		width: calc(100% + 24px);
	}
	#about .about_02 .wrap .about_photo img, #about .about_04 .wrap .about_photo img {
		right: 0;
		left: auto;
	}
	.about_text {
		width: 100%;
		padding: 20px 40px 40px;
	}
	.about_02 .about_text, .about_03 .about_text, .about_04 .about_text {
		padding: 20px 40px 40px;
	}
	.about_order1 {
		order: 1;
	}
	.about_order2 {
		order: 2;
	}
}
@media screen and (max-width: 750px) {
	#about {
		padding: 64px 0 88px;
	}
	.about_01, .about_03 {
		width: calc(100% - 16px);
		margin-right: 16px;
		margin-bottom: 24px;
		padding: 64px 16px 24px;
	}
	.about_02, .about_04 {
		width: calc(100% - 16px);
		margin-left: 16px;
		margin-bottom: 24px;
		padding: 64px 16px 24px;
	}
	.about_01::after, .about_02::after, .about_03::after, .about_04::after {
		width: 149px;
		height: 111px;
	}
	#about .wrap {
		width: calc(100% - 16px);
		margin-left: 16px;
	}
	#about .about_02 .wrap, #about .about_04 .wrap {
		width: calc(100% - 16px);
		margin-right: 0;
		margin-left: 0;
	}
	#about .wrap::after {
		bottom: -8px;
		left: -16px;
		width: 83px;
		height: 83px;
	}
	.about_photo img {
		top: -32px;
		left: -16px;
		width: calc(100% + 16px);
		max-width: calc(100% + 16px);
	}
	.about_text {
		padding: 0 16px 24px;
	}
	.about_02 .about_text, .about_03 .about_text, .about_04 .about_text {
		padding: 0 16px 24px;
	}
	.about_text h2 {
		font-size: 20px;
	}
	.about_text .flex {
		margin-bottom: 0;
	}
	.about_text .flex .price_btn {
		margin-bottom: 8px;
		padding: 16px 5px;
		font-size: 14px;
	}
	.about_text .flex .price_btn.pink {
		padding: 10px 5px;
	}
	.about_text .flex .price_btn mark::after {
		height: 7px;
	}
	.about_text .flex .price_btn em {
		margin-left: 2px;
		font-size: 48px;
	}
	.about_text .flex .price_btn span {
		margin-right: 2px;
		font-size: 32px;
	}
	.about_text .flex .price_btn .small {
		font-size: 11px;
	}
	.about_text .flex .price_btn.pink .pinksmall {
		font-size: 11px;
	}
	.about_text ul li {
		font-size: 12px;
	}
	.about_text .center .link_more {
		text-align: center;
	}
}
/*-----------------------------------------------------
	#information
------------------------------------------------------*/
#information {
  padding: 95px 0 80px;
	background: #FBF4EA;
}
#information .wrap {
  position: relative;
	z-index: 0;
}
#information .wrap::before {
  content: "";
  display: block;
  position: absolute;
	top: -75px;
	left: 0;
	z-index: -1;
  width: 264px;
  height: 200px;
  background: url("../img/home/access_illust_01.svg") no-repeat center center;
  background-size: cover;
}
#information .wrap::after {
  content: "";
  display: block;
  position: absolute;
	bottom: -149px;
	right: -100px;
	z-index: -1;
  width: 214px;
  height: 164px;
  background: url("../img/home/access_illust_02.svg") no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1390px) {
	#information .wrap::after {
		right: -30px;
	}
}
#information .midasi_03_wrap {
	margin-bottom: 64px;
}
#information .midasi_03_wrap h2 span {
	color: var(--main-color);
}
.info_top {
	justify-content: space-between;
}
#information .footer_top_l {
	width: 50%;
	padding: 40px;
	background: #fff;
}
.info_r {
	position: relative;
	width: 50%;
}
.info_r img {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 93%;
	object-fit: cover;
	object-position: right bottom;
}
.parking {
	position: absolute;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	width: calc(100% - 44px);
	padding: 11px 10px;
	background: #FFFBF4;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.1em;
	text-align: center;
}
.parking span {
	margin: 0 3px;
	font-family: "Inter", sans-serif;
	font-size: 32px;
	letter-spacing: 0;
	color: var(--main-color);
}
.info_bottom {
	padding: 40px;
	background: #fff;
}
.info_bottom h3 {
	margin-bottom: 24px;
	font-family: "Inter", sans-serif;
	font-size: 32px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
}
.info_bottom h3 span {
	color: var(--main-color);
}
.info_bottom_child {
	justify-content: space-between;
}
.access_l {
	width: 48.1%;
}
.access_l .flex {
	gap: 16px;
	margin-bottom: 40px;
}
.access_child {
	width: calc((100% - 16px) / 2);
	padding: 16px;
	background: var(--main-color);
	border-radius: 16px;
}
.access_child h4 {
	margin-bottom: 16px;
	text-align: center;
}
.access_child h4 span {
	position: relative;
	padding-left: 40px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.7;
	letter-spacing: 0.05em;
	color: #fff;
}
.access_child h4 span::after {
  content: "";
  display: block;
  position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
  width: 32px;
  height: 21px;
  background: url("../img/home/access_01.svg") no-repeat center center;
  background-size: cover;
}
.access_child:nth-of-type(2) h4 span::after {
  width: 15px;
  height: 29px;
  background: url("../img/home/access_02.svg") no-repeat center center;
  background-size: cover;
}
.access_child:nth-of-type(3) h4 span::after {
  width: 25px;
  height: 24px;
  background: url("../img/home/access_03.svg") no-repeat center center;
  background-size: cover;
}
.access_child:nth-of-type(4) h4 span::after {
  width: 24px;
  height: 21px;
  background: url("../img/home/access_04.svg") no-repeat center center;
  background-size: cover;
}
.access_text {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 59px;
	padding: 8px 0;
	background: #fff;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
}
.access_text_inner {
  display: inline;
}
.access_text_inner span {
	display: inline;
	font-size: 28px;
	line-height: 1;
	color: var(--main-color);
}
.info_bottom .center .link_more {
	width: 320px;
	padding: 9px 10px;
}
.info_bottom .center .link_more::before {
	right: 12px;
	width: 32px;
	height: 32px;
}
.info_bottom .center .link_more::after {
	right: 20px;
}
.access_r {
	width: 48.1%;
}
.access_r img {
	width: 100%;
}
.gmap_sp {
	display: none;
}
@media screen and (max-width: 1000px) {
	.access_l .flex {
		margin-bottom: 0;
	}
	.access_child {
		width: 100%;
	}
	.access_r img {
		margin-bottom: 40px;
	}
	.gmap_pc {
		display: none;
	}
	.gmap_sp {
		display: block;
	}
}
@media screen and (max-width: 900px) {
	#information .footer_top_l {
		width: 100%;
		padding: 40px;
		background: #fff;
	}
	.info_r {
		position: relative;
		width: 100%;
	}
	.info_r img {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		object-fit: contain;
	}
	.access_l {
		width: 100%;
		margin-bottom: 40px;
	}
	.access_r {
		width: 100%;
	}
	.access_child {
		width: calc((100% - 16px) / 2);
	}
}
@media screen and (max-width: 750px) {
	#information {
		padding: 82px 0 64px;
	}
	#information .wrap::before {
		top: 28px;
		left: -16px;
		width: 94px;
		height: 121px;
		background: url("../img/home/sp_access_illust_01.svg") no-repeat center center;
		background-size: cover;
	}
	#information .wrap::after {
		bottom: -100px;
		right: -16px;
		width: 104px;
		height: 102px;
		background: url("../img/home/sp_access_illust_02.svg") no-repeat center center;
		background-size: cover;
	}
	#information .midasi_03_wrap {
		margin-bottom: 48px;
	}
	#information .footer_top_l {
		padding: 24px 16px;
	}
	.parking {
		bottom: 16px;
		width: calc(100% - 32px);
		padding: 0 10px;
		font-size: 14px;
	}
	.parking span {
		font-size: 28px;
	}
	.info_bottom {
		padding: 24px 16px;
	}
	.access_l {
		margin-bottom: 16px;
	}
	.access_child {
		width: 100%;
		border-radius: 8px;
	}
	.access_child h4 {
		margin-bottom: 8px;
	}
	.access_child h4 span {
		font-size: 16px;
	}
	.access_text {
		height: auto;
		font-size: 12px;
	}
	.access_text_inner span {
		font-size: 26px;
	}
	.info_bottom .center .link_more {
		max-width: 100%;
		text-align: center;
	}
	.access_r img {
		margin-bottom: 16px;
	}
}

/*-----------------------------------------------------
	#treatment
------------------------------------------------------*/
#treatment {
  padding: 96px 0;
	background: #FFFBF4;
}
#treatment .wrap {
  position: relative;
	z-index: 0;
}
#treatment .wrap::before {
  content: "";
  display: block;
  position: absolute;
	bottom: -87px;
	left: -164px;
	z-index: -1;
  width: 242px;
  height: 185px;
  background: url("../img/home/treatment_illust_01.svg") no-repeat center center;
  background-size: cover;
}
#treatment .midasi_03_wrap {
	margin-bottom: 56px;
}
@media screen and (max-width: 750px) {
	#treatment {
		padding: 64px 0;
	}
	#treatment .wrap::before {
		bottom: -115px;
		left: -16px;
		width: 104px;
		height: 114px;
		background: url("../img/home/sp_treatment_illust_01.svg") no-repeat center center;
		background-size: cover;
	}
	#treatment .midasi_03_wrap {
		margin-bottom: 47px;
	}
}



