@charset "utf-8";

/* ----------------------------------------
  商品引換券をもらった方へ / SP専用
---------------------------------------- */

#hikikae.hikikae-page {
	width: auto;
	max-width: 100%;
	margin: 0 auto;
	padding: 12px 10px 28px;
	color: #333;
	line-height: 1.7;
	font-size: 14px;
	box-sizing: border-box;
}

#hikikae *,
#hikikae *:before,
#hikikae *:after {
	box-sizing: border-box;
}

#hikikae img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/* ----------------------------------------
  パンくず
---------------------------------------- */

#hikikae .breadcrumb {
	margin: 0 0 12px;
	font-size: 11px;
	line-height: 1.5;
}

#hikikae .breadcrumb ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0 4px;
	padding: 0;
	margin: 0;
	list-style: none;
}

#hikikae .breadcrumb li {
	float: none;
	margin: 0;
	color: #666;
}

#hikikae .breadcrumb a {
	color: #666;
	text-decoration: underline;
}

/* ----------------------------------------
  共通セクション
---------------------------------------- */

#hikikae .hikikae-hero,
#hikikae .hikikae-section {
	background: #fff;
	border: 1px solid #e7dfcf;
	border-radius: 14px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	margin-bottom: 16px;
	padding: 18px 14px;
}

#hikikae .hikikae-hero {
	position: relative;
	overflow: hidden;
}

#hikikae .hikikae-hero:before {
	content: "";
	display: block;
	height: 5px;
	background: linear-gradient(90deg, #f3cf54 0%, #e5b92e 100%);
	margin: -18px -14px 16px;
}

#hikikae .hikikae-section__head {
	display: block;
	margin-bottom: 14px;
}

#hikikae .hikikae-section__label {
	display: inline-block;
	padding: 4px 10px;
	background: #f3cf54;
	color: #3b2f14;
	font-size: 10px;
	font-weight: bold;
	line-height: 1.2;
	border-radius: 999px;
	letter-spacing: 0.08em;
	margin-bottom: 8px;
}

#hikikae .hikikae-section__head h2 {
	margin: 0;
	font-size: 22px;
	line-height: 1.4;
	color: #2f2a22;
	font-weight: bold;
}

/* ----------------------------------------
  HERO
---------------------------------------- */

#hikikae .hikikae-hero__title {
	display: flex;
	align-items: center;
	gap: 10px;
}

#hikikae .hikikae-hero__icon {
	width: 36px;
	flex: 0 0 36px;
}

#hikikae .hikikae-hero__title h1 {
	margin: 0;
	font-size: 24px;
	line-height: 1.35;
	color: #2f2a22;
	letter-spacing: 0.01em;
}

#hikikae .hikikae-hero__lead {
	margin: 14px 0 16px;
	font-size: 14px;
	line-height: 1.8;
	color: #5c5344;
}

#hikikae .hikikae-hero__image {
	text-align: center;
	margin-bottom: 16px;
}

#hikikae .hikikae-hero__image img {
	border: 1px solid #ebe5d8;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
}

#hikikae .hikikae-hero__cta {
	display: block;
}

#hikikae .hikikae-btn,
#hikikae .hikikae-btn:link,
#hikikae .hikikae-btn:visited,
#hikikae .hikikae-btn:hover,
#hikikae .hikikae-btn:active {
	display: block;
	width: 100%;
	padding: 14px 16px;
	border-radius: 999px;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	font-size: 15px;
	line-height: 1.4;
	margin: 0 0 10px;
	border-width: 1px;
	border-style: solid;
}

#hikikae .hikikae-btn:last-child {
	margin-bottom: 0;
}

#hikikae .hikikae-btn--primary,
#hikikae .hikikae-btn--primary:link,
#hikikae .hikikae-btn--primary:visited,
#hikikae .hikikae-btn--primary:hover,
#hikikae .hikikae-btn--primary:active {
	background: #d5a928;
	color: #2b2110;
	border-color: #c89a13;
}

#hikikae .hikikae-btn--secondary,
#hikikae .hikikae-btn--secondary:link,
#hikikae .hikikae-btn--secondary:visited,
#hikikae .hikikae-btn--secondary:hover,
#hikikae .hikikae-btn--secondary:active {
	background: #3d3a34;
	color: #fff !important;
	border-color: #3d3a34;
}

/* ----------------------------------------
  FLOW
---------------------------------------- */

#hikikae .hikikae-flow {
	display: block;
	margin-top: 0;
}

#hikikae .hikikae-flow__item {
	width: 100%;
	background: #fcfaf5;
	border: 1px solid #ebe2cc;
	border-radius: 14px;
	padding: 16px 14px;
	text-align: center;
	margin-bottom: 10px;
}

#hikikae .hikikae-flow__item:last-child {
	margin-bottom: 0;
}

#hikikae .hikikae-flow__step {
	display: inline-block;
	background: #3d3a34;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	line-height: 1.2;
	padding: 5px 10px;
	border-radius: 999px;
	margin-bottom: 12px;
}

#hikikae .hikikae-flow__icon {
	font-size: 30px;
	line-height: 1;
	margin-bottom: 10px;
}

#hikikae .hikikae-flow__item h3 {
	margin: 0 0 8px;
	font-size: 18px;
	line-height: 1.5;
	color: #2f2a22;
}

#hikikae .hikikae-flow__item p {
	margin: 0;
	font-size: 13px;
	line-height: 1.75;
	color: #5d5648;
}

#hikikae .hikikae-flow__arrow {
	width: 100%;
	display: block;
	text-align: center;
	font-size: 20px;
	line-height: 1;
	color: #c7ab4d;
	font-weight: bold;
	margin: 4px 0 8px;
}

/* ----------------------------------------
  APPLY INFO
---------------------------------------- */

#hikikae .hikikae-apply {
	margin-top: 0;
}

#hikikae .hikikae-apply__box {
	background: #fcfaf5;
	border: 1px solid #ebe2cc;
	border-radius: 12px;
	padding: 15px 14px;
	margin-bottom: 10px;
}

#hikikae .hikikae-apply__box:last-child {
	margin-bottom: 0;
}

#hikikae .hikikae-apply__box h3 {
	margin: 0 0 10px;
	font-size: 17px;
	line-height: 1.5;
	color: #2f2a22;
}

#hikikae .hikikae-apply__box p {
	margin: 0;
	font-size: 13px;
	line-height: 1.8;
	color: #5d5648;
}

#hikikae .hikikae-apply__box p+p {
	margin-top: 10px;
}

#hikikae .hikikae-apply__list {
	margin: 0;
	padding-left: 18px;
}

#hikikae .hikikae-apply__list li {
	margin-bottom: 5px;
	font-size: 13px;
	line-height: 1.7;
}

#hikikae .hikikae-apply__note {
	margin-top: 10px;
	padding: 10px 12px;
	background: #fff7dc;
	border-left: 4px solid #e5b92e;
	border-radius: 6px;
	color: #5a4b25;
}

/* ----------------------------------------
  HOW TO APPLY
---------------------------------------- */

#hikikae .hikikae-method {
	display: block;
	margin-top: 0;
}

#hikikae .hikikae-method__box {
	width: 100%;
	background: #fcfaf5;
	border: 1px solid #ebe2cc;
	border-radius: 14px;
	padding: 16px 14px;
	margin-bottom: 10px;
}

#hikikae .hikikae-method__box:last-child {
	margin-bottom: 0;
}

#hikikae .hikikae-method__box h3 {
	margin: 0 0 8px;
	font-size: 18px;
	line-height: 1.5;
	color: #2f2a22;
}

#hikikae .hikikae-method__box p {
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 1.8;
	color: #5d5648;
}

#hikikae .hikikae-textlink,
#hikikae .hikikae-textlink:link,
#hikikae .hikikae-textlink:visited {
	display: inline-block;
	color: #8a6a00;
	font-weight: bold;
	text-decoration: underline;
	line-height: 1.7;
}

/* ----------------------------------------
  FAQ
---------------------------------------- */

#hikikae .hikikae-faq {
	margin-top: 0;
}

#hikikae .hikikae-faq__item {
	border: 1px solid #e8e0d1;
	border-radius: 10px;
	background: #fffdfa;
	margin-bottom: 10px;
	overflow: hidden;
}

#hikikae .hikikae-faq__item:last-child {
	margin-bottom: 0;
}

#hikikae .hikikae-faq__item summary {
	list-style: none;
	cursor: pointer;
	padding: 14px 40px 14px 14px;
	font-weight: bold;
	font-size: 14px;
	line-height: 1.6;
	color: #2f2a22;
	position: relative;
}

#hikikae .hikikae-faq__item summary::-webkit-details-marker {
	display: none;
}

#hikikae .hikikae-faq__item summary:after {
	content: "＋";
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: #b48a11;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
}

#hikikae .hikikae-faq__item[open] summary:after {
	content: "－";
}

#hikikae .hikikae-faq__body {
	padding: 0 14px 14px;
	background: #fff;
	color: #5d5648;
}

#hikikae .hikikae-faq__body p {
	margin: 0;
	font-size: 13px;
	line-height: 1.85;
}

/* ----------------------------------------
  よくある記入ミス
---------------------------------------- */

#hikikae .hikikae-apply__attention {
	margin-top: 14px;
	padding: 14px;
	background: #fff3cd;
	border: 1px solid #f1d28a;
	border-radius: 10px;
}

#hikikae .hikikae-apply__attention-title {
	margin: 0 0 8px;
	font-size: 15px;
	line-height: 1.5;
	font-weight: bold;
	color: #7a5d00;
}

#hikikae .hikikae-apply__attention-list {
	margin: 0 0 10px 18px;
	padding: 0;
}

#hikikae .hikikae-apply__attention-list li {
	margin-bottom: 4px;
	font-size: 13px;
	line-height: 1.7;
}

#hikikae .hikikae-apply__attention-note {
	margin: 0;
	font-size: 12px;
	line-height: 1.7;
	color: #6b5a2b;
}

/* ----------------------------------------
  少し広いスマホ
---------------------------------------- */

@media screen and (min-width: 480px) {
	#hikikae.hikikae-page {
		padding: 14px 12px 32px;
	}

	#hikikae .hikikae-hero,
	#hikikae .hikikae-section {
		padding: 20px 16px;
	}

	#hikikae .hikikae-hero:before {
		margin: -20px -16px 18px;
	}

	#hikikae .hikikae-hero__title h1 {
		font-size: 26px;
	}

	#hikikae .hikikae-btn,
	#hikikae .hikikae-btn:link,
	#hikikae .hikikae-btn:visited,
	#hikikae .hikikae-btn:hover,
	#hikikae .hikikae-btn:active {
		font-size: 16px;
	}
}