/* 870px以下 */
@media screen and (max-width: 870px) {
	#nav-merchandise h1{font-size: 18px; font-weight: bold; color: #fff; height: 59px; line-height: 59px; text-align: center; margin-bottom: 40px; background: #c4003c;}
	#nav-merchandise ul {
		margin: 0 auto;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		justify-content: center;
		gap: 16px;
		height: auto;
		width: calc(240px * 2 + 16px);
	}
	
	#nav-merchandise ul li {
		width: 240px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-right: 0px;
	}
}

@media screen and (max-width: 768px) {
	#kv img {
		max-width: 500px;
	}

	#about {
		padding: 60px 0 20px;
	}

	#about img {
		max-width: 560px;
	}

	#tab {
		padding: 40px 0;
	}

	#tab .box {
		justify-content: center;
		flex-wrap: wrap;
		max-width: 500px;
	}

	#tab .box a {
		width: 48.5%;
	}

	#tab .box a:nth-of-type(2n + 1) {
		margin-right: 3%;
	}

	#tab .box a:not(:last-of-type) {
		margin-bottom: 10px;
	}

	#program {
		padding: 40px 0 55px;
	}

	#program h2 {
		width: min(60%, 350px);
		margin-bottom: 27px;
	}

	#program .box {
		display: block;
		max-width: 500px;
	}

	#program .box img {
		width: 100% !important;
	}

	#program .box img._sp:not(:last-of-type) {
		margin-bottom: 23px;
	}

	#discount {
		padding: 30px 0 25px;
	}

	#discount h2 {
		width: min(70%, 375px);
		margin-bottom: 30px;
	}

	#discount .box {
		align-items: stretch;
		flex-wrap: wrap;
		width: 75%;
		max-width: 375px;
	}

	#discount .box .item {
		width: 47%;
		padding: 43px 2% 10px;
	}

	#discount .box .item:nth-of-type(-n + 2) {
		margin-bottom: 25px;
	}

	#discount .box .item>img {
		width: 55%;
		transform: translate(-50%, -35%);
	}

	#discount .box .item p {
		margin-bottom: 10px;
		font-size: 16px;
	}

	#discount .box .item p span {
		font-size: 12px;
	}

	#discount .box .item a {
		padding: 5px 0;
	}

	#discount .box .item a img {
		width: 7px;
		margin-right: 5px;
	}

	#discount .box .item a span {
		font-size: 12px;
	}

.slick-dots li{margin: 0 3px!important;}
.slick-dots li button:before{font-size: 8px!important; color:#d9d9d9!important; opacity: 1!important;}
.slick-dots li.slick-active button:before{font-size: 12px!important; color:#03457a!important;}

#recommend .slider_sub img{width:100%; padding-left: 4%; padding-bottom: 10px;}

#recommend {
	margin-top: -40px;
	padding: 1px 0 25px;
	overflow-x: hidden;
}

#recommend h2 {
	/*width: min(93%, 400px);*/
	margin: 80px auto 25px;
}
#recommend h2 img{width: auto; height: auto; max-height: 98px;}

	#recommend h2 .txt01 {
		left: 0%;
		transform: translateY(-100%);
		width: 53%;
	}

	#recommend .box {
		max-width: 500px;
		padding: 20px 3.5% 20px;
	}

	#recommend .box .goods {
		width: 100%;
		margin-bottom: 13px;
		margin: 0px auto 34px;
	}

	#recommend .box .txt {
		width: 100%;
		/* margin-bottom: 20px; */
		margin: 0 auto 0px;
	}

	#recommend .box .coupon .left {
		width: 43%;
		margin-right: 5%;
	}

	#recommend .box .coupon .left img {
		margin-bottom: 5px;
	}

	#recommend .box .coupon .left button {
		padding: 6px 0;
		border-width: 2px;
		font-size: 13px;
	}

	#recommend .box .coupon .right {
		width: 50%;
	}

	#recommend .box .coupon .right p {
		padding: 8px 0;
		margin-bottom: 6px;
		border-radius: 3px;
	}

	#recommend .box .coupon .right p span {
		font-size: 10px;
	}

	#recommend .box .coupon .right p input {
		font-size: 13px;
	}

	#recommend .box .coupon .right ul li {
		font-size: 10px;
	}

	#research {
		padding: 47px 0 97px;
	}

	#research .box {
		display: block;
		max-width: 500px;
	}

	#research .box .movie {
		width: 100%;
		margin: 0 auto 15px;
	}

	#research .box .txt {
		width: 100%;
	}

	#research .box .txt p {
		margin-bottom: 16px;
	}

	#research .box .example {
		margin-top: 30px;
	}

	#function .movie {
		top: 5.65%;
		left: 6.8%;
		width: 86.7%;
	}

	#reason {
		padding: 80px 0 35px;
	}

	#reason h3 {
		width: 93%;
		max-width: 500px;
		padding: 9px 0;
		padding-left: 17px;
		margin: 0 auto 28px;
		border-left: 5px solid #c5253c;
		font-size: 23px;
		text-align: left;
	}

	#reason p {
		margin-bottom: 10px;
		font-size: 18px;
	}

	#reason p img {
		display: inline-block;
		width: 200px;
	}

	#reason .box {
		display: block;
		max-width: 400px;
		margin-bottom: 30px;
	}

	#reason .box img {
		width: 100%;
	}

	#reason>img {
		max-width: 500px;
	}

	#detail {
		padding: 35px 0;
	}

	#detail .item {
		display: block;
		max-width: 500px;
	}

	#detail .item:first-of-type {
		margin-bottom: 30px;
	}

	#detail .item h3 {
		margin-bottom: 13px;
		font-size: 18px;
		text-align: center;
	}

	#detail .item img {
		width: 100%;
		max-width: 400px;
		margin: 0 auto 10px;
	}

	#detail .item .txt {
		width: 100%;
	}

	#detail .item .txt p {
		font-size: 13px;
		text-align: center;
	}

	#detail .item:nth-of-type(2) h3 {
		width: 100%;
		max-width: 400px;
		padding: 10px 0;
		margin: 0 auto;
		background-color: rgba(81, 84, 117, 0.8);
		color: #fff;
	}

	#detail .item .txt strong {
		font-size: 20px;
		text-align: center;
	}

	#item01 {
		padding: 35px 0;
	}

	#item01 h3 {
		width: min(83%, 415px);
	}

	#item01 .slider {
		width: 90%;
	}

	#item01 .slider .wrapper:first-of-type {
		margin-bottom: 35px;
	}

	#item01 .slider .wrapper>.title {
		max-width: 500px;
		padding: 10px 0 5px;
	}

	#item01 .slider .wrapper>.title p {
		padding: 5px 20px;/*padding: 5px 40px;*/
		font-size: 16px;
	}

	#item01 .slider .wrapper>.title strong {
		word-break: keep-all;
		white-space: pre-wrap;
		font-size: 20px;
		line-height: 1.2;
	}

	#item01 .content {
		display: block;
		max-width: 500px;
		padding: 10px 3.5% 26px;
	}

	#item01 .content>p {
		margin-bottom: 13px;
		font-size: 18px;/*font-size: 15px;*/
	}

	#item01 .content>p.pc_annotation_common {
		display: none;
	}
	#item01 .content>p.sp_annotation_common {
		display: block;
		color: #6b6b6b;
		font-size: 12.5px;
		text-align: left;
		margin-left: 80px;
	}

	#item01 .content>img {
		width: 100%;
		margin: 0 auto 15px;
	}

	#item01 .content .box {
		width: 100%;
	}

	#item01 .content .box .select_box select {
		padding: 13px 1.5%;
		margin-bottom: 15px;
		font-size: 13px;
	}

	#item01 .content .box ul .item p {
		margin-bottom: 15px;
		font-size: 13px;
		color: #a0a0a0;
		font-weight: 600;
		line-height: 1.25;
	}

	#item01 .content .box ul .item p span {
		margin-top: 10px;
	}

	#item01 .content .box ul .item .discount {
		margin-bottom: 15px;
	}

	#item01 .content .box ul .item .price {
		margin-bottom: 30px;
	}

	#item01 .content .box ul .item button img {
		width: 20px;
		margin: 0 15px 0 0;
	}

	#item01 .content .box ul .item button span {
		font-size: 15px;
	}

	#item01 .content .box ul .item .white-btn {
		font-size: 15px;
	}

	#item01 .content .movie {
		display: block;
	}

	#item01 .content .movie li {
		width: 100%;
	}

	#item01 .content .movie li:first-of-type {
		margin-bottom: 15px;
	}

	#item01 .content .movie li iframe {
		margin-bottom: 13px;
	}

	#item01 .content .movie li p {
		font-size: 13px;
	}

	.products {
		padding-bottom: 20px;/*padding-bottom: 40px;*/
	}

	.products h3 {
		width: 93%;
		max-width: 500px;
		margin: 0 auto 10px;
	}

	.products .wrapper {
		display: block;
		max-width: 500px;
		padding: 10px 3% 20px;
	}

	.products .wrapper>img {
		width: 90%;
		margin: 0 auto 20px;
	}
	.products .wrapper img.item03-04-06-07 {
		margin-left: 0;
	}

	.products .wrapper .box {
		width: 100%;
	}

	.products .wrapper .box .select_box select {
		padding: 13px 1.5%;
		margin-bottom: 15px;
		font-size: 13px;
	}

	.products .wrapper .box .postage {
		margin-bottom: 7px;
	}
	.products .wrapper .box .item05_07-postage {
		text-align: right;
	}

	.products .wrapper .box .postage span {
		padding: 7px 16px;
		font-size: 21px;
	}

	.products .wrapper .box ul .item .price {
		margin-bottom: 13px;
	}

	.products .wrapper .box ul .item button img {
		width: 20px;
	}

	.products .wrapper .box ul .item button span {
		font-size: 15px;
	}

	.products .wrapper .box ul .item .white-btn {
		font-size: 15px;
	}

	.products .wrapper .box ul .item .movie iframe {
		margin-bottom: 13px;
	}

	.products .wrapper .box ul .item .movie p {
		font-size: 13px;
	}

	#creed {
		padding: 35px 0 57px;
	}

	#creed h2 span {
		font-size: 36px;
	}

	#creed>p {
		max-width: 500px;
		margin-bottom: 35px;
		font-size: 16px;
		text-align: left;
	}

	#creed .box {
		display: block;
		max-width: 500px;
	}

	#creed .box img {
		width: 50%;
		margin: 0 auto 20px;
	}

	#creed .box .txt {
		margin: 0 auto;
	}

	#creed .box .txt h3 {
		margin-bottom: 10px;
		font-size: 17px;
	}

	#creed .box .txt h3 span {
		font-size: 13px;
	}

	#creed .box .txt>span {
		padding: 9px 0;
		padding-left: 17px;
		margin: 0 auto 13px;
		border-left: 5px solid #c5253c;
		font-size: 17px;
		text-align: left;
	}

	#creed .box .txt p {
		font-size: 14px;
	}

	#contact {
		padding: 24px 0 40px;
	}

	#contact h2 {
		margin-bottom: 10px;
		font-size: 18px;
	}

	#contact .box {
		display: block;
		max-width: 350px;
	}

	#contact .box a {
		width: 100%;
	}

	#contact .box a:first-of-type {
		margin-bottom: 20px;
	}

	#banner {
		width: min(43%, 350px);
	}

	#backtop {
		position: fixed;
		top: calc(95% - (35vw * 0.41844919786));
	}

	#backtop a {
		height: 95px;
	}

	#backtop a::before {
		top: -1px;
		left: -4.5px;
		height: 15px;
	}

	#backtop a span {
		left: calc(0% - 3px);
		width: 10px;
		height: 63px;
		font-size: 10px;
	}
}

/* 589px以下 */
@media screen and (max-width: 589px) {
	#nav-merchandise ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
		max-width: 500px;
		width: 93%;
	}
	#nav-merchandise ul li {
		width: 100%;
		height: 160px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#nav-merchandise ul li img.common-merchandise-imgs {
		width: 129px;
    max-height: 86px;
    margin: 5px auto 8px auto;
	}
	/* #nav-merchandise ul li a.item07 img {
		width: 120px;
	} */
}

@media screen and (max-width: 500px) {
	#item01 .content>p.sp_annotation_common {
		margin-left: 60px;
	}
}
@media screen and (max-width: 450px) {
	#item01 .content>p.sp_annotation_common {
		font-size: 11px;
	}
}
@media screen and (max-width: 410px) {
	#item01 .content>p.sp_annotation_common {
		font-size: 10.5px;
		margin-left: 50px;
	}
}
@media screen and (max-width: 410px) {
	#item01 .content>p.sp_annotation_common {
		font-size: 10px;
		margin-left: 50px;
	}
}

/* 428px以下 */
@media screen and (max-width: 428px) {
	#recommend h2 img.PC_Healthy_sleep_mattress-pillow-set {
    display: none;
  }
	#recommend h2 img.SP_Healthy_sleep_mattress-pillow-set {
    display: block;
  }
}