@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap");

/* ============================================================
 * global.css — エスプリーク 全体共通スタイル
 * ============================================================
 *
 *  【設計ルール】
 *  - 全セレクタは `.esp-wrap` 配下にスコープ（CMS既存CSSとの干渉回避）
 *  - 詳細度上限 0,3,0
 *  - 値は旧版から忠実に移植（変数化禁止、独自トークン禁止）
 *  - 旧の em/rem は px に換算（旧 html 62.5% で 1rem=10px、body 1.4em=14px）
 *  - 画像は PNG のみ（SVG禁止、パス先頭は /img/esprique/）
 *  - js-* / is_* / viewport_* クラスは旧名維持
 *
 *  【ファイル内構造】
 *  1. リセット・正規化
 *  2. ベースタイポグラフィ
 *  3. JSフック用基本状態
 *  4. レイアウトプリミティブ（l-*）
 *  5. ユーティリティ（u-*）
 *  6. グローバルフッター（c-footer）
 *  7. コンポーネント（c-*）
 *  8. アニメーション（@keyframes）
 *
 *  詳細: transfer/03_css_migration_plan.md, transfer/02_class_mapping.md
 * ============================================================ */


.product-detail .p-product-detail__btn_onlineshop {
	margin-top: 20px;
	font-size: 14px;
}
.product-detail .p-product-detail__btn_onlineshop a {
	margin-top: 0;
	border-color: #3c4043 !important;
	color: #3c4043 !important;
}
.product-detail .p-product-detail__btn_onlineshop a:before {
	display: none;
}
.product-detail .p-product-detail__btn_type {
	margin-top: 40px;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.03em;
}
.product-detail .p-product-detail__btn_type p {
	font-size: inherit;
	line-height: inherit;
}
.product-detail .p-product-detail__btn_type a {
	text-decoration: underline;
}
.product-detail .p-product-detail__btn_type a:hover {
	text-decoration: none;
}
div + .esp-wrap,
strong + .esp-wrap,
ul + .esp-wrap {
	margin-top: 20px;
}
.c-featureLabelList {
	padding-bottom: 0;
}
.m-boderPanel {
	display: inline-block;
	padding: .1em 1em;
	border: 1px solid #ccc;
}
br + .m-boderPanel {
	margin-top: 15px;
}

.m-bold {
	font-weight: bold !important;
}

/* ============================================================
 * 1. リセット・正規化（旧 common.css 行 5-150 を .esp-wrap スコープ化）
 * ============================================================ */

.esp-wrap,
.esp-wrap div,
.esp-wrap span,
.esp-wrap applet,
.esp-wrap object,
.esp-wrap iframe,
.esp-wrap h1,
.esp-wrap h2,
.esp-wrap h3,
.esp-wrap h4,
.esp-wrap h5,
.esp-wrap h6,
.esp-wrap p,
.esp-wrap blockquote,
.esp-wrap pre,
.esp-wrap a,
.esp-wrap abbr,
.esp-wrap acronym,
.esp-wrap address,
.esp-wrap big,
.esp-wrap cite,
.esp-wrap code,
.esp-wrap del,
.esp-wrap dfn,
.esp-wrap em,
.esp-wrap img,
.esp-wrap ins,
.esp-wrap kbd,
.esp-wrap q,
.esp-wrap s,
.esp-wrap samp,
.esp-wrap small,
.esp-wrap strike,
.esp-wrap strong,
.esp-wrap sub,
.esp-wrap sup,
.esp-wrap tt,
.esp-wrap var,
.esp-wrap b,
.esp-wrap u,
.esp-wrap i,
.esp-wrap center,
.esp-wrap dl,
.esp-wrap dt,
.esp-wrap dd,
.esp-wrap ol,
.esp-wrap ul,
.esp-wrap li,
.esp-wrap fieldset,
.esp-wrap form,
.esp-wrap label,
.esp-wrap legend,
.esp-wrap table,
.esp-wrap caption,
.esp-wrap tbody,
.esp-wrap tfoot,
.esp-wrap thead,
.esp-wrap tr,
.esp-wrap th,
.esp-wrap td,
.esp-wrap article,
.esp-wrap aside,
.esp-wrap canvas,
.esp-wrap details,
.esp-wrap embed,
.esp-wrap figure,
.esp-wrap figcaption,
.esp-wrap footer,
.esp-wrap header,
.esp-wrap hgroup,
.esp-wrap menu,
.esp-wrap nav,
.esp-wrap output,
.esp-wrap ruby,
.esp-wrap section,
.esp-wrap summary,
.esp-wrap time,
.esp-wrap mark,
.esp-wrap audio,
.esp-wrap video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
.esp-wrap article,
.esp-wrap aside,
.esp-wrap details,
.esp-wrap figcaption,
.esp-wrap figure,
.esp-wrap footer,
.esp-wrap header,
.esp-wrap hgroup,
.esp-wrap menu,
.esp-wrap nav,
.esp-wrap section,
.esp-wrap main {
	display: block;
}

.esp-wrap ol,
.esp-wrap ul {
	list-style: none;
}

.esp-wrap blockquote,
.esp-wrap q {
	quotes: none;
}

.esp-wrap blockquote:before,
.esp-wrap blockquote:after,
.esp-wrap q:before,
.esp-wrap q:after {
	content: "";
	content: none;
}

.esp-wrap table {
	border-collapse: collapse;
	border-spacing: 0;
}

.esp-wrap img,
.esp-wrap svg {
	vertical-align: bottom;
}

.esp-wrap input[type="text"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-shadow: none;
	border: none;
}

.esp-wrap button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-shadow: none;
	border: none;
	cursor: pointer;
	background: none;
	padding: 0;
}


/* ============================================================
 * 2. ベースタイポグラフィ
 * ============================================================
 *  旧 html { font-size: 62.5%; } は新版で適用不可。
 *  旧 body { font-size: 1.4em; } = 14px（62.5% × 1.4em = 14px）→ .esp-wrap に直接 14px。
 * ============================================================ */

.esp-wrap {
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
	/* font-family: "ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ W3","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif; */
	line-height: 1;
	color: #333;
	background-color: #f1f3f4;	/* 旧 #main { background-color: #f1f3f4; } を継承 */
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-feature-settings: "palt";
	padding: 50px 25px;
	overflow: clip;
}

.esp-wrap * {
	letter-spacing: 0.15em;
}

/* リンク */
.esp-wrap a {
	color: #3e3a39;
	text-decoration: underline;
}

.esp-wrap a:hover {
	color: #3e3a39;
}

.esp-wrap a img {
	transition: opacity 0.3s ease-in-out;
}

.esp-wrap a:hover img {
	opacity: 0.5;
}

.esp-wrap img.nofade {
	opacity: 1 !important;
}

.esp-wrap sup {
	font-size: 0.7em;
	vertical-align: super;
}



/* SP
----------------------------------*/
@media screen and (max-width: 768px) {
	.esp-wrap {
		padding: 40px 15px;
	}
}

/* ============================================================
 * 3. JSフック用基本状態（旧 common.css 行 251-257）
 * ============================================================
 *  JS が `.is-shown` 等を付与してフェードインする想定（既存 common.js 動作）
 *  クラス名は旧名維持（addClass/removeClass 対象 or セレクタ参照対象）
 * ============================================================ */

.esp-wrap .js-showElm,
.esp-wrap .js-fadeIn,
.esp-wrap .js-fade,
.esp-wrap .js-fadeInRight,
.esp-wrap .js-fadeInLeft {
	opacity: 0;
}

/* 旧 product_detail.css 行 6-14: 詳細ページ要素の初期 opacity 0
 * 新クラス対応へ移植（contents_common.js が JS アニメーションで opacity 1 にする想定）
 * 注: contents_common.js のセレクタも同期して更新（05_js_migration_plan.md 参照）*/
.esp-wrap .c-pageTitle__body,
.esp-wrap .c-productMain__visual,
.esp-wrap .c-productMain__detail,
.esp-wrap .c-productMain__bottomLeft,
.esp-wrap .c-productMain__bottomRight,
.esp-wrap .c-mainItemWrap__image,
.esp-wrap .c-mainItemWrap__info {
	opacity: 0;
}


/* ============================================================
 * 4. レイアウトプリミティブ（l-*）
 * ============================================================ */

/* l-container — 中央寄せの最大幅コンテナ
 * 旧 .pmd-secMainCol .secInr { max-width: 1020px; margin: 0 auto; } 相当 */
.esp-wrap .l-container {
	max-width: 1020px;
	margin: 0 auto;
}

.esp-wrap .l-container--wide {
	max-width: 1100px;
}


/* ============================================================
 * 5. ユーティリティ（u-*）
 * ============================================================ */

/* u-pcOnly / u-spOnly — 旧 .cm-pcOnly / .cm-spOnly 相当
 * 旧 common.css 行1518-1531 で `display: none !important` だったため !important 必須
 * 他の display ルールに必ず勝つ必要がある
 * ブレークポイント 950px（旧版踏襲）*/
@media screen and (min-width: 951px) {
	.esp-wrap .u-spOnly { display: none !important; }
}

@media screen and (max-width: 950px) {
	.esp-wrap .u-pcOnly { display: none !important; }
}

/* インライン版 */
@media screen and (min-width: 951px) {
	.esp-wrap .u-spOnlyInline { display: none !important; }
}

@media screen and (max-width: 950px) {
	.esp-wrap .u-pcOnlyInline { display: none !important; }
}

/* インラインブロック版 */
@media screen and (min-width: 951px) {
	.esp-wrap .u-spOnlyInlineBlock { display: none !important; }
}

@media screen and (max-width: 950px) {
	.esp-wrap .u-pcOnlyInlineBlock { display: none !important; }
}

/* u-anchorOffset — 旧 .cm-ancOffset 相当（実装時に旧の値を確認して移植）*/
/* TODO: 旧 common.css の .cm-ancOffset の値を確認して反映 */


/* ============================================================
 * 6. グローバルフッター（c-footer）
 * ============================================================
 *  旧 common.css の #footer 系セクションを移植
 *  実装時に旧 common.css のフッター関連ルール（行 600〜2000台）を確認して追加
 * ============================================================ */

/* TODO: 旧 #footer 系を新 .c-footer 系に移植 */


/* ============================================================
 * 7. コンポーネント（c-*）
 * ============================================================ */

/* ============================
 * c-pageTitleWrap / c-pageTitle — ページ大見出し
 * ============================
 *  旧 .ttlColWrap / .pmd-pgTtlCol を移植
 *  値: 旧 product_detail.css 行 17-92 (PC)、行 319-388 (SP) より完全コピー
 *  rem→px: 1.6rem = 16px、1rem = 10px
 */

/* PC */
.esp-wrap .c-pageTitleWrap {
	background: #f1f3f4;
	padding-bottom: 50px;
}

.esp-wrap .c-pageTitle {
	height: 140px;
	position: relative;
	background: #dbc7ca;
}

.esp-wrap .c-pageTitle__body {
	position: absolute;
	top: 53px;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 2;
}

.esp-wrap .c-pageTitle__icon--foundation {
	width: 284px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--base {
	width: 118px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--facecolor {
	width: 249px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--maketool {
	width: 270px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--eyebrow {
	width: 212px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--concealer {
	width: 240px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--facepowder {
	width: 298px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--facemist {
	width: 233px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--lip {
	width: 86px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--eyes {
	width: 115px;
	height: auto;
}

.esp-wrap .c-pageTitle__icon--bb {
	width: 80px;
	height: auto;
}

.esp-wrap .c-pageTitle__jp {
	margin-top: 12px;
	font-size: 16px;	/* 旧 1.6rem */
	color: #3e3a39;
}

.esp-wrap .c-pageTitle::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	top: 0;
	right: 100px;
	background: #fff;
	height: 196px;
}

/* SP — 旧 product_detail.css 行 319-388 */
@media screen and (max-width: 950px) {
	.esp-wrap .c-pageTitleWrap {
		padding-bottom: 30px;
	}
	.esp-wrap .c-pageTitle {
		height: 108px;
		display: flex;
		width: 100%;
		box-sizing: border-box;
		padding-top: 6px;
		align-items: center;
		justify-content: center;
	}
	.esp-wrap .c-pageTitle__body {
		position: static;
		width: auto;
		text-align: center;
	}
	.esp-wrap .c-pageTitle__icon--foundation {
		width: 193px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--base {
		width: 80px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--facecolor {
		width: 170px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--maketool {
		width: 173px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--eyebrow {
		width: 146px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--concealer {
		width: 162px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--facepowder {
		width: 202px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--facemist {
		width: 158px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--lip {
		width: 54px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--eyes {
		width: 80px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__icon--bb {
		width: 50px;
		height: auto;
	}
	.esp-wrap .c-pageTitle__jp {
		margin-top: 10px;
		font-size: 10px;	/* 旧 1rem */
	}
	.esp-wrap .c-pageTitle::before {
		right: 20px;
		background: #fff;
		height: 100%;
	}
}


/* ============================
 * c-productMain — 製品メイン
 * ============================
 *  旧 .pmd-secMainCol を移植
 *  値: 旧 product_detail.css 行 95-315 (PC)、行 391-499 (SP) より完全コピー
 *  rem→px: 1.4rem=14px, 1.6rem=16px, 1.8rem=18px, 2.6rem=26px
 */

/* PC */
.esp-wrap .c-productMain {
	position: relative;
	z-index: 2;
	padding: 0 20px;
}

.esp-wrap .c-productMain__inner {
	max-width: 1020px;
	margin: 0 auto;
}

.esp-wrap .c-productMain__top {
	display: flex;
}

.esp-wrap .c-productMain__visual {
	width: 50%;
	box-sizing: border-box;
	padding-right: 35px;
}

.esp-wrap .c-productMain__image {
	text-align: center;
}

.esp-wrap .c-productMain__caption {
	color: #d07184;
	font-size: 18px;	/* 旧 1.8rem */
	line-height: 1.5;
	text-align: left;
}

.esp-wrap .c-productMain__caption + img {
	margin-top: 10px;
}

.esp-wrap .c-productMain__image img {
	width: 100%;
}

.esp-wrap .c-productMain__text {
	margin-top: 25px;
	color: #3e3a39;
}

.esp-wrap .c-productMain__name {
	font-size: 26px;	/* 旧 2.6rem */
	line-height: 1.28;
	color: #d07184;
	font-weight: bold;
}

.esp-wrap .c-productMain__name + .c-productMain__name {
	margin-top: 10px;
}

.esp-wrap .c-productMain__catch {
	font-size: 18px;	/* 旧 1.8rem */
	line-height: 1.8;
	margin-top: 15px;
	letter-spacing: 0.1em;
}

.esp-wrap .c-productMain__catch sup {
	font-size: 14px;	/* 旧 1.4rem */
}

.esp-wrap .c-productMain__description {
	font-size: 14px;	/* 旧 1.4rem */
	line-height: 2;
	margin-top: 15px;
}

.esp-wrap .c-productMain__spec {
	font-weight: bold;
	line-height: 1.5;
	margin-top: 15px;
	font-size: 14px;	/* 旧 1.4rem */
}

.esp-wrap .c-productMain__detail {
	width: 50%;
	margin-top: 35px;
	position: relative;
}

.esp-wrap .c-productMain__detail img {
	width: 100%;
}

.esp-wrap .c-productMain__detailImage--01 {
	max-width: 430px;
}

.esp-wrap .c-productMain__bottom {
	display: flex;
}

.esp-wrap .c-productMain__bottomLeft,
.esp-wrap .c-productMain__bottomRight {
	width: 50%;
	box-sizing: border-box;
}

/* SP — 旧 product_detail.css 行 391-499 */
@media screen and (max-width: 950px) {
	.esp-wrap .c-productMain {
		padding: 0 20px;
	}
	.esp-wrap .c-productMain__top {
		display: block;
	}
	.esp-wrap .c-productMain__visual {
		width: auto;
		padding-right: 0;
	}
	.esp-wrap .c-productMain__image {
		text-align: center;
	}
	.esp-wrap .c-productMain__image img {
		width: 100%;
	}
	.esp-wrap .c-productMain__caption {
		font-size: 12px;	/* 旧 1.2rem */
		text-align: center;
	}
	.esp-wrap .c-productMain__caption + img {
		margin-top: 10px;
	}
	.esp-wrap .c-productMain__text {
		margin-top: 14px;
		padding: 0 20px;
	}
	.esp-wrap .c-productMain__name {
		font-size: 18px;	/* 旧 1.8rem */
		line-height: 1.35;
	}
	.esp-wrap .c-productMain__catch {
		font-size: 12px;	/* 旧 1.2rem */
		line-height: 1.8;
		margin-top: 8px;
	}
	.esp-wrap .c-productMain__catch sup {
		font-size: 10px;	/* 旧 1rem */
	}
	.esp-wrap .c-productMain__description {
		font-size: 10px;	/* 旧 1rem */
		line-height: 2.2;
		margin-top: 8px;
	}
	.esp-wrap .c-productMain__spec {
		margin-top: 8px;
		font-size: 10px;	/* 旧 1rem */
	}
	.esp-wrap .c-productMain__detail {
		width: 100% !important;
		max-width: 100% !important;
		margin-top: 25px !important;
		margin-right: 0 !important;
		text-align: center;
	}
	.esp-wrap .c-productMain__detail img {
		width: 100%;
	}
	.esp-wrap .c-productMain__detailImage--01 {
		width: 79%;
		max-width: 100%;
	}
	/* newItem Modifier 時の SP 調整 — 旧 .pmd-secMainCol.secMainColNewItem .topCol .imgCol */
	.esp-wrap .c-productMain--newItem .c-productMain__detail {
		margin-right: 0 !important;
		margin-left: -20px !important;
	}
	.esp-wrap .c-productMain--newItem .c-productMain__detail .c-productMain__detailImage {
		text-align: left;
	}
	.esp-wrap .c-productMain__bottom {
		display: block;
	}
	.esp-wrap .c-productMain__bottomLeft,
	.esp-wrap .c-productMain__bottomRight {
		width: auto;
		box-sizing: border-box;
	}
}


/* ============================
 * c-circleList — 円形ポイント
 * ============================
 *  旧 .pmd-secMainCol .circleList を移植（新版ではフラットセレクタで自立）
 *  値: 旧 product_detail.css 行 176-235 (PC)、行 471-494 (SP) より完全コピー
 */

/* PC */
.esp-wrap .c-circleList {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	width: 100%;
	max-width: 418px;
	justify-content: space-between;
	position: relative;
	padding-left: 20px;
}

.esp-wrap * + .c-circleList {
	margin-top: 50px;
}

.esp-wrap .c-circleList__title {
	position: absolute;
	z-index: 2;
}

.esp-wrap .c-circleList__item {
	width: calc(100% / 3);
	box-sizing: border-box;
	padding: 0 9px;
}

.esp-wrap .c-circleList__item:nth-of-type(n + 4) {
	margin-top: 18px;
}

.esp-wrap .c-circleList__circle {
	position: relative;
	z-index: 0;
	padding-bottom: 100%;
}

.esp-wrap .c-circleList__text {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	line-height: 1.6;
	font-weight: bold;
	border-radius: 100%;
	text-align: center;
	background: #fff;
	color: #d07184;
}

.esp-wrap .c-circleList__text sup {
	font-size: 9px;
	position: relative;
	top: -2px;
	/* padding-left: 2px; */
}

/* Modifier: --point — 旧 .circleListPoint */
.esp-wrap .c-circleList--point .c-circleList__title {
	top: 10px;
	left: -10px;
	width: 58px;
}

/* Modifier: --recommend — 旧 .circleListRecommend */
.esp-wrap .c-circleList--recommend .c-circleList__text {
	background: #dbc7ca;
	color: #fff;
}

.esp-wrap .c-circleList--recommend .c-circleList__title {
	top: -2px;
	left: -105px;
	width: 113px;
}

.esp-wrap .c-circleList__note {
	margin-top: 10px;
	font-size: 10px !important;
}

/* SP — 旧 product_detail.css 行 471-494 */
@media screen and (max-width: 950px) {
	.esp-wrap .c-circleList {
		max-width: 450px;
		padding-left: 0;
	}
	.esp-wrap * + .c-circleList {
		margin-top: 30px;
	}
	.esp-wrap .c-circleList__item {
		padding: 0 5px;
	}
	.esp-wrap .c-circleList__item:nth-of-type(n + 4) {
		margin-top: 10px;
	}
	.esp-wrap p.c-circleList__text {
		font-size: 10px;
		line-height: 1.4;
	}
	.esp-wrap p.c-circleList__text > .small {
		display: block;
		transform: scale(0.9);
		white-space: nowrap;
	}
	.esp-wrap .c-circleList--point .c-circleList__title {
		top: 0px;
		left: 0;
		width: 41px;
	}
	.esp-wrap .c-circleList--recommend {
		margin-top: 58px;
	}
	.esp-wrap .c-circleList--recommend .c-circleList__title {
		top: -41px;
		left: -12px;
		width: 145px;
	}
}


/* ============================
 * c-onlineShop / c-shopLinks — オンラインショップ
 * ============================
 *  旧 .pmd-secOnlineShop を移植
 *  値: 旧 product_detail.css 行 512-595 (PC)、行 598-640 (SP)
 */

/* PC */
.esp-wrap .c-onlineShop {
	padding: 56px 20px 60px;
	background: #fff;
}

.esp-wrap .c-onlineShop__inner {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

.esp-wrap .c-onlineShop__title {
	width: 200px;
	height: 33px;
	margin: 0 auto;
}

.esp-wrap .c-onlineShop__title img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-onlineShop__body {
	margin-top: 38px;
}

.esp-wrap .c-shopLinks {
	display: flex;
	justify-content: center;
}

.esp-wrap .c-onlineShop--typeLeft .c-shopLinks {
	justify-content: flex-start;
}

.esp-wrap .c-shopLinks__item {
	width: 200px;
	padding: 0 16px;
}

.esp-wrap .c-shopLinks__item.comingSoon {
	opacity: 0.5;
	pointer-events: none;
	margin-top: 0 !important;
}

.esp-wrap .c-shopLinks__link {
	display: block;
	transition: opacity 0.3s ease-out;
}

.esp-wrap .c-shopLinks__item a.c-shopLinks__link:hover {
	opacity: 0.7;
}

.esp-wrap .c-shopLinks__logo img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-shopLinks__item span.c-shopLinks__link:hover,
.esp-wrap .c-shopLinks__item span:hover .c-shopLinks__logo img {
	opacity: 1;
}

.esp-wrap .c-shopLinks__link:hover .c-shopLinks__logo img {
	opacity: 1;
}

.esp-wrap .c-onlineShop__reputeBtn {
	width: 260px;
	margin: 34px auto 0;
}

.esp-wrap .c-onlineShop__reputeBtn .btn {
	display: block;
	text-decoration: none;
	transition: opacity 0.3s ease-out;
}

.esp-wrap .c-onlineShop__reputeBtn .btn:hover {
	opacity: 0.7;
}

.esp-wrap .c-onlineShop__reputeBtn .btn img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-onlineShop__reputeBtn .btn:hover img {
	opacity: 1;
}

.esp-wrap .c-shopLinks.Comingsoon .c-shopLinks__item .c-shopLinks__link {
	opacity: 0.5 !important;
	pointer-events: none;
}

.esp-wrap .c-onlineShop__comingSoon {
	text-align: center;
	margin-top: 30px;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-onlineShop {
		padding-top: 37px;
		padding-bottom: 35px;
	}
	.esp-wrap .c-onlineShop__title {
		width: 138px;
		height: 22px;
	}
	.esp-wrap .c-onlineShop__body {
		margin-top: 30px;
	}
	.esp-wrap .c-shopLinks {
		flex-wrap: wrap;
		margin: -10px -15px;
	}
	.esp-wrap .c-shopLinks__item {
		width: 50%;
		max-width: 260px;
		margin-top: 10px;
		box-sizing: border-box;
		padding: 0 15px;
	}
	.esp-wrap .c-shopLinks__item.comingSoon {
		margin-top: 10px !important;
	}
	.esp-wrap .c-onlineShop__reputeBtn {
		width: 100%;
		max-width: 200px;
		margin: 30px auto 0;
	}
	.esp-wrap .c-onlineShop__comingSoon {
		font-size: 12px;	/* 旧 1.2rem */
		line-height: 1.6;
	}
}


/* ============================
 * c-anchorNav — アンカーナビ
 * ============================
 *  旧 .pmd-pgAncNav を移植
 *  値: 旧 product_detail.css 行 647-718 (PC)、行 722-779 (SP)、行 784-790 (SE)
 */

/* PC */
.esp-wrap .c-anchorNav {
	position: relative;
	padding: 0 10px;
	background: #f1f3f4;
	z-index: 99;
}

.esp-wrap .c-anchorNav::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 100px;
	background: #dbc7ca;
	width: 100%;
	height: 100%;
}

.esp-wrap .c-anchorNav__inner {
	max-width: 1100px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}

.esp-wrap .c-anchorNav__list {
	display: flex;
	justify-content: center;
	height: 90px;
	color: #fff;
	font-size: 20px;	/* 旧 2rem */
}

.esp-wrap .c-anchorNav__list li {
	display: flex;
	justify-content: center;
	position: relative;
}

.esp-wrap .c-anchorNav__list li::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	width: 1px;
	height: 20px;
	background: #fff;
}

.esp-wrap .c-anchorNav__list li:last-child:after {
	display: none;
}

.esp-wrap .c-anchorNav__list a {
	color: #fff;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 43px 0 50px;
}

.esp-wrap .c-anchorNav__list .c-anchorNav__text {
	padding-right: 36px;
	position: relative;
}

.esp-wrap .c-anchorNav__list .c-anchorNav__text::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	width: 18px;
	height: 12px;
	background: url(/img/esprique/common/images/icn_arw_btm_wt.png);
	background-size: 18px auto;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-anchorNav {
		padding: 0;
		background: #dbc7ca;
	}
	.esp-wrap .c-anchorNav::before {
		content: none;
	}
	.esp-wrap .c-anchorNav__inner {
		margin: 0 auto;
		position: relative;
		z-index: 2;
		overflow: hidden;
	}
	.esp-wrap .c-anchorNav__list {
		flex-wrap: wrap;
		height: auto;
		font-size: 15px;	/* 旧 1.5rem */
		line-height: 1.15;
		justify-content: flex-start;
		margin-bottom: -1px;
	}
	.esp-wrap .c-anchorNav__list li {
		width: 50%;
		justify-content: flex-start;
		border-bottom: 1px solid #fff;
		height: 65px;
	}
	.esp-wrap .c-anchorNav__list li::after,
	.esp-wrap .c-anchorNav__list li:last-child:after {
		height: 50px;
		display: block;
	}
	.esp-wrap .c-anchorNav__list li:nth-child(2n)::after {
		display: none;
	}
	.esp-wrap .c-anchorNav__list a {
		color: #fff;
		text-decoration: none;
		display: flex;
		width: 100%;
		box-sizing: border-box;
		justify-content: flex-start;
		align-items: center;
		padding: 0 20px 0 20px;
	}
	.esp-wrap .c-anchorNav__list .c-anchorNav__text {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding-right: 20px;
	}
	.esp-wrap .c-anchorNav__list .c-anchorNav__text::after {
		width: 15px;
		height: 10px;
		background-size: 15px auto;
	}
}

/* SE (極小スマホ) */
@media screen and (max-width: 374px) {
	.esp-wrap .c-anchorNav__list {
		font-size: 13px;	/* 旧 1.3rem */
	}
	.esp-wrap .c-anchorNav__list a {
		padding: 0 15px 0 15px;
	}
}


/* ============================
 * c-colorVariation — 色展開
 * ============================
 *  旧 .pmd-secColor を移植
 *  値: 旧 product_detail.css 行 798-872 (PC)、行 876-933 (SP)
 */

/* PC */
.esp-wrap * + .c-colorVariation {
	margin-top: 60px;
}
.esp-wrap .c-colorVariation .c-colorVariation__inner {
	padding-top: 17px;
	background: #f1f3f4;
	position: relative;
}

.esp-wrap .c-colorVariation__sectionTitle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	text-align: center;
}

.esp-wrap .c-colorVariation__sectionTitle .c-sectionTitle__en img {
	width: 434px;
	height: auto;
}

.esp-wrap .c-colorVariation--type .c-colorVariation__sectionTitle .c-sectionTitle__en img {
	width: 86px;
	height: auto;
}

.esp-wrap .c-colorVariation__sectionTitle .c-sectionTitle__jp {
	font-size: 16px;	/* 旧 1.8rem */
	margin-top: 10px;
	letter-spacing: 0.5em;
}

.esp-wrap .c-colorVariation__body {
	background: #fff;
	padding: 40px 0 0;

}

.esp-wrap .c-colorVariation__heading {
	font-size: 20px;	/* 旧 2rem */
	color: #d07184;
	margin-top: 60px;
	text-align: center;
	line-height: 1.2;
}

.esp-wrap .c-colorVariation__heading:first-child {
	margin-top: 0;
}

.esp-wrap .c-colorVariation__description {
	text-align: center;
	line-height: 2;
	font-size: 14px;	/* 旧 1.4rem */
	margin-top: 13px;
}

.esp-wrap .c-colorVariation__description sup {
	position: relative;
	font-size: 11px;	/* 旧 1.1rem */
	top: -5px;
}

.esp-wrap .c-colorVariation__description .note {
	font-size: 11px;	/* 旧 1.1rem */
}

.esp-wrap .c-colorList {
	display: flex;
	justify-content: center;
}

.esp-wrap .c-colorList__item {
	width: 210px;
	text-align: center;
}

.esp-wrap .c-colorList__num {
	margin-top: 25px;
	font-size: 16px;	/* 旧 1.6rem */
}

.esp-wrap .c-colorList__name {
	margin-top: 7px;
	font-size: 14px;	/* 旧 1.4rem */
}

.esp-wrap .c-colorList__note {
	margin-top: 8px;
	font-size: 12px;	/* 旧 1.2rem */
}

.is_windows .esp-wrap .c-colorList__note {
	font-size: 11px;	/* 旧 1.1rem */
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap * + .c-colorVariation {
		margin-top: 40px;
	}
	.esp-wrap .c-colorVariation .c-colorVariation__inner {
		padding-top: 10px;
	}
	.esp-wrap .c-colorVariation__sectionTitle .c-sectionTitle__en img {
		width: 279px;
	}
	.esp-wrap .c-colorVariation--type .c-colorVariation__sectionTitle .c-sectionTitle__en img {
		width: 70px;
		height: auto;
	}
	.esp-wrap .c-colorVariation__sectionTitle .c-sectionTitle__jp {
		font-size: 12px;	/* 旧 1.2rem */
		margin-top: 14px;
	}
	.esp-wrap .c-colorVariation__heading {
		font-size: 12px;	/* 旧 1.2rem */
		margin-top: 38px;
	}
	.esp-wrap .c-colorVariation__heading:first-child {
		margin-top: 0;
	}
	.esp-wrap .c-colorVariation__description {
		text-align: center;
		line-height: 1.5;
		font-size: 10px;	/* 旧 1rem */
		margin-top: 8px;
	}
	.esp-wrap .c-colorVariation__description sup {
		font-size: 10px;	/* 旧 1rem */
		top: -2px;
	}
	.esp-wrap .c-colorVariation__description .note {
		font-size: 10px;	/* 旧 1rem */
	}
	.esp-wrap .c-colorList__item {
		width: 145px;
	}
	.esp-wrap .c-colorList__num {
		margin-top: 12px;
		font-size: 12px;	/* 旧 1.2rem */
	}
	.esp-wrap .c-colorList__name {
		margin-top: 5px;
		font-size: 10px;	/* 旧 1rem */
	}
	.esp-wrap .c-colorList__note {
		margin-top: 3px;
		font-size: 10px;	/* 旧 1rem */
	}
}


/* ============================
 * c-features — 商品特長
 * ============================
 *  旧 .pmd-secFeatures を移植
 *  値: 旧 product_detail.css 行 977-1026 (PC)、行 1031-1057 (SP)
 *  内部の threePoint, storyBlock 等の詳細スタイルは pg-basemake-33.css へ
 */

/* PC */
.esp-wrap .c-features .c-features__inner {
	padding-top: 100px;
	background: #f1f3f4;
	position: relative;
}

.esp-wrap .c-features__sectionTitle {
	position: absolute;
	top: 83px;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 2;
}

.esp-wrap .c-features__sectionTitle .c-sectionTitle__en img {
	width: 434px;
	height: auto;
}

.esp-wrap .c-features__sectionTitle .c-sectionTitle__jp {
	font-size: 18px;	/* 旧 1.8rem */
	margin-top: 18px;
	letter-spacing: 0.5em;
}

.esp-wrap .c-features__body {
	position: relative;
	padding: 50px 0 0;
	box-sizing: border-box;
}

.esp-wrap .c-features__contents {
	position: relative;
	z-index: 2;
	margin: 0 auto;
	padding: 50px 30px;
	box-sizing: border-box;
	background-color: #FFF;
}

.esp-wrap .c-features__body::before {
	/* content: "";
	width: 100%;
	height: 100%;
	background-color: #fff;
	position: absolute;
	top: 0;
	right: 50%;
	transform: translateX(300px);
	z-index: 0; */
}

.esp-wrap .c-features__body + .c-features__body {
	margin-top: 40px;
}

.esp-wrap .c-features__bg {
	background: #fff;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-features .c-features__inner {
		padding-top: 50px;
	}
	.esp-wrap .c-features__sectionTitle {
		top: 40px;
	}
	.esp-wrap .c-features__sectionTitle .c-sectionTitle__en img {
		width: 277px;
	}
	.esp-wrap .c-features__sectionTitle .c-sectionTitle__jp {
		font-size: 12px;	/* 旧 1.2rem */
		margin-top: 14px;
	}
	.esp-wrap .c-features__body {
		padding: 40px 0 0;
	}
	.esp-wrap .c-features__body::before {
		right: 70px;
		transform: none;
	}
	.esp-wrap .c-features__body + .c-features__body {
		margin-top: 30px;
	}
	.esp-wrap .c-features__contents {
		margin: 0 auto;
	}
	.esp-wrap .c-features__body .c-features__contents {
		padding: 25px 10px;
	}
}


/* ============================
 * c-howto — 使用方法
 * ============================
 *  旧 .pmd-secHowto を移植
 *  値: 旧 product_detail.css 行 1137-1165 (PC)、行 1169-1186 (SP)
 */

/* PC */
.esp-wrap * + .c-howto {
	margin-top: 60px;
}
.esp-wrap .c-howto .c-howto__inner {
	padding-top: 13px;
	background: #f1f3f4;
	position: relative;
}

.esp-wrap .c-howto__sectionTitle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 2;
}

.esp-wrap .c-howto__sectionTitle .c-sectionTitle__en img {
	width: 238px;
	height: auto;
}

.esp-wrap .c-howto__sectionTitle .c-sectionTitle__jp {
	font-size: 16px;	/* 旧 1.8rem */
	margin-top: 10px;
	letter-spacing: 0.5em;
	color: #3e3a39;
}

.esp-wrap .c-howto__body {
	background: #fff;
}

.esp-wrap .c-howto__contents {
	max-width: 1100px;
	margin: 0 auto;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-howto .c-howto__inner {
		padding-top: 9px;
	}
	.esp-wrap .c-howto__sectionTitle .c-sectionTitle__en img {
		width: 170px;
	}
	.esp-wrap .c-howto__sectionTitle .c-sectionTitle__jp {
		font-size: 12px;	/* 旧 1.2rem */
		margin-top: 10px;
	}
}


/* ============================
 * c-stepList — ステップリスト
 * ============================
 *  旧 .pmd-stepTxtWrap を移植
 *  値: 旧 product_detail.css 行 1482-1516 (PC)、行 1520-1546 (SP)
 */

/* PC */
.esp-wrap .c-stepList__item {
	position: relative;
	padding-left: 150px;
	color: #d07184;
	font-size: 16px;	/* 旧 1.6rem */
	line-height: 1.8;
}

.esp-wrap .c-stepList__item + .c-stepList__item {
	margin-top: 30px;
}

.esp-wrap .c-stepList__item::before {
	content: " ";
	width: 130px;
	height: 35px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% auto;
	position: absolute;
	top: -3px;
	left: 0;
}

.esp-wrap .c-stepList__item:nth-of-type(1)::before {
	background-image: url(/img/esprique/common/product/prod_step_num01.png);
}

.esp-wrap .c-stepList__item:nth-of-type(2)::before {
	background-image: url(/img/esprique/common/product/prod_step_num02.png);
}

.esp-wrap .c-stepList__item:nth-of-type(3)::before {
	background-image: url(/img/esprique/common/product/prod_step_num03.png);
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap * + .c-howto {
		margin-top: 40px;
	}
	.esp-wrap .c-stepList__item {
		position: relative;
		padding-left: 0;
		padding-top: 30px;
		font-size: 12px;	/* 旧 1.2rem */
	}
	.esp-wrap .c-stepList__item + .c-stepList__item {
		margin-top: 15px;
	}
	.esp-wrap .c-stepList__item::before {
		width: 93px;
		height: 25px;
		top: 0;
		left: 0;
	}
	.esp-wrap .c-stepList__item:nth-of-type(1)::before {
		background-image: url(/img/esprique/common/product/prod_step_num01.png);
	}
	.esp-wrap .c-stepList__item:nth-of-type(2)::before {
		background-image: url(/img/esprique/common/product/prod_step_num02.png);
	}
}


/* ============================
 * c-extInfo — 補足情報
 * ============================
 *  旧 .pmd-secExt を移植
 *  値: 旧 product_detail.css 行 1194-1217 (PC)、行 1226-1247 (SP)
 */

/* PC */
.esp-wrap .c-extInfo {
	background: #f1f3f4;
	padding: 40px 20px 0;
}

.esp-wrap .c-extInfo__inner {
	margin: 0 auto;
	width: 100%;
	max-width: 1100px;
}

.esp-wrap .c-extInfo__columns {
	/* display: flex;
	justify-content: space-between; */
}

.esp-wrap .c-extInfo__column {
	width:100%;
	/* max-width: 567px; */
}

/* font は <p> に当てる
 * 旧 .pg-foundation24 .pmd-secExt .floatWrap .col p の値（旧 basemake.css 行 10512-10514）。
 * 旧 .pmd-secExt .secCts { font-size: 1.2rem; line-height: 2; } の代替（33は .secCts を持たないため col p に直接当てる）*/
.esp-wrap .c-extInfo__column p {
	font-size: 12px;	/* 旧 1.2rem */
	line-height: 2;
}
.esp-wrap .c-extInfo__column p + p {
	margin-top: 16px;
}

.esp-wrap .c-extInfo__column small {
	font-size: 0.8em;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-extInfo {
		padding: 20px 0 0;
	}
	.esp-wrap .c-extInfo__column p {
		font-size: 10px;	/* 旧 1rem */
		line-height: 1.7;
	}
	.esp-wrap .c-extInfo__columns {
		display: block;
	}
	.esp-wrap .c-extInfo__column {
		width: auto;
		max-width: 100%;
	}
	.esp-wrap .c-extInfo__column:last-child {
		margin-top: 1em;
	}
}


/* ============================
 * c-recommend / c-recommendItem — 関連商品セクション
 * ============================
 *  旧 .md-secFtRecommend を移植
 *  値: 旧 module.css 行 15-147 (PC)、行 179-280 (SP)、行 150-174 (バリアント)
 */

/* PC */
.esp-wrap .c-recommend {
	margin-top: 60px;
	position: relative;
	overflow: hidden;
	padding-top: 40px;
}

.esp-wrap .c-recommend::before,
.esp-wrap .c-recommend::after {
	content: " ";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
}

.esp-wrap .c-recommend::before {
	background-color: #dbc7ca;
	top: 0;
	left: -100px;
	z-index: 1;
}

.esp-wrap .c-recommend::after {
	background-color: #fff;
	top: 40px;
	left: 100px;
	z-index: 2;
}

.esp-wrap .c-recommend__inner {
	background-color: #fff;
	max-width: 1140px;
	padding: 55px 20px 80px;
	box-sizing: border-box;
	position: relative;
	z-index: 3;
}

.esp-wrap .c-recommend__block {
	text-align: center;
}

.esp-wrap .c-recommend__block + .c-recommend__block {
	margin-top: 100px;
}

.esp-wrap .c-recommend__blockTitle img {
	max-width: 100%;
	height: auto;
}

.esp-wrap .c-recommend__blockContents {
	display: flex;
	justify-content: center;
	margin: 60px -15px 0;
	width: auto;
}

.esp-wrap .c-recommendItem {
	min-width: 16.666666%;
	width: 16.666666%;
	padding: 0 15px;
	box-sizing: border-box;
}

.esp-wrap .c-recommendItem--limited,
.esp-wrap .c-recommendItem--new {
	position: relative;
}

.esp-wrap .c-recommendItem--new::before {
	content: " ";
	width: 70px;
	height: 40px;
	background: url(/img/esprique/common/images/txt_new.png) no-repeat center center;
	background-size: 100% auto;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,-100%);
	z-index: 100;
}

.esp-wrap .c-recommendItem--limited::before {
	content: "";
	width: 112px;
	height: 52px;
	background: url(/img/esprique/common/images/txt_limited.png) no-repeat center center;
	background-size: 100% auto;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,-100%);
	z-index: 10;
}

.esp-wrap .c-recommendItem__inner {
	display: block;
	text-decoration: none;
	color: #000;
	transition: all 0.3s ease-in-out;
}

.esp-wrap .c-recommendItem.js-stay .c-recommendItem__inner {
	opacity: 0.4;
	pointer-events: none;
}

.esp-wrap .c-recommendItem__inner:hover {
	opacity: 0.4;
}

.esp-wrap .c-recommendItem__image {
	width: 100%;
}

.esp-wrap .c-recommendItem__image img {
	width: 100%;
	height: auto;
	opacity: 1;
}

.esp-wrap .c-recommendItem.m .c-recommendItem__image img {
	margin-top: -15px;
}

.esp-wrap .c-recommendItem__caption {
	margin-top: 10px;
	font-size: 12px;	/* 旧 1.2rem */
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: normal;
	margin: 0 -5px;
}

.esp-wrap .c-recommendItem__caption.top {
	margin-top: -12px;
}

/* バリエーション */
.esp-wrap .c-recommend__block.secBlockMakeUpTool .c-recommend__blockContents {
	max-width: 732px;
}

.esp-wrap .c-recommend__block.secBlockMakeUpTool .c-recommend__blockContents .c-recommendItem {
	width: 25%;
	margin-top: 60px;
}

.esp-wrap .c-recommend__block.secBlockLineUp .c-recommend__blockContents,
.esp-wrap .c-recommend__block.secBlockMakeUpTool .c-recommend__blockContents,
.esp-wrap .c-recommend__block.secBlockPickUp .c-recommend__blockContents,
.esp-wrap .c-recommend__block.secBlockSecEyes .c-recommend__blockContents,
.esp-wrap .c-recommend__block.foundation .c-recommend__blockContents {
	flex-wrap: wrap;
	margin: 6px auto 0;
}

.esp-wrap .c-recommend__block.secBlockPickUp .c-recommend__blockContents .c-recommendItem,
.esp-wrap .c-recommend__block.secBlockLineUp .c-recommend__blockContents .c-recommendItem,
.esp-wrap .c-recommend__block.secBlockSecEyes .c-recommend__blockContents .c-recommendItem,
.esp-wrap .c-recommend__block.foundation .c-recommend__blockContents .c-recommendItem {
	min-width: 16.666666%;
	width: 16.666666%;
	margin-top: 60px;
}

/* SP */
@media screen and (max-width: 768px) {
	.esp-wrap .c-recommendItem.m .c-recommendItem__image img {
		margin-top: -8px;
	}
}

@media screen and (max-width: 950px) {
	.esp-wrap .c-recommend {
		margin-top: 0;
		padding-top: 40px;
		background-color: #dbc7ca;
	}
	.esp-wrap .c-recommend::before,
	.esp-wrap .c-recommend::after {
		display: none;
	}
	.esp-wrap .c-recommend__inner {
		margin: 0 -20px 40px;
		background-color: #fff;
		padding: 45px 20px;
	}
	.esp-wrap .c-recommend__block + .c-recommend__block {
		margin-top: 60px;
	}
	.esp-wrap .c-recommend__blockTitle img {
		max-width: 100%;
		height: auto;
	}
	.esp-wrap .c-recommend__blockContents {
		flex-wrap: wrap;
		margin: 0 -10px 0;
	}
	.esp-wrap .c-recommendItem {
		min-width: 33.333333%;
		width: 33.333333%;
		padding: 20px 10px 0;
		margin-top: 10%;
	}
	.esp-wrap .c-recommendItem--new::before {
		content: " ";
		width: 30%;
		height: 20%;
		background: url(/img/esprique/common/images/txt_new.png) no-repeat center center;
		background-size: 100% auto;
		top: 25px;
	}
	.esp-wrap .c-recommendItem--limited::before {
		content: "";
		width: 48%;
		height: 20.9%;
		top: 17%;
	}
	.esp-wrap .c-recommendItem__inner {
		display: block;
		text-decoration: none;
		color: #000;
		transition: all 0.3s ease-in-out;
	}
	.esp-wrap .c-recommendItem__inner:hover {
		opacity: 0.4;
	}
	.esp-wrap .c-recommendItem__caption {
		margin-top: 5px;
		font-size: 10px;	/* 旧 1rem */
	}

	.esp-wrap .c-recommend__block.secBlockSecEyes .c-recommend__blockContents {
		width: auto;
		margin: 0 -10px 0;
	}
	.esp-wrap .c-recommend__block.secBlockPickUp .c-recommend__blockContents .c-recommendItem,
	.esp-wrap .c-recommend__block.secBlockSecEyes .c-recommend__blockContents .c-recommendItem {
		width: 33.33333%;
		margin-top: 10%;
	}
	.esp-wrap .c-recommendItem__caption {
		color: #3e3a39;
		font-weight: 400;
		white-space: nowrap;
	}
	.esp-wrap .c-recommendItem__caption.top {
		margin-top: calc(-6 / 750 * 100vw);
	}

	.esp-wrap .c-recommend__block.secBlockLineUp .c-recommend__blockContents,
	.esp-wrap .c-recommend__block.secBlockMakeUpTool .c-recommend__blockContents,
	.esp-wrap .c-recommend__block.secBlockPickUp .c-recommend__blockContents,
	.esp-wrap .c-recommend__block.secBlockSecEyes .c-recommend__blockContents,
	.esp-wrap .c-recommend__block.foundation .c-recommend__blockContents {
		margin: 10px auto 0;
	}
	.esp-wrap .c-recommend__block.secBlockMakeUpTool .c-recommend__blockContents .c-recommendItem,
	.esp-wrap .c-recommend__block.secBlockPickUp .c-recommend__blockContents .c-recommendItem,
	.esp-wrap .c-recommend__block.secBlockLineUp .c-recommend__blockContents .c-recommendItem,
	.esp-wrap .c-recommend__block.secBlockSecEyes .c-recommend__blockContents .c-recommendItem,
	.esp-wrap .c-recommend__block.foundation .c-recommend__blockContents .c-recommendItem {
		min-width: auto;
		width: 33.33333%;
		margin-top: 15px;
	}
}


/* ============================
 * c-noteList — 注釈リスト
 * ============================
 *  旧 .md-noteList を移植
 *  値: 旧 module.css 行 283-291
 */
.esp-wrap .c-noteList {
	box-sizing: border-box;
	padding: 20px;
	border: 1px solid #3e3a39;
}

.esp-wrap .c-noteList__text {
	font-size: 12px;	/* 旧 1.2rem */
	line-height: 2;
	letter-spacing: 0.08em;
}


/* ============================
 * c-finishImage / c-bgTtlImgGridWrap — 仕上がりセクション
 * ============================
 *  旧 .pmd-secFinish と .pmd-bgTtlImgGridWrap を移植
 *  値: 旧 product_detail.css 行 2277-2383 (PC)、行 2387-2458 (SP)
 */

/* PC */
.esp-wrap .c-finishImage {
	margin-top: 40px;
	position: relative;
}

.esp-wrap .c-finishImage__sectionTitle {
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
	position: absolute;
	width: 100%;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
}

.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__icon {
	width: 90px;
}

.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__icon img,
.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__image img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__image {
	width: 130px;
}

.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__icon + .c-sectionTitle__image {
	padding-left: 14px;
}

.esp-wrap .c-finishImage__body {
	max-width: 940px;
	padding: 70px 20px 40px;
	box-sizing: border-box;
	position: relative;
}

.esp-wrap .c-finishImage__body::before {
	content: " ";
	width: 100%;
	height: 100%;
	background-color: #ece3e4;
	position: absolute;
	top: 0;
	left: 0;
}

.esp-wrap .c-finishImage__inner {
	position: relative;
	z-index: 1;
	padding: 0 15px;
}

/* c-bgTtlImgGridWrap (旧 .pmd-bgTtlImgGridWrap) */
.esp-wrap .c-bgTtlImgGridWrap {
	text-align: center;
}

.esp-wrap .c-bgTtlImgGridWrap__title {
	color: #d07184;
	font-size: 20px;	/* 旧 2.8rem */
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.esp-wrap .c-bgTtlImgGridWrap__contents {
	max-width: 610px;
	margin: 0 auto;
}

.esp-wrap .c-bgTtlImgGridWrap__block {
	margin-top: 70px;
}

.esp-wrap .c-bgTtlImgGridWrap__blockTitle {
	color: #d07184;
	font-size: 14px;	/* 旧 1.6rem */
	font-weight: bold;
	line-height: 1.625 !important;
	letter-spacing: 0.1em;
	background-color: #fff;
	padding: 4px 30px;
	box-sizing: border-box;
	border-radius: 99px;
}

.esp-wrap .c-bgTtlImgGridWrap__imgWrap {
	display: flex;
	padding: 0 30px;
	box-sizing: border-box;
	margin: 15px -9px 0;
	width: auto;
}

.esp-wrap .c-bgTtlImgGridWrap__imgItem {
	width: 50%;
	margin: 0 9px;
	text-align: left;
}

.esp-wrap .c-bgTtlImgGridWrap__imgInner {
	display: block;
}

.esp-wrap .c-bgTtlImgGridWrap__wrapTitle {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.43;
	letter-spacing: 0.1em;
	text-align: center;
}

.esp-wrap .c-bgTtlImgGridWrap__wrapDesc {
	color: #5b5854;
	font-size: 12px;	/* 旧 1.2rem */
	line-height: 1.67;
	letter-spacing: 0.1em;
}

.esp-wrap .c-bgTtlImgGridWrap__imgItem.after .c-bgTtlImgGridWrap__wrapTitle,
.esp-wrap .c-bgTtlImgGridWrap__imgItem.after .c-bgTtlImgGridWrap__wrapDesc {
	color: #d1737d;
}

.esp-wrap .c-bgTtlImgGridWrap__wrapImg {
	margin-top: 5px;
	width: 100%;
}

.esp-wrap .c-bgTtlImgGridWrap__wrapImg img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-bgTtlImgGridWrap__wrapDesc {
	margin-top: 10px;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-finishImage {
		margin-top: 20px;
	}
	.esp-wrap * + .c-finishImage {
		margin-top: 60px;
	}
	.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__icon {
		width: 21.33333%;
	}
	.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__image {
		width: 24.66667%;
	}
	.esp-wrap .c-finishImage__sectionTitle .c-sectionTitle__icon + .c-sectionTitle__image {
		padding-left: 14px;
	}
	.esp-wrap .c-finishImage__body {
		max-width: 100%;
		padding: 50px 0 30px;
	}
	.esp-wrap .c-finishImage__body::before {
		left: -35.73333%;
	}
	.esp-wrap .c-finishImage__inner {
		padding: 0;
	}

	.esp-wrap .c-bgTtlImgGridWrap__title {
		font-size: 16px;	/* 旧 1.6rem */
	}
	.esp-wrap .c-bgTtlImgGridWrap__contents {
		max-width: 610px;
	}
	.esp-wrap .c-bgTtlImgGridWrap__block {
		margin-top: 98px;
	}
	.esp-wrap .c-bgTtlImgGridWrap__blockTitle {
		font-size: 14px;	/* 旧 1.4rem */
		padding: 5px 15px;
		text-align: left;
	}
	.esp-wrap .c-bgTtlImgGridWrap__imgWrap {
		margin: 15px -4.5px 0;
		padding: 0 15px;
	}
	.esp-wrap .c-bgTtlImgGridWrap__imgItem {
		margin: 0 4.6px;
	}
	.esp-wrap .c-bgTtlImgGridWrap__wrapTitle,
	.esp-wrap .c-bgTtlImgGridWrap__wrapDesc {
		font-size: 10px;	/* 旧 1rem */
	}
}


/* ============================
 * c-otherCol / c-otherItemGrid — 別アイテム情報（製品メイン下）
 * ============================
 *  旧 .otherCol / .pmd-otherItemGrid を移植
 *  値: 旧 product_detail.css 行 2068-2101
 */

/* PC */
.esp-wrap .c-otherCol {
}

.esp-wrap .c-otherItemGrid {
	display: flex;
	align-items: center;
}

.esp-wrap .c-otherItemGrid__image {
	width: 21.875%;
	padding-right: 25px;
	box-sizing: border-box;
}

.esp-wrap .c-otherItemGrid__image img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-otherItemGrid__text {
	flex: 1;
	font-size: 14px;	/* 旧 1.4rem */
	line-height: 1.8;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-otherItemGrid__image {
		width: 26.27119%;
		padding-right: 10px;
	}
	.esp-wrap .c-otherItemGrid__text {
		font-size: 10px;	/* 旧 1rem */
	}
}


/* ============================
 * c-noteWrap — 注釈ブロック
 * ============================
 *  旧 .pmd-noteWrap を移植
 *  値: 旧 product_detail.css 行 2104-2140
 */

/* PC */
.esp-wrap .c-noteWrap {
	padding: 24px 45px 0;
}

.esp-wrap .c-noteWrap + .c-noteWrap {
	margin-top: 17px;
}

.esp-wrap .c-noteWrap__title {
	color: #d07184;
	font-weight: bold;
	font-size: 14px;	/* 旧 1.6rem */
	line-height: 1.8;
}

.esp-wrap .c-noteWrap__small {
	font-size: 10px;	/* 旧 1rem */
	padding-left: 5px;
	vertical-align: text-bottom;
}

.esp-wrap .c-noteWrap__desc {
	font-size: 10px;	/* 旧 1.4rem */
	line-height: 1.7;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-noteWrap {
		padding: 20px 0 0;
	}
	.esp-wrap .c-noteWrap + .c-noteWrap {
		margin-top: 15px;
	}
	.esp-wrap .c-noteWrap__title {
		font-size: 12px;	/* 旧 1.4rem */
	}
	.esp-wrap .c-noteWrap__desc {
		font-size: 10px !important;	/* 旧 1.2rem */
	}
}


/* ============================
 * c-simulate — 試着シミュレーションリンク
 * ============================
 *  旧 .pt-simulate を移植
 *  値: 旧 common.css 行 1634-1709
 *  画像: /img/esprique/common/images/icn_arw_r_pk.png, icn_camera.png
 */

/* PC */
.esp-wrap .c-simulate {
	margin-top: 38px;
}

.esp-wrap .c-simulate__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 314px;
	height: 80px;
	margin: 0 auto;
	box-sizing: border-box;
	padding-left: 10px;
	padding-right: 40px;
	background: #fff;
	text-decoration: none;
	color: #d07184;
	position: relative;
	transition: all 0.3s ease-out;
}

.esp-wrap .c-simulate__link::after {
	content: " ";
	width: 11px;
	height: 20px;
	background: url(/img/esprique/common/images/icn_arw_r_pk.png) no-repeat center center;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}

.esp-wrap .c-simulate__link:hover {
	opacity: 0.7;
}

.esp-wrap .c-simulate__text {
	display: inline-flex;
	align-items: flex-start;
	border-bottom: 1px solid #d07184;
	font-size: 18px;	/* 旧 1.8rem */
	line-height: 1.9;
	position: relative;
}

.esp-wrap .c-simulate__text::before {
	content: " ";
	display: inline-block;
	width: 34px;
	height: 26px;
	margin-right: 10px;
	background: url(/img/esprique/common/images/icn_camera.png) no-repeat center center;
	background-size: cover;
}

/* SP（旧は 768px、basemake 仕様に合わせて 950px へ統一） */
@media screen and (max-width: 950px) {
	.esp-wrap .c-simulate {
		margin-top: 15px;
	}
	.esp-wrap .c-simulate__link {
		width: 62.98507%;
		height: 40px;
		min-width: 260px;
		padding-left: 20px;
		padding-right: 35px;
	}
	.esp-wrap .c-simulate__link::after {
		width: 6px;
		height: 10px;
	}
	.esp-wrap .c-simulate__text {
		font-size: 12px;	/* 旧 1.2rem */
		line-height: 2;
	}
	.esp-wrap .c-simulate__text::before {
		width: 26px;
		height: 20px;
	}
}


/* ============================
 * c-onlineShop__txtLink — オンラインショップ補助リンク
 * ============================
 *  旧 .pmd-secOnlineShop .ctsWrap .pmd-txtLink を移植
 *  値: 旧 product_detail.css 行 367-394
 */

/* PC */
.esp-wrap .c-onlineShop__txtLink {
	margin-top: 30px;
	text-align: center;
}

.esp-wrap .c-onlineShop__txtLink a {
	color: #d07184;
	font-size: 14px;	/* 旧 1.4rem */
	line-height: 1.8;
	text-decoration: underline;
	transition: opacity 0.3s ease-out;
}

.esp-wrap .c-onlineShop__txtLink a + a {
	margin-left: 30px;
}

.esp-wrap .c-onlineShop__txtLink a:hover {
	opacity: 0.7;
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-onlineShop__txtLink {
		margin-top: 20px;
	}
	.esp-wrap .c-onlineShop__txtLink a {
		font-size: 12px;	/* 旧 1.2rem */
	}
	.esp-wrap .c-onlineShop__txtLink a + a {
		margin-left: 0;
		margin-top: 10px;
		display: block;
	}
}


/* ============================
 * c-features__bgWrap / c-features__secImg — 特長セクション補助
 * ============================
 *  旧 .pmd-secFeatures .secCtsWrapBg / .secCts .secImg を移植
 *  値: 旧 product_detail.css 行 1024
 */

.esp-wrap .c-features__bgWrap {
	background: #fff;
}

.esp-wrap .c-features__secImg {
	margin: 0 auto;
}

.esp-wrap .c-features__secImg img {
	width: 100%;
	height: auto;
}


/* ============================
 * c-pointListBlock / c-pointListWrap — ポイントリスト
 * ============================
 *  旧 .pmd-pointListBlock / .pmd-pointListWrap を移植
 *  値: 旧 product_detail.css 行 2144-2274
 *  画像: /img/esprique/common/product/prod_txt_point0{n}_has_circle.png
 */

/* PC */
.esp-wrap .c-pointListBlock {
	text-align: center;
}

.esp-wrap .c-pointListBlock__title {
	color: #d07184;
	font-size: 20px;	/* 旧 2.4rem */
	font-weight: bold;
	line-height: 1.8;
}

.esp-wrap .c-pointListBlock__lead {
	color: #3e3a39;
	font-size: 14px;	/* 旧 1.6rem */
	line-height: 1.8;
	margin-top: 8px;
}

.esp-wrap .c-pointListBlock__note {
	color: #3e3a39;
	font-size: 12px;	/* 旧 1.2rem */
	line-height: 1.8;
	margin-top: 10px;
}

.esp-wrap .c-pointListBlock .c-pointListWrap {
	margin-top: 80px;
}

.esp-wrap .c-pointListWrap {
	display: flex;
}

.esp-wrap .c-pointListWrap__item {
	flex: 1;
	border-radius: 9px;
	padding: 0 20px;
	box-sizing: border-box;
}

.esp-wrap .c-pointListWrap__inner {
	display: block;
	height: 100%;
	position: relative;
	border: 1px solid #dbc7ca;
	border-radius: 9px;
	padding: 55px 20px 20px;
	box-sizing: border-box;
	text-align: left;
}

.esp-wrap .c-pointListWrap__inner::before {
	content: " ";
	width: 170px;
	height: 68px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 100%;
	background-color: #fff;
	position: absolute;
	top: 0;
	left: -35px;
	transform: translateY(-50%);
	padding-right: 10px;
}

.esp-wrap .c-pointListWrap__text {
	color: #d07184;
	font-size: 16px;	/* 旧 1.6rem */
	line-height: 1.6;
}

.esp-wrap .c-pointListWrap__item:nth-of-type(1) .c-pointListWrap__inner::before {
	background-image: url(/img/esprique/common/product/prod_txt_point01_has_circle.png);
}
.esp-wrap .c-pointListWrap__item:nth-of-type(2) .c-pointListWrap__inner::before {
	background-image: url(/img/esprique/common/product/prod_txt_point02_has_circle.png);
}
.esp-wrap .c-pointListWrap__item:nth-of-type(3) .c-pointListWrap__inner::before {
	background-image: url(/img/esprique/common/product/prod_txt_point03_has_circle.png);
}
.esp-wrap .c-pointListWrap__item:nth-of-type(4) .c-pointListWrap__inner::before {
	background-image: url(/img/esprique/common/product/prod_txt_point04_has_circle.png);
}
.esp-wrap .c-pointListWrap__item:nth-of-type(5) .c-pointListWrap__inner::before {
	background-image: url(/img/esprique/common/product/prod_txt_point05_has_circle.png);
}
.esp-wrap .c-pointListWrap__item:nth-of-type(6) .c-pointListWrap__inner::before {
	background-image: url(/img/esprique/common/product/prod_txt_point06_has_circle.png);
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-pointListBlock__title {
		font-size: 16px !important;	/* 旧 1.6rem */
	}
	.esp-wrap .c-pointListBlock__note {
		font-size: 10px !important;	/* 旧 1rem */
		text-align: left;
		margin-top: 15px;
	}
	.esp-wrap .c-pointListBlock .c-pointListWrap {
		margin-top: 40px;
	}
	.esp-wrap .c-pointListWrap {
		display: block;
	}
	.esp-wrap .c-pointListWrap__item {
		width: 100%;
		border-radius: 5px;
		padding: 0 20px;
	}
	.esp-wrap .c-pointListWrap__item + .c-pointListWrap__item {
		/* margin-top: 40px; */
	}
	.esp-wrap .c-pointListWrap__inner {
		border-radius: 5px;
		padding: 35px 15px 15px;
	}
	.esp-wrap .c-pointListWrap__inner::before {
		content: " ";
		width: 95px;
		height: 45px;
		top: 0;
		left: -5px;
		transform: translateY(-50%);
	}
	.esp-wrap .c-pointListWrap__text {
		font-size: 12px;	/* 旧 1.2rem */
	}
}


/* ============================
 * c-footer — グローバルフッター
 * ============================
 *  旧 #footer 系を移植
 *  値: 旧 common.css 行 1046-1232 (PC)、行 1235-1380 (SP)
 *  構造: contents > inner > row(floatCol) > [colLeft, colRight]
 *        colLeft > sns(snsCol) > [official(officialSns), share(shareCol), bnr(bnrCol)]
 *        colRight > [linkListWrap > linkList, nav(ftNav)]
 */

/* PC */
.esp-wrap .c-footer__contents {
	padding: 0 10px;
	background: #f1f3f4;
}

.esp-wrap .c-footer__inner {
	width: 100%;
	max-width: 1100px;
	position: relative;
	padding: 90px 0 56px;
	margin: 0 auto;
	z-index: 2;
}

.esp-wrap .c-footer__row {
	display: flex;
}

.esp-wrap .c-footer__row a {
	text-decoration: none;
	color: #d07184;
}

.esp-wrap .c-footer__colLeft,
.esp-wrap .c-footer__colRight {
	width: 50%;
	box-sizing: border-box;
}

.esp-wrap .c-footer__colLeft {
	position: relative;
	display: flex;
}

.esp-wrap .c-footer__sns {
	width: 43%;
	max-width: 215px;
	margin-top: 18px;
}

.esp-wrap .c-footer__official {
	width: 180px;
	text-align: center;
}

.esp-wrap .c-footer__officialTitle img {
	width: 178px;
	height: auto;
}

.esp-wrap .c-footer__btnWrap {
	display: flex;
	justify-content: center;
	margin-top: 15px;
}

.esp-wrap .c-footer__btnCol {
	padding: 0 6px;
}

.esp-wrap .c-footer__btn {
	display: block;
	width: 41px;
	height: 41px;
	border-radius: 100%;
	background: #dbc7cb no-repeat center center;
}

.esp-wrap .c-footer__btn--yb {
	background-image: url(/img/esprique/common/images/icn_youtube_wt.png);
	background-size: 28px auto;
}

.esp-wrap .c-footer__btn--tw {
	background-image: url(/img/esprique/common/images/icn_x_wt.png);
	background-size: 24px auto;
}

.esp-wrap .c-footer__btn--insta {
	background-image: url(/img/esprique/common/images/icn_insta_wt.png);
	background-size: 23px auto;
}

.esp-wrap .c-footer__bnr {
	flex: 1;
}

.esp-wrap .c-footer__bnrItem {
	margin-top: 20px;
}

.esp-wrap .c-footer__bnrItem:first-child {
	margin-top: 0;
}

.esp-wrap .c-footer__bnrItem img {
	width: 100%;
	height: auto;
}

.esp-wrap .c-footer__share {
	width: 180px;
	text-align: center;
	position: absolute;
	top: 134px;
	left: 0;
}

.esp-wrap .c-footer__shareTitle img {
	width: 64px;
	height: auto;
}

.esp-wrap .c-footer__share .c-footer__btnWrap {
	display: flex;
	justify-content: center;
	margin-top: 15px;
}

.esp-wrap .c-footer__share .c-footer__btn {
	background: no-repeat center center;
}

.esp-wrap .c-footer__share .c-footer__btn--tw {
	background-color: #000;
	background-image: url(/img/esprique/common/images/icn_x_wt.png);
	background-size: 24px auto;
}

.esp-wrap .c-footer__share .c-footer__btn--fb {
	background-color: #1877f2;
	background-image: url(/img/esprique/common/images/icn_fb_tw.png);
	background-size: 41px auto;
}

.esp-wrap .c-footer__colRight {
	padding-left: 3.7%;
}

.esp-wrap .c-footer__linkListWrap {
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
}

.esp-wrap .c-footer__linkList {
	font-size: 12px;	/* 旧 1.2rem */
}

.esp-wrap .c-footer__ttlLink {
	margin-top: 28px;
}

.esp-wrap .c-footer__ttlLink:first-child {
	margin-top: 0;
}

.esp-wrap .c-footer__ttlLink a {
	font-weight: bold;
}

.esp-wrap .c-footer__list {
	margin-top: 30px;
}

.esp-wrap .c-footer__list li {
	margin-top: 6px;
	line-height: 1.4;
}

.esp-wrap .c-footer__nav {
	line-height: 1.4;
	display: flex;
	flex-wrap: wrap;
	font-size: 12px;	/* 旧 1.2rem */
	margin-left: -12px;
	margin-top: 20px;
}

.esp-wrap .c-footer__nav li {
	margin-left: 12px;
	margin-top: 10px;
}

.esp-wrap .c-footer__nav li a {
	color: #3e3a39;
	text-decoration: underline;
}

.esp-wrap .c-footer__nav li a:hover {
	text-decoration: none;
}

.esp-wrap .c-footer__pageTop {
	position: absolute;
	bottom: -20px;
	right: 0;
}

.esp-wrap .c-footer__pageTop a {
	display: block;
	width: 40px;
	height: 40px;
	background: url(/img/esprique/common/images/icn_top_return_btn.png) #fff no-repeat center center;
	background-size: 100% auto;
	border-radius: 100%;
	text-decoration: none;
}

.esp-wrap .c-footer__copy {
	background: #dbc7ca;
	padding: 40px 0;
}

.esp-wrap .c-footer__copyright {
	text-align: center;
	color: #fff;
	font-size: 12px;	/* 旧 1.2rem */
}

/* SP */
@media screen and (max-width: 950px) {
	.esp-wrap .c-footer__contents {
		padding: 0 20px;
	}
	.esp-wrap .c-footer__inner {
		padding: 50px 0 38px;
	}
	.esp-wrap .c-footer__row {
		display: block;
	}
	.esp-wrap .c-footer__colLeft,
	.esp-wrap .c-footer__colRight {
		width: auto;
	}
	.esp-wrap .c-footer__colLeft {
		display: block;
	}
	.esp-wrap .c-footer__sns {
		width: auto;
		max-width: 100%;
		margin-top: 0;
	}
	.esp-wrap .c-footer__official {
		width: 180px;
		text-align: center;
		margin: 0 auto;
	}
	.esp-wrap .c-footer__officialTitle img {
		width: 158px;
	}
	.esp-wrap .c-footer__official .c-footer__btnWrap {
		margin-top: 23px;
	}
	.esp-wrap .c-footer__official .c-footer__btnCol {
		padding: 0 7px;
	}
	.esp-wrap .c-footer__official .c-footer__btn {
		width: 45px;
		height: 45px;
	}
	.esp-wrap .c-footer__official .c-footer__btn--yb {
		background-size: 28px auto;
	}
	.esp-wrap .c-footer__official .c-footer__btn--tw {
		background-size: 24px auto;
	}
	.esp-wrap .c-footer__official .c-footer__btn--insta {
		background-size: 28px auto;
	}
	.esp-wrap .c-footer__bnr {
		margin-top: 28px;
	}
	.esp-wrap .c-footer__bnrItem {
		margin-top: 20px;
	}
	.esp-wrap .c-footer__bnrItem:first-child {
		margin-top: 0;
	}
	.esp-wrap .c-footer__share {
		width: auto;
		position: static;
		margin-top: 35px;
	}
	.esp-wrap .c-footer__shareTitle img {
		width: 64px;
	}
	.esp-wrap .c-footer__share .c-footer__btnWrap {
		margin-top: 13px;
	}
	.esp-wrap .c-footer__share .c-footer__btnCol {
		padding: 0 7px;
	}
	.esp-wrap .c-footer__share .c-footer__btn {
		width: 40px;
		height: 40px;
	}
	.esp-wrap .c-footer__share .c-footer__btn--line {
		background: #00c300 url(/img/esprique/common/images/icn_line_wt.png) no-repeat center center;
		background-size: 27px auto;
	}
	.esp-wrap .c-footer__share .c-footer__btn--tw {
		background-size: 24px auto;
	}
	.esp-wrap .c-footer__share .c-footer__btn--fb {
		background-size: 40px auto;
	}
	.esp-wrap .c-footer__colRight {
		padding-left: 0;
	}
	.esp-wrap .c-footer__linkListWrap {
		display: none;
	}
	.esp-wrap .c-footer__nav {
		margin-left: 0;
		margin-top: 20px;
		justify-content: center;
	}
	.esp-wrap .c-footer__nav li {
		margin: 10px 6px 0;
	}
}



/* ▼ 残: c-toggleItem, c-award, c-noteList(33専用変種), c-videoBlock(btnMovie) は category-basemake.css / pg-basemake-33.css ▼ */


/* ============================================================
 * 8. アニメーション（@keyframes）
 * ============================================================ */

/* TODO: 旧版で使われている @keyframes があれば移植 */


.esp-wrap .c-caseBanner {
	margin-top: 70px;
	border: 1px solid #000;
	padding: 20px;
	box-sizing: border-box;
}

.esp-wrap .c-caseBanner__flex {
	display: flex;
	align-items: center;
	gap: 20px;
}

.esp-wrap .c-caseBanner__img {
	width: 112px;
}
.esp-wrap .c-caseBanner__img img {
	width: 100%;
}

.esp-wrap .c-caseBanner__text {
	flex: 1;
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.esp-wrap .c-caseBanner__text p {
	font-size: inherit;
}

.esp-wrap .c-caseBanner__text strong {
	font-weight: bold;
}

@media screen and (max-width: 950px) {
	.esp-wrap .c-caseBanner {
		padding: 15px;
	}
	.esp-wrap .c-caseBanner__img {
		width: 40%;
	}
	.esp-wrap .c-caseBanner__text {
		font-size: 10px;
		line-height: 1.5;
	}
}


/* ============================================================
 * 特徴冒頭ラベル
 * ============================================================ */
.esp-wrap .m-note {
	display: block;
	margin-top: 10px;
	font-size: 10px !important;
	line-height: 2.2 !important;
	letter-spacing: 0.1em;
	text-align: right;
}
.esp-wrap .m-note--left {
	text-align: left;
}
