/* ============================================================   1. 全体設定・干渉ガード   ============================================================ */#mizuireCP26-main {	margin: 0;	padding: 0;	font-family: "Noto Sans JP", "Helvetica Neue", Arial, sans-serif;	color: #3d3a39 !important;	text-align: center;	background-repeat: repeat-y;	background-position: center top;}.mizuireCP26-img, .mizuireCP26-maintitle img {	width: 100%;	display: block;	margin: 0 auto;}/* ============================================================   2. レイアウトの要：マイナスマージン設定   ============================================================ *//* ギフト詳細テキスト：画像の上に食い込ませる */.mizuireCP26-about {	text-align: center;	margin-top: -2.5rem !important; /* 上の画像に重ねる */	margin-bottom: 4.0rem !important; /* 下との間隔を確保 */	position: relative;	z-index: 10;	font-size: clamp(14px, 0.8vw + 11px, 18px);}/* アンケートボタン：画像同士の隙間を消して上に寄せる */.mizuireCP26-link {	display: block;	width: 90%;	max-width: 750px;	margin: -1.5rem auto 1.5rem !important; /* 上に食い込ませ、下を広げる */	transition: opacity 0.3s ease;}/* テキストリンク（指定色：#62b3d8） */.mizuireCP26-link-text {	color: #3d3a39 !important;	text-decoration: underline !important;	cursor: pointer;	background: none;	border: none;	padding: 0;	font: inherit;	transition: color 0.3s ease;}.mizuireCP26-link-text:hover {	color: #62b3d8 !important;}.mizuireCP26-link img{	width: 100%;}/* ============================================================   3. 規約・infoエリア（フォントサイズ 16px〜18px）   ============================================================ */.mizuireCP26-campaign-terms-container {	background: #ffffff !important;	border-radius: 23px;	margin: 35px auto 25px !important;	overflow: hidden;	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);}.mizuireCP26-terms-scroll-box {	height: 380px;	overflow-y: scroll;	padding: 30px;	text-align: left;	-webkit-overflow-scrolling: touch;	font-size: 16px !important;}.mizuireCP26-terms-title{	text-align: center;	font-weight: 500;}.mizuireCP26-terms-section{	margin-bottom: 2rem;}.mizuireCP26-section-title{	line-height: 1.5rem;}/* 規約リストの中黒設定 */.mizuireCP26-terms-list {	list-style: none !important;	padding-left: 1rem;}.mizuireCP26-terms-list li {	position: relative;	padding-left: 1.2em;	margin-bottom: 8px !important;}.mizuireCP26-terms-list li::before {	content: "・";	position: absolute;	left: 0;}.mizuireCP26-terms-list-sub{	list-style: none;}.mizuireCP26-terms-preamble{		margin-bottom: 1.5rem;	}/* 下部お問い合わせ */	.mizuireCP26-info-text a{		text-decoration-line: none!important;	}/* ============================================================   4. モーダル   ============================================================ */.mizuireCP26-modal-overlay {	display: none;	position: fixed;	top: 0;	left: 0;	width: 100%;	height: 100%;	background: rgba(0, 0, 0, 0.75);	z-index: 10000;	align-items: center;	justify-content: center;}.mizuireCP26-modal-overlay.mizuireCP26-is-open {	display: flex;}.mizuireCP26-modal-content {	background: #fff;	width: 90%;	max-width: 650px;	padding: 45px 30px 35px;	border-radius: 15px;	position: relative;	font-size: 15px;}#mizuireCP26-close-x {	position: absolute;	top: 15px;	right: 20px;	font-size: 35px;	cursor: pointer;	line-height: 1;}/* モーダル内のリスト設定（※印で揃える） */.mizuireCP26-modal-note-area .mizuireCP26-terms-list {    list-style: none !important;    margin: 0 !important;    padding: 0 !important;    /* 14px-18pxの可変サイズ */    font-size: clamp(14px, 0.9vw + 11px, 18px) !important;    line-height: 1.7 !important;}.mizuireCP26-modal-note-area .mizuireCP26-terms-list li {    position: relative;    padding-left: 1.2em !important; /* 文頭を揃えるための余白 */    margin-bottom: 10px !important;    text-align: left;}.mizuireCP26-modal-note-area .mizuireCP26-terms-list li::before {    content: "※";    position: absolute;    left: 0;}/* ============================================================   5. レスポンシブ切り替え   ============================================================ */@media screen and (max-width: 750px) {	.mizuireCP26-pc {		display: none !important;	}	.mizuireCP26-sp {		display: block !important;	}	#mizuireCP26-main {		background-image: url("../images/mizuireCP26_bg-sp.png");	}	.mizuireCP26-wrapper {	width: 90%;	max-width: 500px;	margin: 0 auto !important;	padding: 1rem 0px 2rem;}	/* スマホ用の重ね合わせ調整 */	.mizuireCP26-about {		margin-top: -4rem !important;		margin-bottom: 6.0rem !important;		font-size: clamp(14px, 0.8vw + 11px, 18px);	}	.mizuireCP26-terms-scroll-box{		font-size: 14px!important;	}	.mizuireCP26-terms-section{	margin-bottom: 1.5rem;}.mizuireCP26-section-title{	line-height: 1.2rem;}		.mizuireCP26-info {	background: #ffffff !important;	border-radius: 15px;	overflow: hidden;	margin-bottom: 2rem !important;		padding: 0px;		font-size: clamp(14px, 4vw, 16px);}.mizuireCP26-info-title {	background: #3d3a39 !important;	color: #ffffff !important;	padding: 0.5rem;	font-weight: bold;	margin: 0px;}.mizuireCP26-info-text {	padding: 0.5rem 0px;	text-align: left;	display: inline-block;	line-height: 1.7;}}@media screen and (min-width: 751px) {	.mizuireCP26-pc {		display: block !important;	}	.mizuireCP26-sp {		display: none !important;	}	#mizuireCP26-main {		background-image: url("../images/mizuireCP26_bg-pc.png");	}	.mizuireCP26-wrapper {	width: 90%;	max-width: 1000px;	margin: 0 auto !important;	padding: 1rem 0px 2rem;}	/* PC：18pxで見やすく */	.mizuireCP26-terms-scroll-box {		font-size: 18px !important;	}	.mizuireCP26-info {	background: #ffffff !important;	border-radius: 23px;	overflow: hidden;	margin-bottom: 60px !important;		padding: 0px;		font-size: clamp(18px, 2vw, 20px);}.mizuireCP26-info-title {	background: #3d3a39 !important;	color: #ffffff !important;	padding: 15px;	font-weight: bold;	margin: 0px;}.mizuireCP26-info-text {	padding: 1rem 0px;	text-align: left;	display: inline-block;	line-height: 1.8;}}