/* CSS Document */
#mainVisual{
	background: url("../img/mainvisual.jpg") no-repeat center;
	background-size: cover;
	position: relative;
}

h1 {
	font-size: 2.5rem;
	letter-spacing: 5px;
	margin-bottom: 94px;
	font-weight: 400;
}

.topVisual{
	text-align: left;
	position: relative;
	z-index: 10;
	/*padding: 9.352% 0;*/
	padding: 9.8% 0;
	line-height: 2;
}

.topVisual .bg_img{
	position: absolute;
	max-width: 800px;
	width: 75%;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: -1;
}

.topVisual .lead{
	font-size: 2.3rem;
	margin-bottom: 24px;
	font-weight: 700;
	line-height: 1.7;
}

.about_shop_btn {
    margin-top: 45px;
}
.bg_gy{
	padding: 91px 20px 98px;
}
.menu_hd {
	margin-bottom: 67px;
}
.menu_tbl th {
	text-align: left;
	padding: 19px 25px;
}
.menu_tbl td {
	text-align: right;
	width: 200px;
	padding: 19px 25px 19px 0;
}
.menu_area ul {
	margin-top: 7px;
}
.menu_tbl .total{
	color: #cf0000;
}

/* #sec_01
---------------------------------------------*/
#sec_01{
	padding: 122px 0 0;
}

#sec_01 .course_area {
	padding: 100px 0 0;
	margin-bottom: 0;
}
#sec_01 .course_area table {
    margin: 0 auto 13px;
}
#sec_01 .course_area table th.wid_style01 {
	width: 319px;
}
#sec_01 .course_area table th.wid_style02 {
    width: 8.6%;
}
#sec_01 .course_area table th.ttl{
	text-align: center;
}
#sec_01 .course_area table tr:nth-child(3) th:first-child,
#sec_01 .course_area table tr:nth-child(4) th:first-child,
#sec_01 .course_area table tr:nth-child(5) th:first-child{
	padding-left: 17px;
}
#sec_01 .course_area table th span{
	display: block;
	color: #8c6239;
}
#sec_01 .course_area table th, .course_area table td {
	padding: 15px 0;
}
#sec_01 .course_area table tr:last-child{
	border-bottom: 1px solid #000;
}
#sec_01 .course_area table th:last-child,.course_area table td:last-child{
	border-right: none;
}
#sec_01 .course_area ul {
	padding: 0 17px;
	margin-bottom: 0;
}
#sec_01 .course_area ul li {
	margin-bottom: 0;
}

@media screen and (max-width: 1100px){
	#sec_01 .course_area {
	    padding: 68px 20px;
	}
}

@media screen and (max-width: 767px){
	#sec_01 .course_area {
	    padding: 68px 20px 30px;
	}
	#sec_01 .course_area table {
		width: 900px;
	}
}

/* #sec_03
---------------------------------------------*/
#sec_03{
	padding: 0 0 6.7%;
	background: #f2f2f2;
	margin-top: 40px;
}

#sec_03 .hd01,#sec_07 .hd01{
	padding-top: 5.6%;
	padding-bottom: 3.5%;
	margin-bottom: 6.5%;
}

@media screen and (max-width:480px){
	#sec_03 .hd01{
		padding-bottom: 7.5%;
		margin-bottom: 4%;
	}
}


/* upContets
---------------------------------------------*/
.upContets {
    margin-top: -3.5%;
	margin-bottom: 12%;
}
.upContets div figcaption {
    margin-top: 18px;
}

@media screen and (max-width: 767px){
	.upContets {
		flex-direction: initial;
		margin-bottom: 11%;
	}
	.upContets > div {
		width: 47%;
	}
	.upContets div figcaption {
		margin-top: 5px;
	}
}


/* #sec_04
---------------------------------------------*/
#sec_04 h2.hd01{
	margin-bottom: 55px;
}
#sec_04 .contents_wrap {
    padding-bottom: 4.6%;
}
#sec_04 .flow{
	padding-left: 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#sec_04 .flow li{
    max-width: 490px;
    width: 100%;
	margin-bottom: 80px;
}
#sec_04 .flow li figure{
	margin-right: 30px;
}
.flow li .flownum {
    margin-right: 20px;
}
#sec_04 .flow li .txt_area{
	margin-top: 17px;
}
#sec_04 .flow li p span{
	margin-bottom: 17px;
}

@media screen and (max-width: 1023px){
	#sec_04 .flow li{
		max-width: calc((100%/2) - 10px);
		width: 100%;
		margin-bottom: 80px;
	}
}

@media screen and (max-width: 900px){
	#sec_04 h2.hd01{
		margin-bottom: 30px;
	}
	#sec_04 .flow {
		display: block;
	}
	#sec_04 .flow li{
		max-width: 600px;
		margin: 0 auto 80px;
	}
	#sec_04 .flow li .txt_area {
		margin-top: 4px;
	}
	#sec_04 .flow li .txt_area p br{
		display: none;
	}
	#sec_04 .flow li p span{
		display: block;
		margin-bottom: 0;
	}
	.flow li .flownum {
		width: 35px;
		height: 35px;
		font-size: 1.4rem;
		padding: 2px 0 0 2px;
		margin-right: 15px;
	}
}

@media screen and (max-width: 768px){
	#sec_04 .flow li{
		max-width: 490px;
		margin: 0 auto 40px;
	}
}

@media screen and (max-width: 500px){
	#sec_04 .contents {
		padding: 0 30px 0 40px;
	}
	#sec_04 .flow li{
		margin: 0 auto 25px;
	}
	#sec_04 .flow li figure{
		margin-right: 30px;
	}
	#sec_04 .flow li figure img{
		min-width: 43px;
	}
	#sec_04 .flow li p span{
		margin-top: 4px;
		margin-bottom: 0;
		display: block;
	}
	.flow li .flownum {
		margin-right: 10px;
	}
}


/* #sec_05
---------------------------------------------*/
#sec_05{
	background: #f2f2f2;
}
	#sec_05 .contents_wrap{
		padding-bottom: 4.7vw;
	}
	#sec_05 .hd01{
		padding: 8.2% 0 5.2%;
		margin-bottom: 1.6%;
	}
	#sec_05 .flow{
		max-width: 880px;
		margin: 0 auto;
	}
	#sec_05 .flow li{
		margin-bottom: 45px;
	}
	#sec_05 .flow li .txt_area{
		margin-top: 17px;
	}

@media screen and (max-width: 767px){
	#sec_05{
		margin-top: 40px;
	}
	#sec_05 .contents_wrap {
		padding-bottom: 12.7vw;
	}
	#sec_05 .hd01 {
		padding: 6.2% 0 7.2%;
		margin-bottom: 6%;
	}
	#sec_05 .flow li .txt_area{
		margin-top: 0px;
	}
	#sec_05 .flow li {
		margin-bottom: 15px;
	}
}


/* #sec_05_
---------------------------------------------*/
#sec_05_{
	margin-top: 195px;
	padding-bottom: 13.4vw;
}
	#sec_05_ .hd01{
		padding: 0 0 50px;
		margin-bottom: 45px;
	}


/* #sec_06
---------------------------------------------*/
#sec_06{
	padding: 180px 0 0;
}
	#sec_06 .contents_wrap{
		background-color: #f2f2f2;
		padding-bottom: 7.4vw;
	}

	#sec_06 .hd01{
		padding: 0;
		margin-bottom: 22px;
	}

	#sec_06 .check_box ul {
		max-width: 500px;
		width: 100%;
		margin: 30px auto;
	}

.flow_img{
	margin-bottom: 136px;
}

@media screen and (max-width: 767px){
	#sec_06 {
	    padding: 80px 0 0;
	}
	#sec_06 .check_box ul {
		width: 90%;
		margin: 20px auto;
	}
	.check_box ul li::before {
		top: 1px;
	}
}


/* #sec_07
---------------------------------------------*/
#sec_07{
	margin-top: 315px;
	padding-bottom: 90px;
}
#sec_07 h1{
	margin-top: 0;
	margin-bottom: 60px;
	padding-bottom: 0;
}

#sec_07 .course_area {
	padding: 70px 0 0;
	margin-bottom: 0;
}
#sec_07 .course_area table {
    margin: 0 auto 13px;
	text-align: center;
}
#sec_07 .course_area table th.wid_style01 {
	width: 90px;
}
#sec_07 .course_area table th.wid_style02 {
    width: 30.5%;
}
#sec_07 .course_area table th{
	text-align: center;
}
#sec_07 .course_area table th, .course_area table td {
	padding: 15px 0;
}
#sec_07 .course_area table tr:last-child{
	border-bottom: 1px solid #000;
}
#sec_07 .course_area table th:last-child,.course_area table td:last-child{
	border-right: none;
}
#sec_07 .course_area ul {
	padding: 0;
	margin-bottom: 0;
}
#sec_07 .course_area ul li {
	margin-bottom: 0;
}

@media screen and (max-width: 1100px){
	#sec_07 .course_area {
	    padding: 68px 20px;
	}
}

@media screen and (max-width: 767px){
	#sec_07{
		margin-top: 85px;
		padding-bottom: 0;
	}
	#sec_07 h1 {
		margin-bottom: 0;
	}
	#sec_07 .course_area {
	    padding: 68px 20px 30px;
	}
}


/* #sec_08
---------------------------------------------*/
#sec_08{
	padding: 0 0 16.6%;
	background: #f2f2f2;
	margin-top: 40px;
}

#sec_08 .hd01{
	padding-top: 4.6%;
	padding-bottom: 4.5%;
	margin-bottom: 5.2%;
}

#sec_08 ul.num_list li:nth-child(4){
	margin-bottom: 60px;
}
#sec_08 ul.num_list li:last-child{
    display: flex;
    width: 95%;
    background: #fff;
    padding: 20px 30px;
    font-size: 1.5rem;
	margin: 0 auto;
}

@media screen and (max-width: 767px){
	#sec_08 {
		padding: 0 0 37%;
	}
	#sec_08 .hd01 {
		padding-top: 1.6%;
		padding-bottom: 7.5%;
		margin-bottom: 5.2%;
	}
	#sec_08 ul.num_list li:nth-child(4){
		margin-bottom: 20px;
	}
	#sec_08 ul.num_list li:nth-child(4) p br.sp{
		display: none;
	}
	#sec_08 ul.num_list li:last-child{
		width: 100%;
		text-align: left;
		padding: 10px 20px;
		font-size: 14px;
	}
}


/* upContets02
---------------------------------------------*/
.upContets02 {
    margin-top: 5%;
	margin-bottom: 2.6%;
}
.upContets02 div figcaption {
    margin-top: 18px;
}

@media screen and (max-width: 767px){
	.upContets02 {
		margin-top: -12%;
	}
	.upContets02 div figcaption {
		margin-top: 5px;
	}
}


/* #about_hair
---------------------------------------------*/
#about_hair{
	max-width: 650px;
	width: 100%;
	margin: 100px auto 0;
	padding: 0 20px;
	text-align: left;
}
	#about_hair h2{
		background: #8c6239;
		color: #fff;
		font-size: 1.8rem;
		text-align: center;
		padding: 13px 10px 10px;
	}

#about_hair table{
	border-collapse: collapse;
	width: 100%;
	margin: 20px 0 25px;
}
	#about_hair table th,
	#about_hair table td{
		border-collapse: collapse;
		border-bottom: solid 1px #8c6239;
		padding: 10px 0;
	}
	#about_hair table th{
		color: #8c6239;
		font-size: 1.8rem;
		width: 124px;
	}

#about_hair p{
	line-height: 2;
}

@media screen and (max-width: 767px){
	#about_hair{
		margin: 50px auto;
	}
	#about_hair h2{
		font-size: 1.6rem;
	}
	
	#about_hair table th{
		font-size: 1.4rem;
		width: 100px;
		vertical-align: top;
	}
}


/* #sec_09
---------------------------------------------*/
#sec_09{
	background: #f2f2f2;
}
	#sec_09 .contents_wrap{
		padding-bottom: 8.6vw;
	}
	#sec_09 .hd01{
		padding: 9.2% 0 4.2%;
		margin-bottom: 3%;
	}
	#sec_09 .flow{
		max-width: 900px;
		margin: 0 auto;
	}
	#sec_09 .flow li{
		margin-bottom: 30px;
	}
	#sec_09 .flow li:nth-child(3){
		margin-bottom: 20px;
	}
	#sec_09 .flow li .txt_area{
	}

@media screen and (max-width: 767px){
	#sec_09 .contents_wrap {
		padding-bottom: 16.6vw;
	}
	#sec_09 .hd01 {
		padding: 7.2% 0 7.2%;
		margin-bottom: 5%;
	}
	#sec_09 .flow li{
		margin-bottom: 15px;
	}
	#sec_09 .flow li p span{
		margin-top: 0;
	}
}

/* #sec_10
---------------------------------------------*/
#sec_10{
	padding-top: 86px;
}

#sec_10 .check_box ul {
	max-width: 560px;
	width: 100%;
	margin: 30px auto;
}

@media screen and (max-width: 767px){
	#sec_10 .check_box ul {
	    width: 90%;
	    margin: 20px auto;
	}
}


#line_sec{
	padding-bottom: 400px;
}

#line_sec .lead{
	font-size: 1.8rem;
}

#line_sec .lead span{
	font-size: 2.2rem;
	font-weight: 600;
	display: block;
	margin-bottom: -10px;
}

#line_sec .lineLink{
	max-width: 600px;
	margin: 30px auto 0;
	background: #8cc63f;
}
#line_sec .lineLink a{
	display: block;
	padding: 18px 0;
	color: #fff;
	font-size: 2.2rem;
	font-weight: 600;
	position: relative;
}

#line_sec .lineLink a:after{
	/*position: absolute;
	top: 50%;*/
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	/*right: 20px;*/
	content: "\f105";
	font-family: 'FontAwesome';
	color: #fff;
	font-size: 20px;
	margin-left: 10px;
}


@media screen and (max-width:900px){
	#sec_01 {
		padding: 80px 0 60px;
	}
	h1{
		margin-bottom: 10px;
	}
	.topVisual .bg_img{
		width: 70%;
	}
	#sec_03{
		margin-top: 60px;
	}
}
@media screen and (max-width:860px){
}
@media screen and (max-width:767px){
	#mainVisual{
		background: url(../img/mainvisual_sp.jpg) no-repeat center;
		background-size: cover;
	}
	
	.topVisual .bg_img{
		position: inherit;
		max-width: none;
		width: 100%;
		top: 0;
		right: 0;
		transform: none;
	}
	
	.topVisual .lead{
		margin-top: 20px;
		font-size: 1.6rem;
		margin-bottom: 15px;
	}
	
	.about_shop_btn {
		margin-top: 5px;
	}
	#sec_03{
		margin-top: 0;
	}
	#sec_04 {
		padding: 50px 0 0;
	}
	.flow_img{
		margin-bottom: 30px;
	}
}