
*{
box-sizing:border-box;}

:root{
--main-color:#e52d8b;
--bg:#FFF4FC;
--background-color:#acc529;
--green:#acc529;
}



img{

	max-width:100%;
	vertical-align:bottom}


.school-section__title {
  font-size: 28px;
  background-repeat: no-repeat;
  margin: 80px 0 40px 0;
  padding: 0 0 15px 0;
  font-weight: 500;
  text-align: center;
  background: url("https://gigaplus.makeshop.jp/ksbdemo1/images/icon_midashi.png") center bottom no-repeat !important;
  background-size: 130px auto !important; }

.harley-wax-meaning {
  display: flex; }
  .harley-wax-meaning--p {
    flex: 1; }
  .harley-wax-meaning img {
    width: 300px;
    margin-left: 30px;
    height: 200px; }
  .harley-wax-meaning--plus {
    margin: 30px 0; }

.harley-wax-consum {
  margin-bottom: 70px;
  margin-top: 60px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }
  .harley-wax-consum h3 {
    margin: 0px 0 30px 0;
    color: #e62e8b;
    line-height: 180%;
    font-size: 24px;
    font-weight: 400;
    text-align: center; }
  .harley-wax-consum img {
    max-width: 100%;
    width: auto;
    height: auto;
    margin-bottom: 25px; }
    .harley-wax-consum img:hover {
      opacity: 0.8; }
  .harley-wax-consum p {
    text-align: center;
    margin-bottom: 25px; }

.harley-btn {
  display: inline-block;
  color: #333333;
  padding: 16px 50px 16px 80px;
  font-size: 14px;
  text-decoration: none;
  border: #666666 solid 1px;
  position: relative; }
  .harley-btn::after {
    content: "";
    width: 15px;
    height: 1px;
    background-color: #333333;
    position: absolute;
    top: 50%;
    left: 50px; }
  .harley-btn:hover {
    color: rgba(51, 51, 51, 0.6); }
    .harley-btn:hover::after {
      background-color: rgba(51, 51, 51, 0.6); }
/**/
.tit{
    font-size: 28px;
    margin: 0 0 1em;
    padding: 0 0 15px;
    font-weight: 500;
    text-align: center;
    background: url(https://gigaplus.makeshop.jp/harleywax/images/icon_midashi.png) center bottom no-repeat!important;
    background-size: 130px auto!important
}
p{
	font-size:1.5rem}
	.column .box{
			position:relative;

	}



.column.tokucho .box{	border-radius:8px;
	border:2px solid var(--main-color);
	padding:1.8em 1.6em;
}
.column .box p{
	font-feature-settings: "palt";
	font-size:1.4rem}

.column .box figure{
	padding: 0 0 15px;
}
 h4{
	text-align:left;
	    margin: 0;
    color: #e62e8b;
    line-height: 180%;
    font-size: 24px;
    font-weight: 400;
}
.column .box h4{
	font-size:1.8rem;
	margin: 0 0 .8em;
	text-align:center;
	color:var(--main-color);}

	.column.tokucho .box h4{
	font-size:1.6rem;
	}
	.column.tokucho .box p+p{
		margin-top:1em}
.column.tokucho h3{
	text-align:center;
	margin: -40px 0 20px;
}.product-info{
	margin:50px 0;
		background:var(--bg);
		padding:4em 2em 2em;
		border-radius:10px;}
		
		.product-info .column .box{
			padding-bottom:4em;
			transition:.8s;
		}
		.product-info .column .box .more{

			text-align:right;
			color:var(--main-color);}
			
	.product-info .column .box:hover{
		opacity:.6}
	.product-info .column .box a{
		display:block;
		position:absolute;
		left:0;
		right:0;
		bottom:0;
		top:0}
		
		.how-to-use .flow p{
			display:flex}
			
.flow {
  margin: 60px auto;
  counter-reset: flow;
		border-bottom:1px dotted #CCC;
}
 
.flow > div {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 40px;
  counter-increment: flow;
  position: relative;
}
.how-to-use  h4{
	padding:1em 0 0;
	
}
/* 縦線：最後のステップ以外に引く */
.flow > div:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 60px;
  bottom: -40px;
  left: 26px;
  width: 6px;
  background: #eee;
}
 
/* 番号（CSSカウンターで自動生成） */
.flow > div::before {
  content: counter(flow, decimal-leading-zero);
  flex: 0 0 60px;
  height: 60px;
  border-radius: 50%;
  background:var(--background-color);
  color: #fff;
  font: 700 18px/60px Georgia, serif;
  text-align: center;
}
 
.flow figure {
  flex: 0 0 200px;
  margin: 0;
}
 
.flow figure img {
  width: 200px;
		box-shadow:0 0 10px #f0f0f0;
  height: 200px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
 
.flow p {
  flex: 1;
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.8;
  color: #444;
}

/**/



	.school-info .box-flex li{
		padding: 0 0 1em}
	

.school-info ol {
  padding: 0;
  counter-reset:cp_clist; /*数字をリセット*/
  list-style-type: none;
}
.school-info ol li {
  position: relative;
  margin: 0 0 0 30px;
}
.school-info ol li::before {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  /* カウントさせる */
  counter-increment: cp_clist;
  content: counter(cp_clist);
  /*装飾*/
  background:var(--green);
  color: #fff;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  /*位置の調整*/
  margin-top: 2px;
  margin-left: -30px;
}


.more-info{
	text-align:center;
	font-size:1.8rem;
	padding: 2em 0 6em;
}

	
	
.more-info a{
	font-weight:bold;
	margin-top:1.4em;
	text-decoration:none;
border-radius:6px;
	display:inline-block;
	padding: 1em 3em;
	background:var(--main-color);
	color:#FFF;
}
	
	

@media screen and (min-width: 768px) {
	
	.column{
	display:flex;
	flex-wrap:wrap;}
	
	.main-img{
	padding: 60px 0}
.column .box{

	width:32%;
	margin:0 0 20px 2%;
}
.column .box:nth-of-type(1),.column .box:nth-of-type(4){
	margin-left:0}

		.product-info .column .box .more{
			position:absolute;
			left:0;
			right:0;
			bottom:1em;
			font-size:1.4rem;
}

.column.tokucho .box h4{
	height:60px;
}

.school-info figure{
	width:48%;
}

.school-info .txt{
	width:50%;
}
.school-info .box-flex{
	font-size:1.6rem;
	padding: 40px 0;
	flex-direction:row-reverse;
	justify-content:space-between;
	display:flex;}
	/* 閉じタグ*/
	

} 
@media screen and (max-width: 767px) {
.main-img{
	padding:0 0 3em
}	

p.main-txt{
	font-size:4vw;
	margin: 0 0 3em}
	
.tit{
	font-size:6.8vw}
.column.tokucho .box{	
padding:.8em;
margin: 0 0 2.6em}

.column .box h4{
	font-size:4.8vw}
.column.tokucho .box h4{
	font-size:6vw}
	
	h4{
		font-size:6vw}
		
		
	.column .box p{
		font-size:3.8vw}
	
	/**/
	.product-info{
		padding:1.2em .8em}
	.product-info .column .box{
		padding-bottom:2em}
	.product-info .column .box .more{
		padding: 0 0 2em;
		border-bottom:3px dotted #FFF;
		position:unset}
	
	
	.product-info .column .box:nth-of-type(5){
		padding:0}
	.product-info .column .box:nth-of-type(5) .more{
		padding-bottom:1em;
		border:0;
	}
	/**/
	.flow {
		margin:1em auto}
	.flow > div{
		flex-wrap:wrap;}
		
		.flow p{
			margin-left:80px;
			font-size:3.8vw;
		}
		/**/
		
		.more-info a{
			font-size:4.2vw}
		.more-info{
			padding:2em 0}
		.school-info {
			padding: 1.4em 0}
		.school-info h4{
			font-size:4.8vw;}
			.school-info h4 br{
				display:none}
	
.school-info figure{
	padding:1em 0}
	
		.school-info .box-flex li,	.school-info .box-flex p{
			font-size:4vw}
	
	/* 閉じタグ*/
	
} 




