@charset "UTF-8";

/************************** font */
.comma-ttl { font-size: 19px; font-size: 1.9rem; }
.comma-ttl .small { font-size: .74em; }
#slider .fs-h4 .small { font-size: .74em; }
.LPsec02 .flex-img figcaption { font-size: 15px; font-size: 1.5rem; }
@media (min-width: 960px) {
	.comma-ttl, #slider h4 { font-size: 28px; font-size: 2.8rem; }
}

/*---------------------------------
common
---------------------------------*/
.bg-grada::before {
	content: "";
	background: -moz-linear-gradient(top, #fefefe, #fdfdfd, #f6f6f6);
  background: -webkit-linear-gradient(top, #fefefe, #fdfdfd, #f6f6f6);
  background: linear-gradient(to bottom, #fefefe, #fdfdfd, #f6f6f6);
  padding-top: 30%;
  width: 100vw;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.flex-txt, .flex-img {
	width: auto;
	margin: 0 auto;
}
/************************* slick setting */
.slick-prev, .slick-next {
  width: 0;
  height: 0;
  z-index: 1;
}
.slick-prev {
	left: 0;
}
.slick-next {
	right: 0;
}
.slick-prev::before,
.slick-next::before {
  color: #1481cc;
}
.slick-prev:before, .slick-next:before {
	position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
	font-family: initial;
  font-size: initial;
  width: 1.5rem;
  height: 1.5rem;
  border-top: 3px solid #1481cc;
  border-right: 3px solid #1481cc;
}
.slick-next::before {
	-webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 0;
}
.slick-prev::before {
	-webkit-transform: rotate(230deg);
  transform: rotate(230deg);
  left: 0;
}
.slick-dots {
	bottom: 0;
}
.slick-dots li button:before {
	color: #1481cc;
	font-size: 5rem;
}
.slick-dots li.slick-active button:before {
	color: #1481cc;
}
.slider-unit {
	position: relative;
  margin-bottom: 10rem;
}
.slider-unit .balloon {
	width: 87%;
  max-width: 600px;
  margin: 0 auto;
}
#slider {
	width: 100%;
	position: relative;
}
#slider::before {
	content: "";
  display: inline-block;
  background-color: #f6f6f6;
  border-radius: 50%;
  padding-top: 185%;
  width: 170vw;
  height: auto;
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: -1;
  margin-right: calc( ( 100% - 100vw ) / 2 );
}
#slider .slick-list {
	padding-bottom: 3rem;
}
#slider h4 {
	text-align: center;
	margin-bottom: 2.5rem;
	padding: 1.5rem 0;
}
#slider h4.num01 { background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-num01.png) no-repeat center center / contain; }
#slider h4.num02 { background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-num02.png) no-repeat center center / contain; }
#slider h4.num03 { background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-num03.png) no-repeat center center / contain; }
#slider h4.num04 { background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-num04.png) no-repeat center center / contain; }
#slider h4.num05 { background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-num05.png) no-repeat center center / contain; }
#slider .notes {
	padding: 0 3.5rem;
	line-height: 2;
}


/*---------------------------------
main
---------------------------------*/
.LPcontent {
	padding-top: 5rem;
}
[class*="LPsec"] .sec-unit:not(:last-of-type) {
  padding-bottom: 5rem;
}
.sec-imgMain {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
[class*="LPsec"] .txt-box,
[class*="LPsec"] .flex-txt {
	position: relative;
	width: 100%;
	padding: 0 4rem;
}

/************************* title */
.comma-ttl {
	text-align: center;
	margin: 0 auto 3rem;
}
.comma-ttl .small {
	display: inline-block;
	position: relative;
	z-index: 1;
}
.comma-ttl .small::before,
.comma-ttl .small::after {
	content: "";
	display: inline-block;
	position: absolute;
	z-index: -1;
	background: url(https://harness.love/wp/wp-content/themes/custom/images/comma.png) no-repeat;
	background-size: contain;
	width: 18px;
	height: 14px;
}
.comma-ttl .small::before {
	top: -.5rem;
  left: -1.5rem;
}
.comma-ttl .small::after {
	bottom: -.5rem;
	right: -1.5rem;
  transform: rotateZ(180deg);
}

/*********************** LPsec01 */
.LPsec01 .sec-imgMain {
	max-width: 920px;
}
.LPsec01 .sec-imgMain .balloon {
	width: 86%;
  max-width: 658px;
  margin: 0 auto -2rem;
}
.LPsec01 .txt-box {
	padding: 2rem 4rem 4.5rem;
}
/*********************** LPsec02 */
.LPsec02 .sec-imgMain {
	margin-top: -10rem;
}
.LPsec02 .flex-txt {
	padding-bottom: 2.5rem;
}
.LPsec02 .flex-img figure {
	position: relative;
}
.LPsec02 .flex-img figcaption {
	display: block;
	background-color: #000;
	color: #fff;
	width: 90%;
	position: absolute;
	bottom: .75em;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
}
/*********************** LPsec03 */
.LPsec03 .text-indent {
  text-indent: -1.5em;
  padding-left: 1.5em;
}
.LPsec03 ul.circle {
	position: relative;
	padding-top: 6rem;
  margin: -10rem 0 2.5rem 1em;
  z-index: 1;
}
.LPsec03 ul.circle::before {
  content: "";
  position: absolute;
  top: 0;
  left: .6rem;
  z-index: -1;
  display: inline-block;
  width: 1px;
  height: 100%;
}
.LPsec03 .sec-inner {
	background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-txt03.png) no-repeat bottom center;
	background-size: contain;
	padding-bottom: 23rem;
}
.LPsec03 .balloon {
	position: relative;
	z-index: 2;
}
.LPsec03 .flex-left ul.circle::before {
  background-color: #0e5e9d;
}
.LPsec03 .flex-right ul.circle::before {
  background-color: #1481cc;
}
.LPsec03 ul.circle > li {
	padding-bottom: 1em;
}
.LPsec03 ul.circle > li::before {
	padding-right: .5em;
}
.LPsec03 .flex-left ul.circle > li::before {
	color: #0e5e9d;
}
.LPsec03 .flex-right ul.circle > li::before {
	color: #1481cc;
}
/*********************** LPsec05 */
.LPsec05 {
	position: relative;
}
.LPsec05::before {
	content: "";
  display: inline-block;
  background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-bg05_sp.png) no-repeat center top / contain;
  padding-top: 273%;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: auto;
  top: -5%;
  left: 50%;
  transform: translateX(-50%);
}
.LPsec05 .sec-imgMain .balloon {
  width: 86%;
  max-width: 658px;
  margin: 0 auto -7rem;
}
.LPsec05 ul.circle {
	padding-left: 1.5rem;
}
.LPsec05 ul.circle > li {
	padding-bottom: .5em;
}
.LPsec05 ul.circle > li::before {
	color: #1481cc;
	padding-right: .5em;
}
.LPsec05 .sec-unit .balloon {
  width: 41%;
  max-width: 278px;
  margin: 0 auto;
}
.LPsec05 .bg-grada {
	margin-top: -3rem;
	padding: 4.5rem 0 5.5rem;
}
.LPsec05 .bg-grada .txt-box {
	margin-bottom: 1.5rem;
}
.LPsec05 .sec-imgMain:last-of-type {
  margin-top: -5rem;
}

.until-delivery {
	background-color: #f6f6f6;
	border-radius: 6em;
	width: 90%;
	max-width: 840px;
	padding: 1.5rem 3rem;
	margin: 4.5rem auto;
}
.until-delivery .delivery-text {
	margin: 0 auto;
}
.until-delivery .delivery-text > * {
	display: inline-block;
	vertical-align: middle;
}
.until-delivery .delivery-img {
	width: 18%;
	max-width: 73px;
}
.until-delivery .delivery-ttl {
	font-size: 22px;
  font-size: 2.2rem;
  padding-left: 1rem;
  line-height: 1.2;
}
.until-delivery .delivery-ttl .small {
	display: block;
	font-size: .5em;
}
.until-delivery .btn-more {
	width: 90%;
	margin: 1rem auto 0;
}
.main .until-delivery .btn-more a::after {
	content: ">";
	font-size: 1.25em;
	background: none;
  padding: 0;
  width: auto;
	top: 50%;
	right: 5rem;
	transform: translateY(-50%) scale(.3,1);
}

@media (min-width: 560px) {
	/*---------------------------------
	main
	---------------------------------*/
	/************************* title */
	.comma-ttl .small::before,
	.comma-ttl .small::after {
		width: 36px;
		height: 28px;
	}
}

@media (min-width: 960px) {
  /*---------------------------------
  common
  ---------------------------------*/
  .bg-grada::before {
  	width: 200vw;
		padding-top: 0;
	}
	.reverse .flex-txt {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
				order: 1;
	}
	/************************* slick setting */
	.slick-prev::before, .slick-next::before {
		width: 40px;
    height: 40px;
	}
	.slick-dots { display: none !important; }
	.slider-unit .balloon {
    max-width: 418px;
    margin: 0;
    position: absolute;
    top: -5%;
    right: 16%;
	}
	#slider {
		max-width: 600px;
		padding: 200px 0 200px;
		margin: 60px 0 0 50px;
	}
	#slider::before {
		padding-top: 0;
    width: 840px;
    height: 840px;
    top: 50%;
    margin-right: 0;
	}
	/*#slider .slick-list {
		max-width: 398px;
		margin: 0 auto;
	}*/
	#slider .slick-slide {
		padding: 0 100px;
	}
	#slider h4 {
		margin-bottom: 65px;
		padding: 25px 0;
	}
	#slider .notes {
		padding: 0;
	}
	#slider-thumb {
		width: 100%;
		max-width: 400px;
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translateY(-50%);
		z-index: 1;
	}
	#slider-thumb .slick-track {
		transform:unset!important;
	}
	#slider-thumb li {
		background-color: #fff;
		border-radius: 50px;
    filter: drop-shadow(2px 3px 3px rgba(0,0,0,0.1));
		width: 360px !important;
		padding: 30px 70px;
		margin: 15px 0 15px 35px;
		position: relative;
	}
	#slider-thumb span.num {
		position: absolute;
		top: -13px;
		right: 40px;
		font-size: 24px;
		font-size: 2.4rem;
		font-weight: bold;
		line-height: 1;
	}
	#slider-thumb li.slick-current::before,
	#slider-thumb li.slick-current::after {
		content: "";
		display: inline-block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	#slider-thumb li.slick-current::before {
		background-color: #1481cc;
		width: 70px;
		height: 1px;
		left: -35px;
	}
	#slider-thumb li.slick-current::after {
		background-color: #1481cc;
		width: 8px;
		height: 8px;
		border-radius: 50%;
		left: 35px;
	}

  /*---------------------------------
  main
  ---------------------------------*/
	/************************* title */
	.comma-ttl {
		margin: 0 auto 50px;
	}
	.comma-ttl .small::before,
	.comma-ttl .small::after {
		width: 25px;
		height: 19px;
	}

  /*********************** LPsec01 */
  .LPsec01 .bg-grada::before {
  	width: 100vw;
    left: auto;
	}
	.LPsec01 .sec-imgMain .balloon {
		max-width: 378px;
		position: absolute;
		top: -5%;
		right: 0;
	}
	.LPsec01 .txt-box {
		max-width: calc(499px + 140px);
    margin-top: -40px;
		padding: 20px 0 80px 140px;
	}
	/*********************** LPsec02 */
	.LPsec02 .sec-imgMain {
		margin-top: -19%;
	}
	.LPsec02 .flex-txt {
		padding-bottom: 100px;
	}
	.LPsec02 .flex-txt p:not(.btn-more) {
		width: 100%;
		max-width: 399px;
		margin: 0 auto;
	}
	.LPsec02 .flex-img {
		max-width: 450px;
	}
	/*********************** LPsec03 */
	.LPsec03 .sec-inner {
    background-position: 33% bottom;
    background-size: 430px auto;
		padding: 0 30px 250px;
	}
	.LPsec03 ul.circle {
    padding-top: 90px;
    margin: -150px 0 0 40px;
	}
	.LPsec03 .flex-left, .LPsec03 .flex-right {
	  width: calc((100% / 2) - 20px);
	}
	.LPsec03 .flex-right {
		margin-top: 50px;
	}
	/*********************** LPsec05 */
	.LPsec05::before {
	  background: url(https://harness.love/wp/wp-content/themes/custom/images/harness-bg05_pc.png) no-repeat center top / cover;
	  width: 100vw;
	  padding-top: 141%;
	  top: -25%;
	}
	.LPsec05 .sec-imgMain:first-of-type {
		max-width: 942px;
	}
	.LPsec05 .sec-imgMain .balloon {
		max-width: 378px;
		position: absolute;
		top: -5%;
		right: 0;
	}
	.LPsec05 .sec-unit:first-of-type .txt-box {
		max-width: 497px;
		padding: 0;
    margin-bottom: 70px;
    margin-left: 116px;
	}
	.LPsec05 .bg-grada {
		max-width: calc(499px + 140px);
    margin-left: auto;
		padding: 70px 140px 90px 0;
	}
  .LPsec05 .bg-grada::before {
  	width: 100vw;
    left: -25%;
    transform: translateY(-50%);
	}
	.LPsec05 .bg-grada .txt-box {
		margin-bottom: 50px;
		padding: 0;
	}
	.LPsec05 .bg-grada .balloon {
    max-width: 218px;
    position: absolute;
    bottom: 20%;
    left: -37%;
	}
	.LPsec05 ul.circle {
    padding-left: 0;
	}
	.LPsec05 .sec-imgMain:last-of-type {
	  margin-top: -130px;
	  left: -11.4%;
	}

	.until-delivery {
		padding: 60px 90px;
		margin: 90px auto;
	}
	.until-delivery .delivery-text,
	.until-delivery .btn-more {
		margin: 0;
	}
	.until-delivery .delivery-ttl {
		font-size: 38px;
	  font-size: 3.8rem;
	  padding: 0 15px;
	}

}

@media (max-width: 959px) {
	.slick-prev, .slick-next {
		top: 40%;
	}
	.LPsec01 .bg-grada::before {
		padding-top: 0;
	}
	.LPsec05 .bg-grada::before {
    padding-top: 0;
		width: 100%;
	}
}

@media (max-width: 559px) {}
