:root {
	--koozaCP-colorBg: #ffffff;
	--koozaCP-colorMain: #ecc917;
	--koozaCP-colorsub: #c39b4b;
	--koozaCP-colorText2: #0f0f0f;
	--koozaCP-colorLink: #8c0375;
}


#koozaCP .link {
	color: var(--koozaCP-colorLink);
	border-bottom: solid 1px var(--koozaCP-colorLink);
	text-decoration: none;
}

#koozaCP .pt {
	padding-top: 60px;
}

#koozaCP .size {
	font-size: clamp(18px, 5vw, 24px);
}

@media screen and (min-width: 768px) {

	#koozaCP .pt {
		padding-top: 90px;
	}
}


/*====================================
投稿
=====================================*/
#koozaCP .post-bg {
	background-color: #faf8f3;
}

.post-group {
    text-align: center;
    overflow: hidden;
}

.post-title-en {
	display: inline-block;
    position: relative;
    font-size: 16px;
    letter-spacing: .45em;
    color: var(--koozaCP-colorsub);
    font-family: "Manrope",sans-serif;
    font-weight: 500;
    padding: 0 20px;
    margin-bottom: 8px;
	letter-spacing: 0.1em;
}

.post-title-en::before,
.post-title-en::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 40px;
    height: 1px;
    background-color: var(--koozaCP-colorsub);
}

.post-title-en::before {
    right: 100%;
}

.post-title-en::after {
    left: 100%;
}

.post-title {
    font-size: clamp(16px, 7.4vw, 40px);
	font-weight: bold;
    color: var(--koozaCP-colorText2);
}

.post-title span {
    position: relative;
    display: inline-block;
}

.post-title span::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -24px;
    transform: translateX(-50%);
    width: 50%;
    height: 2px;
    background-color: var(--koozaCP-colorsub);
}

.post-text {
    font-size: clamp(18px,5vw,24px);
    font-weight: 700;
    color: var(--koozaCP-colorsub);
	margin: 56px 0 20px;
}

.post-text .post-comment {
    font-size: 16px;
	font-weight: 500;
    color: #333333;
}


@media (min-width: 768px) {

.post-title-en::before,
.post-title-en::after {
    width: 40px;
}


}


/*====================================
キャンペーン概要～
=====================================*/
#koozaCP .contents-subtitle {
	font-family: "Noto Sans JP", sans-serif;
	font-size: clamp(18px, 3vw, 22px);
	color: #8c1f28;
	font-weight: bold;
}

.comment-example {
	width: 100%;
	margin: 0 auto;
	padding: 24px;
	border-radius: 24px;
	background: linear-gradient(135deg,#fffefb 0%,#fff6e6 100%);
	border: 2px solid #d9a441;
	overflow: hidden;
	text-align: center;
}


.comment-example .comment-title {
	font-size: 18px;
	font-weight: 700;
	color: var(--koozaCP-colorsub);
	margin-bottom: 16px;
}


.comment-example .example-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.comment-example .example-list li {
	position: relative;
	padding: 12px 0 12px 24px;
	font-size: 16px;
	text-align: left;
	line-height: 1.7;
	color: var(--koozaCP-colorText2);
}

.comment-example .example-list li::before {
	content: "✦";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	color: #d9a441;
}

.comment-example .example-list li + li {
	border-top: dashed 1px rgba(217,164,65,.3);
}

@media screen and (min-width:768px) {
	.comment-example {
		width: 50%;
	}
}


/*====================================
応募方法
=====================================*/
.apply-flow {
    width: 100%;
    margin: 0 auto;
	padding-top: 40px;
}

.flow-card {
    display: block;
	background-color: #fff;
    border: 1px solid #ececec;
    border-radius: 24px;
    box-shadow: 0 12px 30px rgba(0,0,0,.04);
    padding: 24px 32px;
    margin-bottom: 24px;
}

.flow-card .flow-number {
	font-family: "inter", sans-serif;
    font-size: clamp(48px, 5vw, 64px);
    font-weight:700;
    color:#d8b04c;
	line-height:1;
	transform: translateY(-4px);
    opacity:.35;
	margin-bottom: 16px;
}

.flow-box .flow-text {
    font-size: 18px;
	color: var(--koozaCP-colorText2);
	font-weight: 600;
}

.flow-box .flow-note {
	font-size: 14px;
    color: #555;
    list-style-type: none;
    text-indent: -1em;
    padding-left: 1em;
}

.flow-box .flow-or {
    display: flex;
    align-items: center;
    margin: 28px 0;
}

.flow-box .flow-or::before,
.flow-box .flow-or::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e5e5e5;
}

.flow-box .flow-or span {
    font-size: 14px;
    font-weight: 700;
    color: #b88c18;
    margin: 0 18px;
    letter-spacing: .08em;
}

.flow-step02 .flow-suppl {
	font-size: 16px;
    color: var(--koozaCP-colorText2);
}

.flow-card .flow-step02 span {
	font-weight: bold;
    color: #8c1f28;
}


@media screen and (min-width:768px) {
	.apply-flow {
		width: 90%;
	}

	.flow-card {
		display: flex;
        align-items: flex-start;
        gap: 32px;
		padding: 40px;
	}
}


/*====================================
注意事項
=====================================*/
#koozaCP .cautions-box-title {
    color: var(--colorText2);
    text-align: center;
    font-size: var(--fz20);
    font-weight: bold;
    margin-bottom: 16px;
}

#koozaCP .cautions-box {
    border: solid 2px var(--colorText2);
}

#koozaCP .cautions-box .more-btn {
    background: var(--colorText2);
    color: #fff;
}

#koozaCP .cautions-box .more-btn::before {
	background: #fff;
}











