/*=================================================
 * CSS for PC
 * ================================================= */

main{	padding-bottom: 0;}


.page_title{	margin-bottom: 60px;}

.prof_title{
	font-size: 14px;
	line-height: 34px;
	text-align: left;
}
.prof_title span{
	font-family: "FontA";
	font-size: 34px;
	color: #ff68b5;
}
.prof_title em{
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}


/** prof_top **/

#prof_top{
	padding: 50px 0;
	background: rgba(255, 255, 255, 0.7);
}

#prof_top h3{
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-size: 24px;
	line-height: 40px;
	padding: 0 0 5px 0;
}

#prof_top h3 em{
	font-size: 40px;
	color: #ff68b5;
}

#prof_top .size{
	font-size: 16px;
	line-height: 20px;
	margin: 0 0 10px 0;
}
#prof_top .size span{	color: #ebe5df;}

#prof_top .point_box{
	display: flex;
	justify-content: center;
	font-size: 0;
	line-height: 0;
	margin: 0 0 10px 0;
	padding: 0 5px;
}
#prof_top .point{
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	width: calc(100% / 3 - 10px);
	max-width: 80px;
	height: 25px;
	font-size: 13px;
	line-height: 1;
	border-radius: 2px;
	margin: 0 5px;
}

#prof_top .come{
	font-size: 16px;
	line-height: 20px;
}


/** slide **/

#slide{
	position: relative;
	background: rgba(235, 229, 223, 1);
}
#slide .slick-slide{
	-webkit-transition	: 0.4s ease-in-out;
	-moz-transition	: 0.4s ease-in-out;
	-o-transition	: 0.4s ease-in-out;
	transition		: 0.4s ease-in-out;
}
#slide .slick-slide:not(.slick-center) {
  opacity: 0.5;
  transition: 0.2s linear;
}
@media screen and (max-width: 500px) {
	#slide .slick-slide:not(.slick-center) {
	  opacity: 1;
	}
}

#slide .slider img{
	width: 500px;
	height: auto;
}

.slick-prev,
.slick-next{
	width: 80px;
	height: 80px;
	border: 0;
	outline: 0;
	border-radius: 50%;
	background: none;
	position: absolute;
	z-index: 2;
	top: calc(50% - 40px);
}

.slick-prev{	left: calc(50% - 330px);}
.slick-prev:after{
	content: '';
	width: 25px;
	height: 25px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	position: absolute;
	top: calc(50% - 12.5px);
	right: calc(50% - 20px);
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		 -o-transform: rotate(-45deg);
			transform: rotate(-45deg);
}
.slick-next{	right: calc(50% - 330px);}
.slick-next:after{
	content: '';
	width: 25px;
	height: 25px;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	position: absolute;
	top: calc(50% - 12.5px);
	left: calc(50% - 20px);
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		 -o-transform: rotate(-45deg);
			transform: rotate(-45deg);
}
@media screen and (max-width: 500px) {
	.slick-prev{	left: -10px;}
	.slick-next{	right: -10px;}
}
@media screen and (max-width: 349px) {
	.slick-prev{	left: 0;}
	.slick-next{	right: 0;}
}

#slide .slick-dots{
	width: 100%;
	font-size: 0;
	line-height: 0;
	text-align: center;
	position: absolute;
	bottom: -20px;
	left: 0;
}
#slide .slick-dots li{
	display: inline-block;
	vertical-align: top;
	margin: 0 5px;
}
#slide .slick-dots li button{
	width: 10px;
	height: 10px;
	border: none;
	outline: none;
	border-radius: 50%;
	background: #ccc;
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#slide .slick-dots li.slick-active button{	background: #ff68b5;}

@media screen and (max-width: 500px) {
	#slide .slick-dots{
		bottom: -20px;
	}
	#slide .slick-dots li{
		display: inline-block;
		vertical-align: top;
		margin: 0 5px;
	}
	#slide .slick-dots li button{
		width: 10px;
		height: 10px;
	}
}

.i_nyuten{
	display: inline-block;
	vertical-align: top;
	position: absolute;
	top: 0;
	left: calc(50% - 250px);
}
.i_nyuten img{
	width: 80px;
	height: auto;
}
.i_rank{
	display: inline-block;
	vertical-align: top;
	position: absolute;
	top: 10px;
	right: calc(50% - 240px);
}
.i_rank img{
	width: 100px;
	height: auto;
}
.i_smork{
	display: inline-block;
	vertical-align: top;
	position: absolute;
	top: -30px;
	left: calc(50% - 240px);
}
.i_smork img{
	width: 125px;
	height: auto;
}
.i_shoshin{
	display: inline-block;
	vertical-align: top;
	position: absolute;
	top: -30px;
	right: calc(50% - 240px);
}
.i_shoshin img{
	width: 125px;
	height: auto;
}


/** prof_mid **/

.prof_mid{
	padding: 50px 0 40px 0;
	background: #fff;
}

.prof_sns{
	font-size: 0;
	line-height: 0;
	margin: 0 0 30px 0;
}
.prof_sns a{
	display: inline-block;
	vertical-align: top;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	margin: 0 5px;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}
.prof_sns a:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
}
.prof_sns a.prof_sns_tik{	background: url(img/prof_sns_tik.png) no-repeat #000; background-size: 50px auto;}
.prof_sns a.prof_sns_insta{
	background: url(img/prof_sns_insta.png) no-repeat, rgb(255,213,84);
	background: url(img/prof_sns_insta.png) no-repeat, linear-gradient(45deg, rgba(255,213,84,1) 0%, rgba(242,105,57,1) 30%, rgba(207,46,146,1) 53%, rgba(76,100,211,1) 85%);
	background-size: 50px auto, auto;

}
.prof_sns a.prof_sns_fb{	background: url(img/prof_sns_fb.png) no-repeat #365899; background-size: 50px auto;}
.prof_sns a.prof_sns_tw{	background: url(img/prof_sns_tw.png) no-repeat #000000; background-size: 50px auto;}
.prof_sns a.prof_sns_b{	background: url(img/prof_sns_b.png) no-repeat #ff4b97; background-size: 50px auto;}

.sp_prof_bt{	display: none;}
.prof_bt a{
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	width: 200px;
	height: 55px;
	color: #fff;
	border-radius: 5px;
	margin: 0 5px;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}
.prof_bt a:hover{
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=70);
}

.prof_bt a p{
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 20px;
}
.prof_bt a p em{
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	line-height: 18px;
}

.prof_bt a span{
	font-size: 34px;
	line-height: 34px;
	margin-right: 5px;
}

.prof_bt a.prof_bt_line{	background: #00b900;}
.prof_bt a.prof_bt_line span{
	width: 30px;
	height: 30px;
	font-size: 0;
	line-height: 0;
	background: url(img/prof_bt_line.png) no-repeat;
	background-size: 30px auto;
}
.prof_bt a.prof_bt_mail{	background: #ff8920;}
.prof_bt a.prof_bt_tel{	background: #ff68b5;}


/** sche **/

#sche{
	padding: 50px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#sche ul{
	display: flex;
	width: 100%;
	background: #fff;
	padding: 20px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#sche li{
	width: 100%;
	border-right: 1px solid #ebe5df;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#sche li:last-of-type{	border-right: none;}
#sche li .day{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 16px;
	color: #ff68b5;
	text-align: center;
	padding: 10px 0 0 0;
}

#sche li div{
	width: 100%;
	height: 107px;
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	font-size: 16px;
	line-height: 20px;
	text-align: center;
}
#sche li .pc_none{	display: none;}
#sche li div i{	font-style: normal;}


/** prof_btm **/

.prof_btm{
	display: flex;
	text-align: left;
	background: #fff;
	margin: 0 0 50px 0;
}

.prof_btm_l{
	width: 430px;
	padding: 50px 30px;
	border-right: 1px solid #ebe5df;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.prof_btm_m,
.prof_btm_r{
	width: calc(50% - 215px);
	padding: 50px 30px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.prof_btm_m{	border-right: 1px solid #ebe5df;}

#feature h3{
	border-bottom: 1px solid #ff68b5;
	margin: 0 0 10px 0;
}

#feature dl{
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: flex-start;
	padding: 10px 0;
	border-bottom: 1px dotted #ddd;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#feature dl:first-of-type{	padding-top: 0;}
#feature dl:last-of-type{	padding-bottom: 0; border-bottom: none;}

#feature dt{
	position: relative;
	width: 110px;
	font-size: 16px;
	line-height: 22px;
	text-align: left;
	color: #87576c;
	padding: 0 0 0 17px;
}
#feature dt span{
	font-size: 15px;
	line-height: 15px;
	position: absolute;
	top: 3px;
	left: 0;
}

#feature dd{
	position: relative;
	width: calc(100% - 110px);
	overflow-x: hidden;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#feature dd div{
	height: 30px;
	background: #ccc;
}

#feature dd ul{
	display: flex;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#feature dd li{
	width: calc(100% / 10);
	height: 30px;
	border-right: 1px solid #fff;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#feature dd span{
	display: block;
	height: 30px;
	background: #ffae00;
	position: absolute;
	top: 0;
	left: 0;
	animation: graphAnim 1.5s;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
@keyframes graphAnim {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
#feature dd span.per0{	width: 0%;}
#feature dd span.per1{	width: 10%;}
#feature dd span.per2{	width: 20%;}
#feature dd span.per3{	width: 30%;}
#feature dd span.per4{	width: 40%;}
#feature dd span.per5{	width: 50%;}
#feature dd span.per6{	width: 60%;}
#feature dd span.per7{	width: 70%;}
#feature dd span.per8{	width: 80%;}
#feature dd span.per9{	width: 90%;}
#feature dd span.per10{	width: 100%;}
#feature dd.bar_s span{	background: #4f85ff;}
#feature dd.bar_m span{	background: #ff6262;}


.comment{	margin: 0 0 30px 0;}
.comment:last-of-type{	margin-bottom: 0;}

.comment h3{
	border-bottom: 1px solid #ff68b5;
	margin: 0 0 10px 0;
}

.comment p{
	font-size: 16px;
	line-height: 25px;
}

#data dl{
	font-size: 16px;
	line-height: 22px;
	padding: 9px 0;
	border-bottom: 1px dotted #ddd;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#data dl:first-of-type{	padding-top: 0;}
#data dl:last-of-type{	padding-bottom: 0; border-bottom: 0;}
#data dt{
	position: relative;
	color: #87576c;
	padding: 0 0 0 17px;
}
#data dt span{
	font-size: 15px;
	line-height: 15px;
	position: absolute;
	top: 3px;
	left: 0;
}
#data dd{
	padding: 0 0 0 17px;
}


/** wid **/

.wid{
	display: flex;
	margin: 0 0 50px 0;
	padding: 50px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.wid_in{	width: calc(50% - 25px);}
.wid_in:nth-of-type(odd){	margin-right: 25px;}
.wid_in:nth-of-type(even){	margin-left: 25px;}
.wid_in:only-child{
	width: 100% !important;
	margin: 0 !important;
}


/** cate **/

.cate{
	font-size: 0;
	line-height: 0;
	padding: 0 0 50px 0;
}

.cate a{
	position: relative;
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	width: 250px;
	height: 60px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	border-radius: 0;
	color: #ff68b5;
	background: #fff;
	border: 2px solid #ff68b5;
	border-radius: 5px;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;	-webkit-appearance: none;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.cate a:hover{
	color: #fff;
	background: #ff68b5;
}
.cate a span{
	margin-right: 5px;
}


.cate .list1{	background: #fd6363;}
.cate .list2{	background: #ffab34;}
.cate .list3{	background: #9381e1;}

.sp_wid{	display: none;}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {
	.page_title{	margin-bottom: 20px;}
	.prof_title{
		font-size: 12px;
		line-height: 26px;
		text-align: left;
	}
	.prof_title span{
		font-size: 26px;
	}

	/** prof_top **/
	#prof_top{
		text-align: center;
		padding: 20px 10px 30px 10px;
	}
	#prof_top h3{
		font-size: 15px;
		line-height: 30px;
		padding: 0 0 5px 0;
	}
	#prof_top h3 em{
		font-size: 30px;
	}
	#prof_top .size{
		font-size: 14px;
		line-height: 20px;
		margin: 0 0 5px 0;
	}
	#prof_top .point_box{
		font-size: 0;
		line-height: 0;
		margin: 0 0 10px 0;
		padding: 0 5px;
	}
	#prof_top .point{
		display: inline-flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: calc(100% / 3 - 10px);
		max-width: 80px;
		height: 25px;
		font-size: 13px;
		line-height: 1;
		border-radius: 2px;
		margin: 0 2.5px;
	}
	#prof_top .come{
		font-size: 14px;
		line-height: 20px;
	}

	/** slide **/
	#slide{
		width: 100%;
	}
	#slide img{
	}
	#slide .slider{
		width: 100%;
		margin: 0 auto;
	}
	#slide .slider li img{
		width: 100%;
		height: auto;
	}
	.i_nyuten{
		top: 0;
		left: 0;
	}
	.i_nyuten img{
		width: 50px;
		height: auto;
	}
	.i_rank{
		top: 10px;
		right: 10px
	}
	.i_rank img{
		width: 80px;
		height: auto;
	}
	.i_smork{
		left: 10px;
	}
	.i_smork img{
		width: 100px;
		height: auto;
	}
	.i_shoshin{
		right: 10px;
	}
	.i_shoshin img{
		width: 100px;
		height: auto;
	}

	/** prof_mid **/
	.prof_mid{
		display: block;
		width: auto;
		margin: 0 0 20px 0;
	}

	.sp_prof_bt{	display: block; margin-bottom: 10px;}
	.sp_prof_bt a{
		display: inline-flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: 120px;
		height: 40px;
		color: #fff;
		font-family: 'Noto Serif JP', serif;
		font-weight: 600;
		font-size: 16px;
		line-height: 20px;
		background: #ff68b5;
		border-radius: 5px;
		margin: 0 2.5px;
		-webkit-transition	: 0.2s ease-in-out;
		-moz-transition	: 0.2s ease-in-out;
		-o-transition	: 0.2s ease-in-out;
		transition		: 0.2s ease-in-out;
	}
	.sp_prof_bt a:hover{
		text-decoration: none;
		opacity: 0.7;
		filter: alpha(opacity=70);
	}

	/** prof_mid **/
	.prof_mid{
		text-align: center;
		padding: 30px 0 10px 0;
	}
	.prof_sns{
		margin: 0 0 10px 0;
	}
	.prof_sns a{
		width: 40px;
		height: 40px;
		margin: 0 2.5px;
	}
	.prof_sns a:hover{
		opacity: 0.7;
		filter: alpha(opacity=70);
	}
	.prof_sns a.prof_sns_tik{	background: url(img/prof_sns_tik.png) no-repeat #000; background-size: 40px auto;}
	.prof_sns a.prof_sns_insta{
		background: url(img/prof_sns_insta.png) no-repeat, rgb(255,213,84);
		background: url(img/prof_sns_insta.png) no-repeat, linear-gradient(45deg, rgba(255,213,84,1) 0%, rgba(242,105,57,1) 30%, rgba(207,46,146,1) 53%, rgba(76,100,211,1) 85%);
		background-size: 40px auto, auto;

	}
	.prof_sns a.prof_sns_fb{	background: url(img/prof_sns_fb.png) no-repeat #365899; background-size: 40px auto;}
	.prof_sns a.prof_sns_tw{	background: url(img/prof_sns_tw.png) no-repeat #000000; background-size: 40px auto;}
	.prof_sns a.prof_sns_b{	background: url(img/prof_sns_b.png) no-repeat #ff4b97; background-size: 40px auto;}
	.prof_bt a{
		display: flex;
		width: 280px;
		margin: 0 auto 10px auto;
	}

	/** sche **/
	#sche{
		padding: 20px 10px;
	}
	#sche ul{
		display: block;
		width: auto;
		margin: 0;
		padding: 0;
	}
	#sche li{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		padding: 15px 0;
		border-right: none;
		border-bottom: 1px solid #ebe5df;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	#sche li:last-of-type{	border-bottom: none;}
	#sche li .day{
		width: 50%;
		font-size: 14px;
		line-height: 16px;
		text-align: right;
		padding: 0 10px 0 0;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	#sche li .day span{	font-size: 11px;}
	#sche li .day br{	display: none;}
	#sche li div{
		width: 50%;
		height: auto;
		font-size: 14px;
		line-height: 16px;
		text-align: center;
		justify-content: center;
		border: none;
	}
	#sche li div p{	padding-left: 5px;}
	#sche li div br{	display: none;}
	#sche li div .sp_none{	display: none;}
	#sche li div .pc_none{	display: inline;}

	/** prof_btm **/
	.prof_btm{
		display: block;
		background: #fff;
		margin: 0 0 20px 0;
	}

	.prof_btm_l{
		width: auto;
		padding: 20px 10px;
		border-right: none;
		border-bottom: 1px solid #ebe5df;
	}
	.prof_btm_m,
	.prof_btm_r{
		width: auto;
		padding: 20px 10px;
	}
	.prof_btm_m{
		border-right: none;
		border-bottom: 1px solid #ebe5df;
	}

	#feature dt{
		width: 80px;
		font-size: 14px;
	}
	#feature dt span{	top: 2px;}
	#feature dd{
		width: calc(100% - 80px);
	}
	.comment{	margin: 0 0 20px 0;}
	.comment p{
		font-size: 14px;
		line-height: 25px;
	}
	#data dl{
		font-size: 14px;
	}
	#data dt span{	top: 2px;}


	/** wid **/
	.wid{
		display: block;
		margin: 0 0 20px 0;
		padding: 0 10px;
	}
	.wid_in{	width: auto; margin: 0 0 10px 0;}
	.wid_in:nth-of-type(odd){	margin-right: 0;}
	.wid_in:nth-of-type(even){	margin-left: 0;}
	.wid_in:only-child{
		width: 100% !important;
		margin: 0 !important;
	}
	.wid_in:last-of-type{	margin-bottom: 0;}


	/** cate **/
	.cate{
		font-size: 0;
		line-height: 0;
		text-align: center;
		padding: 0 0 20px 0;
	}
	.cate a{
		width: 100%;
		max-width: 280px;
		font-size: 18px;
		line-height: 30px;
		padding: 10px 0;
		text-align: center;
		text-decoration: none;
		-webkit-transition	: 0.2s ease-in-out;
		-moz-transition	: 0.2s ease-in-out;
		-o-transition	: 0.2s ease-in-out;
		transition		: 0.2s ease-in-out;	-webkit-appearance: none;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.cate a span{
		margin-right: 3px;
	}


	.pc_wid{	display: none;}
	.sp_wid{	display: block;}
}
