@charset "utf-8";

h3.sectionttl {
	font-size: 3.0rem;
	font-size: 8vw;
	text-align: center;
	font-weight: normal;
	margin-top: calc(100/750*100%);
}

@media screen and (min-width: 768px) {
	h3.sectionttl {
		font-size: 3.2rem;
		margin-top: 110px;
	}
	.pagettl-item:last-of-type img {
		float: right;
	}
}
@media screen and (min-width: 2000px) {
	.pagettl-item:last-of-type img {
		width: 100%;
		height: auto;
	}
}

/*----------------------------------------------------

Lesson タイトル

----------------------------------------------------*/
.lesson_ttl {
	text-align: center;
	color: #FFFFFF;
	background-color: #838578;
	margin-top: calc(150/750*100%);
	margin-bottom:calc(50/750*100%);
	padding-top: 30px;
	padding-bottom: 30px;
}
.lesson_ttl h4 {
	font-size: 3.6rem;
	font-size: 9.6vw;
	font-family: 'Cormorant Garamond', serif;
	font-weight: normal;
	letter-spacing: 0.1em;
}
.lesson_name {
	font-size: 1.5rem;
	font-size: 4vw;
	color: #FFFFFF;
	border-bottom: 1px solid #FFFFFF;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
	.lesson_class {
	font-size: 1.8rem;
	font-size: 4.8vw;
	color: #FFFFFF;
	line-height: 1.7;
}
@media screen and (min-width: 768px) {
	.lesson_ttl {
		margin-top: 100px;
		margin-bottom: 50px;
		padding-top: 40px;
		padding-bottom: 30px;
	}
	.lesson_ttl h4 {
		font-size: 5.0rem;
	}
	.lesson_name {
		font-size: 1.6rem;
		border-bottom: 1px solid #FFFFFF;
		padding-bottom: 20px;
		margin-bottom: 30px;
	}
		.lesson_class {
		font-size: 2.2rem;
		line-height: 1.7;
	}
}


.inner_price {
	margin-right: 5%;
	margin-left: 5%;
}

@media screen and (min-width: 1000px) {
	.inner_price {
    max-width: 1000px;
    margin-right: auto;
    margin-left: auto;
	}
}


/*----------------------------------------------------

料金 01

----------------------------------------------------*/
.price {
	text-align: center;
}
.price_ttl {
	font-size: 2.5rem;
	font-size: 6.666666666666667vw;
	font-feature-settings: "palt";
	border-bottom: 1px solid #b0b1ad;
	margin-bottom: 20px;
}
.price_ttl span {
	font-size: 60%;
}
.price_txt {
	font-size: 3.4rem;
	font-size: 9.066666666666666vw;
	line-height: 1;
	font-feature-settings: "palt";
	color: #b36d66;
	font-weight: normal;
}
.price_txt span {
	font-size: 45%;
	vertical-align: 1%;
	margin-right: .2em;
	margin-left: .1em;
	}
.price .price_txt {
	text-align: center;
}
.price_note {
	font-size: 1.4rem;
	font-size: 3.7333333333333334vw;
	color: #9D9D9D;
	text-align: left;
	margin-bottom: calc(100/750*100%);
	margin-top: 1.0em;
}
.price_box {
	display: flex;
	justify-content: space-between;
}
.price_box li {
	flex-basis: 48%;
	max-width: 48%;
	background-color: #f5f5f4;
	padding-top: 18px;
	padding-bottom: 24px;
}
.price_box-ttl {
	font-size: 1.8rem;
	font-size: 4.8vw;
	line-height: 1.5;
	margin-bottom: 1.2em;
}
.price_box .price_txt {
	line-height: .7;
}
@media screen and (min-width: 768px) {
	.price_ttl {
		max-width: 1000px;
		font-size: 2.8rem;
		font-feature-settings: normal;
		margin-right: auto;
		margin-bottom: .5em;
		margin-left: auto;
		padding-bottom: .6em;
	}
	.price_txt {
		font-size: 4.0rem;
		line-height: 1;
		margin-bottom: 0;
	}
	.price_note {
		font-size: 1.6rem;
		line-height: 1.7;
		text-align: center;
		margin-top: 20px;
		margin-bottom: 100px;
	}
	.price_box li {
		flex-basis: 48%;
		max-width: 48%;
		margin-top: 20px;
		margin-bottom: 10px;
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.price_box-ttl {
		font-size: 2.2rem;
	}
}
@media screen and (min-width: 1000px) {
	.price_box {
		max-width: 1000px;
		margin-right: auto;
		margin-left: auto;
	}
}

/*----------------------------------------------------

料金 02

----------------------------------------------------*/
.price_stl {
	font-size: 2.0rem;
	font-size: 5.333333333333333vw;
	line-height: 1.3;
	border-bottom: 1px solid #b0b1ad;
	margin-top: calc(100/750*100%);
	margin-bottom: 15px;
	padding-bottom: .6em;
}
.price_stl span {
	font-size: 70%;
}
.price_txt {
	text-align: right;
}
.price_wrap {
	margin-left: 2.0em;
}
.price_stl-category {
	font-size: 1.7rem;
	font-size: 4.533333333333333vw;
	border-bottom: 1px dotted #b0b1ad;
	margin-top: 1.8em;
	margin-bottom: .4em;
	padding-bottom: .3em;
}
.price_stl-category span {
	font-size: 70%;
}
.price_txt-k {
	text-align: right;
	color: #424439;
}
.price_txt-r-sp {
	font-size: 110%;
	text-align: right;
	color: #b36d66;
}
.price_txt-r-pc {
	display: none;
}
.price_note01 {
	margin-top: 1.0em;
}
.price_note01 li {
	font-size: 1.4rem;
	font-size: 3.7333333333333334vw;
	text-indent: -1em;
	color: #9D9D9D;
	padding-left: 1em;
}
@media screen and (min-width: 768px) {
	.price_wrap {
		margin-left: 3.0em;
	}
	.price_stl {
		font-size: 2.8rem;
		margin-top: 40px;
	}
	.price_stl-category {
		font-size: 2.2rem;
	}
	.price_txt-r-sp {
		display: none;
	}
	.price_txt-r-pc {
		display: inline-block;
		padding-right: 5px;
	}
	.price_note01 {
		margin-top: 2.0em;
	}
	.price_note01 li {
		font-size: 1.4rem;
		text-align: right;
	}
}
@media screen and (min-width: 1000px) {
	.price_note01 {
		max-width: 1000px;
		margin-right: auto;
		margin-left: auto;
	}
}
