@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

.col-md-12 {
	padding-left: 0;
	padding-right: 0;
}

.momouron-main {
	position: relative;
}
.momouron-main::before,
.momouron-main::after {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url('../images/bg.jpg') no-repeat 50% calc(50% + 50px) / 100% auto;
	z-index: -1;
}
.momouron-main::before {
	background: linear-gradient(#eaf6f6,#fdf2f0);
}
.main-inner {
	position: relative;
  max-width: 550px;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  z-index: 1;
}
.main-inner::-webkit-scrollbar{
  display: none;
}
.kv {
  font-size: 0;
	background: linear-gradient(
		to bottom,
		#c6e6eb 0%,
		#c6e6eb 8%,
		#fbdfdb 30%,
		#fbdfdb 100%
	);
}
.kv-main {
  margin: 30px auto;
  max-width: 73.2%;
}
.kv img:last-of-type {
  max-width: 96.4%;
}
.sec-img {
  font-size: 0;
  text-align: center;
}
.sec1 {
	position: relative;
  padding: 67px 0 20px;
  background: linear-gradient(
		to bottom,
		#fbdfdb 0%,
		#fbdfdb 25%,
		#c7e6ea 60%,
		#c7e6ea 100%
	);
}
.sec1 .sec-img:not(:last-child) {
	margin-bottom: 65px;
}
.sec1 .sec-line:nth-of-type(1) {
	margin-bottom: 60px;
}
.sec1 .sec-line.--bottom {
	position: absolute;
	bottom: 0;
}
.sec2 {
	padding-top: 100px;
	background: #c7e6ea;
}
.point-wrap {
  background: #fff;
	padding-bottom: 45px;
}
.point-item > p {
	margin: 25px auto;
	padding: 0 52px;
  font-size: 18px;
	font-weight: 400;
  line-height: 2;
  color: #434141;
}
.point-img {
  margin-bottom: 20px;
  font-size: 0;
}
.point-item > p.note {
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
}

.sec3 {
  padding: 100px 16px 135px;
	background-color: #fbdfdb;
  background-image: url(../images/sec_bg03.png);
	background-position: 50% 50%;
	background-size: cover;
	background-repeat: no-repeat;
}
.sec3 .sec-img:first-child {
  margin-bottom: 18px;
}
.sec3 p {
  margin-top: 6px;
  font-size: 15px;
  font-weight: 400;
  color: #323232;
}
.sec4 {
  background: linear-gradient(
		to bottom,
		#fbdfdb 0%,
		#fbdfdb 1100px,
		#c7e6ea 2000px,
		#c7e6ea 100%
	);
	padding-bottom: 100px;
}
.product-box {
  margin: 0 auto;
  text-align: center;
  font-size: 14px;
  line-height: 1.5;
  color: #e94729;
}
.product-pkg {
  margin-bottom: 90px;
  font-size: 0;
}
.product-pkg img {
  transform: translateY(-18px);
}
.product-name {
  margin: 0 auto 65px;
  max-width: 64.2%;
}

.product-price p {
  margin: 0 auto 40px;
  font-size: 35px;
  color: #e94729;
  font-weight: 500;
}
.product-price p span {
  font-size: 70px;
  font-weight: 600;
}
.more-btn {
  margin-bottom: 42px;
  cursor: pointer;
}
.more-btn span {
  display: inline-block;
  padding-bottom: 2px;
  font-size: 20px;
  line-height: 1.1;
  color: #001746;
  border-bottom: 1px solid;
}
.cart-btn {
  display: flex;
  justify-content: center;
}
.cart-btn a {
  max-width: 79.73%;
  margin: 0 auto;
}
.sec-line {
  width: 100%;
  overflow: hidden;
  position: relative;
  height: 124px;
}
.sec-line-track {
  display: flex;
	gap: 12px;
  width: 1220px;
}
.sec-line-track img {
  width: 604px;
  height: auto;
  flex-shrink: 0;
}
.slide-left {
  animation: slideLeft 10s linear infinite;
}
.slide-right {
  animation: slideRight 10s linear infinite;
}

@keyframes slideLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes slideRight {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}


@media screen and (max-width:767px) {
	.kv-main {
		margin: 30px auto;
		max-width: 73.2%;
	}
	.kv img:last-of-type {
		max-width: 96.4%;
	}
	.sec1 {
    padding: 33px 0 10px;
	}
	.sec1 .sec-img:not(:last-child) {
    margin-bottom: 32px;
	}
	.sec-line {
		height: 62px;
	}
	.sec-line-track {
		gap: 8px;
		width: 830px;
	}
	.sec-line-track img {
		width: 411px;
	}
	.sec1 .sec-line:nth-of-type(1) {
		margin-bottom: 30px;
	}
	.sec2 {
		padding-top: 67px;
	}
	.point-wrap {
		padding-bottom: 22px;
	}
	.point-item > p {
		margin: 17px auto;
		padding: 0 35px;
		font-size: 14px;
	}
	.point-img {
		margin-bottom: 10px;
	}
	.point-item > p.note {
		font-size: 13px;
	}
	.sec3 {
		padding: 67px 11px 92px;
	}
	.sec3 .sec-img:first-child {
		margin-bottom: 12px;
	}
	.sec3 p {
		margin-top: 3px;
		font-size: 14px;
	}
	.sec4 {
		background: linear-gradient(
			to bottom,
			#fbdfdb 0%,
			#fbdfdb 146vw,
			#c7e6ea 280vw,
			#c7e6ea 100%
		);
		padding-bottom: 50px;
	}
	.use-flow {
    margin: 50px auto;
	}
	.product-pkg {
		margin-bottom: 45px;
	}
	.product-pkg img {
		transform: translateY(-9px);
	}
	.product-name {
    max-width: 64.2%;
		margin-bottom: 60px;
	}
	.product-price p {
		margin: 0 auto 27px;
		font-size: 24px;
	}
	.product-price p span {
		font-size: 36px;
	}
	.more-btn {
    margin-bottom: 20px;
	}
	.more-btn span {
    font-size: 15px;
	}
	.cart-btn a {
		max-width: 79.73%;
		margin: 0 auto;
	}
}

/*==========================================*/


/*modalcont*/
.momouron-main #modalcont {
	display: none;
	z-index: 200;
	position: relative;
}

.momouron-main #modalcont .inflexbox {
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.momouron-main #modalcont .overray {
	background-color:rgba(136,136,136,0.6);
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index: 1;
}

.momouron-main #modalcont .innerbox {
	background:#fff;
	width:90%;
	margin:0 auto;
	max-width: 980px;
	height:80%;
	position: relative;
	z-index: 2;
	padding:50px 0;
}

.momouron-main #modalcont .innerbox .close {
	width:50px;
	height:50px;
	position: absolute;
	top:0;
	right:0;
	cursor: pointer;
}

.momouron-main #modalcont .inbox {
	background:#fff;
	width:100%;
	margin:0 auto;
	height:100%;
	position: relative;
	z-index: 2;
	padding:0 50px;
	overflow-y: scroll;
}

.momouron-main #modalcont .inbox p {
	font-size: 22px;
	color:#666;
	text-align: center;
	font-weight: bold;
	padding:0 0 40px 0;
	margin:0 0 40px 0;
	border-bottom:1px solid #E6E6E6;
}

.momouron-main #modalcont .inbox dl {
	font-size: 14px;
	line-height: 1.9em;
	color:#666666;
	margin:0 0 30px 0;
	font-weight: bold;
}

@media screen and (max-width:767px) {
	/*modalcont*/
	.momouron-main #modalcont{
		display: none;
		z-index: 200;
		position: relative;
	}
	
	.momouron-main #modalcont .inflexbox {
		position: fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.momouron-main #modalcont .overray {
		background-color:rgba(136,136,136,0.6);
		position: fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		z-index: 1;
	}
	
	.momouron-main #modalcont .innerbox {
		background:#fff;
		width:90%;
		margin:0 auto;
		max-width: 980px;
		height:80%;
		position: relative;
		z-index: 2;
		padding:50px 0;
	}
	
	.momouron-main #modalcont .innerbox .close {
		width:50px;
		height:50px;
		position: absolute;
		top:0;
		right:0;
		cursor: pointer;
	}
	
	.momouron-main #modalcont .inbox {
		background:#fff;
		width:100%;
		margin:0 auto;
		height:100%;
		position: relative;
		z-index: 2;
		padding:0 20px;
		overflow-y: scroll;
	}
	
	.momouron-main #modalcont .inbox p {
		font-size: 20px;
		color:#666;
		text-align: center;
		font-weight: bold;
		padding:0 0 20px 0;
		margin:0 0 20px 0;
		border-bottom:1px solid #E6E6E6;
	}
	
	.momouron-main #modalcont .inbox dl {
		font-size: 14px;
		line-height: 1.9em;
		color:#666666;
		margin:0 0 30px 0;
		font-weight: bold;
	}
}

/*===========================*/
.howTo-container {
  background: #fff;
  margin-inline: auto;
	padding: 75px 28px;
}
.howTo-use {
  margin-bottom: 4%;
  padding: 3%;
  background-color: #fff;
  border-radius: 25px 0 25px 0;
  text-align: center;
}
.howTo-use img {
	display: block;
  width: auto;
  max-width: 100%;
}
.howTo-flow {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 40px 30px;
	margin-bottom: 46px;
}
.howTo-flow-item {
	display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}
.howTo-flow-item:nth-of-type(4) {
  transform: translateY(-0.5%);
}
.howTo-flow-text {
  line-height: 2;
}
.howTo-description {
  padding: 2% 1% ;
  background-color: #e94729;
  text-align: center;
}
.sec3 p.howTo-text {
  color: #fff;
  line-height: 1.75;
}
.sec3 p.howTo-text span {
  font-weight: bold;
}

@media screen and (max-width: 576px) {
  .howTo-use {
    position: relative;
    margin-bottom: 4%;
    padding: 0;
    background-color: #fff;
    border-radius: 25px 0 25px 0;
  }
  .howTo-flow {
		gap: 20px 15px;
		margin-bottom: 23px;
  }
  .howTo-flow-item {
    width: 100%;
    height: 100%;
  }
  .howTo-flow-item:nth-of-type(4) {
    transform: none;
  }
  .howTo-flow-text {
    font-size: clamp(0.75rem, -0.188rem + 4vw, 1.25rem);
    line-height: calc(30 / 16);
  }
  .howTo-text {
    font-size: clamp(0.75rem, 0.281rem + 2vw, 1rem);
    font-weight: 400;
  }
  .howTo-text span {
    font-weight: bold;
  }
}

/*===========================*/
.acd-contents {
  color: #e94729;
	margin: 87px auto 0;
	padding: 0 46px;
}
.acd-contents .js-tab-contents {
  max-width: 800px;
  margin: 0 auto;  
}
.acd-list {
	border-top: 1px solid #e94729;
}
.acd-list-inner {
  width: 100%;
  border-bottom: 1px solid #e94729;
}
.acd-list__title {
  position: relative;
  font-size: 22px;
  font-weight: 400;
  text-align: left;
  margin: 0;
	padding: 26px;
}
.acd-list__title::before {
  font-size: 26px;
  content: "+";
  position: absolute;
  top: 22px;
  right: 10px;
	cursor: pointer;
  /* transition: 0.5s; */
}
.acd-list__title.js-toggle-open.is-open::before {
  transform:rotate(180deg);
  content: "-";
}
.acd-list__text {
  padding: 0 30px 35px;
}
.acd-list__text p {
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.acd-contents {
		margin: 60px auto 0;
		padding: 0 30px;
	}
	.acd-list__title {
		font-size: 15px;
		padding: 18px;
	}
	.acd-list__title::before {
		font-size: 18px;
		top: 15px;
		right: 8px;
	}
	.acd-list__text {
		padding: 0 15px 20px;
	}
}

/*===========================*/

.sec-wrap {
	opacity: 0;
	transform: translateY(40px);
	transition: 0.6s ease-in-out;
}
.sec-wrap.show {
	opacity: 1;
	transform: translateY(0);
}