@charset "UTF-8";
.wrapper
	{
		position: relative;
	}
.area_txt
	{
		width: 90%;
		margin: 0 auto;
	}
	.reserveBtn 
	{
		display: block;
		cursor: pointer;
		width: 80%;
		margin: 0 auto;
		margin-top: 32px;
	}
	.menu-page-title {
		font-size: 4rem;
	}
	@media screen and (max-width: 768px) {
		.menu-page-title {
			font-size: 2.6rem;
		}
		.title.lp-s {
			letter-spacing: -0.2rem;
		}
	}
/*==========================================================================
先頭　価格訴求　.appeal
============================================================================*/

.appeal .area_cta
	{
		position: relative;
		width: 100%;
	}
.appeal a
	{
		display: block;
		width: 85%;
		margin: 2.4rem auto;
	}
.appeal a .btn_cta
	{
		width: 100%;
	}
.appeal p
	{
		position: absolute;
		top: 50%;
		left:50%;
		transform: translateX(-50%)
             		translateY(-50%);
		text-align: center;
		font-size: 2rem;
		letter-spacing: 0.2rem;
	}
.appeal__btn {
	margin: 50px auto;
}
	@media screen and (max-width: 768px) {
		.appeal__btn {
			margin: 20px auto;
		}
	}

/*==========================================================================
 各コース料金
============================================================================*/
.price {
	padding: 8rem 0;
	width: 70rem;
	margin: auto;
}
.price__btn__wrapper {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
}
.price__btn {
	width: 48%;
}
.price__text {
	font-size: 21px;
}
@media screen and (max-width: 768px) {
	.price {
		padding: 4rem 0 5rem 0;
		width: 85%;
	}
	.price__text {
		font-size: 18px;
	}
	.price__btn {
		width: 100%;
	}
	.price__btn__wrapper {
		flex-direction: column;
		margin-top: 20px;
		gap: 10px;
	}
}
/*==========================================================================
 ベーシックコース
============================================================================*/
.basic__course {
	background: #f7fbe8;
}
.basic__course__inner {
	max-width: 70rem;
	margin: auto;
}
.basic__course__title__wrapper {
	text-align: center;
}
.basic__course__detail__text {
	font-size: 17.5px;
	letter-spacing: 0.2rem;
	white-space: nowrap;
	margin-top: 40px;
	font-weight: 500;
}
.basic__course__detail__text.ls-s {
	letter-spacing: 0.1rem;
}
.basic__course__detail__text .under-line {
	background: linear-gradient(to bottom, transparent 0%, transparent 50%, #fffc97 50%, #fffc97 100% );
}
.basic__course__subtitle {
	font-size: 26px;
	margin-bottom: 10px;
	display: block;
}
.basic__course__contents__text {
	font-size: 24px;
	display: flex;
	align-items: center;
	gap: 6px;
}
.basic__course__contents__text::before {
	content: '●';
	color: #8daa03;
	font-size: 19px;
}
.basic__course__contents__wrapper {
	display: flex;
	margin: 40px 0 20px;
	justify-content: space-between;
}
.basic__course__contents {
	width: 48%;
}
.basic__course__image__wrapper {
	background: #fff;
	margin-top: 20px;
}
.basic__course__image {
	display: block;
	padding: 30px 20px 10px 40px;
	border: 2px solid #8daa03;
	border-top: none;
	border-radius: 0 0 4px 4px;
	height: 268.6px;
}
.basic__course__image.hidden {
	display: none;
}
.basic__course__image__tab__wrapper {
	display: flex;
}
.basic__course__image__tab {
	display: block;
	width: 100%;
	background: #bacc68;
	text-align: center;
	color: #fff;
	font-size: 20px;
	padding: 8px 0;
	border-radius: 4px 4px 0 0;
}
.basic__course__image__tab.active {
	background: #8daa03;
}
@media screen and (max-width: 768px) {
	.basic__course__inner {
		width: 85%;
	}
	.basic__course__subtitle {
		font-size: 15px;
		margin-bottom: 5px;
	}
	.basic__course__detail__text {
		font-size: 15px;
		white-space: normal;
		margin-top: 20px;
		letter-spacing: 0.01rem;
	}
	.basic__course__contents__wrapper {
		flex-direction: column;
		gap: 30px;
		margin-top: 20px;
	}
	.basic__course__contents {
		width: 100%;
	}
	.basic__course__image {
		height: auto;
	}
	.basic__course__contents__text {
		font-size: 20px;
	}
	.basic__course__image__tab {
		font-size: 20px;
	}
}
/*==========================================================================
 オーダーメイドコース
============================================================================*/
.order_made_course__inner {
	max-width: 70rem;
	margin: auto;
}
.order-made__course__top-image__wrapper {
	margin-top: 40px;
}
.order-made__course__example__title {
	margin-top: 40px;
}
.order-made__course__bottom-image__wrapper {
	width: 48%;
	margin: 80px auto 0 auto;
	border: 2px solid #8daa03;
	border-radius: 10px;
}
.order-made__course__bottom-image__label {
	text-align: center;
	background: #8daa03;
	color: #fff;
	font-size: 22px;
	padding: 2px 0;
}
.order-made__course__bottom-image {
	padding: 30px 10px 30px 40px;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.order-made__course__top-image__wrapper {
		margin-top: 20px;
	}
	.order-made__course__bottom-image__wrapper {
		width: 85%;
		margin-top: 40px;
		border-radius: 4px;
	}
	.order_made_course__inner {
		width: 100%;
	}
	.order_made_course__sp-inner {
		width: 85%;
		margin: auto;
	}
	.order-made__course__example__title {
		margin-top: 35px;
		width: 75%;
	}
	.order-made__course__example__text {
		margin-top: 20px;
	}
	.order-made__course__bottom-image__label {
		font-size: 22px;
		padding: 0;
	}
}

/*==========================================================================
 月額制コース
============================================================================*/
.monthly-course {
	background: #e6f0b4;
}
.monthly-course__inner {
	width: 70rem;
	margin: auto;
}
.monthly-course__title {
	padding: 0 60px 60px 60px;
}
.monthly-course__plus-icon {
	width: 80px;
	margin: 20px auto;
	display: block;
}
.monthly-course__text {
	font-size: 42px;
	text-align: center;
}
.monthly-course__image {
	padding: 0 60px;
}
@media screen and (max-width: 768px) {
	.monthly-course {
		padding: 5rem 0 4rem 0;
	}
	.monthly-course__inner {
		width: 85%;
	}
	.monthly-course__title {
		padding: 0 20px 20px 20px;
	}
	.monthly-course__image {
		padding-left: 1.3%;
	}
	.monthly-course__plus-icon {
		width: 40px;
		margin: 15px auto;
	}
	.monthly-course__text {
		font-size: 24px;
	}
	.monthly-course__image {
		padding: 0;
	}
}

/*オプションメニュー*/
#option .area_txt h3,#option_couse .area_txt .sub_title
	{
		display: block;
		background: #8daa03;
		color: #fff;
		border-radius: 0.5rem;
		letter-spacing: 0.1rem;
		margin: 3.4rem 0 1.6rem;
		padding: 0.8rem 1.5rem;
		width: 16rem;
		text-align: center;
		font-size: 2rem;
	}
#option .area_txt .course_outside_hours
	{
		margin-top: 4.4rem;
	}
#option .accordion
	{
		margin-top: 2.8rem;
	}
#option .accordion__title
	{
		font-size: 1.6rem;
	}
#option ul
	{
		background-color: #fff;
		width: 100%;
		padding: 0;
		color: #23503b;
		margin-top: 2.8rem;
	}
#option li
	{
		list-style: none;
	}
#option ul ul
	{
		height: 0;
		padding: 0;
		overflow: hidden;
		transition: .5s;
		background-color: #fff;
		margin:0;
	}
#option ul li li
	{
/*		border-bottom: 1px dotted #23503b;*/
		padding: 1.5rem 4rem;
		background:#f1f5e1;
		line-height:1.6;
	}
/*
#option ul:nth-of-type(1) li.active li:last-child
	{
		border-bottom:1px solid #333; 
	}
*/
#option button
	{
		position: relative;
		border: none;
		width: 100%;
		background-color: inherit;
		color: #23503b;
		cursor: pointer;
		text-align: left;
		padding: 1.5rem 2.7rem;
		font-size:1.8rem;
		border-top:1px solid #23503b;
		line-height: 2.5rem;
		letter-spacing:0.1;
	}
#option button:last-child
	{
		border-bottom:1px solid #23503b;
	}
#option button::before,
#option button::after
	{
		content:"";
		position: absolute;
		top: 50%;
		width: 1.5px;
		height: 8px;
		background-color: #23503b;
		transition: .5s;
	}
#option button::before
	{
		transform: rotate(-45deg);
		right: 35px;
	}
#option button::after
	{
		transform: rotate(45deg);
		right: 30px;
	}

#option li.active button::before
	{
		transform: rotate(-135deg);
		transition:.5s;
	}

#option li.active button::after
	{
		transform: rotate(135deg);
		transition:.5s;
	}

ul:nth-of-type(2){ background-color: #357D87; }
/*ul:nth-of-type(2) ul{ background-color: #519FA5; border-top: 1px solid #5D9FA8; }*/
ul:nth-of-type(2) button:hover{ background-color: #1C4B56; }
/*ul:nth-of-type(2) li li{ border-bottom: 1px dotted #73BEBF; }*/
/*ul:nth-of-type(2) li.active li:last-child{ border-bottom:1px solid #5D9FA8; }*/

ul.active
	{ 
		overflow-y: auto; 
	}

#option .include-accordion li .accordionBtn
	{
		display: flex;
		align-items: center;

	}
#option .include-accordion li .accordionBtn .ic_img_menu
	{
		width:5.5rem;
		height:5.5rem;
		object-fit: cover;
		margin-right: 1.6rem;
	}
#option .include-accordion li .accordionBtn .ic_img_menu img
	{
		border-radius: 3rem;
	}
#option .include-accordion li .accordionBtn .title_menu span
	{
		color: #d44d22;
		font-size: 22px;
	}
#option_couse .area_txt .price_extension
	{
		margin:3.4rem 0 5rem ;
	}
#option_couse .area_txt .price_extension h4
	{
		font-size: 2rem;
		font-family: "Zen Maru Gothic", system-ui;
    font-weight: 500;
    font-style: normal;
		letter-spacing: 0.1rem;
		width: 140px;
		text-align: right;
		display: block;
	}
#option_couse .area_txt .price_extension span
	{
		color: #d44d22;
	}
#option_couse .area_txt .small
	{
		margin-bottom: 3.4rem;
	}


.radius-table
	{
	  border: solid 2px #23503b;
		border-collapse: separate;
    border-radius: 10px;
		overflow: hidden;
		font-size: 1.3rem;
		width: 100%;
		font-family: "Zen Maru Gothic", system-ui;
		font-weight:500;
	}
.course
	{
		background: #23503b;
		color: #fff;
		text-align: center;
	}
.radius-table td 
	{
		vertical-align: middle;
	}
.course td:first-child
	{
		border-right: 1px solid #fff;
	}
.course td:last-child
	{
		border-left: 1px solid #fff;
	}
.line_r
	{
		border-right: 1px solid #999999;
	}
.line_b
	{
		border-bottom: 1px solid #999999;
	}
.orange_txt
	{
		color:#d44d22;
		font-size: 1.8rem;
	}
td.txt_space 
	{
    letter-spacing: -0.1rem;
	}
td {
    padding: 1.5rem 1rem;
}
@media screen and (min-width: 768px) {
	.radius-table
	{
	  font-size: 1.9rem;
		width: 75%;
	}
	td {
    padding: 3rem 2rem;
}
	td.txt_space 
	{
    letter-spacing: 0rem;
	}
	.orange_txt
	{
		color:#d44d22;
		font-size: 2.3rem;
	}
}
/*==========================================================================
PC 
============================================================================*/
@media (min-width: 768px)
{
	.reserveBtn 
	{
		width: 430px;
		margin-top: 50px;
	}
	.appeal .sp_only
		{
			display: none;
		}
	.appeal .pc_only
		{
			display: block;
		}
	.appeal .inner
		{
			padding: 0 5rem;
		}
	#price_table .item img
	{
		width: 100%;
	}
}

@media (min-width: 1024px)
{
		section.appeal .area_cta
			{
				width: 46.4rem;
				margin:  0 auto;
			}
		section.appeal a
			{
				margin: 4rem auto;
				width: 100%;
			}
		section.appeal 
	
		{
				width: 70rem;
				margin:  0 auto;
				padding: 0;
				padding-top: 10rem;
		}
		section#price_table {
				/* width: 80rem; */
				/* margin: 0 auto; */
		}

		#price_table .inner {
				width: 80rem;
				margin: 0 auto;
		}

		#price_table .item img {
				width: 100%;
		}

		img.price_03.pc_only {
				width: 63rem;
				margin: 7rem auto 4rem;
		}
	  .area_txt
		{
			width: 80rem;
		}
		#option ul
		{
			width: 80rem;
			margin: 0 auto;
		}
		#option .area_txt_02
		{
			margin: 7rem 0 2.8rem 3.4rem;
		}
	#option button
		{
			font-size: 1.9rem;
		}
	section#option_couse 
		{
/*			background: #f1f5e1;*/
/*			width: 118rem;*/
			border-top-right-radius: 2rem;
			border-bottom-right-radius: 2rem;
/*			margin-bottom: 10rem;*/
		}
	#option_couse .area_txt 
		{
			margin: 0 auto;
		}
	#option_couse .area_txt .img_therapist_table
		{
			width: 55rem;
			display: block;
		}
	.img_option_couse
	{
		position: absolute;
		bottom: 0;
		right:0;
		width: 62rem;
		display: block;
		border-top-left-radius: 2rem;
		border-bottom-left-radius: 2rem;
	}
}
