			:root{
			--brand: #fff;
			--blk: #111;
			--faq-bg: hsl(0, 0%, 98%);
			--faq-head: hsl(0, 0%, 96%);
			--faq-border: #e5e5e5;
			--brand-accent: #1aa37a;
			--accent: #8c6e61;
			--border: #e7e7e9;
			--card-bg: #fff;
			--cta-bg: #f6f3f1;
			--cta-ring: #e8ded9;
			--brand-b: #8c6e61;
			--btn-pri: #111;
			--btn-pri-t: #fff;
			--btn-line: #06c755;
			--btn-line-t: #fff;
		}
		.navbar{ background:var(--brand); }
		.navbar-item.logo{
			padding-inline:1rem;
		}
		.navbar .button.is-primary{
			background:var(--blk); border-color:var(--blk);
		}
		.hero-body{ padding-block:3rem; }
		.lead{ font-size:clamp(1.05rem, 1.2vw + .6rem, 1.35rem); line-height:1.7; }
		.mock-box{
			background:#000; color:#fff; display:grid; place-items:center;
			aspect-ratio: 16/10; border-radius:.4rem;
		}
		.columns.is-gapless-desktop{ --columnGap:0rem; }
		.hero.is-parallax{
			position: relative;
			background-image:url("../imgs/head.png");
			background-size:cover;
			background-position:center;
			background-repeat:no-repeat;
			background-color:#fff;
		}
		@media (min-width:1024px){
			.hero.is-parallax{ background-attachment:fixed; }
		}
		.hero.is-parallax::after{
			content:"";
			position:absolute;
			left:0; right:0;
			bottom:-2px;
			height:140px;
			background:linear-gradient(	to bottom,　rgba(255,255,255,0) 0%,　rgba(255,255,255,.9) 70%,　#fff 100%);
			pointer-events:none;
		}
		.content-wrap{
			max-width: 55rem;
			backdrop-filter: none;
		}
		.white-shadow { text-shadow: 3px 3px 4px white, -3px 3px 4px white, 3px -3px 4px white, -3px -3px 4px white;}
		.lead{ font-size:clamp(1.05rem, 1.2vw + .6rem, 1.35rem); line-height:1.7; }
		.image img{ display:block; width:100%; height:auto; }
		h2.title{
			font-size: clamp(2rem, 3vw + 1rem, 3rem);
			line-height:1.15;
			text-align:center
		}
		h3.title{
			font-size: clamp(2rem, 3vw + 1rem, 3rem);
			line-height:1.5;
			text-align:center
		}
		.text-color-line {
			color:#00c853
		}
		.mintyo {
			font-family: "Shippori Mincho", serif!important;
		}
		h3.underline {
			position: relative;
			padding: 1rem .5rem;
		}
		h3.underline:after {
			position: absolute;
			bottom: 0;
			left: 0;
			width: 100%;
			height: 5px;
			content: '';
			background-image: -webkit-gradient(linear, left top, right top, from(#fa709a), to(#fee140));
			background-image: -webkit-linear-gradient(left, #fa709a 0%, #fee140 100%);
			background-image: linear-gradient(to right, #fa709a 0%, #fee140 100%);
		}
		.faq-item{
			border:1px solid var(--faq-border);
			border-radius:.6rem;
			background:#fff;
			overflow:hidden;
			margin:0;
			box-shadow: 0 0 0 rgba(0,0,0,0);
			transition: box-shadow .2s ease;
		}
		.faq-item + .faq-item{ margin-top:1.25rem; }
		.faq-item[open]{ box-shadow: 0 6px 24px rgba(0,0,0,.06); }
		.faq-summary{
			list-style:none;
			display:flex; align-items:center; gap:.8rem;
			cursor:pointer;
			padding:1.25rem 1.5rem;
			background:var(--faq-bg);
			position:relative;
			font-weight:700;
		}
		.faq-item[open] > .faq-summary{ background:var(--faq-head); }
		.faq-summary .q{
			color:var(--brand-accent);
			font-weight:800;
			margin-right:.2rem;
		}
		.faq-summary::after{
			content:"+";
			position:absolute;
			right:1rem;
			top:50%;
			transform:translateY(-50%);
			font-size:1.5rem;
			line-height:1;
			opacity:.85;
			transition: opacity .2s ease;
		}
		.faq-item[open] > .faq-summary::after{
			content:"–";
		}
		.faq-panel{
			padding:1.25rem 1.5rem;
			border-top:1px solid var(--faq-border);
			animation: faq-reveal .25s ease;
		}
		@keyframes faq-reveal{
			from{ opacity:0; translate:0 -4px; }
			to  { opacity:1; translate:0 0; }
		}
		.faq-summary:focus{
			outline:2px solid #4c9ffe;
			outline-offset:2px;
		}
		.section_color_c {
			background:hsl(0, 0%, 97%)
		}
		.section_color_d {
			background:#f7f3e9
		}
		h4.pointed {
			font-size: clamp(2rem, 3vw + 1rem, 3rem);
			line-height:1.5;
			position: relative;
			padding: 1.5rem;
			text-align: center;
			border: 2px solid #000;
			background: #8c6e61;
			color:#fff
		}
		.pointed:before,.pointed:after {
			position: absolute;
			content: '';
		}
		.pointed:before {
			top: -40px;
			left: calc(50% - 40px);
			width: 80px;
			height: 80px;
			border: 2px solid #000;
			border-radius: 50%;
			background: #8c6e61;
		}
		.pointed:after {
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: #8c6e61;
		}
		.pointed i {
			font-size: 30px;
			font-size: 3rem;
			line-height: 60px;
			position: absolute;
			z-index: 1;
			top: -40px;
			left: calc(50% - 40px);
			width: 80px;
			height: 60px;
			text-align: center;
		}
		.pointed span {
			position: relative;
			z-index: 1;
		}
		.points-grid{
			display:grid;
			grid-template-columns: repeat(3, minmax(0,1fr));
			gap: 2rem;
		}
		@media (max-width: 1023px){
			.points-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
		}
		@media (max-width: 699px){
			.points-grid{ grid-template-columns: 1fr; }
		}
		.point-card{
			position:relative;
			background: var(--card-bg);
			padding: 2rem 1.25rem 1.3rem;
			transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
		}
		.point-card:hover{
			transform: translateY(-4px);
			box-shadow: 0 14px 40px rgba(0,0,0,.08);
			border-color: color-mix(in oklab, var(--accent) 25%, var(--border));
		}
		.point-card::before{
			content:"";
			position:absolute; left:0; right:0; top:0; height:4px;
			background: linear-gradient(90deg, var(--accent), color-mix(in oklab, var(--accent) 40%, #fff));
		}
		.point-head{
			display:flex; align-items:center; gap:.75rem;
			margin-bottom:.5rem;
		}
		.point-title{
			font-weight:600;
			font-size: clamp(1rem, 0.6vw + .9rem, 1.25rem);
			line-height:1.25;
			margin:0;
		}
		.badge{
			position: relative;
			display: grid;
			place-items: center;
			width: 2.2rem;
			aspect-ratio: 1 / 1; 
			border-radius: 50%;
			box-sizing: border-box;
			flex: 0 0 auto;
			font-weight: 800;
			color: #fff;
			background: radial-gradient(120% 120% at 30% 20%,
              color-mix(in oklab, var(--accent) 90%, #fff) 0,
              var(--accent) 60%);
			box-shadow: inset 0 0 0 2px rgba(255,255,255,.35),
              0 4px 10px rgba(0,0,0,.08);
		}
		.badge::before{
			content: "POINT";
			position: absolute;
			bottom: 100%;
			left: 50%;
			transform: translateX(-50%) translateY(-0.25rem);
			font-size: .6rem;
			letter-spacing: .08em;
			font-weight: 700;
			white-space: nowrap;
			color: color-mix(in oklab, var(--accent) 75%, #000);
		}
		.point-body{
			color:#4b4f57;
			font-family: "Shippori Mincho", serif;
			line-height:1.8;
			margin: 2rem 0 0;
			font-size: clamp(.92rem, 0.35vw + .86rem, 1rem);
		}
		.slider-wrap{
			--visible: 5;
			--slide-h: 300px;
			position: relative;
			width: 100%;
			height: var(--slide-h);
			overflow: hidden;
			background: #fff;
			user-select: none;
			-webkit-user-drag: none;
		}
		.slider-track{
			display: flex;
			will-change: transform;
			transition: transform .55s ease;
			height: 100%;
		}
		.slide{
			flex: 0 0 calc(100% / var(--visible));
			height: 100%;
		}
		.slide img{
			display: block;
			width: 100%;
			height: 100%;
			object-fit: contain;
			background: #fff;
			user-select: none;
			-webkit-user-drag: none;
		}
		.slider-arrow{
			position: absolute;
			z-index: 5;
			top: 50%;
			transform: translateY(-50%);
			width: 44px;
			height: 44px;
			border: none;
			border-radius: 50%;
			background: rgba(0,0,0,.45);
			color: #fff;
			font-size: 22px;
			line-height: 44px;
			text-align: center;
			cursor: pointer;
			opacity: 0;
			pointer-events: none;
			transition: opacity .3s ease, transform .2s ease;
		}
		.slider-wrap:hover .slider-arrow{
			opacity: .9;
			pointer-events: auto;
		}
		.slider-arrow:hover{ opacity: 1; transform: translateY(-50%) scale(1.05); }
		.slider-arrow:active{ transform: translateY(-50%) scale(.96); }
		.slider-arrow.prev{ left: 12px; }
		.slider-arrow.next{ right: 12px; }
		@media (max-width: 1023px){
			.slider-wrap{
				--visible: 4;
				--slide-h: 280px;
				height: var(--slide-h);
			}
		}
		@media (max-width: 599px){
			.slider-wrap{
				--visible: 2;
				--slide-h: 240px;
				height: var(--slide-h);
			}
			.slider-arrow{
				width: 38px; height: 38px; font-size: 18px; line-height: 38px;
			}
		}
		.slider-wrap, .slider-track, .slide img{
			user-select: none; -webkit-user-drag: none;
		}
		.check-list{
			list-style: none;
			padding: 0;
			margin: 0;
		}
		.check-list li{
			display: flex;
			align-items: center;
			gap: 0.6em;
		}
		.check-list li > i{
			color: #8c6e61;
			font-size: 1em;
			flex-shrink: 0;
		}
		.check-list li > i.fa-duotone{
			--fa-primary-color:  #8c6e61;
			--fa-secondary-color:#8c6e61;
			--fa-secondary-opacity: 1;
		}
		.cta-band{
			background: var(--cta-bg);
			padding: clamp(28px, 4vw, 56px) 0;
			position: relative;
			overflow: hidden;
		}
		.cta-panel{
			background: #fff;
			border: 1px solid var(--cta-ring);
			padding: clamp(20px, 3.2vw, 28px);
			box-shadow: 0 18px 40px rgba(0,0,0,.06);
			margin:6em 0
		}
		.cta-head{
			display:flex; align-items:center; gap: .8rem;
			flex-wrap: wrap;
			margin-bottom: .5rem;
		}
		.cta-title{
			margin:0;
			font-size: clamp(1.3rem, 1.4vw + 1rem, 1.9rem);
			font-weight: 800;
			color: var(--brand-b);
			line-height:1.2;
		}
		.cta-badge{
			display:inline-block;
			background: color-mix(in oklab, var(--brand-b) 12%, #fff);
			color: var(--brand-b);
			border: 1px solid color-mix(in oklab, var(--brand-b) 30%, #fff);
			padding: .35rem .6rem;
			border-radius: 999px;
			font-weight: 700;
			font-size: .85rem;
		}
		.cta-lead{
			margin: .4rem 0 0;
			font-size: clamp(1rem, .35vw + .95rem, 1.1rem);
			line-height: 1.8;
		}
		.cta-gift{
			margin: .5rem 0 1.1rem;
			background: #fff7e6;
			border: 1px dashed #f1c27d;
			color: #7a5629;
			padding: .75rem .9rem;
			border-radius: 10px;
			font-size: clamp(.96rem, .35vw + .9rem, 1.05rem);
		}
//ボタンが二つの場合		.cta-actions{
//			display: grid;
//			grid-template-columns: repeat(2, minmax(0,1fr));
//			gap: .8rem;
//			margin-top: .5rem;
//		}
//		@media (max-width: 680px){
//			.cta-actions{ grid-template-columns: 1fr; }
//		}
		@media (max-width: 768px){
			/* ボタン一つの場合 */
			.cta-actions {
				display: block;
			}
			.btn_orgn {
				width: 100%;
				box-sizing: border-box;
			}
		}
		.btn_orgn {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 1.2rem;
			padding: 1.2rem 2rem;
			border-radius: 12px;
			font-weight: bold;
			color: #fff;
			text-decoration: none;
			transition: transform 0.2s ease, box-shadow 0.2s ease;
			flex-wrap: wrap;
			text-align: center;
		}
		.btn-ico {
			font-size: 4rem;
			flex-shrink: 0;
		}
		.btn-main-text {
			font-size: 1.4rem;
			line-height: 1.3;
		}
		.btn-sub-text {
			display: block;
			font-size: 1rem;
			opacity: 0.9;
			margin-top: 0.3rem;
		}
		.btn:hover {
			transform: translateY(-2px);
			box-shadow: 0 8px 16px rgba(0,0,0,0.15);
		}
		.btn-black { background: #111; }
		.btn-green { background: #00c853; }
		@media (max-width: 768px){
			.btn_orgn{
				flex-direction: column;
				align-items: center;
				justify-content: center;
				gap: .6rem;
				padding: 1rem 1.2rem;
				height: auto;
			}
			.btn-ico{
				font-size: 2.4rem;
				line-height: 1;
				margin: 0;
			}
			.btn-label{ 
				text-align: center; 
				line-height: 1.2;
			}
			.btn-label > *{ margin: 0; }
			.btn-main-text{ font-size: 1.2rem;}
			.btn-sub-text { font-size: .9rem;  opacity: .9; }
		}
		p.indent {
			text-indent: 1em;
		}