@charset "UTF-8";

/* CSS Document */
body {
	margin: 0px;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	color: #333333;
	font-weight: 500;
	font-feature-settings: "palt" 1;
	font-size: clamp(12px, 7.67px + 1.11vw, 16px);
}

.kiyaku_container {
	
	/* 角丸20px */
	box-sizing: border-box;
	margin: 0px auto;
	overflow-y: scroll;
	/* ★ 高さを超えたらスクロール可能にする */
}
.youkou_inner{
	background-color: #ffffff;
	/* 背景白 */
	border: 1px solid #cccccc;
	/* フレームの境界線（見やすくするため） */
	border-radius: 15px;
	margin: auto;
}

.youkou h2 {
	color: #fff;
	text-align: center;
}

.kiyaku_content {
	height: 300px;
	/* ★ 固定高さ */
	margin: 1em auto;
}

.kiyaku_content .no-marker {
	/* リストマーク（・、●など）を非表示にする */
	list-style: none;
	/* ※が左に寄りすぎないよう、左側の余白を調整 */
	margin-left: -20px;
}

.kiyaku_content p,
.kiyaku_content li {
	color: #333333;
	line-height: 1.6;
}

@media (min-width: 751px) {
	.pc {
		display: block;
	}

	.sp {
		display: none;
	}

	header {
		height: 70px;
	}

	header a {
		width: 80px;
		display: block;
		margin: 8px auto 5px 20px;
	}

	header a img {
		width: 100%;
	}

	#top {
		padding: 10px 0px 20px;
		background-color: #fffff0;
		background-image: linear-gradient(90deg, #eb741e1a 3px, transparent 3px), linear-gradient(#eb741e1a 3px, transparent 3px);
		background-position: 18px 18px;
		background-size: 63px 63px;
	}

	#top img {
		width: 100%;
		max-width: 800px;
		margin: auto;
	}

	.top_text {
		margin: auto;
		width: 80% !important;
		max-width: 650px !important;
		margin-bottom: 50px;
	}

	h1 {
		width: 300px;
		margin: auto;
		padding-top: 50px;
	}

	h1 img {
		width: 100%;
		margin: auto;
	}

	#prize {
		background-color: #FFFFF0;
		padding-bottom: 30px;
	}

	/* 親要素をGrid（格子状）にする */
	.prize_flex {
		display: grid;
		/* 5:5 の等幅で2列に分ける（最大幅は適宜調整してください） */
		grid-template-columns: repeat(2, 1fr);

		/* 横の隙間と縦の隙間（画像に合わせて微調整してください） */
		column-gap: 40px;
		row-gap: 20px;

		/* 全体を中央寄せにする */
		justify-content: center;
		width: 700px;
		margin: 0 auto;
	}

	/* 2番目の画像（B賞）と 4番目の画像（D賞）＝ 右側の列 だけを下方向にずらす */
	.prize_flex img:nth-child(3) {
		transform: translateY(-275px);
	}
	.prize_flex img:nth-child(2) {
		transform: translateY(30px);
	}
	.prize_flex img:nth-child(4) {
		transform: translateY(30px);
	}

	/* ⚠️注意：下にずらした分、全体の底上げをして下の文字（※A賞・D賞〜）と被るのを防ぐ */
	.prize_flex {
		margin-bottom: -170px;
		/* ずらした距離＋α の余白を下に作る */
		padding-top: 20px;
	}

	.prize_flex img{
		width: 100%;
	}

	#prize p{
		text-align: center;
		font-size: 1em;
		margin-bottom: 0px;
	}

	#jouken {
		background-color: #bef0ff;
		padding-bottom: 40px;
	}

	.jokenn_inner {
		width: 750px;
		background-color: #fff;
		border-radius: 20px;
		margin: 30px auto;
		padding: 50px 0px 10px;
		text-align: center;
		font-size: 1em;
	}

	.point_text {
		width: 65%;
		margin: auto;
	}

	.account {
		margin: 1em auto 2em;
		font-size: 1.1em;
	}

	.oubo_btn {
		width: 40%;
		margin: auto;
		text-align: center;
	}

	.oubo_btn p {
		font-size: 1.5em;
		margin: auto auto 10px auto;
	}

	.oubo_btn p span {
		content: "";
		background-image: url("../img/oubo_kazari.png");
		height: 24px;
		width: 24px;
		display: inline-block;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
		vertical-align: middle;
		margin: 0px 0.5em 5px 0.5em;
	}

	.oubo_btn a {
		display: inline-block;
		width: 100%;
		height: fit-content;
		padding: 0px;
		box-shadow: 6px 6px 0px rgba(51, 51, 51, 0.2);

	}

	.oubo_btn a:active {
		width: 100%;
		transform: translate(6px,6px);
		box-shadow: none;
	}

	.oubo_btn img {
		vertical-align: bottom;
		width: 100%;
		line-height: 0px;
		margin: 0px;
	}

	.oubo_att {
		list-style: none;
		width: 80%;
		text-align: left;
		margin: 2em auto;
		line-height: 2em;
	}

	.item {
		width: 85%;
		margin: 50px auto;
	}

	.item_title {
		width: 25%;
	}

	.item_1pt,
	.item_12pt {
		width: 90%;
		position: relative;
		margin: auto auto 50px;
	}

	.point_title {
		position: absolute;
		top: 20px;
		left: 0px;
		width: 100px;
	}

	.item_flex {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		padding-top: 90px;
		margin-bottom: -1em;
	}

	.item_flex img {
		width: 20%;
		margin: 2%;
	}

	.item_text {
		font-size: 30px;
		margin-top: 0px;
	}

	.item_text span {
		background-image: url("../img/milk_logo.png");
		width: 5em;
		height: 1.2em;
		background-size: 100%;
		display: inline-block;
		background-repeat: no-repeat;
		vertical-align: middle;
		margin-right: 0.2em;
	}

	.disney {
		text-align: left;
		font-weight: 400;
		font-size: 0.75em;
	}

	.aziwai {
		width: 100%;
		margin: 4em auto;
	}

	.aziwai_pkg {
		width: 30%;
	}

	.aziwai_point {
		width: 100%;
		margin: auto auto 0px auto;
		line-height: 0px;
	}

	.aziwai_flex{
		display: flex;
		vertical-align: top;
		justify-content: space-around;
	}

	.aziwai_flex img {
		width: 48%;
		height: auto;
	}

	.aziwai_point p {
		color: #0c3289;
		font-size: 1.33em;
		margin-top: 1.5em;
	}

	.aziwai_point a{
		display: block;
		width: 60%;
		margin: auto;
	}
	.aziwai_point a img{
		width: 100%;
	}

	.milk_case {
		width: 83%;
		margin: 60px auto -30px;
	}

	.item_12pt ul {
		list-style: none;
		text-align: left;
	}

	.item_12pt li {
		text-indent: -1em;
		margin-left: -1em;
		margin-bottom: 0.7em;
		padding-left: 1em;
	}

	.ECshop {
		width: 70%;
		margin: 20px auto 60px;
	}

	.ECtitle {
		width: 60%;
		margin-bottom: 0.5em;
	}

	.EClink {
		display: flex;
		justify-content: space-around;
	}

	.EClink a {
		width: 40%;
	}

	.EClink img {
		width: 100%;
	}

	.oishisa {
		width: 85%;
		margin: auto;
		padding-bottom: 30px;
	}

	.oishisa img {
		width: 80%;
		margin-bottom: -5em;
	}

	.oishisa ul {
		width: 52%;
		text-align: left;
		list-style: none;
		margin: auto 4em 0px auto;
		font-size: 0.75em;
	}

	.oishisa li {
		text-indent: -1em;
		font-weight: 400;
	}

	#oubo {
		background-color: #f0ffdc;
		padding-bottom: 30px;
	}

	.oubo_inner {
		background-color: #fff;
		border-radius: 15px;
		width: 750px;
		margin: 20px auto;
		padding-bottom: 60px;
	}

	.step {
		width: 65%;
		margin: auto;
		padding-top: 40px;
	}

	.step_flex {
		display: flex;
		font-size: 1.25em;
		align-items: center;
	}

	.step_flex p{
		font-weight: 600;
	}

	.step_flex img {
		width: 45px;
		margin-right: 0.5em;
	}

	.step_flex:nth-of-type(3) p {
		margin-top: 2em;
		line-height: 1.2em;
	}

	.step_flex:nth-of-type(3) {
		margin-top: -0.5em;
	}

	.step_flex span {
		font-size: 15px;
		font-weight: 400;
	}

	.oubo_inner ul {
		list-style: none;
		width: 65%;
		margin: 1em auto 2em;
		padding: 0px 0px 0px 1em;
		font-weight: 400;
		text-indent: -1em;
		font-size: 0.75em;
	}

	.oubo_inner li {
		margin-bottom: 0.5em;
	}

	.receipt{
		width: 85%;
		margin: 4em auto;
		text-align: center;
		font-size: 1em;
	}
	.receipt img{
		width: 90%;
	}
	.receipt .title{
		width: 70%;
		margin: auto auto 1.5em;
	}
	.receipt_inner{
		display: flex;
		margin-bottom: 0em;
	}
	.receipt_inner img{
		margin-bottom: -0.8em;
	}
	.receipt_inner p:nth-of-type(1){
		margin-bottom: 2em;
	}
	.receipt_NG_title{
		font-size: 1em;
		text-decoration: underline 2px #e61e00;
		font-weight: 600;
	}
	.NG_flex{
		width: 80%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 6%;
		margin: auto auto -1.5em auto;
		align-items: center;
	}
	.NG_flex img{
		display: inline-block;
		width: 25%;
	}
	.NG_flex img:nth-of-type(5){
		width: 36%;
	}

	.youkou {
		background-color: #005fb4;
		width: 750px;
		margin: 50px auto;
		padding-top: 3px;
		border-radius: 15px;
	}

	.youkou_inner {
		width: 600px;
		/* 幅: 600px */
	}

	.kiyaku_content {
		width: 95%;
		padding-bottom: 2em;
	}

	.kiyaku_content h3 {
		color: #333333;
		font-size: 1em;
		/* ベースのフォントサイズに依存 */
		margin-top: 25px;
		margin-bottom: 10px;
	}

	.kiyaku_content p,
	.kiyaku_content li {
		font-size: 16px;
		/* フォントサイズ: 16px */
		margin-bottom: 10px;
	}

		/* 親番号のリストと並列に並ぶ、PayPay注記のタイトル */
	.kiyaku_paypay_title {
		display: block;
		font-weight: bold;
		margin-top: 1.5em;
		margin-bottom: 0.5em;
	}

	/* PayPay注記のリスト用（上のリストとの余白をゼロにする調整） */
	.kiyaku_paypay_list {
		margin-top: 0;
	}

	/* リストのマーカーを消す用 */
	.kiyaku_content .no-marker {
		list-style-type: none;
		margin-left: -1.2em;
		/* マーカーが消えた分のインデント微調整 */
	}

	.kiyaku_content a{
		text-decoration: none;
		color: #005fb4;
	}

	.info {
		width: 460px;
		color: #fff;
		margin: 0px auto;
		padding-bottom: 30px;
	}

	.info h2 {
		border-bottom: solid 1px #fff;
	}

	.info p {
		text-align: center;
		font-size: 20px;
	}

	.info p span {
		font-size: 16px;
	}

	.info ul {
		list-style: none;
		padding: 0px;
		text-indent: -1em;
		padding-left: 1em;
	}

	footer {
		height: 50px;
		padding-top: 10px;
		text-align: right;
	}

	footer img {
		width: 200px;
		margin: auto 50px auto auto;
	}
}