@charset "utf-8";
body {
	font-family: 'Noto Sans JP', sans-serif;
	color: #2F2F2F;
	margin: 0;
	padding: 0;
	letter-spacing: 0.02em;
	font-feature-settings: "palt";
}
.pc{ display: block; }
.sp{ display: none; }

#kv {
	width: 100%;
	text-align: center;
}
	#kv h1 {
		margin: 0 auto;
        width: 100%;
        font-size: 0;
	}
	#kv h1 picture {
        width: 100%;
        position: relative;
	}
	#kv h1 img {
		width: 100%;
		height: auto;
	}

#content {
	background-color: #F7FFE3;
	padding: 0;
}
	#content .contents__inner {
		max-width: 1000px;
		margin: 0 auto;
		padding: 1px 20px 50px 20px;
	}

.anchorlist{
	display:grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: repeat(3, auto);
	grid-auto-flow: column;
	margin: 5px 15px 20px 15px;
}
	.anchorlist a{
		position:relative;
		display:block;
		padding:20px 0 10px 0;
		margin: 0 30px;
		border-bottom:1px solid #EA2765;
		text-decoration:none;
		font-weight:bold;
		font-size:20px;
		line-height:1.1;
		color: #1B1B1B;
		white-space:nowrap;
		overflow:hidden;
		/*text-overflow:ellipsis;*/
	}
	.anchorlist a:hover { color: #EA2765; }
	.anchorlist a::after {
		content:"";
		position:absolute;
		right:0;
		top:65%;
		transform:translateY(-65%);
		width:21px;
		height:25px;
		background: url("../_images/arrow01.svg") center / contain no-repeat;
	}
	@media (max-width: 767px){
		.anchorlist{
			grid-template-columns:1fr;
			grid-template-rows:none;
			grid-auto-flow: row;
			column-gap:0;
			margin: 0.4rem 1rem 1.4rem 1rem;
		}
		.anchorlist a{ 
			font-size: 1.05rem;
			margin: 0.1rem 0;
			white-space: normal;
			padding: 1rem 2.2rem 0.5rem 0;
			line-height: 1.4rem;
		}
		.anchorlist a::after{ width:38px; height:24px; }
	}

		.frame {
			max-width: 1000px;
			margin: 40px auto 0 auto;
			border: 6px solid #FFD6DD;
			border-radius: 15px;
			background-color: #fff;
		}
			.frame .lead {
			  padding: 12px 16px;
			  font-size: 14px;
			  margin-bottom: 24px;
			}
			.frame .lead p {
			  margin: 0 0 4px;
			}
			.frame .lead p:last-child {
			  margin-bottom: 0;
			}

			/* Q&A本体 */
			.frame .qa {
				margin-top: 8px;
				padding: 20px 50px;
				scroll-margin-top: 30px;
			}

			/* 質問部分 */
			.frame .question {
				font-size: 20px;
				font-weight: bold;
				padding: 20px 0;
			}
			.frame .question p {
				padding: 30px 0 30px 110px;
				background-size: 65px;
				background-position: left 35px center;
				background-repeat: no-repeat;
				display: block;
				font-size: 20px;
				font-weight: bold;
			}
				.frame .question p:nth-child(1) {
					background-image: url(../_images/illust01.svg);
				}
				.frame .question p:nth-child(2) {
					background-image: url(../_images/illust02.svg);
				}
				.frame .question p:nth-child(3) {
					background-image: url(../_images/illust03.svg);
				}

			/* Fixed block */
			.frame .qa-head {
			  font-size: 14px;
			}
				.frame .qa-head__q,
				.frame .qa-head__a {
					display: flex;
					align-items: center;
				}
				.frame .qa-head__q .group,
				.frame .qa-head__a .group {
					display: contents;
					align-items: center;
				}
				.frame .qa-head__q {
					border-bottom: 1px solid #FF5E8C;
				}
				.frame .qa-head__a {
					margin-top: 10px;
				}
				.frame .qa-head__q .q,
				.frame .qa-head__a .a {
					width: 12%;
				}
				.frame .qa-head__q img,
				.frame .qa-head__a img {
					width: 100%;
					height: auto;
					display: block;
				}
				.frame .qa-head__q .txt {
					width: 68%;
					font-size: 24px;
					line-height: 40px;
					font-weight: bold;
				}
				.frame .qa-head__a .txt {
					width: 68%;
					font-size: 20px;
					line-height: 40px;
				}
				.frame .qa-head__a a {
					color: #EA2765;
					font-size: 20px;
					font-weight: bold;
					margin-top: 5px;
					position: relative;
					display: inline-block;
					display: flex;
					align-items: center;
					width: auto;
				}
				.frame .qa-head__a a::after {
					content: "";
					width: 14px;
					height: 17px;
					background-image: url(../_images/arrow02.svg);
					background-repeat: no-repeat;
					margin: 2px 0 0 10px;
				}
				.frame .qa-head__q .illust,
				.frame .qa-head__a .chara {
					width: 20%;
					text-align: center;
				}
				.frame .qa-head__q .q img,
				.frame .qa-head__a .a img {
					max-width: 110px;
				}

				.frame .qa-head__q .illust img {
					max-width: 130px;
					margin: 0 auto;
				}

				.frame .qa-head__a .chara img {
					max-width: 170px;
					margin: 0 auto;
				}

			/* Point */
			.frame .point {
				width: 90%;
				margin: 20px auto 0 auto;
			}

			.frame .point .goods01 a:hover,
			.frame .point .goods02 a:hover {
				text-decoration: none;
				color: #EA2765;
			}
			.frame .point .goods01,
			.frame .point .goods02 {
				width: 100%;
				position: relative;
				margin: 20px 0 40px 0;
			}
				.frame .point .goods01 ul {
					width: 67%;
					display: flex;
					justify-content: center;
					align-items: center;
					border: 3px solid #FF5E8C;
					background: #FFF;
					text-align: left;
					padding: 10px;
				}
				.frame .point .goods02 ul {
					display: flex;
					justify-content: center;
					align-items: center;
					border: 3px solid #FF5E8C;
					background: #FFF;
					text-align: left;
					padding: 20px 10px;
				}
				.frame .point .goods01 ul li.goodsimg,
				.frame .point .goods02 ul li.goodsimg {
					max-width: 250px;
				}
				.frame .point .goods01 ul li.goodsimg img,
				.frame .point .goods02 ul li.goodsimg img {
					width: 100%;
				}
				.frame .point .goods01 ul li p.name,
				.frame .point .goods02 ul li p.name {
					font-size: 20px;
					line-height: 28px;
					margin-bottom: 20px;
					color: #1B1B1B;
				}
				.frame .point .goods01 ul li p.price,
				.frame .point .goods02 ul li p.price {
					margin-bottom: 5px;
				}
				.frame .point .goods01 ul li p.btn,
				.frame .point .goods02 ul li p.btn {
					font-size: 18px;
					line-height: 28px;
					border-radius: 5px;
					background: #EB2765;
					color: #fff;
					padding: 1% 5% 2% 5%;
					width: 90%;
					text-align: center;
					display: flex;
					justify-content: center;
					align-items: center;
					position: relative;
				}
					.frame .point .goods01 ul li p.btn::after,
					.frame .point .goods02 ul li p.btn::after {
						content: "▶︎";
						font-size: 14px;
						transform: scale(0.6, 1);
						margin-left: 6px;
						position: absolute;
						right: 5%;
					}
				.frame .point .goods01 p.illust,
				.frame .point .goods02 p.illust {
					position: absolute;
					right: 0;
					bottom: 0;
					max-width: 290px;
				}
					.frame .point .goods01 p.illust img,
					.frame .point .goods02 p.illust img {
						width: 100%
					}

				.frame .point .introduction {
					display: flex;
					justify-content: center;
					align-items: center;
					margin: 0 0 60px 0;
				}
					.frame .point .introduction p {
						width: 50%;
					}
					.frame .point .introduction p img {
						width: 100%;
					}
					.frame .point .introduction p.text {
						font-size: 20px;
						line-height: 35px;
						text-align: center;
					}
					.frame .point .introduction p.text span {
						color: #EA2765;
						font-weight: bold;
					}

				.frame .point .comparison {

				}
					.frame .point .comparison .img {

					}
					.frame .point .comparison .img img {
						width: 100%;
					}
					.frame .point .comparison .txt {
						font-size: 20px;
						line-height: 30px;
						text-align: center;
						margin: 0 0 15px 0;
					}

			.frame .point-title {
				font-size: 26px;
				color: #EA2765;
				font-weight: bold;
				margin: 0 0 15px 0;
				letter-spacing: 0.05em;
				display: block;
			}
			.frame .point-title2 {
				font-size: 30px;
				color: #EA2765;
				font-weight: bold;
				margin: 0 0 15px 0;
				letter-spacing: 0.05em;
				display: block;
				line-height: 30px;
			}

			/* Column */
			.frame .column {
				width: 86%;
				margin: 20px auto 50px auto;
				padding: 3%;
				display: flex;
				justify-content: center;
				align-items: center;
				background-color: #F6F6F6;
			}
				.frame .column .colum-l {
					width: 40%;
				}
					.frame .column .colum-l img {
						width: 100%;
					}
				.frame .column .colum-r {
					width: 60%;
					padding: 3%;
				}
					.frame .column .colum-r .clm-head {
						font-size: 20px;
						line-height: 30px;
						color: #E2001D;
						font-weight: bold;
						margin-bottom: 10px;
					}
					.frame .column .colum-r .clm-read {
						font-size: 15px;
						line-height: 32px;
					}
					.frame .column .colum-r .clm-read span {
						font-weight: bold;
					}

			/* Balloon */
			.balloon01 {
				position: relative;
				/* max-width: 720px; */
				width: auto;
				display: inline-block;
				margin: 0 auto 40px 20px;
				padding: 24px 40px;
				background: #fff;
				border: 4px solid #EA2765;
				border-radius: 24px;
				box-shadow: 0 8px 10px rgba(0, 0, 0, 0.08);
			}
				.balloon01.balloon--left::before {
					content: "";
					position: absolute;
					width: 60px;
					height: 40px;
					bottom: -40px;
					left: 45px;
					background: #EA2765;
					clip-path: polygon( 0% 100%, 30% 0, 95% 0 );
					z-index: 1;
				}
				.balloon01.balloon--left::after {
					content: "";
					position: absolute;
					width: 57px;
					height: 37px;
					bottom: -29px;
					left: 54px;
					background: #fff;
					clip-path: polygon( 0% 100%, 32% 0, 92% 0 );
					z-index: 2;
				}
				.balloon01 p {
					font-size: 18px;
					line-height: 30px;
					font-weight: bold;
				}

			.balloon02 {
				position: relative;
				/*max-width: 520px;*/
				width: auto;
				display: table;
				right: 0;
				margin: 0 20px 40px auto;
				/*left: 100px;*/
				padding: 25px 30px;
				background: #fff;
				border: 4px solid #EA2765;
				border-radius: 24px;
				box-shadow: 0 8px 10px rgba(0, 0, 0, 0.08);
			}
				.balloon02.balloon--right::before {
					content: "";
					position: absolute;
					width: 60px;
					height: 35px;
					bottom: -36px;
					right: 82px;
					background: #EA2765;
					clip-path: polygon( 100% 100%, 68% 0%, 0% 0% );
					z-index: 1;
				}
				.balloon02.balloon--right::after {
					content: "";
					position: absolute;
					width: 45px;
					height: 26px;
					bottom: -25px;
					right: 92px;
					background: #fff;
					clip-path: polygon( 100% 100%, 65% 0%, 0% 0% );
					z-index: 2;
				}
				.balloon02 p {
					font-size: 18px;
					line-height: 30px;
					font-weight: bold;
				}

			/* Accordion (default: closed) */
			.frame .answer-contents {
				max-height: 0;
				opacity: 0;
				overflow: hidden;
				transition: max-height .3s ease, opacity .3s ease;
			}

			/* Open state */
			.frame.is-open .answer-contents {
				max-height: 2000px;
				opacity: 1;
			}

			/* Open button */
			.frame .more {
				margin-top: 16px;
				text-align: center;
			}
				.frame .btn-more {
					display: flex;
					align-items: center;
					justify-content: center;
					width: 100%;
					padding: 14px 0 8px 0;
					font-size: 14px;
					font-weight: 700;
					border-radius: 0 0 7px 7px;
					border: 0;
					background: #EA2765;
					color: #fff;
					cursor: pointer;
					line-height: 1;
				}

				/* Icon position  */
				.frame .btn-more .icon-chevron {
					position: relative;
					display: inline-block;
					vertical-align: middle;
					width: 12px;
					height: 12px;
					margin-left: 4px;
					left: 15px;
					top: -2px;
				}

				/* Line on each side */
				.frame .btn-more .icon-chevron::before,
				.frame .btn-more .icon-chevron::after {
					content: "";
					position: absolute;
					/*top: 50%;*/
					left: 50%;
					width: 30px;
					height: 5px;
					background-color: currentColor;
					border-radius: 999px;
					transform-origin: 0 50%;
					transition: transform .1s ease;
				}
				/*.frame .btn-more:hover .icon-chevron::before,
				.frame .btn-more:hover .icon-chevron::after {
				}*/

				.frame .btn-more:hover .dli-chevron-down {
					transform:translateY(5px);
					transition: 0.2s all;
				}
				.frame .btn-more:hover .dli-chevron-up {
					transform:translateY(-5px);
					transition: 0.2s all;
				}
				.frame .btn-more:not(:hover) .dli-chevron-down {
					transform:translateY(0);
					transition: 0.2s all;
				}
				.frame .btn-more:not(:hover) .dli-chevron-up {
					transform:translateY(0);
					transition: 0.2s all;
				}

				/* ▼ Down (closed) */
				.dli-chevron-down::before {
					transform: translate(-50%, -50%) rotate(-30deg);
					top: 13px;
				}
				.dli-chevron-down::after {
					transform: translate(-50%, -50%) rotate(210deg);
					top: 13px;
					margin-left: 3px;
				}
				/* ▲ Up (open) */
				.dli-chevron-up::before {
				  transform: translate(-50%, -50%) rotate(30deg);
				}
				.dli-chevron-up::after {
				  transform: translate(-50%, -50%) rotate(150deg);
					margin-left: 3px;
				}

				/* Reverse the when hovering */
				.frame .btn-more:hover .dli-chevron-up::before {
				  transform: translate(-50%, -50%) rotate(30deg);
				}
				.frame .btn-more:hover .dli-chevron-up::after {
				  transform: translate(-50%, -50%) rotate(150deg);
					margin-left: 3px;
				}
				.frame .btn-more:hover .dli-chevron-down::before {
				  transform: translate(-50%, -50%) rotate(-30deg);
				}
				.frame .btn-more:hover .dli-chevron-down::after {
				  transform: translate(-50%, -50%) rotate(210deg);
					margin-left: 3px;
				}

			/* CTA button */
			.frame .cta {
				width: 90%;
				text-align: center;
				margin: 50px auto 20px auto;
			}
			.frame .cta.last {
				margin: 30px auto 20px auto;
			}
				.frame .cta a {
					display: block;
					padding: 15px;
					background-color: #EA2765;
					border-radius: 100vh;
					text-decoration: none;
					border: 3px solid #EA2765;
				}
				.frame .cta img {
					max-width: 430px;
				}
				.frame .cta a:hover {
					background-color: #fff;
					border: 3px solid #EA2765;
				}
				.frame .cta a:hover img {
					filter: brightness(0) saturate(100%) invert(28%) sepia(54%) saturate(6194%) hue-rotate(328deg) brightness(95%) contrast(92%);
				}

			/* Style */
			.frame p.fs01 {
				font-size: 20px;
				font-weight: bold;
				margin: 0 0 10px 0;
			}
			.frame p.fs02 {
				font-size: 26px;
				font-weight: bold;
				margin: 20px 0 0 0;
				color: #EA2765;
				text-align: center;
				display: inline-block;
				width: 100%;
			}
			.frame p.fs03 {
				font-size: 26px;
				line-height: 36px;
				font-weight: bold;
				margin: 20px 0 0 0;
				text-align: center;
				display: inline-block;
				width: 100%;
				color: #EA2765;
			}
			.frame p.fs04 {
				font-size: 26px;
				font-weight: bold;
				margin: 40px 0 40px 0;
				color: #EA2765;
				text-align: center;
				display: inline-block;
				width: 100%;
			}
			.frame p .fs05 {
				font-size: 50px;
				font-weight: bold;
			}
			.frame p .fs06 {
				font-size: 35px;
				font-weight: bold;
			}
			.frame p.read {
				font-size: 20px;
				line-height: 35px;
				margin: 0 0 10px 0;
				display: inline-block;
			}
			.frame .caption {
				margin: 15px auto 40px auto;
			}
			.frame .caption p {
				font-size: 12px;
				line-height: 20px;
				/*text-indent: -1em;
				padding-left: 1em;*/
			}
			.frame .image {
				text-align: center;
				width: 100%;
				margin: 30px auto 30px auto;
			}
			.frame .image img {
			  width: 100%;
			}
				.frame .image.pattern01 {
					text-align: center;
					width: 100%;
					margin: 30px auto 10px auto;
					border-radius: 10px;
					box-shadow: 0 3px 8px rgba(0, 0, 0, .4);
				}
				.frame .image.pattern01 picture {
					display: flex;
				}
				.frame .image.pattern01 img {
					width: 100%;
					border-radius: 10px 10px 0 0;
				}
				.frame .image.pattern01 p {
					background-color: #EA2765;
					border-radius: 0 0 10px 10px;
					font-size: 24px;
					font-weight: bold;
					color: #fff;
					padding: 10px 0 15px 0;
					letter-spacing: 0.2rem;
					display: flex;
					justify-content: center;
					align-items: center;
				}
				.frame .image.pattern01 p::before {
					content: "▶︎";
					font-size: 16px;
					transform: scale(0.7, 1);
					margin-right: 6px;
				}
				.frame .image.pattern01 a:hover {
					text-decoration: none;
				}

			.frame .keypoints {
				margin: 30px 0 80px 0;

			}
				.frame .keypoints ul {
					width:100%;height:auto;
					display:flex;
					flex-wrap:wrap;
					justify-content:space-between;
				}
				.frame .keypoints ul li {
					width:calc(98%/2);
					height:auto;
					display:flex;
					flex-direction:column;
					box-sizing:border-box;
					background-color: #FFF4F6;
					text-align: center;
					border-radius: 10px;
					margin: 0 0 15px 0;
				}
				.frame .keypoints .img {
					max-width: 130px;
					margin: 0 auto;
				}
				.frame .keypoints .img img {
					width: 100%;
				}
				.frame .keypoints .ttl {
					color: #EA2765;
					font-size: 34px;
					line-height: 40px;
					font-weight: bold;
				}
				.frame .keypoints .txt {
					font-size: 16px;
					line-height: 28px;
					margin: 7px 0 20px 0;
				}

			.frame .voice {
				width: 100%;
			}
				.frame .voice-title {
					margin: 0 auto 35px auto;
					text-align: center;
					font-size: 34px;
					font-weight: bold;
					color: #EA2765;
					border-bottom: 2px solid #EA2765;
					padding: 0 40px 5px 40px;
					display: table;
				}

			.frame .recommend .image {
				margin: 0 auto;
			}

			.frame .attention {
				background-color: #EA2765;
				font-size: 26px;
				line-height: 36px;
				color: #fff;
				padding: 30px;
				text-align: center;
				font-weight: bold;
				margin: 30px auto 30px auto;
				width: 88%;
			}
			.frame .bnr {
				width: 96%;
				padding: 2%;
				display: block;
			}
			.frame .bnr img {
				width: 100%;
				box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.25);
				border-radius: 10px;
			}
			.frame .bnr2 {
				width: 96%;
				margin: 2%;
				display: block;
				border: 1px solid #d8d8d8;
				font-size: 0;
			}
			.frame .bnr2 img {
				width: 100%;
			}

			.frame .koudokei {
				border: 3px solid #C40019;
				margin: 10px auto 0;
				display: flex;
				justify-content: space-between;
				align-items: center;
				padding: 15px 30px;
			}
				.frame .koudokei figure {
					width: 22%;
					margin-block-start: 0;
					margin-block-end: 0;
				}
				.frame .koudokei figure img {
					width: 100%;
				}
				.frame .koudokei div p:nth-of-type(1) {
					font-size: 22px;
					letter-spacing: 0.1rem;
				}
				.frame .koudokei div p:nth-of-type(1) span {
					font-size: 26px;
					font-weight: bold;
					color: #C40019;
				}
				.frame .koudokei  div p:nth-of-type(2) {
					text-align: center;
					font-size: 22px;
					line-height: 36px;
					padding: 10px;
					margin-top: 20px;
				}

			.frame .qa .p-cta__text {
				font-weight: bold;
				text-align: center;
				line-height: 1.6;
				font-size: 24px;
    			padding-top: 10px;
			}
			.frame .qa .p-cta__wrap {
				margin-top: 16px;
				color: #fff;
				margin-bottom: 20px;
			}
			.frame .qa .p-cta__content {
				width: 460px;
				margin: 0 auto 50px auto;
				padding: 20px 30px;
				background-color: #EA2765;
				display: flex;
				align-items: center;
				justify-content: space-between;
				border-radius: 10px;
			}
			.frame .qa .p-ctaarea__text {
				font-weight: bold;
				text-align: center;
				font-size: 26px;
				letter-spacing: 0.3rem;
				padding: 0 0 0 20px;
			}
			.frame .qa .barcode-wrap {
				background-color: #fff;
				width: 110px;
				height: 110px;
				border-radius: 8px;
				padding: 9px;
				box-sizing: border-box;
			}
			.frame .qa .barcode-wrap img {
				max-width: 100%;
				height: auto;
				vertical-align: bottom;
			}

			

			/* Floating banner */
			.bnr-float {
				/*position: sticky;*/
				bottom: 30px;
				z-index: 99;
				/*max-width: 1000px;*/
				width: 100%;
				margin: 0 auto;
				text-align: center;
				padding: 50px 0 0 0;
    			background-color: #F7FFE3;
			}
				.bnr-float h2 {
					font-size: 24px;
					font-weight: bold;
					letter-spacing: 0.1em;
					margin: 0 auto 5px auto;
				}
				.bnr-float a {
					display: inline-block;
					text-decoration: none;
					max-width: 1000px;
					margin: 15px 0 0 0;
				}
				.bnr-float a:hover {
					opacity: 1;
					transition: filter 0.1s ease;
					filter: brightness(1.05);
				}
				.bnr-float a img {
					max-width: 100%;
					height: auto;
					display: block;
					/*border-radius: 10px;
					box-shadow: 0 3px 8px rgba(0,0,0,.4);*/
				}

				.btn01 {
					border-radius: 10px;
    				box-shadow: 0 3px 8px rgba(0, 0, 0, .4);
				}
				.fc01 {
					color: #EA2765!important;
				}
				.fwbld {
					font-weight: bold;
				}


@media only screen and (max-width: 1160px) {
	#content .contents__inner {
		padding: 1px 0.7rem 1.4rem 0.7rem;
	}
	.bnr-float {
		width: auto;
		padding: 1.0rem 0.7rem 0 0.7rem;
	}
	.bnr-float a {
		margin: 0.6rem 0 0 0;
	}
	.frame {
		margin: .8rem auto 0 auto;
		border: .3rem solid #EA2765;
		border-radius: 1rem;
	}
	.frame .qa {
		padding: 20px 20px;
	}
	.frame .question {
		font-size: 20px;
		padding: 1rem 1rem 1rem 0;
	}
		.frame .question p {
			font-size: 1rem;
			padding: 1rem 0 1rem 5.5rem;
			background-size: 4rem;
			background-position: left 1rem center;
		}
	
	.anchorlist a {
		margin: 0 0.6rem;
		font-size: 1.1rem;
	}
	.frame .point {
		width: 96%;
	}
	/*.chains {
	flex-wrap: wrap;
	}
	.chain {
	flex: 1 1 calc(50% - 16px);
	}
	.chain-img img {
	width: 150px;
	}*/
}

@media only screen and (max-width: 767px) {
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
	
	#content {
		padding: 0 0 1rem;
	}
	#action {
		width: auto;
		padding: 1rem .5rem 0 .5rem;
		background: linear-gradient(to bottom, #F0D8D5 0%, #F0D8D5 90%, #Ffff 90%, #fff 100%);
	}
	.frame .qa-head__q .group,
	.frame .qa-head__a .group {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.frame .qa-head__q, .frame .qa-head__a {
		display: block;
	}
	.frame .qa-head__q .q, .frame .qa-head__a .a {
		width: 30%;
	}
		.frame .qa-head__q .q img, .frame .qa-head__a .a img {
			max-width: 5.5rem;
		}
	.frame .qa-head__q .illust, .frame .qa-head__a .chara {
		width: 40%;
	}
		.frame .qa-head__q .illust img {
			max-width: 6rem;
		}
		.frame .qa-head__a .chara img {
			max-width: 10rem;
		}
	.frame .qa-head__q .txt {
		width: 100%;
		font-size: 1.1rem;
		line-height: 2rem;
		padding: 1rem 0;
	}
	.frame .qa-head__a .txt {
		width: 100%;
		font-size: 1rem;
		line-height: 1.8rem;
	}
	.frame .qa-head__a a {
		justify-content: center;
		font-size: 1.2rem;
		margin-top: 0.6rem;
		margin-bottom: 0.6rem;
	}
	.frame .point {
		width: 100%;
		margin: 1rem auto 0 auto;
		text-align: center;
	}
		.frame .point-title {
			font-size: 1.3rem;
			margin: 0px 0px 0.7rem;
		}
	.frame .qa {
		margin-top: 0;
		padding: 1rem 1rem;
	}
	.frame .qa .barcode-wrap {
		display: none;
	}
	.frame .qa .p-cta__content {
		margin: 0 auto 1rem auto;
		padding: 1rem 0;
		width: auto;
		display: block;
	}
	.frame .qa .p-ctaarea__text {
		font-size: 1.6rem;
		letter-spacing: 0.2rem;
		padding: 0;
	}
	.frame .voice-title {
		padding: 0 0.3rem 0.3rem 0.3rem;
		margin: 1.4rem auto 1.2rem;
		font-size: 1.3rem;
		line-height: 1.8rem;
	}
	.frame .voice-title img {
		width: 80%;
	}
	.frame p.read {
		font-size: 1.1rem;
		line-height: 1.8rem;
		margin: 0 0 0.5rem;
	}
	.frame .caption {
		margin: 0.5rem auto;
	}
		.frame .caption p {
			font-size: 0.8rem;
			line-height: 1.25rem;
			text-align: left;
		}
	.frame p.fs01 {
		font-size: 1.2rem;
		line-height: 2rem;
		margin: 0 0 0.5rem;
	}
	.frame p.fs02 {
		font-size: 1.3rem;
		margin: 0.1rem 0 0 0;
	}
	.frame p.fs03 {
		font-size: 1.2rem;
		line-height: 1.7rem;
		margin: 1.2rem 0 0.5rem;
	}
	.frame p.fs04 {
		font-size: 1.3rem;
		margin: 0.2rem 0 0.2rem 0;
	}
	.frame p .fs05 {
		font-size: 2.6rem;
	}
	.frame p .fs06 {
		font-size: 2rem;
	}
	.frame .attention {
		font-size: 1.1rem;
		line-height: 1.7rem;
		padding: 0.5rem 0;
		margin: 1.0rem auto;
		width: auto;
	}
	.frame .keypoints {
		margin: 1rem 0 0 0;
	}
		.frame .keypoints ul {
			display: block;
		}
		.frame .keypoints ul li {
			width: 100%;
			margin: 0 0 0.7rem 0;
		}
		.frame .keypoints .ttl {
			font-size: 1.7rem;
			line-height: 2.1rem;
		}
		.frame .keypoints .txt {
			font-size: 1.1rem;
			line-height: 1.8rem;
			margin: 0.3rem 0 1rem 0;
		}
	
	.frame .point-title2 {
		font-size: 1.3rem;
		margin: 0;
		letter-spacing: 0;
		line-height: 2.5rem;
	}
	.frame .point .goods01,
	.frame .point .goods02 {
		margin: 0 0 1rem 0;
	}
		.frame .point .goods01 a,
		.frame .point .goods02 a {
			display: flex;
			flex-direction: column-reverse;
		}
		.frame .point .goods01 ul {
			width: auto;
			display: block;
			padding: 1rem;
		}
		.frame .point .goods02 ul {
			display: block;
			padding: 1rem;
		}
		.frame .point .goods01 p.illust,
		.frame .point .goods02 p.illust {
			max-width: initial;
			width: 90%;
			margin: 0 auto;
			font-size: 0;
			position: relative;
		}
		.frame .point .goods01 ul li.goodsimg,
		.frame .point .goods02 ul li.goodsimg {
			max-width: initial;
		}
		.frame .point .goods01 ul li p.price img,
		.frame .point .goods02 ul li p.price img {
			width: 100%;
		}
		.frame .point .goods01 ul li p.name,
		.frame .point .goods02 ul li p.name {
			font-size: 1.1rem;
			line-height: 1.6rem;
			margin-bottom: 0.6rem;
		}
		.frame .point .introduction {
			display: block;
			margin: 0 0 2rem 0;
		}
		.frame .point .introduction p {
			width: 100%;
		}
		.frame .point .introduction p.text {
			font-size: 1.2rem;
			line-height: 2rem;
		}
	
	.frame .image {
		margin: 1rem auto;
	}
	.frame .image.pattern01 {
		margin: 0.8rem auto 0.8rem auto;
	}
	.frame .image.pattern01 p {
		font-size: 1.2rem;
		padding: 0.4rem 0.8rem;
		letter-spacing: 0;
	}
	.frame .cta {
		width: 100%;
		margin: 1rem auto 0;
	}
	.frame .cta.last {
		margin: 0.5rem auto 0.8rem;
		display: inline-block;
	}
	.frame .cta a {
		padding: 1.2rem;
		border: 0.15rem solid rgb(234, 39, 100);
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.frame .cta a:hover {
		background-color: inherit;
		border: 0.15rem solid rgb(234, 39, 100);
	}
	.frame .cta img {
		width: 90%;
	}
	
	.frame .more {
		margin-top: 0.4rem;
	}
	.frame .btn-more {
		padding: 0.7rem 0 0.4rem 0;
		border-radius: 0 0 0.3rem 0.3rem;
	}
	.frame .btn-more .icon-chevron::before,
	.frame .btn-more .icon-chevron::after {
		width: 1.5rem;
		height: 0.25rem;
	}
	
	.frame .question {
		padding: 0;
	}
	
	.frame .recommend .image {
		margin: 0 auto;
	}
	
	.frame .column {
		width: auto;
		margin: 0.1rem auto 0px;
		display: block;
	}
		.frame .column .colum-l {
			width: auto;
			text-align: center;
		}
			.frame .column .colum-l img {
				width: 90%;
			}
		.frame .column .colum-r {
			width: auto;
		}
			.frame .column .colum-r .clm-head {
				font-size: 1.1rem;
				line-height: 1.5rem;
				margin-bottom: 0.5rem;
			}
			.frame .column .colum-r .clm-read {
				font-size: 0.9rem;
				line-height: 1.5rem;
			}
	.frame .bnr {
		width: 94%;
		padding: 3%;
	}
	.frame .bnr img {
		width: 100%;
		box-shadow: rgba(0, 0, 0, 0.25) 0 0 0.7rem 0;
		border-radius: 0.5rem;
	}
	.frame .bnr2 {
		width: 94%;
		margin: 3%;
	}
	.frame .bnr2 img {
		width: 100%;
	}
	
	.frame .koudokei {
		border: 0.15rem solid #C40019;
		margin: 0.5rem auto 0;
		display: block;
		text-align: center;
		padding: 1rem;
	}
		.frame .koudokei figure {
			width: 50%;
			margin: 0 auto;
		}
		.frame .koudokei div p:nth-of-type(1) {
			font-size: 1.1rem;
		}
			.frame .koudokei div p:nth-of-type(1) span {
				font-size: 1.3rem;
			}
		.frame .koudokei div p:nth-of-type(2) {
			font-size: 0.9rem;
			line-height: 1.4rem;
			padding: 0;
			margin-top: 0.6rem;
		}
	
	.frame .qa .p-cta__text {
		font-size: 1.1rem;
	}
	.frame .qa .ctaBtn {
		text-decoration: none;
		color: #fff;
	}
	/*.frame .qa .ctaBtn {
		margin: auto;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 0.4rem;
		padding: 1.1rem 1rem;
		background: #e2001d;
		line-height: 1.75;
		font-size: 1.1rem;
		color: #fff !important;
		width: 90%;
		text-decoration: none;
	}
	.frame .qa .ctaBtn span {
		font-weight: bold;
	}*/
	.frame .qa .ctaBtn__ico {
		margin-right: 12px;
	}
	.frame .qa .p-cta__wrap {
		margin-top: 0.8rem;
		margin-bottom: 0.5rem;
	}
	
	.balloon01 {
		margin: 0 auto 2rem 1rem;
		padding: 1rem 1.2rem;
		border: 0.2rem solid rgb(234, 39, 100);
		border-radius: 1.0rem;
		box-shadow: rgba(0, 0, 0, 0.1) 0px 0.3rem 0.2rem;
	}
		.balloon01 p {
			font-size: 1rem;
			line-height: 1.5rem;
		}
		.balloon01.balloon--left::before {
			width: 3.0rem;
			height: 2.0rem;
			bottom: -2.0rem;
			left: 2.2rem;
		}
		.balloon01.balloon--left::after {
			width: 3.0rem;
			height: 2.0rem;
			bottom: -1.5rem;
			left: 2.65rem;
		}
	.balloon02 {
		margin: 0 1rem 2rem auto;
		padding: 1rem 1.2rem;
		border: 0.2rem solid rgb(234, 39, 100);
		border-radius: 1.0rem;
		box-shadow: rgba(0, 0, 0, 0.1) 0px 0.3rem 0.2rem;
	}
		.balloon02 p {
			font-size: 1rem;
			line-height: 1.5rem;
			font-weight: bold;
		}
	.balloon02.balloon--right::before {
		width: 3rem;
		height: 2rem;
		bottom: -2rem;
		right: 2rem;
	}
	.balloon02.balloon--right::after {
		width: 3rem;
		height: 2rem;
		bottom: -1.5rem;
		right: 2.40rem;
	}
	.ttl-chains {
		font-size: 1.3rem;
		margin: 0.7rem 0 0 0;
	}
	.chains {
		display: block;
		gap: 1.2rem;
		margin: 1.2rem auto 1rem auto;
	}
	.chain {
		margin-bottom: 1rem;
	}
	.chain-inner {
		padding: 1.0rem 0.8rem 0.1rem;
	}
	.chain-head {
		margin: 0;
		padding-right: initial;
	}
	.chain-img {
		right: -1rem;
		bottom: -0.55rem;
		margin: 0;
	}
		.chain-img img {
			width: 4.8rem;
		}
	.chain-list {
		margin: 0 0 0 1em;
		padding-left: 0.25rem;
		font-size: 0.9rem;
	}
	.chain-cta {
		margin-bottom: 0.7rem;
		margin-top: 0.7rem;
	}
	.chain-cta a {
		padding: 0.6rem 0;
		font-size: 1rem;
		border-radius: 0.5rem;
	}
	.chain-ttl {
		font-size: 1rem;
	}
	.chain-btn {
		font-size: 20px;
		padding: 16px 0;
	}
	
	
	
	.bnr-float {
		bottom: 1rem;
		padding: 1.2rem 0.7rem 0 0.7rem;
        width: auto;
	}
	.bnr-float h2 {
		font-size: 1.1rem;
	}
}
