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

共通

----------------------*/
.mode_pc{
	display:block;
}
.mode_sp{
	display:none;
}
#page_title .title{
	text-align: center;
	font-size: 32px;
	letter-spacing: 0.01em;
	font-weight: bold;
	padding: 30px 0 17px;
	line-height: 1.2;
}
.note_text_area{

}
.note_text_area p{
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.09em;
	line-height: 2.14;
}
.note_text_area.type02 p{
	font-size: 14px;
	font-weight: 500;
	color: #777;
	text-align: left;
	line-height: 2.14;
}
.note_text_area.type03 p{
	font-size: 14px;
	font-weight: 500;
	color: #777;
	text-align: center;
	line-height: 1.57;
	letter-spacing: 0.04em;
}
.note_text_area.type03 p.discount{
	font-weight: bold;
	color: #3c3c3c;
	font-size: 16px;
	letter-spacing: 0.04em;
}
.text_link{

}
.text_link a{
	color: #3c3c3c;
	border-bottom: 1px solid #3c3c3c;
}
.text_link a:hover{
	opacity: 0.6;
}
@media screen and (max-width: 767px) {
	.mode_pc{
		display:none;
	}
	.mode_sp{
		display:block;
	}
	.mv img{
		margin: auto;
	}
	#page_title .title{
		font-size: 19px;
		line-height: 1.2;
		padding: 2px 0 17px;
	}
	#under-mvbox{
		margin-bottom: 3px;
	}
	.note_text_area p{
		font-size: 12px;
		line-height: 1.75;
	}
	.note_text_area.type02 p{
		font-size: 12px;
		line-height: 1.75;
	}
	.note_text_area.type03 p{
		font-size: 12px;
		line-height: 1.33;
	}
	.note_text_area.type03 p.discount{
		font-size: 14px;
		margin-bottom: 9px;
	}
}
#initial_cost{
	margin-bottom: 70px;
}
.list_title_area {
    background: #515151;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /* height: 89px; */
    color: #fff;
    padding: 16px 0 12px;
    position: relative;
}
.list_title_area .label{
    position: absolute;
    left: -4px;
    top: -4px;
    background-image: url(/images/price/ribbon.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    width: 109px;
    padding: 3px 5px;
}
.list_title_area .label p{
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.15em;
    color: #fff;
    line-height: inherit;
}
.list_title_area h3,
.list_title_area > p {
	font-size: 22px;
	margin-bottom: 10px;
	letter-spacing: 0.04em;
}
.list_title_note {
	text-align: center;
	line-height: 1.2;
}
.list_title_note p {
    color: #fff;
    display: inline-block;
    padding: 2px 10px 3px;
    letter-spacing: 0.15em;
    font-size: 14px;
	line-height: 1.2;
}
.list_detail {
	background: #efefef;
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* align-items: stretch; */
    /* height: 93px; */
    font-size: 24px;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    padding: 18px 0;
    /* flex-flow: column; */
    flex-grow: 1;
}
.list_detail p {
	text-align: center;
}
.list_detail p span{
	font-weight: bold;
}
.list_detail span {
	font-size: 16px;
	letter-spacing: 0.04em;
	color: #3c3c3c;
}
.list_detail sup{
	font-size: 12px;
	font-weight: 400;
	vertical-align: bottom;
}
.prisec_tablerc03 li {
	width: 33.22%;
}
.cost_table {
	margin: 31px 0 22px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	/* background: #eaeaea; */
	/* padding: 1px 0 1px 1px; */
}
.cost_add_table{
	margin: 32px 0 0;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cost_add_table dl{
	max-width: 545px;
    width: 100%;
    margin-top: 8px;
    display: flex;
    flex-direction: column;
}
.cost_add_table .list_title_area{
    padding: 22px 0 15px;
}
.cost_add_table .list_title_area h3,
.list_title_area > p{
	margin-bottom: 0;
}
.cost_add_table .list_detail{
	padding: 18px 0 13px;
}
.cost_table.clear:after {
    content: initial;
}
.cost_table .cost_list{
	max-width: 545px;
	width: 100%;
	margin-top: 8px;
	display: flex;
    flex-direction: column;
}
.cost_table .cost_list .list_detail {
	font-size: 17px;
	background: #efefef;
}
.cvbnr-box {
	/* margin-bottom: 80px; */
	padding-top: 53px;
}
.plan_area{
	display: flex;
	justify-content: center;
}
.plan_area.type02{
	flex-direction: column;
	align-items: center;
}
.plan_area.type02 dl:first-of-type{
	margin-bottom: 7px;
}
.plan_area.type02 dl:last-of-type{
	margin-left: 0;
}
.plan_area.type03{
	flex-direction: column;
	align-items: center;
}
.plan_area.type03 dl:first-of-type{
	margin-bottom: 7px;
}
.plan_area.type03 dl:last-of-type{
	margin-left: 0;
}
.plan_area dl{
    display: flex;
    align-items: center;
}
.plan_area dt{
    font-size: 14px;
    color: #515151;
    background: #fff;
    padding: 5px 7px 3px 7px;
    font-weight: 500;
    line-height: 1;
    margin-right: 10px;
    letter-spacing: 0;
}
.plan_area dd {
    font-size: 16px;
    letter-spacing: 0.04em;
    color: #3c3c3c;
    line-height: 1;
    font-weight: 400;
}
.plan_area dl:last-of-type {
    margin-left: 10px;
}
.plan_area dl:last-of-type dd {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.04em;
	line-height: 1.2;
}
.cost_table .cost_list .list_detail .plan_area dd span {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.04em;
}
.cost_add_table .list_detail p,
.cost_table .list_detail p{
	font-size: 20px;
	letter-spacing: 0.04em;
}
.cost_add_table .list_detail p.note,
.cost_table .list_detail p.note{
	font-size: 16px;
	margin-bottom: 3px;
}
.cost_add_table .list_detail p.note span,
.cost_table .list_detail p.note span{
	font-size: 16px;
	font-weight: bold;
}
.cost_add_table .list_detail p span,
.cost_table .list_detail p span{
	font-weight: 400;
	font-size: 14px;
}
.cost_add_table .list_detail .small,
.cost_table .list_detail .small{
	font-size: 14px;
	letter-spacing: 0.04em;
	font-weight: 400;
	margin-top: 5px;
}
@media screen and (max-width: 767px) {
	#initial_cost{
		margin-bottom: 0;
	}
	.list_title_area {
		height: auto;
		padding: 16px 0 13px;
		display: block;
	}
	.list_title_area h3,
	.list_title_area > p {
		font-size: 18px;
		margin-bottom: 4px;
		text-align: center;
	}
	.list_title_area > p {
		margin-bottom: 0;
	}
	.list_detail {
		height: auto;
		display: block;
		font-size: 6vw;
		line-height: 7vw;
		padding: 4.2% 4% 5.5% 5%;
	}
	.cost_table {
		margin: 9px 0 20px;
		display: block;
		padding: 1px;
	}
	.cost_table .cost_list .list_detail {
		font-size: 6vw;
	}
	.cost_add_table dl,
	.cost_table .cost_list {
		width: 100%;
		margin-top: 10px;
		max-width: 100%;
	}
	.cost_table .cost_list.monthly_cont02 {
		margin-top: 25px;
	}
	.cost_table li:nth-of-type(3) .plan_area{
		width: 66%;
		margin: auto;
	}
	.list_title_area .label{
		left: -5px;
		top: -12px;
		width: 100px;
		height: 23px;
		padding: 4px 4px 3px;
		box-sizing: border-box;
	}
	.list_title_area .label p{
		font-size: 14px;
		line-height: 1.18;
	}
	.cost_table .list_detail p.note{
		line-height: 1.25;
		margin-bottom: 8px;
	}
	.cvbnr-box {
		margin: auto;
		width: 88%;
		padding-top: 48px;
	}
	.plan_area{
		flex-direction: column;
		margin-left: 5%;
	}
	.plan_area.type02{
		justify-content: flex-start;
	}
	.plan_area.type03{
		justify-content: flex-start;
		align-items: flex-start;
		margin-left: 0;
	}
	.plan_area dt{
		padding: 6px 3.6% 3px 2.5%;
	}
	.plan_area dl{
		width: 100%;
	}
	.plan_area dl:last-of-type{
		margin-left: 0;
		margin-top: 5px;
	}
	.plan_area dl:last-of-type dd{
		font-size: 18px;
	}
	.cost_table .cost_list .list_detail .plan_area dd span{
		font-size: 11px;
	}
	.list_detail p.note{
		margin-bottom: 12px;
	}
	.cost_add_table .list_detail p span,
	.list_detail p span{
		line-height: 1.25;
	}
	.cost_add_table{
		margin: 17px 0 0;
	}
	.cost_add_table .list_detail p span,
	.cost_table .list_detail p span{
		font-size: 11px;
	}
	.cost_add_table .list_detail p,
	.cost_table .list_detail p{
		font-size: 18px;
	}
	.cost_add_table .list_detail .small,
	.cost_table .list_detail .small{
		font-size: 12px;
		line-height: 1.75;
		text-align: center;
		margin-top: 2px;
	}
	.cost_add_table .list_title_area{
		padding: 22px 0 14px;
	}
	.cost_add_table .list_detail{
		padding: 13px 0;
	}
	.cost_add_table .list_title_area span{
		line-height: 1.28;
	}
	.plan_area.type03 dl:first-of-type{
		margin-bottom: 0;
	}
}
@media screen and (max-width: 320px) {
	.plan_area{
		margin-left: 0;
	}
	.plan_area dt{
		padding: 6px 2% 3px;
		font-size: 13px;
	}
	.list_title_note p{
		font-size: 13px;
	}
	.plan_area dl:last-of-type dd{
		font-size: 16px;
	}
	.cost_table li:nth-of-type(3) .plan_area{
		width: 68%;
	}
	.list_title_note p{
		padding: 2px 2% 3px;
	}
	.plan_area dd{
		font-size: 14px;
	}
}

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

pricenav

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

.pricenav{
	margin-bottom: 90px;
}
.pricenav_inner{
	background: #efefef;
	padding: 29px 0;
}
.pricenav_inner ul{
	display: flex;
	flex-wrap: wrap;
    align-content: space-around;
}
.pricenav_inner ul li{
    border-left: #000 solid 1px;
    position: relative;
    max-width: 273px;
    width: 100%;
	text-align: center;
}
.pricenav_inner ul li:last-of-type{
    border-right: #000 solid 1px;
}
.pricenav_inner ul li .icon_img{
    max-width: 26px;
    box-sizing: border-box;
    margin: auto auto 10px;
    text-align: center;
}
.pricenav_inner ul li .icon_img img{
	max-width: 100%;
    display: block;
    height: 100%;
    max-height: 26px;
	margin: auto;
}
.pricenav_inner a:hover img{
	opacity: inherit;
}
.pricenav_inner a{
    padding: 13px 0 7px;
	text-align: center;
	color: #3c3c3c;
	display: block;
}

.pricenav_inner p{
	font-weight: bold;
	letter-spacing: 0.09em;
	font-size: 18px;
	display: inline-block;
	text-align: center;
}
.pricenav_inner a:hover{
	opacity: 0.6;
}
.pricenav_inner a p span{
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.09em;
}
@media screen and (max-width: 767px) {
	.pricenav{
		margin-bottom: 50px;
	}
	.pricenav_inner{
		padding: 15px 0;
	}
	.pricenav_inner ul li{
		max-width: calc((100% - 3px) / 4);
	}
	.pricenav_inner ul li:first-of-type{
		border-left: none;
	}
	.pricenav_inner ul li:last-of-type{
		border-right: none;
	}
	.pricenav_inner a{
		display: flex;
		flex-direction: column;
		padding: 14px 0 0px;
	}
	.pricenav_inner p{
		font-size: 11px;
		line-height: 1.09;
		flex-grow: 2;
	}
	.pricenav_inner a p span{
		font-size: 11px;
		display: block;
	}
	.pricenav_inner ul li{
		display: flex;
		justify-content: center;
		align-items: stretch;
	}
	.pricenav_inner ul li .icon_img{
		flex-grow: 1;
		max-width: 22px;
		margin: auto auto 2px;
	}
	.pricenav_inner ul li:last-of-type .icon_img{
		margin: auto auto 6px;
	}
	.pricenav_inner ul li .icon_img img{
		max-height: 22px;
	}
}
/*----------------------

cost

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

.cost_area{
	display: flex;
	justify-content: space-between;
	margin: 40px 0 22px;
}
.cost_area dl{
    max-width: 267px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: stretch;
}
.cost_area dl dt{
    background: #515151;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 2;
    padding: 11px 0 10px;
}
.cost_area dl dt p{
	text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 0.04em;
    display: flex;
    flex-direction: column;
}
.cost_area dl dt p span{
	font-size: 14px;
	font-weight: 500;
	display: block;
	text-align: center;
}
.cost_area dl dd{
	background: #efefef;
}
.cost_area dl dd p{
	color: #3c3c3c;
    font-weight: bold;
    text-align: center;
    font-size: 20px;
    /* line-height: 2.1; */
    padding: 18px 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    line-height: inherit;
}

.cost_area dl dd p span{
    font-size: 14px;
    font-weight: 400;
    line-height: inherit;
}
.cost_lesson_area{
	margin: 60px 0 90px;
	background: #efefef;
	padding: 50px 0;
}
.cost_lesson_cont{
	background: #fff;
	padding: 50px 0 80px;
	margin-bottom: 50px;
}
.cost_lesson_cont .cont_img{
	max-width: 520px;
	margin: auto;
}
.cost_lesson_cont .cont_present{
    max-width: 518px;
    margin: 21px auto 30px;
    padding-bottom: 34px;
    font-size: 14px;
    letter-spacing: 0.09em;
    font-weight: 500;
    line-height: 1.71;
    position: relative;
}
.cost_lesson_cont .cont_present:after{
    content: '';
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    width: 49px;
    height: 25px;
    background-image: url(/images/price/note_icon.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    visibility: visible;
}
.cost_lesson_cont .cont_text{
    max-width: 520px;
    margin: 0 auto 19px;
    position: relative;
    font-size: 28px;
    line-height: 1.10;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0;
}
.cost_lesson_cont .cont_text span{
    color: #ee8081;
    font-size: 40px;
    font-weight: bold;
    line-height: inherit;
    letter-spacing: 0.04em;
}
.cost_lesson_cont .cont_text:after{
    content: '';
    position: absolute;
    right: 0;
    left: 0;
    bottom: 2px;
    margin: auto;
    max-width: 516px;
    min-height: 35px;
    background-image: url(/images/price/price_text_bk.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.cost_lesson_area .btn_both_pink a{
	margin-bottom: 0;
}
@media screen and (max-width: 767px) {
	.cost_area{
		flex-wrap: wrap;
		margin: 18px 0 16px;
	}
	.cost_area dl{
		max-width: 100%;
	}
	.cost_area dl:not(:first-of-type){
		margin-top: 10px;
	}
	.cost_area dl dt{
		padding: 17px 0 14px;
	}
	.cost_area dl:last-of-type dt{
		padding: 15px 0 10px;
	}
	.cost_area dl dt p{
		font-size: 18px;
		/* padding: 15px 0; */
	}
	.cost_area dl dt p span{
		line-height: 1;
	}
	.cost_area dl dd p{
		font-size: 18px;
		padding: 15px 0;
	}
	.cost_area dl dd p span{
		font-size: 11px;
	}
	.cost_lesson_area{
		margin: 8px 0 45px;
		padding: 22px 0 24px;
	}
	#page_top .cost_lesson_area .btn_both_pink a{
		width: 100%;
		padding: 23px 0 16px;
	}
	.cost_lesson_cont .cont_img:last-of-type{
		width: 98%;
		margin: auto;
	}
}
/*----------------------

plan

----------------------*/
.plan_bg{
	background: #efefef;
	padding: 90px 0 72px;
}
.plan_bg p{
	font-size: 16px;
	letter-spacing: 0.09em;
}
.plan_bg .title_area + p{
	margin-top: 23px;
}
.plan_cont_area{
	margin: 34px 0 25px;
}
.plan_cont_area > dl{
	display: flex;
}
.plan_cont_area > dl > dt{
	background: #ee8081;
	max-width: 551px;
	width: 100%;
	border-bottom: 1px solid #fff;
	text-align: center;
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 27px 0;
}
.plan_cont_area > dl:last-of-type > dt{
	border-bottom: none;
}
.plan_cont_area > dl > dt p{
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.04em;
    margin-bottom: 12px;
}

.plan_cont_area > dl > dt .target{
    color: #ee8081;
    font-size: 16px;
    letter-spacing: 0.15em;
    background: #fff;
    border-radius: 18px;
    display: inline-block;
    margin-bottom: 0;
    padding: 11px 24px 8px 21px;
    line-height: 1;
}
.plan_cont_area > dl > dd{
    max-width: 550px;
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #e4e4e4;
    padding: 25px 20px 24px;
	box-sizing: border-box;
}
.plan_cont_area > dl:last-of-type > dd{
	border-bottom: none;
}
.plan_price{
	text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.plan_price dt {
    display: flex;
    align-items: center;
    margin-bottom: 7px;
    justify-content: center;
}
.plan_price dt span{
    background: #fcecec;
    color: #ee8081;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.04em;
    margin-right: 20px;
    padding: 7px 11px 6px 13px;
    line-height: 1;
    margin: 6px 0 0 0;
	box-sizing: border-box;
}
.plan_price dt p{
	color: #ee8081;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    margin: 8px 0 0 11px;
    letter-spacing: 0.04em;
}
.plan_price dt p:first-child{
	margin: 8px 11px 0 0;
}
.plan_price dt p span{
	font-size: 14px;
    font-weight: 400;
    background: transparent;
    padding: 0;
    margin: 0;
}
@media screen and (max-width: 767px) {
	.plan_bg{
		padding: 62px 0 64px;
	}
	.plan_bg .title_area + p{
		font-size: 13px;
		line-height: 1.69;
	}
	.plan_cont_area{
		margin: 19px 0 22px;
	}
	.plan_cont_area > dl{
		flex-direction: column;
	}
	.plan_cont_area > dl:not(:first-of-type){
		margin-top: 10px;
	}
	.plan_cont_area > dl > dt{
		padding: 19px 0 17px;
		max-width: 100%;
	}
	.plan_cont_area > dl > dt p{
		font-size: 18px;
		line-height: 1.38;
		text-align: center;
		margin-bottom: 2px;
	}
	.plan_cont_area > dl > dt .target{
		font-size: 13px;
		padding: 9px 13px 6px 14px;
	}
	.plan_price dt{
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin-bottom: 11px;
	}
	.plan_price dt span{
		font-size: 18px;
		margin: 0;
		padding: 7px 8px 6px 11px;
		box-sizing: border-box;
		text-align: center;
		margin-right: 19px;
	}
	.plan_price dt p{
		font-size: 18px;
		margin: 4px 0 0 0px;
	}
	.plan_price dt p span{
		font-size: 11px;
	}
	.plan_cont_area > dl > dd{
		padding: 14px 2.8% 15px;
		box-sizing: border-box;
		max-width: 100%;
	}
	.cost_lesson_cont{
		padding: 25px;
		margin-bottom: 40px;
	}
	.cost_lesson_cont .cont_present{
		font-size: 12px;
		line-height: 1.5;
		margin: 12px 0 9px;
		padding-bottom: 27px;
	}
	.cost_lesson_cont .cont_text{
		font-size: 14px;
		line-height: 1.2;
		margin: 0 auto 9px;
	}
	.cost_lesson_cont .cont_text span{
		font-size: 22px;
		letter-spacing: 0;
	}
	.cost_lesson_cont .cont_text:after{
		bottom: -4px;
	}
	.cost_add_table .plan_area{
		margin-left: 0;
	}
	.plan_price dt p:first-child{
		margin: 8px 11px 5px 0;
	}
}
@media screen and (max-width: 320px) {
	.plan_cont_area > dl > dt .target{
		font-size: 12px;
	}
	.cost_lesson_cont .cont_text{
		font-size: 13px;
	}
	.plan_price dt p{
		font-size: 16px;
	}
	.plan_price dt span{
		font-size: 16px;
		margin-right: 9px;
	}
}
/*----------------------

option

----------------------*/
.option_bg{
	background: #efefef;
	padding-bottom: 100px;
}
.option_area{
	margin-top: 35px;
}
.option_area > dl{
	display: flex;
}
.option_area > dl + dl{
	margin: 8px 0 26px;
}
.option_area > dl > dt{
	background: #515151;
	color: #fff;
	font-size: 22px;
	letter-spacing: 0.04em;
	line-height: 1.18;
	text-align: center;
	max-width: 240px;
	width: 100%;
	display: flex;
    align-items: center;
    justify-content: center;
}
.option_area > dl > dt p{
	text-align: center;
}
.option_area > dl > dd{
	background: #fff;
	max-width: 880px;
	width: 100%;
}
.option_area > dl > dd dl{
    border-bottom: 1px solid #e4e4e4;
    display: flex;
    justify-content: space-between;
    padding: 22px 20px 17px;
}
.option_area > dl > dd dl:last-of-type{
	border-bottom: none;
}
.option_area > dl > dd dl dt > p{
	font-size: 16px;
	letter-spacing: 0.04em;
}
.option_area > dl > dd dl .option_note{
	margin-top: 4px;
}
.option_area > dl + dl > dd dl:first-of-type .option_note{
	margin-top: 11px;
}
.option_area > dl > dd dl dd p{
    font-weight: bold;
    letter-spacing: 0.04em;
    font-size: 16px;
}
.option_area > dl > dd dl dd p span{
    font-weight: 500;
    letter-spacing: 0.04em;
    font-size: 12px;
}
.option_area > dl + .note_text_area + dl{
	margin-top: 39px;
}
.text_bold{
	font-weight: bold;
}
.need_area{
	margin: 73px 0;
}
.need_inner{
	max-width: 740px;
	width: 100%;
	margin: auto;
}
.need_title_area{
	text-align: center;
	margin-bottom: 34px;
}
.need_area h3{
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.05em;
	padding-left: 30px;
	position: relative;
	display: inline-block;
}
.need_area h3::before{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
	width: 100%;
	max-width: 20px;
	height: 100%;
	max-height: 17px;
	background-image: url(/images/price/title_icon.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left;
}
.need_cont{
	width: 100%;
	background: #fff;
	padding: 56px 80px 52px 58px;
	box-sizing: border-box;
}
.need_cont p{
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.list_araa{
	margin-top: 39px;
}
.list{

}
.list li{
	border-bottom: 1px solid #e4e4e4;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.list li > div:first-of-type{
	display: flex;
}
.list li > div:first-of-type > span{
    position: relative;
    width: 25px;
    height: 25px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.04em;
    margin-right: 9px;
    line-height: 1;
    z-index: 1;
    padding: 1px 0 0;
}
.list li > div:first-of-type > span:after{
	content: '';
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
	width: 25px;
	height: 25px;
	background: #ee8081;
	border-radius: 50%;
	z-index: -1;
}
.list li > div:first-of-type p{
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1;
    margin: 5px 0 3px;
}
.list li > div:first-of-type p span{
	font-weight: 500;
}
.list_text{
	margin-top: 19px;
}
.need_cont .note_text_area p{
	font-size: 14px;
	letter-spacing: 0.09em;
	line-height: 2.14;
	color: #3c3c3c;
}
@media screen and (max-width: 767px) {
	.option_area{
		margin-top: 25px;
	}
	.option_area > dl{
		flex-direction: column;
	}
	.option_area > dl > dt{
		max-width: 100%;
		padding: 22px 0 18px;
	}
	.option_area > dl > dt p{
		font-size: 18px;
		letter-spacing: 0.04em;
	}
	.option_area > dl > dd dl{
		flex-direction: column;
		padding: 15px 13px 8px 20px;
	}
	.option_area > dl + dl{
		margin: 8px 0 22px;
	}
	.option_area > dl + .note_text_area + dl{
		margin-top: 22px;
	}
	.option_area > dl > dd dl dd{
		align-self: flex-end;
		margin-top: 1px;
	}
	.option_area > dl > dd dl dt > p:first-of-type{
		font-size: 16px;
	}
	.option_area > dl > dd dl dt p:first-of-type span.note{
		line-height: 1.31;
	}
	.option_area > dl > dd dl dt .option_note p{
		font-size: 12px;
		letter-spacing: 0.04em;
		line-height: 1.41;
	}
	.option_area > dl > dd dl p:first-of-type + p{
		margin-top: 1px;
	}
	.option_area > dl + dl > dd dl:first-of-type .option_note{
		margin-top: 11px;
	}
	.option_area > dl > dd dl dd p{
		font-size: 16px;
	}
	.option_area > dl > dd dl dd p span{
		font-weight: bold;
		font-size: 11px;
	}
	.option_area > dl + dl > dd dl:first-of-type .option_note{
		margin-top: 1px;
	}
	.monthly_option dd dd{
		margin-top: 1px;
	}
	.need_area{
		margin: 34px 0 0;
	}
	.need_area h3{
		font-size: 19px;
	}
	.need_inner{
		width: 88%;
		margin: auto;
	}
	.need_title_area{
		margin-bottom: 14px;
	}
	.need_title_area h4{
		font-size: 19px;
	}
	.need_cont{
		padding: 26px 5.8%;
	}
	.need_cont p{
		font-size: 13px;
		line-height: 1.69;
	}
	.list_araa{
		margin-top: 23px;
	}
	.list li{
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.list li > div:first-of-type p{
		font-size: 14px;
		padding-top: 4px;
		margin: 1px 0 0 0;
	}
	.list li > div:first-of-type p span{
		line-height: 1.57;
		margin-top: 3px;
		display: inline-block;
	}
	.list li > div:first-of-type > span{
		width: 19px;
		height: 19px;
		font-size: 11px;
		margin: 0 10px 0 4px;
	}
	.list li > div:first-of-type > span:after{
		width: 19px;
		height: 19px;
	}
	.list_text{
		margin-top: 14px;
	}
	.need_cont .note_text_area p{
		font-size: 12px;
		line-height: 1.75;
	}
}
@media screen and (max-width: 320px) {
	.option_area > dl + dl > dd dl:first-of-type .option_note{
		margin-top: 5px;
		margin-bottom: 4px;
	}
	.option_area > dl > dd dl .option_note{
		margin-top: 5px;
		margin-bottom: 4px;
	}
	.need_title_area h4{
		font-size: 15px;
	}
}

.tebura2{
	overflow: hidden;
	background-image: url(/images/studio/bg_tebura2.jpg);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	margin: 0 0 60px 0;
	padding: 50px 0;
}
.tebura2 .img{
	display: block;
	max-width: 1100px;
	margin: auto;
}
.tebura2 .btn{
	display: block;
	max-width: 590px;
	margin: auto;
	padding: 30px 0 0 0;
}
@media screen and (max-width: 768px) {
	.tebura2{
		background-image: url(/images/studio/bg_tebura2_sp.jpg);
		padding: 20px 0;
	}
	.tebura2 .btn{
		padding: 20px 0 0 0;
	}
}
