@charset "UTF-8";
/* CSS Document */

/* カラーミー */
@media screen and (max-width: 1280px) {}
@media screen and (max-width: 980px) {}
@media screen and (max-width: 768px) {}
@media screen and (max-width: 480px) {}

/* ================================================================
 * root
================================================================== */
:root {
	--shop-color-text: #000;
	--shop-color-bg: #fff9ef;
	--shop-main-color: #000;
	--shop-a-color: #000;
  	--shop-a-color-hover: #333;
  	--shop-btn-color: #000;
	--shop-btn-color-hover: #333;
	--shop-font-xsmall: 12px;
	--shop-font-small: 13px;
	--shop-font-medium: 14px;
	--shop-font-large: 17px;
	--shop-font-xlarge: 21px;
	--shop-top-height: 0;
	--shop-bottom-height: 0;
	--shop-space-10: 10px;
	--shop-space-20: 20px;
	--shop-space-30: 30px;
	--shop-line-height-small: 1.5;
	--shop-line-height-medium: 1.75;
}
@media screen and (max-width: 768px) { /* iPadmini 768px含む以下 */
	:root {
		--shop-font-xsmall: 12px;
		--shop-font-small: 12px;
		--shop-font-medium: 13px;
		--shop-font-large: 16px;
		--shop-font-xlarge: 18px;
		--shop-space-30: 20px;
		--shop-line-height-medium: 1.75;
	}
}
:root {
	--shop-red: #ff0000;
	--shop-dark-red: #dd3333;
	--shop-blue: #0071e3;
	--shop-dark-blue: #003366;
	--shop-green: #03a10e;
	--shop-dark-green: #004010;
	--shop-orange: #f56300;
	--shop-yellow: #ffe045;
	--shop-light-yellow: #FFFF69;
	--shop-cream: #fffaf0;
	--shop-light-cream: #fffaf0;
	--shop-pink: #f05adc;
	--shop-gold: #857050;
	--shop-brown: #410700;
	--shop-gray: #767676;
	--shop-dark-gray: #333;
	--shop-light-gray: #ccc;
	--shop-light-gray2: #F0F0F0;
}

/* ================================================================
================================================================
 * 共通CSS
================================================================
================================================================== */

/* テーブル  ======================================================= */
table, .type01 table {
	width: auto;
	text-align: center;
	border-collapse: collapse; /* セルの線を重ねる */
	border-spacing: 0;
}
th, td, .type01 th, .type01 td {
	padding: 0.5em 1em;
	border: solid 1px var(--shop-light-gray);
	text-align: left;
	vertical-align: middle;
}
th, .type01 th {
	background: #f9f9f9;
}
/* type01 th,td に線を引く */
.type01 .th-bottom, .type01 .td-bottom {
	border-bottom: 3px solid #333;
}
@media screen and (max-width:980px) { /* ■変更禁止■ */
	/* tableはスタイル保持、type01はblockに */
	.type01 table {
		width: auto;
	}
	.type01 th, .type01 td {
		width: 100%;
		display: block;
		border-top: none;
	}
	.type01 tr:first-child th {
		border-top: solid 1px var(--shop-light-gray);
	}
	/* type01 th,td に線を引く */
	.type01 .th-bottom {
		border-bottom: 1px solid #aaa;
	}
	.type01 .td-bottom {
		border-bottom: 3px solid #333;
	}
}

/* 見出し  ======================================================= */
.p-product-explain h1 {
	margin: 3em 0 1.5em; 
	padding: 1.5em 0;
	border: 0;
	font-size: var(--shop-font-xlarge);
}
.p-product-explain h2, .midashi-01 {
	margin: 3em 0 1.5em; 
	padding: 0.7em 0;
	border: 0;
	border-top: 1px solid var(--shop-light-gray);
	border-bottom: 1px solid var(--shop-light-gray);
	border-left: 0;
	font-size: var(--shop-font-xlarge);
	text-align: center;
}
.p-product-explain h3, .midashi-02 {
	margin: 3em 0 1.5em; 
	padding: 0.5em 0 0.5em 1em;
	border: 0;
	border-left: solid 5px var(--shop-main-color);
	border-bottom: 0;
	font-size: var(--shop-font-large);
	line-height: var(--shop-line-height-small);
	font-weight: bold;
}
.p-product-explain h4, .p-product-explain h5, .p-product-explain h6, .midashi-03 {
	margin: 2em 0 1.5em; 
	position: relative;
	padding: 0.5em 0;
	border: 0;
	border-bottom: solid 2px var(--shop-light-gray);
	font-size: var(--shop-font-large);
	line-height: var(--shop-line-height-small);
	color: var(--shop-main-color);
	font-weight: bold;
}
.p-product-explain h4:after, .p-product-explain h5:after, .p-product-explain h6:after, .midashi-03:after {
	display: block;
	position: absolute;
	content: " ";
	bottom: -2px;
	width: 30%;
	border-bottom: solid 2px var(--shop-main-color);
}

/* 見出し（商品詳細）  ======================================================= */
/* 注目・注意書き */
.attention {
	margin: 2em 0 1.5em;
	padding: 1em;
	background-color: #fff7fa;
	border-radius: 5px;
	border: 3px solid #dd3333;
	font-size: var(--shop-font-large);
	color: #dd3333;
}
/* 見出し h3.title_00 */
h3.title_00, div.title_00 {
	margin: 3em 0 1.5em;
	padding: 1em 1em 0.8em;;
	background-color: var(--shop-main-color);
	font-size: var(--shop-font-large);
	color: #FFF;
	font-weight: bold;
}
/* 見出し h3.title_02 */
h3.title_02, div.title_02 {
	margin: 3em 0 1.5em;
	padding: 1em;
	border-left: 6px solid var(--shop-dark-gray);
	border-bottom: 1px solid var(--shop-dark-gray);
	font-size: var(--shop-font-large);
	line-height: 1.6;
	color: var(--shop-main-color);
	font-weight: bold;
}
/* 商品の特徴 上下線 title_01 */
div.title_01 {
	margin: 1.5em 0;
	padding: 1em;
	border-top: 1px solid var(--shop-gray);
	border-bottom: 1px solid var(--shop-gray);
	font-size: 15px;
	line-height: var(--shop-line-height-medium);
	color: var(--shop-main-color);
}
/* title_01内 リスト */
div.title_01 ul, .title_01 ol {
	padding-top: 1em
}
div.title_01 li {
	list-style: disc;
	margin-left: 1em;
}
div.title_01 li.none {
	list-style: none;
  	margin-left: 0;
}
/* 商品の特徴（番号付きリスト）list9 */
ol.list9, .defaultlist {
	counter-reset: li;
	margin: 0 0 2em;
	padding: 0;
	list-style: none;
}
li.list9-count {
	position: relative;
	margin: 0.5em 0;
	padding: 0.5em 1em 0.5em 4em;
	border-radius: 5px;
	background: var(--shop-light-gray2);
	color: var(--shop-main-color);
}
li.list9-count:after {
	counter-increment: li;
	content: counter(li);
	position: absolute;
	left: 0;
	top: 0;
	padding: 0.5em;
	height: 1.5em;
	width: 1.5em;
	background: var(--shop-gray);
	border-radius: 50%;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	line-height: 1.7;
	vertical-align: middle;
	font-size: var(--shop-font-medium);
}

/* CSS Grid 追加 ======================================================= */
ul.cssgrid li { margin-left: 0; }

/* CSS Grid  ======================================================= */
.cssgrid {
	display: grid !important;
	grid-column-gap: 1em;
	grid-row-gap: 1em;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	grid-auto-flow: row;
	margin-top: 0;
	margin-bottom: 2em;
}
@media screen and (max-width: 480px) { /* Smartphone 480px含む以下 */
	.cssgrid {
		grid-template-columns: minmax(0, 1fr);
}}
/* 可変 */
.cssgrid-100 { grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); }
.cssgrid-150 { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.cssgrid-200 { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.cssgrid-250 { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.cssgrid-300 { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.cssgrid-400 { grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); }
/* PC */
.grid-pc1 { grid-template-columns: minmax(0, 1fr) }
.grid-pc2 { grid-template-columns: repeat(2, minmax(0, 1fr)) }
.grid-pc3 { grid-template-columns: repeat(3, minmax(0, 1fr)) }
.grid-pc4 { grid-template-columns: repeat(4, minmax(0, 1fr)) }
.grid-pc5 { grid-template-columns: repeat(5, minmax(0, 1fr)) }
/* iPadPro */
@media screen and (max-width: 980px) {  /* iPadPro 980px含む以下 */
	.grid-pd1 { grid-template-columns: minmax(0, 1fr) }
	.grid-pd2 { grid-template-columns: repeat(2, minmax(0, 1fr)) }
	.grid-pd3 { grid-template-columns: repeat(3, minmax(0, 1fr)) }
	.grid-pd4 { grid-template-columns: repeat(4, minmax(0, 1fr)) }
}
/* iPadmini */
@media screen and (max-width: 768px) { /* iPadmini 768px含む以下 */
	.grid-pdm1 { grid-template-columns: minmax(0, 1fr) }
	.grid-pdm2 { grid-template-columns: repeat(2, minmax(0, 1fr)) }
	.grid-pdm3 { grid-template-columns: repeat(3, minmax(0, 1fr)) }
	.grid-pdm4 { grid-template-columns: repeat(4, minmax(0, 1fr)) }
}
/* Smartphone */
@media screen and (max-width: 480px) { /* Smartphone 480px含む以下 */
	.grid-mb1 { grid-template-columns: minmax(0, 1fr) }
	.grid-mb2 { grid-template-columns: repeat(2, minmax(0, 1fr)) }
	.grid-mb3 { grid-template-columns: repeat(3, minmax(0, 1fr)) }
	.grid-mb4 { grid-template-columns: repeat(4, minmax(0, 1fr)) }
}
/* 余白 横 */
.ggap5 { grid-column-gap: 5px !important; }
.ggap10 { grid-column-gap: 10px !important; }
.ggap20 { grid-column-gap: 20px !important; }
.ggap30 { grid-column-gap: 30px !important; }
/* 余白 縦 */
.rgap5 { grid-row-gap: 5px !important; }
.rgap10 { grid-row-gap: 10px !important; }
.rgap20 { grid-row-gap: 20px !important; }
.rgap30 { grid-row-gap: 30px !important; }

/* flexbox  ======================================================= */
.flex-container {
	display: flex;
	flex-wrap: nowrap; /*要素を折り返す*/
	flex-direction: row; /* 要素の配置方向（初期値 左から右 row） */
	justify-content: flex-start; /* flexアイテムの配置 （初期値 左寄せ flex-start） */
	align-items: stretch; /* 子要素を縦軸で上下のどこで揃えるか （初期値 上部揃え stretch） */
	align-content: flex-start; /* flexアイテムを折り返したときに上下の配置や余白を指定 上寄せで配置 */
	padding-left: 0;
}
.flex-item {
	flex-grow: 0; /* flexアイテムの比率（初期値 0 指定しない）	*/
	flex-shrink: 1; /* flexアイテムの縮小率 （初期値 1 1:1） */
	flex-basis: auto; /* flexアイテムの基本の幅を指定 */
	margin: 2px;
}
@media screen and (max-width: 980px) {  /* iPadPro 980px含む以下 */
		.flex-container {
				display:block;
		}
}

/* button ※button注意（テーマテンプレートが使用）  ======================================================= */
a.btn01, a.button {
	display: inline-block;
	text-decoration: none;
	font-weight: 600;
	cursor: pointer;
	margin: 1.3em 0;
	padding: 20px 40px;
	transition: background-color 100ms ease-in-out;
	background-color: var(--shop-btn-color);
	border-width: 1px; border-style: solid; border-color: var(--shop-btn-color);
	color: #FFF!important;
	text-align: center;
	line-height: 1.6;
	border-radius: 5px;
}
@media screen and (max-width: 980px) {  /* iPadPro 980px含む以下 */
	a.btn01, a.button {
		display: block;
		padding: 15px 20px;
	}
}
/* hover 色＋白文字 */
a.btn01:hover, a.button:hover {
	text-decoration: none;
	background-color: var(--shop-btn-color-hover);
	border-width: 1px; border-style: solid; border-color: var(--shop-btn-color-hover);
	color: #FFF;
	transition: background-color 100ms ease-in-out, color 100ms ease-in-out;
}
/* 横幅 100% */
a.btn01-100, a.btn01-full { display: block; border-radius: 0px; }
/* 横幅 80% */
a.btn01-90 { display: block; width: 80%; margin-left: auto; margin-right: auto; }
/* 横幅 50% */
a.btn01-50, a.btn01-center { display: block; width: 50%; margin-left: auto; margin-right: auto; }
/* 矢印 */
.arrow-right:before { font-family: FontAwesome; content: "\f061"; }

/* 色地 ======================================================= */
/* ホワイト */
.bg-white { background-color: #FFF!important; }
/* レッド */
.bg-red { background-color: var(--shop-red)!important; }
a.bg-red { background-color: var(--shop-red)!important; border-width: 1px; border-style: solid; border-color: var(--shop-red)!important; color: #FFF!important; }
a.bg-red:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-red)!important; color: var(--shop-red)!important; }
/* ピンクレッド */
.bg-pinkred { background-color: #ff2525!important; }
a.bg-pinkred { background-color: #ff2525!important; border-width: 1px; border-style: solid; border-color: #ff2525!important; color: #FFF!important; }
a.bg-pinkred:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: #ff2525!important; color: #ff2525!important; }
/* ダークレッド, ワインレッド */
.bg-dark-red, .bg-winered { background-color: var(--shop-dark-red)!important; }
a.bg-dark-red, a.bg-winered { background-color: var(--shop-dark-red) !important; border-width: 1px; border-style: solid; border-color: var(--shop-dark-red) !important; color: #FFF!important; }
a.bg-dark-red:hover, a.bg-winered:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-dark-red) !important; color: var(--shop-dark-red) !important; }
/* イエロー */
.bg-yellow { background-color: var(--shop-yellow)!important; }
a.bg-yellow { background-color: var(--shop-yellow)!important; border-width: 1px; border-style: solid; border-color: var(--shop-yellow)!important; color: #FFF!important; }
a.bg-yellow:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-yellow)!important; color: var(--shop-orange)!important; }
/* クリーム */
.bg-cream { background-color: #FFFaf0!important; }
a.bg-cream { background-color: #FFFaf0!important; border-width: 1px; border-style: solid; border-color: #FFFaf0!important; }
a.bg-cream:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: #FFFaf0!important; color: #FF7F00!important; }
/* ブルー */
.bg-blue { background-color: var(--shop-blue)!important; }
a.bg-blue { background-color: var(--shop-blue)!important; border-width: 1px; border-style: solid; border-color: var(--shop-blue)!important; color: #FFF!important; }
a.bg-blue:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-blue)!important; color: var(--shop-blue)!important; }
/* ペールブルー（淡いブルー） */
.bg-pale-blue, .bg-blue2 { background-color: #eef5fa!important; }
a.bg-pale-blue, a.bg-blue2 { background-color: #eef5fa!important; border-width: 1px; border-style: solid; border-color: #eef5fa!important; color: #FFF!important; }
a.bg-pale-blue:hover, a.bg-blue2:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: #2980b9!important; color: #2980b9!important; }
/* ダークブルー */
.bg-dark-blue { background-color: var(--shop-main-color)!important; }
a.bg-dark-blue { background-color: var(--shop-main-color)!important; border-width: 1px; border-style: solid; border-color: var(--shop-main-color)!important; color: #FFF!important; }
a.bg-dark-blue:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-main-color)!important; color: var(--shop-main-color)!important; }
/* グリーン */
.bg-green { background-color: #27ae60!important; }
a.bg-green { background-color: #27ae60!important; border-width: 1px; border-style: solid; border-color: #27ae60!important; color: #FFF!important; }
a.bg-green:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: #27ae60!important; color: #27ae60!important; }
/* オレンジ */
.bg-orange { background-color: var(--shop-orange)!important; }
a.bg-orange { background-color: var(--shop-orange)!important; border-width: 1px; border-style: solid; border-color: var(--shop-orange)!important; color: #FFF!important; }
a.bg-orange:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-orange)!important; color: var(--shop-orange)!important; }
/* レッド-オレンジ グラデ */
.bg-red-orange { background: linear-gradient(to right, var(--shop-red) 0%, #FF7F00 100%)!important; border: 0; }
a.bg-red-orange { background: linear-gradient(to right, var(--shop-red) 0%, #FF7F00 100%)!important; color: #FFF!important; border: 0; }
a.bg-red-orange:hover { background: linear-gradient(to right, #FF7F00 0%, #FF7F00 100%)!important; color: #FFF!important; border: 0; }
/* ゴールド */
.bg-gold { background-color: var(--shop-gold)!important; }
a.bg-gold { background-color: var(--shop-gold)!important; border-width: 1px; border-style: solid; border-color: var(--shop-gold)!important; color: #FFF!important; }
a.bg-gold:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-gold)!important; color: var(--shop-gold)!important; }
/* 淡いゴールド */
.bg-gold2 { background-color: #FAF7F3!important; }
a.bg-gold2 { background-color: #FAF7F3!important; border-width: 1px; border-style: solid; border-color: #FAF7F3!important; }
a.bg-gold2:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-gold)!important; }
/* ブラウン */
.bg-blown { background-color: var(--shop-brown)!important; }
a.bg-blown { background-color: var(--shop-brown)!important; border-width: 1px; border-style: solid; border-color: var(--shop-brown)!important; color: #FFF!important; }
a.bg-blown:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-brown)!important; color: var(--shop-brown)!important; }
/* 濃いグレー */
.bg-grey, .bg-gray { background-color: var(--shop-gray)!important; }
a.bg-grey, a.bg-gray { background-color: var(--shop-gray)!important; border-width: 1px; border-style: solid; border-color: var(--shop-gray)!important; color: #FFF!important; }
a.bg-grey:hover, a.bg-gray:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-gray)!important; color: var(--shop-gray)!important; }
/* 淡いグレー */
.bg-grey2, .bg-gray2 { background-color: var(--shop-light-gray2)!important; }
a.bg-grey2, a.bg-gray2 { background-color: var(--shop-light-gray2)!important; border-width: 1px; border-style: solid; border-color: var(--shop-light-gray2)!important; }
a.bg-grey2:hover, a.bg-gray2:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: var(--shop-light-gray2)!important; color: var(--shop-gray)!important; }
/* ブラック */
.bg-black { background-color: #000!important; }
a.bg-black { background-color: #000!important; border-width: 1px; border-style: solid; border-color: #000!important; color: #FFF!important; }
a.bg-black:hover { background-color: #FFF!important; border-width: 1px; border-style: solid; border-color: #000!important; color: #000!important; }

/* 色枠 ======================================================= */
/* レッド */
.bd-red { border-width: 1px; border-style: solid; border-color: var(--shop-red)!important; }
a.bd-red { border-width: 1px; border-style: solid; border-color: var(--shop-red)!important; background-color: #FFF!important; color: var(--shop-red)!important; }
a.bd-red:hover { border-width: 1px; border-style: solid; border-color: var(--shop-red)!important; background-color: var(--shop-red)!important; color: #FFF!important; }
/* ダークレッド */
.bd-dark-red { border-width: 1px; border-style: solid; border-color: var(--shop-dark-red)!important; }
a.bd-dark-red { border-width: 1px; border-style: solid; border-color: var(--shop-dark-red)!important; background-color: #FFF!important; color: var(--shop-dark-red)!important; }
a.bd-dark-red:hover { border-width: 1px; border-style: solid; border-color: var(--shop-dark-red)!important; background-color: var(--shop-dark-red)!important; color: #FFF!important; }
/* オレンジ */
.bd-orange { border-width: 1px; border-style: solid; border-color: var(--shop-orange)!important; }
a.bd-orange { border-width: 1px; border-style: solid; border-color: var(--shop-orange)!important; background-color: #FFF!important; color: var(--shop-orange)!important; }
a.bd-orange:hover { border-width: 1px; border-style: solid; border-color: var(--shop-orange)!important; background-color: var(--shop-orange)!important; color: #FFF!important; }
/* クリーム */
.bd-cream { border-width: 1px; border-style: solid; border-color: #ffecbc!important; }
/* ブルー */
.bd-blue { border-width: 1px; border-style: solid; border-color: var(--shop-blue)!important; }
a.bd-blue { border-width: 1px; border-style: solid; border-color: var(--shop-blue)!important; background-color: #FFF!important; color: var(--shop-blue)!important; }
a.bd-blue:hover { border-width: 1px; border-style: solid; border-color: var(--shop-blue)!important; background-color: #2980b9!important; color: #FFF!important; }
/* ダークブルー */
.bd-dark-blue { border-width: 1px; border-style: solid; border-color: var(--shop-main-color)!important; }
a.bd-dark-blue { border-width: 1px; border-style: solid; border-color: var(--shop-main-color)!important; background-color: #FFF!important; color: var(--shop-main-color)!important; }
a.bd-dark-blue:hover { border-width: 1px; border-style: solid; border-color: var(--shop-main-color)!important; background-color: var(--shop-main-color)!important; color: #FFF!important; }
/* グリーン */
.bd-green { border-width: 1px; border-style: solid; border-color: var(--shop-green)!important; }
a.bd-green { border-width: 1px; border-style: solid; border-color: var(--shop-green)!important; background-color: #FFF!important; color: var(--shop-green)!important; }
a.bd-green:hover { border-width: 1px; border-style: solid; border-color: var(--shop-green)!important; background-color: #2980b9!important; color: #FFF!important; }
/* 皇漢ブラウン */
.bd-blown { border-width: 1px; border-style: solid; border-color: var(--shop-brown)!important; }
a.bd-blown { border-width: 1px; border-style: solid; border-color: var(--shop-brown)!important; background-color: #FFF!important; color: var(--shop-brown)!important; }
a.bd-blown:hover { border-width: 1px; border-style: solid; border-color: var(--shop-brown)!important; background-color: var(--shop-brown)!important; color: #FFF!important; }
/* ゴールド（星）*/
.bd-gold { border-width: 1px; border-style: solid; border-color: var(--shop-gold)!important; }
a.bd-gold { border-width: 1px; border-style: solid; border-color: var(--shop-gold)!important; background-color: #FFF!important; color: var(--shop-gold)!important; }
a.bd-gold:hover { border-width: 1px; border-style: solid; border-color: var(--shop-gold)!important; background-color: var(--shop-gold)!important; color: #FFF!important; }
/* グレー */
.bd-glay, .bd-gray { border-width: 1px; border-style: solid; border-color: var(--shop-gray)!important; }
a.bd-glay, a.bd-gray { border-width: 1px; border-style: solid; border-color: var(--shop-gray)!important; background-color: #FFF!important; color: var(--shop-gray)!important; }
a.bd-glay:hover, a.bd-gray:hover { border-width: 1px; border-style: solid; border-color: var(--shop-gray)!important; background-color: var(--shop-gray)!important; color: #FFF!important; }
/* グレー2 淡い */
.bd-glay2, .bd-gray2 { border-width: 1px; border-style: solid; border-color: var(--shop-light-gray)!important; }
a.bd-glay2, a.bd-gray2 { border-width: 1px; border-style: solid; border-color: var(--shop-light-gray)!important; background-color: #FFF!important; color: #000!important; }
a.bd-glay2:hover, a.bd-gray2:hover { border-width: 1px; border-style: solid; border-color: var(--shop-light-gray)!important; background-color: var(--shop-light-gray)!important; color: #000!important; }

/* 角丸 border-radius ======================================================= */
.bdr { border-radius: 15px !important; }
.bdr3, .r3, .br3 { border-radius: 3px !important; }
.bdr5, .r5, .br5 { border-radius: 5px !important; }
.bdr10, .r10, .br10 { border-radius: 10px !important; }
.bdr15, .r15, .br15 { border-radius: 10px !important; }
.bdr20, .r20, .br20 { border-radius: 20px !important; }
.bdr30, .r30, .br30 { border-radius: 30px !important; }

/* 線幅 border-width ======================================================= */
.bd1 { border-width: 1px !important; }
.bd2 { border-width: 2px !important; }
.bd3 { border-width: 3px !important; }

/* font-color 文字色 ======================================================= */
.red, .fc-red { color: var(--shop-red)!important; }
.dark-red { color: var(--shop-dark-red) !important; }
.blue { color: var(--shop-blue) !important; }
.dark-blue { color: var(--shop-main-color) !important; }
.green { color: var(--shop-green) !important; }
.orange, .fc-orange { color: var(--shop-orange) !important; } /* #ff4800 */
.yellow { color: var(--shop-yellow) !important; }
.cream, .fc-cream { color: var(--shop-cream) !important; }
.pink { color: var(--shop-pink) !important; }
.gold { color: var(--shop-gold) !important; }
.brown, .fc-brown { color: var(--shop-brown) !important; }
.gray { color: var(--shop-dark-gray) !important; }
.black { color: #000 !important; }
.white, .fc-w, a.fc-w:hover { color: #FFF !important; }

/* font-weight 文字 太さ ======================================================= */
.normal { font-weight: normal !important; font-weight: 500 !important; }
b, .bold { font-weight: bolder !important; font-weight: 600 !important; }

/* line-height 行間 ======================================================= */
.lh1 { line-height: 1 !important; }
.lh15 { line-height: 1.5 !important; }
.lh18 { line-height: 1.8 !important; }

/* text-align 文字 配置 ======================================================= */
.center { text-align: center !important; }
.right { text-align: right !important; }
.left { text-align: left !important; }
/* 上下中央 */
.center-place { place-content: center; place-items: center; }

/* border-bottom 下線 ======================================================= */
.bdb-gray { border-bottom: 1px solid var(--shop-dark-gray) !important; }

/* アンダーライン(マーカー) ======================================================= */
.under_yellow { background: linear-gradient(transparent 50%, var(--shop-yellow) 50%) }
.under_blue { background: linear-gradient(transparent 50%, var(--shop-blue) 50%) }

/* font-size 文字サイズ ======================================================= */
.fs80, .text80 { font-size: 80% !important; line-height: 1.6 !important; }
.fs85, .text85 { font-size: 85% !important; line-height: 1.6 !important; }
.fs90, .text90 { font-size: 90% !important; }
.fs100, .text100 { font-size: 100% !important; }
.fs110, .text110 { font-size: 110% !important; }
.fs120, .text120 { font-size: 120% !important; }
.fs130, .text130 { font-size: 130% !important; }
.fs140, .text140 { font-size: 140% !important; }
.fs150, .text150 { font-size: 150% !important; }
.fs160, .text160 { font-size: 160% !important; }
.fs170, .text170 { font-size: 170% !important; }
.fs180, .text180 { font-size: 180% !important; }
.fs190, .text190 { font-size: 190% !important; }
.fs200, .text200 { font-size: 200% !important; }
/* ピクセル固定 */
.f12 { font-size: 12px !important; }
.f13 { font-size: 13px !important; }
.f14 { font-size: 14px !important; }
.f15 { font-size: 15px !important; }
.f16 { font-size: 16px !important; }
.f17 { font-size: 17px !important; }
.f18 { font-size: 18px !important; }
.f19 { font-size: 19px !important; }
.f20 { font-size: 20px !important; }
.f26 { font-size: 26px !important; }
.f28 { font-size: 28px !important; }
/* Pad */
@media screen and (max-width: 980px) {  /* iPadPro 980px含む以下 */
	.mb-text100 { font-size: 100% !important; }
	.mb-text120 { font-size: 120% !important; }
	.mb-text150 { font-size: 150% !important; }
}

/* width 横幅 ======================================================= */
.w100 { display: block; width: 100px; max-width: 100%; }
.w200 { display: block; width: 200px; max-width: 100%; }
.w300 { display: block; width: 300px; max-width: 100%; }
.w400 { display: block; width: 400px; max-width: 100%; }
.w500 { display: block; width: 500px; max-width: 100%; }
.w600 { display: block; width: 600px; max-width: 100%; }
.w700 { display: block; width: 700px; max-width: 100%; }
.w800 { display: block; width: 800px; max-width: 100%; }
.w900 { display: block; width: 900px; max-width: 100%; }

/* margin 空き(外側)  ======================================================= */
.m0 { margin:0!important; }
.m5 { margin: 5px !important; }
.m10 { margin: 10px !important; }
.m15 { margin: 15px !important; }
.m20 { margin: 20px !important; }
.m30 { margin: 30px !important; }
/* margin 上下 */
.mtb0 { margin-top: 0 !important; margin-bottom: 0 !important; }
.mtb1em { margin-top: 1em !important; margin-bottom: 1em !important; }
.mtb2em { margin-top: 2em !important; margin-bottom: 2em !important; }
.mtb3em { margin-top: 3em !important; margin-bottom: 3em !important; }
.mtb4em { margin-top: 4em !important; margin-bottom: 4em !important; }
.mtb5 { margin-top: 5px !important; margin-bottom: 5px !important; }
.mtb10 { margin-top: 10px !important; margin-bottom: 10px !important; }
.mtb15 { margin-top: 15px !important; margin-bottom: 15px !important; }
.mtb20 { margin-top: 20px !important; margin-bottom: 20px !important; }
.mtb30 { margin-top: 30px !important; margin-bottom: 30px !important; }
.mtb40 { margin-top: 40px !important; margin-bottom: 40px !important; }
/* margin-top */
.mt1em { margin-top: 1em !important; }
.mt2em { margin-top: 2em !important; }
.mt3em { margin-top: 3em !important; }
.mt4em { margin-top: 4em !important; }
.mt0 { margin-top:0!important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
/* margin-bottom */
.mb1em { margin-bottom: 1em !important; }
.mb2em { margin-bottom: 2em !important; }
.mb3em { margin-bottom: 3em !important; }
.mb4em { margin-bottom: 4em !important; }
.mb0 { margin-bottom: 0!important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
/* margin-right */
.mr0 { margin-right:0!important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr30 { margin-right: 30px !important; }
.mr40 { margin-right: 40px !important; }
.mr50 { margin-right: 50px !important; }
/* margin-left */
.ml0 { margin-left:0!important; }
.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml30 { margin-left: 30px !important; }
.ml40 { margin-left: 40px !important; }
.ml50 { margin-left: 50px !important; }

/* padding 空き(内側)  ======================================================= */
.p0, .pd0 { padding:0!important; }
.p5, .pd5 { padding: 5px !important; }
.p10, .pd10 { padding: 10px !important; }
.p15, .pd15 { padding: 15px !important; }
.p20, .pd20 { padding: 20px !important; }
.p25, .pd25 { padding: 25px !important; }
.p30, .pd30 { padding: 30px !important; }
.p40, .pd40 { padding: 40px !important; }
.p50, .pd50 { padding: 50px !important; }
/* padding 上下 */
.ptb5 { padding-top: 5px !important; padding-bottom: 5px !important; }
.ptb10 { padding-top: 10px !important; padding-bottom: 10px !important; }
.ptb15 { padding-top: 15px !important; padding-bottom: 15px !important; }
.ptb20 { padding-top: 20px !important; padding-bottom: 20px !important; }
.ptb30 { padding-top: 30px !important; padding-bottom: 30px !important; }
.ptb40 { padding-top: 40px !important; padding-bottom: 40px !important; }
/* padding-top */
.pt0 { padding-top:0!important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt10 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }
/* padding-bottom */
.pb0 { padding-bottom:0!important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }
/* padding-right */
.pr0 { padding-right:0!important; }
.pr5 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr30 { padding-right: 30px !important; }
.pr40 { padding-right: 40px !important; }
.pr50 { padding-right: 50px !important; }
/* padding-left */ 
.pl0 { padding-left:0!important; }
.p5 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl30 { padding-left: 30px !important; }
.pl40 { padding-left: 40px !important; }
.pl50 { padding-left: 50px !important; }
/* padding 他 */ 
.pd5-15 { padding: 5px 15px !important; }
.pd5-20 { padding: 5px 20px !important; }
.pd10-15 { padding: 10px 15px !important; }
.pd10-20 { padding: 10px 20px !important; }

/* 改行・改行無効  ======================================================= */
/* PCのみ 改行しない */
.br-sp { display: none !important }
/* iPadPro以下 改行する */
@media screen and (max-width: 480px) { /* Smartphone 480px含む以下 */
.br-sp { display: inline !important }
}

/* alignment  ======================================================= */
.alignright, img.alignright,
.alignright-important, img.alignright-important,
.p-entry__body .alignright { float: right; }
img.alignright, blockquote.alignright, .wp-caption.alignright,
.p-entry__body img.alignright, .p-entry__body blockquote.alignright, .p-entry__body .wp-caption.alignright  { margin: 0.5em 0 1em 1em; }

.alignleft,, img.alignleft,
.alignleft-important, img.alignleft-important,
.p-entry__body .alignleft { float: left; }
img.alignleft, blockquote.alignleft, .wp-caption.alignleft,
.p-entry__body img.alignleft, .p-entry__body blockquote.alignleft, .p-entry__body .wp-caption.alignleft { margin: 0.5em 1em 1em 0; }

.aligncenter, img.aligncenter,
.p-entry__body .aligncenter { display:block; margin-left:auto; margin-right:auto; margin-bottom:1em; }
img.aligncenter, blockquote.aligncenter, .wp-caption.aligncenter,
.p-entry__body img.aligncenter, .p-entry__body blockquote.aligncenter, .p-entry__body .wp-caption.aligncenter{ margin-top: 0.5em; margin-bottom: 1em; }

.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright { display: table; }

@media screen and (max-width: 980px) {  /* iPadPro 980px含む以下 */
	/* センタリング */
	.alignleft, img.alignleft,
	.alignright, img.alignright {
		float: none!important;
		display: block!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
	/* 左右固定 XXX-important */
	.alignleft-important, img.alignleft-important {
		float: none!important;
		display: block!important;
		margin-left: 0!important;
		margin-right: auto!important;
		padding-right:1em!important;
	}
	.alignright-important, img.alignright-important {
		float: none!important;
		display: block!important;
		margin-right: 0!important;
		margin-left: auto!important;
		padding-left:1em!important;
	}
}

/* 表示・非表示　※aligncenter設定の下  ======================================================= */
/* 全 非表示 */
.dpnone-all { display: none }
/* PCのみ非表示=スマホ・ipad・ipadProのみ表示 */
@media screen and (min-width: 1281px) { /* PC以上 1281px含む以上 */
  .on_sp_ipad_ipadPro,
  .pcnone { display: none!important; }
}
/* ipadPro・PCのみ非表示=スマホ・ipadのみ表示 */
@media screen and (min-width: 981px) { /* ipadPro以上 981px含む以上 */
  .on_sp_ipad,
  .pcnone { display:none!important; }
}
/* ipad・iPadPro・PCのみ非表示=スマホのみ表示 */
@media screen and (min-width: 481px) { /* Smartphone以上 481px含む以上 */
  .on_sp,
  .pcnone { display:none!important; }
}
/*  ipad pro・ipad・Smartphoneのみ非表示=PCのみ表示 */
@media screen and (max-width: 1280px) { /* PC 1280px含む以下 */
  .on_pc,
  .dpnone, .mbnone { display:none!important; }
}
/*  ipad・Smartphoneのみ非表示（ipadPro・PCのみ表示） */
@media screen and (max-width: 980px) {  /* iPadPro 980px含む以下 */
  .on_ipadPro_pc,
  .dpnone, .mbnone { display:none!important; }
}
/*  Smartphoneのみ非表示（ipad・iPadPro・PCのみ表示） */
@media screen and (max-width: 480px) { /* Smartphone 480px含む以下 */
  .on_ipad_ipadPro_pc,
  .dpnone, .mbnone { display:none!important; }
}