@charset "utf-8";

html, body {
	color: #3b4043;
	font-size: 16px;
	line-height: 1.7;
	height: 100%;
  scroll-padding-top: 150px;
}
@media screen and (max-width: 960px) {
  html, body {
    scroll-padding-top: 80px;
  }
}


/*
## font
*/

html, body, select, button, input, textarea {
	font-family: 'Avenir', 'Helvetica Neue', 'Helvetica', 'Arial', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', sans-serif;
}


/*
## h1, h2, h3
*/
.level_h1 {
  font-size: 1.4em;
  font-weight: bold;
  border: none;
  margin: 0 0 30px;
  padding: 0
}
.level_h1 span {
  border: none;
  font-weight: bold;
  padding: 0;
}

.level_h2 {
  border: none;
  font-size: 1.3em;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 0;
}
.level_h2 span {
  font-weight: bold;
}

.level_h3 {
  border: none;
  font-size: 1.1em;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 0;
}
.level_h3 span {
  font-weight: bold;
}

@media screen and (max-width: 960px) {
  .level_h1 {
    font-size: 1.25em;
  }
  .level_h2 {
    font-size: 1.1em;
  }
  .level_h3 {
    font-size: 1em;
  }
}


/*
## アンカー
*/
a, a:link, a:visited {
	color: inherit;
	text-decoration: none;
}

a:hover {
	opacity: 0.75;
}

a img:hover {
	opacity: 1;
}

/* リンクに下線を付ける（文章の中にリンクがある場合など視覚的に分かるようにする） */
#contents .text_underline {
  text-decoration: underline;
}


/*
## margin / padding
*/
.mt-10 {
	margin-top: 10px;
}
.mt-15 {
	margin-top: 15px;
}
.mt-20 {
	margin-top: 20px;
}
.mt-25 {
	margin-top: 25px;
}
.mt-30 {
	margin-top: 30px;
}
.mt-40 {
	margin-top: 40px;
}
.mt-50 {
	margin-top: 50px;
}

.pt-10 {
	padding-top: 10px;
}
.pt-15 {
	padding-top: 15px;
}
.pt-20 {
	padding-top: 20px;
}
.pt-25 {
	padding-top: 25px;
}
.pt-30 {
	padding-top: 30px;
}
.pt-40 {
	padding-top: 40px;
}
.pt-50 {
	padding-top: 50px;
}

/*
## ボタン
*/
#wrap [class*="btn"] {
	border-radius: 5em;
}

/** ボタンの色　デフォルト **/
a[class*="btn_"], input[type="button"], input[type="submit"], input[type="reset"], button[type="button"], button[type="submit"], button[type="reset"] {
 background: #fff;
 color: #3b4043;
 border-style: solid;
 border-width: 1px;
 border-color: #252525;
}
#wrap [class*="btn"]:hover {
 background-color: #333;
 border-color: #333;
 color: #fff;
}
#wrap [class*="btn"]:disabled:hover {
 background-color: #ccc;
 color: #3b4043;
}

a.btn_1, input.btn_1[type="button"], input.btn_1[type="submit"], input.btn_1[type="reset"], button.btn_1[type="button"], button.btn_1[type="submit"], button.btn_1[type="reset"] {
	background: #b6002a;
	color: #fff;
	border-style: solid;
	border-width: 1px;
	border-color: #b6002a;
	font-size: 1em;
	font-weight: normal;
	min-width: 180px;
	min-height: 36px;
	margin-left: 10px;
	margin-right: 10px;
	line-height: 36px;
	cursor: pointer;
	border-radius: 6px;
	padding: 4px 16px;
	display: inline-block;
	text-decoration: none;
}

/* 大 */
a.btn_lg,
input.btn_lg[type="button"],
input.btn_lg[type="submit"],
input.btn_lg[type="reset"],
button.btn_lg[type="button"],
button.btn_lg[type="submit"],
button.btn_lg[type="reset"] {
	font-size: 1em;
	letter-spacing: -0.03em;
}


/*
## 登録、確定ボタン
*/
#saveButton, #completeButton, #orderLink2, #selfOrderLink, #giftOrderLink {
	background-color: #b6002a;
	border-color: #b6002a;
}


/*
## 更新、変更ボタン
*/
input[type="button"].updateButton {
	background: #b6002a;
	border-color: #b6002a;
	color: #fff;
}

/*
## jquery-uiボタン
*/
body .ui-state-active, body .ui-widget-content .ui-state-active, body .ui-widget-header .ui-state-active, body a.ui-button:active, body .ui-button:active, body .ui-button.ui-state-active:hover {
  border: 1px solid #b6002a;
  background: #b6002a;
  font-weight: normal;
  color: #fff;
}
.ui-widget .ui-widget {
  font-size: 1em;
}


/*
## table
*/
table, .table {
  border: 1px solid #b9b9b9;
  table-layout: fixed;
}
.tr, .table tr, .table.th_30 tr {
  border-bottom: 1px solid #b9b9b9;
}
.tr:last-of-type, .table tr:last-of-type, .table.th_30 tr:last-of-type {
  border-bottom: none;
}
.td, .th, .table th, .table td, .table.th_30 .th, .table.th_30 th {
  position: relative;
  background: none;
  border: none;
  padding: 15px;
}

/** table 各項目区切り線 **/
/* 下線なし */
.nameSeiItemWrap.tr,
.areaCode1ItemWrap.tr,
.postCode1ItemWrap.tr,
.address11ItemWrap.tr,
.address21ItemWrap.tr,
.emailPc1ItemWrap.tr,
.passwordItemWrap.tr,
.changePasswordItemWrap.tr,
.directMail.tr,
.telGuide.tr,
.mailMagazineFlgItemWrap.tr {
	border-bottom: none;
}

/** table 注釈 **/
.table_notes {
	font-size: 0.85em;
}
input + .table_notes, label + .table_notes {
	margin-top: 5px;
}

/** table tdに注釈が入った場合のth **/
.loginNotificationFlgItemWrap .th {
	vertical-align: top;
}

@media screen and (max-width: 960px) {
  #layoutGroup .th, #layoutGroup th {
    padding-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
   /* position */
   .postCode1ItemWrap .td {
     position: relative;
   }
 }


/*
## form
*/
input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="password"], input[type="datetime"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime-local"], input[type="number"], textarea, select {
	border: 1px solid #b9b9b9;
	border-radius: 10px;
}
input[type="button"], input[type="submit"], input[type="reset"], button[type="button"], button[type="submit"], button[type="reset"] {
  border: 1px solid #252525;
  border-radius: 10px;
}

textarea {
  min-height: 100px;
}

/* プレースホルダ */
::placeholder {
  color: #707070;
  font-size: 14px;
}
::-ms-input-placeholder {
  color: #b9b9b9;
}
:-ms-input-placeholder {
  color: #b9b9b9;
}
input:required::placeholder {
  color: #3b4043;
  font-size: 14px;
}
input:required::-ms-input-placeholder {
  color: #3b4043;
}
input:required:-ms-input-placeholder {
  color: #3b4043;
}

/* ラベル */
label + label {
	margin-left: 0;
}
label:not(:last-of-type) {
	margin-right: 1em;
}

@media screen and (max-width: 960px) {
	/* 電話番号 */
  input.TEL_1, input.TEL_2, input.TEL_3 {
    width: calc(99.9% / 3 - 14px);
  }
}

/*
## text
*/

/* 強調文字 */
em {
	color: #b6002a;
}

/* 文字サイズ */
.size_small {
  font-size: 0.8em;
  font-feature-settings: "palt";
}


/*
## (?)アイコン
*/
#wrap .guideLink > a::after {
  content: "?";
  border: 1px solid #252525;
  border-radius: 50%;
  display: inline-block;
  line-height: 1.2em;
  width: 1.2em;
  height: 1.2em;
  margin-left: 10px;
  text-align: center;
}
/* ログイン通知の(?)で表示する説明文 */
.layoutGroup.table .guideLinkWrap {
  position: relative;
  z-index: 1;
}
.layoutGroup.table .guideLink {
  cursor: pointer;
  position: absolute;
  top: -1.2em;
  left: 3.5em;
}
.layoutGroup.table .guideLink > a {
  pointer-events: none;
}
.layoutGroup.table .loginAlertInfo {
  position: absolute;
  left: 2.5em;
  top: -5px;
  background-color: #fff;
  border: 1px solid #252525;
  border-radius: 10px;
  padding: 10px;
  z-index: 1;
  display: none;
}
.layoutGroup.table .loginAlertInfo.is_show {
  display: block;
}
.layoutGroup.table .loginAlertInfo .title {
	font-weight: bold;
	margin-bottom: 5px;
}

@media screen and (min-width: 961px) {
  .layoutGroup.table .guideLinkWrap {
    display: inline-block;
  }
  .layoutGroup.table .loginAlertInfo {
    width: 430px;
    left: 6.5em;
    top: -30px;
  }
}
@media screen and (max-width: 960px) {
  .layoutGroup.table .guideLink {
    top: -1.7em;
    left: 9.5em;
	}
  .layoutGroup.table .loginAlertInfo {
    width: 320px;
    position: absolute;
    left: 0%;
    top: 5px;
    z-index: 1;
  }
}


/*
## slick
*/
.slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0;
}
button[type="button"].slick-arrow {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  width: 50px;
  height: 50px;
}
button[type="button"].slick-next {
  right: -10px;
}
button[type="button"].slick-prev {
  display: none !important;
  left: -10px;
}
.slick-prev:before, .slick-next:before {
  content: '';
  display: block;
  background: #252525 url(../images/arrow_top_white.svg) no-repeat center;
  background-size: 18px;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  font-family: 'Sans-Serif';
  font-size: 0;
  line-height: 0;
  opacity: 1;
  color: inherit;
}
.slick-next:before {
  transform: rotate(90deg);
}
.slick-prev:before {
  transform: rotate(-90deg);
}
@media screen and (max-width: 960px) {
  .slick-list {
    padding-right: 15%;
  }
}
@media screen and (max-width: 600px) {
  button[type="button"].slick-arrow {
    width: 30px;
    height: 30px;
    right: -5px;
  }
  .slick-prev:before, .slick-next:before {
    width: 30px;
    height: 30px;
    background-size: 14px;
  }
}


/*
## 基本レイアウト
*/
#wrap {
	width:100%;
	margin:0;
	position:relative;
	text-align:left;
}
.contents {
	width:100%;
	margin:0 auto;
	position:relative;
	background-color:#fff;
}
.contents section {
	padding:0;
	margin:0;
}
.contents .information {
	margin: 0 0 15px 5px;
}
.topGroupName {
	max-width: 1220px;
	width: 100%;
	margin: 50px auto 0 auto;
  padding: 0 10px;
	float: none;
	position: relative;
}
#Shop .topGroupName {
	margin-top: 0;
}
.layoutGroup {
	margin-bottom: 30px;
	position: relative;
	z-index: 1;
}
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, .layoutGroup.table .td .items {position: relative;}/* IE11 エラー吹き出しの位置調整 */
}
@media (max-width: 751px) and (orientation: landscape) {/* iPhone6- 横向き用 */
	#wrap {
		max-width:980px;
	}
}

/* フォーム */
/* #layoutGroup.table .th,
#inputArea .table .th {
  position: relative;
} */
.table .th,
.table .th {
  position: relative;
}
/* #layoutGroup.table .th label[class*=REQUIRED],
#inputArea .table .th label[class*=REQUIRED] {
  position: relative;
  left: 50px;
  display: inline-block;
  max-width: calc(100% - 50px);
} */
/* #layoutGroup.table .th label,
#inputArea .table .th label {
  position: relative;
  left: 50px;
  display: inline-block;
  max-width: calc(100% - 50px);
} */
.table .th label,
.table .th label {
  position: relative;
  left: 50px;
  display: inline-block;
  max-width: calc(100% - 50px);
}

body[id*=Confirm] .postCode {
  padding-right: 20px;
}

@media screen and (min-width: 961px) {
  /* body[id*=Confirm] #layoutGroup.table .th {
    text-align: right;
  }
  body[id*=Confirm] #layoutGroup.table .th label:not([class*=REQUIRED]),
  body[id*=Confirm] #inputArea .table .th label:not([class*=REQUIRED]) {
    left: 0;
	} */
  body[id*=Confirm] .table .th {
    text-align: right;
  }
  body[id*=Confirm] .table .th label:not([class*=REQUIRED]),
  body[id*=Confirm] .table .th label:not([class*=REQUIRED]) {
    left: 0;
	}
}
body[id*=Confirm] .topGroupName .th label {
  font-size: 0.8em;
}
@media screen and (max-width: 960px) {
	.topGroupName {
    max-width: 1000px;
		margin-top: 30px;
	}
	#Shop .topGroupName {
    padding: 0;
  }
	.topGroupName .table .th {
		padding-bottom: 0;
	}
  /* #layoutGroup.table .th label:not([class*=REQUIRED]),
  #inputArea .table .th label:not([class*=REQUIRED]) {
    left: 0;
	} */
  .table .th label:not([class*=REQUIRED]),
  .table .th label:not([class*=REQUIRED]) {
    left: 0;
	}
	.topGroupName .isMemberAgreementFlg_itemLabel,
	.topGroupName .isUseAgreementFlg_itemLabel,
	.topGroupName .isOptin1_itemLabel {
		text-align: center;
	}
}

/*エラーメッセージ*/
.errorMessage {
  /* color: #b6002a;
  font-weight: bold; */
}

/*
## 1カラム用レイアウト
*/
.oneColumn .topGroupName {
	width: 100%;
}

/*
## 2カラム用レイアウト
*/
.contents.twoColumns .mainContentsWrap {
 display: flex;
 max-width: 1240px;
 margin: 0 auto;
 padding: 0 20px;
}
.mainContents {
 width: calc(100% - 260px);
 padding-left: 50px;
}
.sideNavi {
  display: none;
}
@media screen and (max-width: 960px) {
	.contents.twoColumns .mainContentsWrap {
		flex-direction: column;
		padding: 0 10px;
	}
	.mainContents {
		width: 100%;
		padding-left: 0;
		margin-bottom: 60px;
	}
}

/*
## レスポンシブ用レイアウト
*/
@media screen and (max-width: 960px) {
	.oneColumn .topGroupName, .twoColumns .topGroupName {
		width: 100%;
	}
	.twoColumns form {
		float: none;
	}
}

/*
## パンくず
*/
.panNav {
 background: none;
 max-width: 1220px;
 width: calc(99.9% - 20px);
 margin: 0 auto;
 padding-top: 50px;
}
.panNav ul {
	font-size:0.8em;
}
.panNav ul li {
	display:inline-block;
}
.panNav ul li + li:before {
	content:">";
	padding:0 5px;
}
@media screen and (max-width: 960px) {
  .panNav {
    padding: 30px 0 0;
  }
}
@media screen and (max-width: 600px) {
	.panNav {
    overflow-x: auto;
  }
  .panNav ul {
    margin: 0 0 20px;
    white-space: nowrap;
  }
}

/*
## ヘッダー
*/
header {
 border-bottom: 1px solid #707070;
 position: -webkit-sticky;
 position: sticky;
 top: 0;
 right: 0;
 left: 0;
 z-index: 1001;
}
#Shop header {
 border-bottom: none;
}

/* headerWrap
------------------------------------- */
.headerWrap {
 background-color: #fff;
}

.headerMain {
	width: 100%;
	margin: 0;
	padding: 0;
}

.headerPreContent,
.headerMainContentInnner {
	padding: 0 20px;
}

.headerPreContent {
	background-color: #a3876d;
}
.headerPreContent ul {
	text-align: right;
}
.headerPreContent li {
	display: inline-block;
}
.headerPreContent li > a {
	color: #fff;
	display: block;
	font-size: 14px;
	line-height: 1;
	padding: 10px 0 10px 45px;
}

.headerMainContentInnner {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	line-height: 1;
	padding-top: 12px;
}
#headerLogo {
	width: 300px;
	min-width: 120px;
}
.headerMain .logo {
	font-size: 0;
	float: none;
	width: 100%;
	margin-top: 0;
}
.headerMain .logo a {
	background: url('../images/logo.svg') no-repeat left center;
	background-size: contain;
	display: block;
	height: 43px;
	width: 100%;
}
.headerMain .logo a strong {
	position: absolute;
	overflow: hidden;
	height: 1px;
	width: 1px;
}

/* -- 検索フォーム -- */

/* -- ナビゲーションボタン -- */
.headerNavi {
	padding-right: 20px;
}
.headerNavi li {
	display: inline-block;
	margin-left: 7px;
	vertical-align: top;
}
.headerNavi li a {
	display: block;
	font-size: 12px;
	text-align: center;
	position: relative;
	padding-top: 27px;
}
.headerNavi li a::before {
	content: '';
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	bottom: 1.7em;
	left: 0;
	right: 0;
	top: 0;
	height: 26px;
	width: 26px;
	margin: 0 auto;
	position: absolute;
}
.headerNavi .login a::before {
	background-image: url('../images/icon_login.svg');
}
.headerNavi .member a::before {
	background-image: url('../images/icon_member.svg');
}
.headerNavi .cart a::before {
	background-image: url('../images/icon_cart.svg');
	left: -6px;
}
.headerNavi .cart .count {
	background-color: #1a1818;
	border-radius: 10px;
	color: #fff;
	display: block;
	font-size: 10px;
	line-height: 16px;
	height: 16px;
	min-width: 16px;
	padding: 0 5px;
	text-align: center;
	position: absolute;
	z-index: 1;
	top: 0;
	right: -10px;
}
.headerNavi li.hello span {
	color: #5571bb;
	font-size: 14px;
	display: inline-block;
	padding: 10px 10px 0 0;
}

/* 検索ボタン */
.headerNavi .searchBtn {
	display: none;
}

/* メニューボタン */
.headerNavi .siteMenu {
 display: none;
}

/* globalNavi
------------------------------------- */
.globalNavi {
	background-color: #fff;
	background-image: none;
	box-shadow: none;
	width: 100%;
	z-index: 1;
}

/* common.css打消し */
#wrap .globalNavi ul li {
	float: none;
	border: none;
	height: auto;
	width: auto;
	background: none;
	text-align: left;
}
#wrap .globalNavi ul li a {
	color: #3b4043;
	display: block;
	font-size: 16px;
	height: auto;
	width: auto;
	padding: 0;
	text-shadow: none;
}
.globalNavi ul li:hover {
	opacity: 1;
}

/* グローバルナビゲーション */
.globalNavi > ul {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#wrap .globalNavi > ul > li {
  cursor: pointer;
  width: auto;
}
#wrap .globalNavi > ul > li > a {
  padding: 10px 1.5vw;
  text-align: center;
}

/* グローバルナビゲーションオープン時 */
.globalNavi .naviDetail {
  display: none;
  -webkit-box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 0.3);
  box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 0.3);
  position: absolute;
  left: 0;
  right: 0;
  background-color: rgba(255, 255, 255, 0.95);
  max-height: 65vh;
  width: 100%;
  z-index: 100;
  cursor: default;
  overflow-y: scroll;
}
.globalNavi .naviDetail::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
.globalNavi .naviDetail::-webkit-scrollbar-track {
  background: #f2f0ed;
}
.globalNavi .naviDetail::-webkit-scrollbar-thumb {
  background: #bb8d71;
}
.globalNavi > ul > li:hover > .naviDetail {
  display: block;
}
.globalNavi .naviDetailList {
  width: 95%;
  max-width: 1220px;
  margin: 0 auto;
  padding: 60px 0;
}
.globalNavi .naviDetailListItems {
  position: relative;
}
.globalNavi .naviDetailListItems + .naviDetailListItems {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #707070;
}
.naviDetailListTitle {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 10px;
}
.globalNavi .naviDetailListItems + .naviDetailListItems .naviDetailListTitle {
  margin-top: 10px;
}
#wrap .globalNavi .naviDetailListTitle > a {
  font-size: 20px;
  font-weight: bold;
}

.globalNavi .naviDetailListLinks {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: auto;
  padding-right: 6em;
}
#wrap .globalNavi .naviDetailListLinks > li {
  width: calc(99.9% / 3);
}
#wrap .globalNavi .naviDetailListLinks > li > a {
  line-height: 1.3;
  padding: 10px 10px 10px 20px;
  position: relative;
}
#wrap .globalNavi .naviDetailListLinks > li > a > span {
  display: block;
}
.globalNavi .naviDetailListLinks > li > a::before {
  content: "";
  background: url("../images/arrow.svg") no-repeat center;
  background-size: contain;
  width: 0.9em;
  height: 0.9em;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.globalNavi .listAll {
  position: absolute;
  top: 20px;
  right: 0;
}
#wrap .globalNavi .listAll a {
  border: 1px solid #252525;
  border-radius: 5em;
  padding: 0 7px;
  display: block;
  font-size: 0.9em;
}

@media screen and (min-width: 961px) {
 /** pcのみ **/
	/* -- 検索フォーム -- */
 #wrap .headerSearch {
  background: none;
  font-size: 0.85em;
  padding: 0;
  border: none;
  margin: 0 0 0 auto;
  flex: 1 0 0%;
  overflow: hidden;
 }
 .headerSearch .search_ctrl {
  position: relative;
  width: 0%;
  min-width: 48px;
  max-width: 270px;
  height: 48px;
  float: right;
  overflow: hidden;
  -webkit-transition: width 0.7s;
  -moz-transition: width 0.7s;
  transition: width 0.7s;
 }
 .search_ctrl.search_ctrl_open {
  max-width: 270px;
  width: 100%;
  overflow: visible;
 }
 .searchNavi {
  padding: 0;
 }
 .search_text {
  position: absolute;
  top: 0;
  right: 0px;
  width: 100%;
  max-width: 23em;
 }
 .search_text::after {
  display: block;
  width: 270px;
  border-bottom: 1px solid #1a1818;
  content: '';
  position: absolute;
  bottom: 7px;
  z-index: 1;
 }
 .searchNavi input.q {
  border: none;
  outline: none;
  width: 100%;
  max-width: 23em;
  height: 42px;
  margin: 0;
  z-index: 10;
  padding: 0 10px;
  box-shadow: none;
  background: transparent;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
 }
 .searchNavi input.q::-webkit-input-placeholder {
  color: #979898;
 }
 .searchNavi input.q:-moz-placeholder {
  color: #979898;
 }
 .searchNavi input.q::-moz-placeholder {
  color: #979898;
 }
 .searchNavi input.q:-ms-input-placeholder {
  color: #979898;
 }
 .search_icon, .search_btn {
  width: 48px;
  height: 42px;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  padding: 0;
  margin: 0;
  text-align: center;
  cursor: pointer;
 }
 .search_icon, input.searchNaviButton {
  width: 48px;
  height: 42px;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  padding: 0;
  margin: 0;
  line-height: 48px;
  text-align: center;
  cursor: pointer;
 }
 input.searchNaviButton {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  background: transparent;
  color: transparent;
  border: none;
  outline: none;
  z-index: -1;
 }
 #wrap input[type='button'].searchNaviButton:hover {
  opacity: 1;
 }
 .search_icon {
  background-color: #fff;
  background-image: url(../images/icon_search.svg);
  background-repeat: no-repeat;
  background-size: 26px;
  background-position: center top 4px;
  z-index: 90;
 }
 .search_ctrl.search_ctrl_open .search_icon {
  z-index: 11;
 }
}

@media screen and (max-width: 960px) {
	/* headerWrap
 ------------------------------------- */
	#headerLogo {
		width: 210px;
	}
	.headerMain .logo a {
		height: 32px;
	}

	.headerPreContent {
		display: none;
	}

	.headerMainContentInnner {
    height: 65px;
    margin: 0;
    padding: 0 54px 0 10px;
    position: relative;
    border-bottom: 1px solid #dedede;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }

	/* -- 検索フォーム -- */
	#wrap .headerSearch {
		display: none;
	}
	/* ヘッダーに検索フォームがある場合
	#wrap .headerSearch {
  position: fixed;
  z-index: 100;
  top: -120%;
  left: 0;
  width: 100%;
  height: 100vh;
		padding: 35px 20px;
  background: rgba(242, 240, 237, 0.9);
  transition: all 0.6s;
 }
 #wrap .headerSearch.panelactive {
  top: 65px;
 }
	.searchNavi {
		padding: 0;
	}
	.search_ctrl {
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 8px;
	}
	.searchNavi input.q {
  box-sizing: border-box;
  font-size: 14px;
  border: none;
  background: no-repeat;
  box-shadow: none;
  width: calc(99.9% - 42px);
 }
 .searchNavi input.searchNaviButton {
  background: transparent url(../images/icon_search.svg) no-repeat center;
  background-size: 20px;
  line-height: 1;
 }*/

	/* -- ナビゲーションボタン -- */
	.headerNavi {
    padding-right: 10px;
    display: flex;
    flex-direction: row-reverse;
  }
  .headerNavi li {
    margin-left: 0;
    white-space: nowrap;
  }
  .headerNavi li a {
    font-size: 10px;
    letter-spacing: -0.02em;
    padding-top: 25px;
  }
  .headerNavi li a::before {
    height: 24px;
    width: 24px;
  }
  .headerNavi .cart {
    float: left;
    padding-right: 12px;
  }
  .headerNavi .cart .count {
    line-height: 14px;
    height: 14px;
    min-width: 14px;
    right: -9px;
  }

	/* 検索ボタン */
	/* ヘッダーに検索フォームがある場合
 .headerNavi .searchBtn {
  width: 40px;
  right: 50px;
  display: block;
 }
 .headerNavi .searchBtn::before {
  content: '';
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  bottom: 1.7em;
  left: 0;
  right: 0;
  height: 25px;
  width: 30px;
  margin: 0 auto;
  position: absolute;
  background-image: url('../images/icon_search.svg');
  transform: translateY(-50%);
  top: 50%;
 }*/

	/* メニューボタン */
 .headerNavi .siteMenu {
  display: block;
 }

	/* globalNavi
 ------------------------------------- */
 .globalNavi {
		display: none;
	}
}

/*---------------------------------------------
	sp menu
---------------------------------------------*/
.spSiteMenu {
	display: none;
	z-index: 100010;
}
@media screen and (max-width: 960px) {
  .spSiteMenu {
    font-size: 14px;
    display: block;
    position: relative;
  }
  .spSiteMenuInner {
    display: none;
    background-color: #f2f0ed;
    overflow: scroll;
    width: 100vw;
    height: 100vh;
    padding: 24px 20px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1099;
  }
  .userWrap > a {
    position: relative;
    display: block;
    width: fit-content;
    padding: 0 10px 0 35px;
  }
  .userWrap > a .user {
    font-size: 16px;
  }
  .userWrap > a::before {
    content: "";
    background: url('../images/icon_member_circle.svg') no-repeat center;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: -2px;
  }
  .menuSearch {
    padding: 20px 0;
  }
  .menuSearch .searchNavi {
    padding: 0;
    position: relative;
  }
  .menuSearch .menuSearchInner {
    background-color: #fff;
    border: 1px solid #707070;
    border-radius: 8px;
  }
  #wrap .menuSearch .search_text input {
    background: none;
    box-sizing: border-box;
    font-size: 14px;
    border: none;
    border-radius: 8px;
    box-shadow: none;
    width: calc(99.9% - 42px);
    padding-right: 0;
  }
  #wrap .menuSearch .search_text input:focus-visible {
    outline: none;
    font-weight: normal;
  }
  #wrap .menuSearch .search_btn input {
    background: transparent url(../images/icon_search.svg) no-repeat center;
    background-size: 20px;
    line-height: 1;
  }
  #wrap .menuSearch .search_btn:hover {
    background: none;
  }
  .spSiteMenu .menu {
    margin-top: 25px;
    border-top: 1px solid #252525;
  }
  .spSiteMenu .navi {
    border-bottom: 1px solid #252525;
    margin: 0 auto;
  }
  .spSiteMenu .menu + .menu {
    margin-top: -1px;
  }

  /* グローバルナビゲーション（社員ログイン時） */
  .spSiteMenu .navi.employeeOnly {
    display: none;
  }
  .spSiteMenu.is_loginEmployee .navi.employeeOnly {
    display: block;
  }
  .spSiteMenu.is_loginEmployee .navi.consumerOnly {
    display: none;
  }

  .spSiteMenu .naviTitle, .spSiteMenu .naviChild > li {
    position: relative;
  }
  .spSiteMenu .naviTitle::after, .spSiteMenu .naviChild > li::after, .spSiteMenu .naviTitle.naviLink::after {
    content: "";
    background-size: contain;
    margin-left: auto;
    width: 16px;
    height: 16px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .spSiteMenu .naviTitle {
    padding: 18px 18px 18px 0;
  }
  .spSiteMenu .naviTitle::after {
    background: url('../images/arrow_down.svg') no-repeat center;
  }
  .spSiteMenu .naviTitle.naviLink::after {
    background: url('../images/arrow_right.svg') no-repeat center;
  }
  .spSiteMenu .naviTitle.naviLink a {
    display: block;
  }
  .spSiteMenu .naviChild {
    display: none;
  }
  .spSiteMenu .naviChild > li {
    border-top: 1px dotted #707070;
  }
  .spSiteMenu .naviChild > li::after {
    background: url('../images/arrow_right.svg') no-repeat center;
  }
  .spSiteMenu .naviChild > li > a {
    display: block;
    padding: 15px 0 15px 1em;
  }
	.spSiteMenu .topLinks {
    margin: 0 auto;
  }
  .spSiteMenu .topLinks > li {
    display: inline-block;
    width: 49%;
  }
	.spSiteMenu .topLinks > li > a {
		display: block;
    padding: 10px 0;
  }
	.spSiteMenu .topRegister {
    margin: 15px auto 0;
		display: flex;
  }
  .spSiteMenu .topRegister > li {
    display: inline-block;
  }
  .spSiteMenu .topRegister > li > a {
    display: inline-block;
    border: 1px solid #252525;
    border-radius: 5em;
    background: #fff;
    padding: 5px 7px;
    width: 100%;
    text-align: center;
  }
  .spSiteMenu .topRegister > li:first-child {
    margin-right: 5px;
		max-width: 210px;
  }
  .spSiteMenu .topRegister .registerBtn {
    flex: 1 0 0%;
  }
  .spSiteMenu .links {
    margin: 25px auto 0;
  }
  .spSiteMenu .links > li {
    display: inline-block;
    width: 49%;
  }
	.spSiteMenu .links > li > a {
		display: block;
    padding: 10px 0;
  }
  .spSiteMenu .note {
    margin: 25px auto 0;
    font-weight: bold;
    letter-spacing: 0.02em
  }
  .spSiteMenu .note > a {
    font-weight: bold;
  }

  /* メニューボタン */
  .siteMenu {
    display: block;
    width: 39px;
    height: 39px;
    position: fixed;
    right: 8px;
    top: 12px;
    z-index: 1100;
  }
  .bar {
    width: 20px;
    height: 1px;
    display: block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    background-color: #1a1818;
  }
  .bar-top {
    top: 16px;
  }
  .bar-bottom {
    bottom: 16px;
  }
  .siteMenu.close .bar-top {
    transform: translate(-50%, 0) rotate(45deg);
    transition: transform .3s;
  }
  .siteMenu.close .bar-middle {
    opacity: 0;
    transition: opacity .3s;
  }
  .siteMenu.close .bar-bottom {
    transform: translate(-50%, -6px) rotate(-45deg);
    transition: transform .3s;
  }
}


/*
## フッター
*/
footer {
	background: none;
	margin-top: 80px;
}
footer div, footer section, footer nav {
	margin: 0;
}

/* footerLinks
------------------------------------- */
.footerLinks {
	background-color: #f2f0ed;
	max-width: 1780px;
	width: calc(100% - 40px);
	margin: 0 auto;
}
.footerLinksInner {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
	border-top: 1px solid #707070;
}
.footerLinksInner > li {
	border-bottom: 1px solid #707070;
	width: calc(99.9% / 5);
}
.footerLinksInner > li:not(:nth-child(5n)) {
	border-right: 1px solid #707070;
}
.footerLinksInner > li > a {
	display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 90px;
	padding: 5px 30px 5px 25px;
	position: relative;
}
.footerLinksInner > li > a::after {
 content: "";
 background: url("../images/arrow.svg") no-repeat center;
 background-size: contain;
 width: 0.9em;
 height: 0.9em;
 position: absolute;
 right: 18px;
}

/* footerGuide
------------------------------------- */
.footerGuide {
	max-width: 1780px;
	width: calc(100% - 40px);
	margin: 50px auto 0 auto;
	padding: 0;
}
.footerGuideInner {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
	-ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
	border: 1px solid #707070;
	border-radius: 30px;
	width: 100%;
}
.footerGuideInner > li {
	width: calc(99.9% / 4);
}
.footerGuideInner > li:not(:last-child) {
	border-right: 1px solid #707070;
}
.footerGuideInner > li > a {
	display: block;
	padding: 50px 20px;
}
.footerGuideImg, .footerGuideTitle, .footerGuideTxt {
	margin-left: auto;
	margin-right: auto;
	max-width: 330px;
	width: 100%;
}
.footerGuideImg {
 height: 50px;
	text-align: center;
}
#wrap .footerGuideImg > img {
 height: 100%;
}
.footerGuideTitle {
 font-weight: bold;
 margin-top: 10px;
 text-align: center;
}
.footerGuideTxt {
 font-size: 14px;
 margin-top: 10px;
}

/* footerContents
------------------------------------- */
.footerContents {
 background-color: #f2f0ed;
 margin-top: 50px;
 padding: 0;
}

.footerContentsInner, .footerBottomCopy {
 max-width: 1780px;
 width: calc(100% - 40px);
 margin: 0 auto;
}

.footerContentsInner {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 padding: 120px 0 50px;
}

.footerInfo {
 width: auto;
 margin: 0 3% 0 0;
 background: none;
 padding: 0;
}
.footerInfoBox {
 margin-top: 5px;
}
.footerInfo .infoTitle {
 font-size: 1.1em;
 font-weight: bold;
}
.infoTelWrap {
 margin-top: 10px;
}
.footerInfo .telNum {
 display: inline-block;
}
.footerInfo .telNum {
 font-size: 32px;
 font-weight: 500;
 line-height: 1;
}
.footerInfo .telNum span {
 font-size: 0.8em;
 font-weight: 500;
 line-height: 1;
}
.footerInfo .telTxt {
 display: inline-block;
 font-size: 14px;
}
.footerInfo .telTxt > span {
 display: inline-block;
}
.footerInfo .note {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'Avenir', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
  display: inline-block;
  margin-top: 10px;
}
.footerInfo .note > li {
 font-size: 12px;
 padding-left: 1em;
 text-indent: -1em;
 text-align: left;
}
.footerInfo .btn_inquiry {
  display: block;
  margin-top: 20px;
}
.footerInfo .btn_inquiry > a {
  background-color: #fff;
  border: 1px solid #252525;
  border-radius: 5em;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  width: 236px;
  padding: 8px;
  text-align: center;
}
#wrap .footerInfo .btn_inquiry:hover {
 background: transparent;
 color: #3b4043;
}

.footerInfo .footer_link {
  margin-top: 10px;
}
.footerInfo .footer_link > a {
  font-weight: bold;
	font-size: 14px;
}

.footerNavi {
  color: inherit;
  margin: 0;
  width: auto;
}
.footerNaviList > li {
  display: inline-block;
}
.footerNaviList > li > a {
  display: block;
  padding: 10px;
  white-space: nowrap;
}

.footerBottomCopy {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 padding: 30px 0;
}
.footerBottomCopy .copyright {
 font-size: 14px;
}
.policyBanner dl {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}
.policyBanner dl > dd {
 font-size: 12px;
 line-height: 1.5;
 margin-left: 10px;
 width: 230px
}

@media screen and (min-width: 961px) {
  /** pcのみ **/
  footer a:hover {
    opacity: 0.7;
  }
  .footerInfo {
    width: 60%;
  }
  .footerNaviList > li {
    display: inline-block;
    width: 30%;
    box-sizing: border-box;
  }
}

@media screen and (max-width: 960px) {
  /* footerLinks
 ------------------------------------- */
  .footerLinks {
    font-size: 13px;
  }
  .footerLinksInner > li {
    width: calc(99.9% / 2);
  }
  .footerLinksInner > li:nth-child(5n) {
    border-right: 1px solid #707070;
  }
  .footerLinksInner > li:nth-child(even) {
    border-right: none;
  }
  .footerLinksInner > li > a {
    height: 65px;
    padding: 5px 22px 5px 12px;
    letter-spacing: -0.05em;
  }
  .footerLinksInner > li > a::after {
    right: 8px;
  }

  /* footerGuide
 ------------------------------------- */
  .footerGuideInner > li {
    width: calc(99.9% / 2);
  }
  .footerGuideInner > li:nth-child(even) {
    border-right: none;
  }
  .footerGuideInner > li:not(:nth-last-child(-n+2)) {
    border-bottom: 1px solid #707070;
  }
  .footerGuideInner > li > a {
    padding: 30px 10px;
  }
  .footerGuideInner > li > a::after {
    content: "";
    display: block;
    background: url("../images/arrow.svg") no-repeat center;
    background-size: contain;
    width: 1em;
    height: 1em;
    margin: 8px auto 0;
  }
  .footerGuideTitle {
    font-size: 14px;
  }
  .footerGuideTxt {
    display: none;
  }

  /* footerContents
 ------------------------------------- */
  .footerContentsInner {
    display: block;
    padding: 45px 0 20px;
  }
  .footerInfo {
    margin: 0;
    text-align: center;
  }
  .footerNavi {
    font-size: 13px;
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #252525;
  }
  .footerNaviList > li {
    padding: 10px 0;
    width: 49%;
  }
	.footerNaviList > li:nth-child(odd) > a {
		padding-left: 0;
	}
	.footerNaviList > li:nth-child(even) > a {
		padding-right: 0;
	}
  .footerBottomCopy {
    display: block;
  }
  .footerBottomCopy .copyright {
    font-size: 13px;
    margin-bottom: 10px;
  }
  .policyBanner dl > dd {
    padding-right: 50px;
  }
}

/* LP */
.footerLP {
  text-align: center;
  font-size: 14px;
}
.link_external a::after {
    content: "";
    background: url(../images/icon_external-link.svg) center / contain no-repeat;
    display: inline-block;
    margin-left: 5px;
    width: 0.9em;
    height: 0.9em;
}


/*
## サイドコンテンツ
*/
.sideContents {
 float: none;
 width: 260px;
 margin-top: 50px;
}
.sideContents > ul {
 border-top: 1px solid #707070;
}
.sideContents > ul > li {
 border-bottom: 1px solid #707070;
}
#wrap .sideContents > ul > li.no_pc {
	display: block;
}
.sideContents > ul > li > a {
 display: flex;
 align-items: center;
 padding: 20px;
 background-color: #f2f0ed;
 line-height: 1.4;
}
@media screen and (max-width: 960px) {
	.sideContents > ul {
		display: flex;
		flex-wrap: wrap;
	}
	.sideContents > ul > li {
		width: 50%;
	}
	.sideContents > ul > li:nth-of-type(2n + 1) {
		border-right: 1px solid #707070;
	}
	.sideContents > ul > li > a {
		height: 100%;
		padding: 15px 10px;
		font-size: 0.9rem;
	}
}


/*
## SP用ナビ(セレクトボックス)
*/
@media screen and (max-width: 960px) {
	.nav_select_sp {
		margin-top: 20px;
	}
}

/*
## その他
*/
.attention {
	color: #b6002a;
}

/*
## その他　注意書き
*/
/* ※付き(ulにclassを指定して使用) */
.note_asterisk {
  padding-left: 1em;
	font-size: 14px;
}
.note_asterisk li::before {
  content: "※";
  display: inline-block;
  text-indent: -1em;
}
/* ・ ● ① など付き */
.note {
  padding-left: 1em;
  text-indent: -1em;
}

/*
## その他　スクロールアップ
*/
#scrollUp {
  background: #252525 url("../images/arrow_top_white.svg") no-repeat center;
  background-size: 18px;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  right: 20px;
  bottom: 100px;
	z-index: 100000 !important;
}
@media screen and (max-width: 960px) {
  #scrollUp {
    bottom: 30px;
  }
}

/*
## その他　規約同意チェックボックス
*/
#isMemberAgreementFlgItemWrap, #isUseAgreementFlgItemWrap {
	/*text-align: center;*/
	margin: 10px 0 40px;
	width: 100%;
}


/*
## その他　郵便番号検索
*/
input.postCodeSearchButton {
 background: #fff;
 color: #3b4043;
 border: 1px solid #252525;
	border-radius: 5em;
 font-size: 14px;
 padding: 0 7px;
 line-height: 0;
 height: 37px;
 vertical-align: top;
}
.layoutGroup .td .items .postCodeSearchButton {
  margin-left: 5px;
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  input[class*="postCode1"] {
    width: calc(100% - 105px);
  }
}
@media screen and (max-width: 768px) {
  .layoutGroup .td .items .postCodeSearchButton {
    position: absolute;
    top: -32px;
    right: 15px;
  }
	*::-ms-backdrop, .layoutGroup .td .items .postCodeSearchButton {
		top: -45px;
		right: 0;
	}
}

@media screen and (max-width: 960px) {
	input[type="button"].postCodeSearchButton,
	input[type="button"].orderPostCodeSearchButton {
		display: none;
	}
}


/*
## その他　入力項目必須
*/
.required:after {
  content: "必須";
  background-color: #b6002a;
  color: #fff;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1;
  padding: 3px 8px;
  float: none;
  margin: 0;
  position: absolute;
  left: -50px;
  top: 50%;
  transform: translateY(-50%);
}
/* 必須アイコン付きタイトル */
.requiredTitle:after {
	content: "必須";
	border-radius: 10px;
	color: #fff;
	background: #b6002a;
	font-weight: normal;
	font-size: 13px;
	line-height: 1;
	padding: 3px 8px;
	margin: 0 0 0 10px;
	min-width: 2em;
	text-align: center;
}
@media screen and (max-width: 960px) {
  .required:after {
    transform: translateY(-10px);
  }
}

/*
## その他　条件付き必須
*/
.required_condition:after {
	content: "必須";
	background-color: #b6002a;
  color: #fff;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1;
  padding: 3px 8px;
  float: none;
  margin: 0;
  position: absolute;
  left: -50px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 960px) {
  .required_condition:after {
    transform: translateY(-10px);
  }
}

/* 入力項目必須フォーム */
input:required, select:required, textarea:required,
input.REQUIRED_INPUT, select.REQUIRED_COMBO, textarea.REQUIRED_TEXT_AREA {
	background-color: #e0d7ca;
	border-color: #e0d7ca;
}
input:-webkit-autofill, input:required:-webkit-autofill {
 box-shadow: 0 0 0 1000px white inset;
	border: 1px solid #b9b9b9;
}
input:disabled,
select:disabled,
textarea:disabled,
input:disabled:hover,
input:read-only {
	background-color: #ccc;
  opacity: .7;
  cursor: auto;
}
/* input:valid,
select:valid,
textarea:valid {
	background-color: #fff;
} */
input:required:read-only,
textarea:required:read-only {
	background-color: #f0f0f0;
	cursor: not-allowed;
}
/* IE11用 */
input:required.readonly,
textarea:required.readonly {
	background-color: #f0f0f0;
	cursor: not-allowed;
}

/* 入力必須のエラー吹き出し */
.__error .alertMessageContent {
  background: none;
  border: none;
  padding: 0;
  margin: 0 0 0 2px;
  font-size: 13px;
  font-weight: bold;
  color: #b6002a;
}

/* お名前、フリガナ */
.__error_nameSei,
.__error_nameSeiKana,
.__error_orderNameSei,
.__error_oederNameSeiKana {
	z-index: 2;
}
.__error_nameMei,
.__error_nameMeiKana,
.__error_orderNameMei,
.__error_orderNameMeiKana {
	z-index: 1;
}
.nameSeiPreLabel, .nameMeiPreLabel, .nameSeiKanaPreLabel, .nameMeiKanaPreLabel {
  width: 2.5em;
  display: inline-block;
}
.nameSei, .nameSeiKana {
  margin-right: 20px;
}
@media screen and (max-width: 960px) {
  input.nameSei, input.nameMei, input.nameSeiKana, input.nameMeiKana {
    margin-right: 0;
    width: calc(99.9% - 3em);
  }
}
/* 確認画面の余白調整（文字数が多い時、セイの右側に余白ができる為） */
body[id$="Confirm"] .nameSeiTdSurround .items,
body[id$="Confirm"] .nameSeiKanaTdSurround .items {
	column-gap: 20px;
}
body[id$="Confirm"] .nameSei,
body[id$="Confirm"] .items .nameSeiKana {
	margin-right: 0;
}

/* 生年月日のサブミット注意吹き出し */
.__error_birthdayMonth {
	z-index: 2;
}
.__error_birthdayDay {
	z-index: 1;
}

/* 注文入力、押し払い方法 */
 /* お支払い方法 */
 .paymentMethodGroup {
	position: relative;
}
.__error_selectedPaymentMethod {
	position: absolute;
	top: 0;
	left: 200px;
}
body#LP .__error_selectedPaymentMethod {
  top: -30px;
  left: 0px;
}

/* フォーム入力時のエラー */
.layoutGroup .td .items {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.layoutGroup .td .items .__error {
  position: relative !important;
  top: 0 !important;;
  left: 0 !important;;
  order: -1;
  width: 100%;
}
.layoutGroup .td .items .__error.__error_nameSei {
  order: -2;
}
.layoutGroup .td .items .checkboxLabel {
  margin-left: 5px;
}
.layoutGroup .td .items .table_notes {
  width: 100%;
  margin: 0 0 0.5em;
}

.isMemberAgreementFlgItemWrap .items {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.isMemberAgreementFlgItemWrap .items .__error {
  position: relative !important;
  top: 0 !important;;
  left: 0 !important;;
  order: -1;
  width: 100%;
  text-align: left;
}
@media screen and (max-width: 960px) {
  .isMemberAgreementFlgItemWrap .items .__error {
    text-align: center;
  }
}


/* submit後の画面上部エラーエリア */
#errorGroup.show {
	display: block;
}
#errorGroup.show .errorMessage_mock {
  position: relative;
  background-color: #fff;
  padding: 25px 0;
  border: 2px solid #b6002a;
  border-radius: 10px;
  margin-bottom: 50px;
}
#errorGroup.show .errorMessage_mock .messageText {
  display: block;
  width: fit-content;
  margin: 0 auto;
  color: #b6002a;
  font-weight: bold;
}
#errorGroup.show .errorMessage_mock .messageText .required:after {
  margin-right: 5px;
  position: relative;
  left: 0;
  top: -1px;
}
#errorGroup .errorMessage_mock .messageText {
  display: none;
}
#errorGroup .errorMessage {
  /* display: none; */
}
#errorGroup .errorMessage .alertMessageContentTitle {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  margin-left: 2px;
  font-size: 16px;
  font-weight: bold;
  color: #b6002a;
}
#errorGroup .errorMessage .alertMessageContent {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  margin: 0 0 5px 2px;
  font-size: 13px;
  font-weight: bold;
  color: #b6002a;
}
#errorGroup .errorMessage .alertMessageContent::before {
  content: "※";
}

.debugLink {
	position: absolute;
}
@media screen and (max-width: 960px) {
  #errorGroup.show .errorMessage_mock {
    padding: 15px;
    margin-bottom: 30px;
  }
  #errorGroup.show .errorMessage_mock .messageText {
    font-size: 13px;
  }
}
#errorGroup.show .alertMessageContentTitle {
  display: none;
}


/* 「同意する」に必須アイコンを付ける */
#isMemberAgreementFlg_label::before,
#isUseAgreementFlg_label::before {
	content: "必須";
	background-color: #b6002a;
	color: #fff;
	border-radius: 10px;
	font-size: 13px;
	line-height: 1;
	padding: 3px 8px;
	margin: 0 10px 0 0;
}

#isMemberAgreementFlgItemWrap .items,
#isUseAgreementFlgItemWrap .items {
	position: relative;
}

/* 個人情報の取扱い */
.privacyPolicyTitle > span {
  display: inline-block;
}
#privacyPolicyGroup {
  margin-top: 60px;
}
.privacyPolicyPartsIncludeItemWrap {
  border: 1px solid #707070;
  padding: 25px 0;
}
#pagePartsHtmlText_PrivacyPolicy_innerId {
  height: 180px;
  overflow-y: scroll;
  padding: 5px 3%;
}
.privacyPolicyTxt {
  margin-bottom: 10px;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.privacyPolicyTxt a {
  text-decoration: none;
  border-bottom: 1px solid #3b4043;
  padding-bottom: 1px;
}

/*
## フォーム　生年月日
*/
.birthdayYearTdSurround .items {
  align-items: flex-start;
}
select.birthdayMonth,
select.birthdayDay {
  margin: 0 5px;
}
@media screen and (max-width: 600px) {
  select.birthdayYear {
    margin: 0 0 10px;
    width: 100%;
  }
  select.birthdayMonth {
    margin-left: 0;
  }
}

/*
## フォーム　電話番号
*/
.telSeparateLabel {
  padding: 0 6px;
}
@media screen and (max-width: 375px) {
  .telSeparateLabel {
    padding: 0 3px;
  }
}

/*
## フォーム　無番地の時の注意文言改修
*/
#__error_address21 .alertMessage .subText, /* 会員登録・会員情報の確認/変更 */
#__error_address2 .alertMessage .subText, /* マイページ定期変更 */
#__error_orderAddress2 .alertMessage .subText, /* 注文入力・LP */
#__error_senderAddress2 .alertMessage .subText /* ギフト */ {
	padding-left: 20px;
	display: inline-block;
	text-indent: -1em;
	font-size: 13px;
}

/*
## エラーページ系（systemError）
*/
#systemError .errorMessage {
	text-align:center;
	margin: 24px auto 48px;
}
#systemError .mainText {
	font-size: 1.3em;
}
#systemError .detailText {
	margin: 2em auto;
}
#systemError .detailText a {
	text-decoration: underline;
}
 .errorMessage .linkText a {
	text-decoration: underline;
}
@media screen and (max-width: 960px) {
	#systemError .detailText {
		width: 90%;
		text-align: left;
	}
}

/* 404 */
#systemError.notFound .mainText {
	text-indent: 1em;
	margin-bottom: 0;
}
@media screen and (max-width: 960px) {
	#systemError.notFound .mainText {
		text-indent: 0;
		font-size: 1.3rem;
	}
}

/* エラーページその他 */
.TokenErrorPage .errorMessage,
.ParticularPage .errorMessage,
.SessionTimeOutPage .errorMessage  {
	text-align:center;
	margin: 24px auto 48px;
}
.TokenErrorPage .errorMessage .mainText,
.ParticularPage .errorMessage .mainText,
.SessionTimeOutPage .errorMessage .mainText {
	font-size: 1.3em;
}
.TokenErrorPage .errorMessage .detailText,
.ParticularPage .errorMessage .detailText,
.SessionTimeOutPage .errorMessage .detailText {
	margin: 2em auto;
}
/* 古いページを要求しています */
.SessionTimeOutPage .errorMessage .subText {
	margin-bottom: 30px;
}
.SessionTimeOutPage .errorMessage .causeList {
	display: inline-block;
}
.SessionTimeOutPage .errorMessage .causeList li {
	list-style: disc;
	text-align: left;
}
@media screen and (max-width: 960px) {
	.TokenErrorPage .errorMessage .mainText,
	.ParticularPage .errorMessage .mainText,
	.SessionTimeOutPage .errorMessage .mainText {
		text-indent: 0;
		font-size: 1.3rem;
	}
	.TokenErrorPage .errorMessage .detailText,
	.ParticularPage .errorMessage .detailText,
	.SessionTimeOutPage .errorMessage .detailText {
		width: 90%;
		text-align: left;
	}
	/* 古いページを要求しています */
	.SessionTimeOutPage .errorMessage .causeList li {
		margin-left: 40px;
		margin-right: 20px;
		margin-bottom: 10px;
	}
}


/*
## レスポンシブ
*/
.no_pc{
	display:none;
}
.no_sp{
	display:block;
}
@media screen and (max-width: 960px) {
	.no_sp{
		display: none !important;
	}
	.no_pc{
		display:inline-block;
	}
}


/** AmazonPayポップアップ **/
#amazonpayAssist .amazonpay-button-inner-image {
	width: 100%;
	max-width: 296px;
}

/** ソーシャルログインボタン **/
.socialLoginButoonGroup {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
	align-items: center;
}
.socialLoginButoonGroup > div {
	display: inline-block;
	vertical-align: top;
}
.socialLoginButoonGroup > div:last-child {
 margin-left: 0;
}
.socialLoginButoonGroup span {
 display: block;
 line-height: 0;
}
@font-face {
  font-family: "Noto Sans SignInGoogle";
  src: url("../../morinaga/img/common/social/google/NotoSansCJKjp-Medium_subset.woff2") format("woff2"),
	   url("../../morinaga/img/common/social/google/NotoSansCJKjp-Medium_subset.woff") format("woff");
}

.amazonPayLoginIncludeItemWrap,
.lineLoginIncludeItemWrap,
.yahooLoginIncludeItemWrap {
  margin: 0 10px 8px 0;
}

/* Amazon */
.amazonPayLoginIncludeItemWrap,
.amazonPayLoginButtoIncludeItemWrap {
  min-width: 170px;
  max-height: 40px;
}
#AmazonPayButton {
  height: 40px !important;
}
@media screen and (max-width: 600px) {
  #AmazonPayButton {
    width: 200px !important;
    margin: 0 auto;
  }
}

/* Google */
#morinagaIdLineLogin,
#morinagaIdGoogleLogin,
#googleLogin,
#lineLogin {
	display: inline-block;
	color: #fff;
}
#morinagaIdLineLogin a,
#morinagaIdGoogleLogin a,
#googleLogin a,
#lineLogin a {
	color: #fff;
	text-decoration: none;
}
#morinagaIdGoogleLogin,
#googleLogin {
	height: 40px;
	background-color: #3689ef;
	margin-left: 40px;
}
#morinagaIdGoogleLogin a,
#googleLogin a {
	position: relative;
	display: block;
	padding: 8px 21px;
	font-size: 14px;
	font-family: "Noto Sans SignInGoogle";
}
#morinagaIdGoogleLogin a::before,
#googleLogin a::before {
	content: "";
	position: absolute;
	top: 0;
	left: -40px;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	border: 1px solid #3689ef;
	background: url(../../morinaga/img/common/social/google/google_logo.png) no-repeat center / 18px;
}

/* LINE */
#morinagaIdLineLogin,
#lineLogin {
	height: 40px;
	background-color: #00C300;
	border-radius: 0 7px 7px 0;
	margin-left: 34px;
}
#morinagaIdLineLogin:hover,
#lineLogin:hover {
	background-color: #00e000;
}
#morinagaIdLineLogin a,
#lineLogin a {
	position: relative;
	display: block;
	padding: 8px 34px 8px 30px;
	font-size: 14px;
	font-weight: bold;
}
#morinagaIdLineLogin a::before,
#lineLogin a::before {
	content: "";
	position: absolute;
	top: 0;
	left: -34px;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	background: url(../../morinaga/img/common/social/line/line_btn_base.png) no-repeat center / cover;
	border-right: 1px solid #00b300;
}
#morinagaIdLineLogin:hover a::before,
#lineLogin:hover a::before {
	background: url(../../morinaga/img/common/social/line/line_btn_hover.png) no-repeat center / cover;
	border-right: 1px solid #00c900;
}

/* Yahoo */
#morinagaIdYConnectLogin,
.yconnectLogin {
  display: inline-block;
	border-radius: 7px;
	margin-top: auto;
	margin-bottom: auto;
}
#morinagaIdYConnectLogin a,
.yconnectLogin a {
	position: relative;
	display: block;
	font-size: 14px;
	font-weight: bold;
	padding: 8px 10px 7px 30px;
	text-align: center;
}
#morinagaIdYConnectLogin a::before,
.yconnectLogin a::before {
	content: "";
	position: absolute;
	left: 8px;
	box-sizing: border-box;
	width: 50px;
	height: 20px;
	background: url(../../morinaga/img/common/social/yahoo/yahoo_japan_icon_64.png) no-repeat center / contain;
}
#morinagaIdYConnectLogin {
	height: 40px;
	background-color: #fff;
	border-radius: 0 7px 7px 0;
	margin-left: 40px;
}
#morinagaIdYConnectLogin a {
	color: white;
	background: #f03;
	font-family: sans-serif;
	font-size: 14px;
    font-weight: bold;
	height: 40px;
	padding: 9px 20px 9px 19px;
	vertical-align: middle;
}
#morinagaIdYConnectLogin a::before {
	content: "";
	position: absolute;
	top: 0;
	left: -40px;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	border: 1px solid #ff0033;
	background-size: 80%;
}

/* X */
#morinagaIdXLogin {
  display: inline-block;
	border-radius: 7px;
	margin-top: auto;
	margin-bottom: auto;
	background-color: black;
	color: white;
	width: 200px;
}
#morinagaIdXLogin a {
	position: relative;
	display: block;
	font-size: 14px;
	font-weight: bold;
	padding: 8px 10px 7px 30px;
	text-align: center;
	bakground-color: black;
}
#morinagaIdXLogin a::before {
	content: "";
	position: absolute;
	left: 8px;
	box-sizing: border-box;
	width: 50px;
	height: 20px;
	/* background: url(../../morinaga/img/common/social/X/logo-white.png) no-repeat center / contain; */
	background-image: url(../../morinaga/img/common/social/X/logo.svg);
	background-repeat: no-repeat;
	background-size: 32%;
	left: 12px;
	top: 12px;
}
/* Facebook */
#morinagaIdFacebookLogin {
  display: inline-block;
	border-radius: 7px;
	margin-top: auto;
	margin-bottom: auto;
	background-color: #3B5998;
	color: white;
	width: 200px;
}
#morinagaIdFacebookLogin a {
	position: relative;
	display: block;
	font-size: 14px;
	font-weight: bold;
	padding: 8px 10px 7px 30px;
	text-align: center;
}
#morinagaIdFacebookLogin a::before {
	content: "";
	position: absolute;
	left: 8px;
	box-sizing: border-box;
	width: 30px;
	height: 30px;
	background: url(../../morinaga/img/common/social/facebook/Secondary-Logo/Facebook_Logo_Secondary.png) no-repeat center / contain;;
	background-size: 80%;
	left: 6px;
	top: 6px;
}

/* マウスオーバー時 */
.fb-login-button:hover,
#googleLogin:hover,
.yconnectLogin:hover {
	opacity: 0.8;
}

/** 性別「その他」を非表示にする。（front_disp_flgは折りたくないため。）*/
/** 性別「その他」を表示したい場合はこれを非表示にする。*/
#sex_2_label {
	display: none;
}

/* デザイン　汎用クラス */
.bg_lbeige {
	background-color: #F2F0ED;
}

/* 商品画像 */
.img_border_wrap {
	border: 1px solid #000;
	border-radius: 30px;
	background-color: #fff;
	text-align: center;
	overflow: hidden;
}
.img_border_wrap:not(.img_goods) img {
	width: 100%;
}

@media screen and (max-width: 960px) {
	.img_border_wrap {
		border-radius: 24px;
	}
}
@media screen and (max-width: 600px) {
  .socialLoginButoonGroup {
    justify-content: center;
  }
}

/* 詳しくはこちら */
.detail_link {
	text-align: right;
}
.arrow_right {
	position: relative;
	padding-right: 1.3em;
}
.arrow_right::after {
	content: "";
	background: url(../images/arrow.svg) no-repeat center;
	background-size: contain;
	width: 0.9em;
	height: 0.9em;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
}


/* 最近チェックした商品 */
.browsingGoods .contents_two_columns {
 position: relative;
 display: flex;
 max-width: 1220px;
 width: 100%;
 margin: 0 auto 60px;
 padding: 100px 0 50px;
}
body#Shop .browsingGoods .contents_two_columns {
 width: calc(100% - 40px);
}
.browsingGoods .contents_left_area {
 width: 35%;
}
.browsingGoods .contents_right_area {
 position: relative;
 width: 65%;
}
.browsingGoods .contents_two_columns .level_h2 {
 text-align: left;
 font-size: 1rem;
 border: none;
 margin: 0 0 60px;
 padding: 0;
}
.browsingGoods .level_h2 span {
 display: block;
}
.browsingGoods .level_h2 .contents_title {
 font-size: 2.8rem;
 line-height: 1;
 font-weight: 300;
 margin-bottom: 15px;
}
.level_h2 .contents_small_title {
 font-size: 1.2rem;
 line-height: 1;
}
.browsing_goodslist_wrap.swiper-container {
 width: calc(100% - 80px);
 margin-left: 0;
 padding: 2px;
}
.browsing_item_img {
 padding: 60px 10px 20px;
}
.browsing-swiper-button-prev,
.browsing-swiper-button-next {
	position: absolute;
	top: 50%;
	width: 50px;
	height: 50px;
	margin-top: calc(-1 * var(--swiper-navigation-size)/ 2);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}
.browsing-swiper-button-prev {
	left: -80px;
	right: auto;
	transform: rotate(-90deg);
}
.browsing-swiper-button-next {
	right: 0;
	left: auto;
	transform: rotate(90deg);
}
.browsing-swiper-button-next.swiper-button-disabled,
.browsing-swiper-button-prev.swiper-button-disabled {
	display: none;
}
.browsing-swiper-button-prev:after,
.browsing-swiper-button-next:after {
	content: '';
	display: block;
	background: #252525 url(../images/arrow_top_white.svg) no-repeat center;
	background-size: 18px;
	height: 50px;
	width: 50px;
	border-radius: 50%;
}
.browsing-swiper-scrollbar {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 50;
	height: 2px;
	width: 100%;
	border-radius: 10px;
	background: #B9B9B9;
}
.browsing-swiper-scrollbar .swiper-scrollbar-drag {
	background: #252525;
}

@media screen and (max-width: 960px) {
	.browsingGoods .contents_two_columns {
		display: block;
		padding: 70px 0 0;
		margin-bottom: 0;
	}
	.browsingGoods .contents_left_area,
	.browsingGoods .contents_right_area {
		width: 100%;
	}
	.browsingGoods .contents_two_columns .level_h2 {
		text-align: center;
		margin-bottom: 40px;
	}
	.browsingGoods .level_h2 .contents_title {
		font-size: 2.125rem;
    line-height: 1.2;
	}
	.level_h2 .contents_small_title {
		font-size: 1.25rem;
	}
	.browsing_goodslist_wrap.swiper-container {
		width: 100%;
	}
  .browsing-swiper-button-prev,
  .browsing-swiper-button-next,
  .browsing-swiper-button-prev:after,
  .browsing-swiper-button-next:after {
    width: 30px;
    height: 30px;
  }
  .browsing-swiper-button-prev {
    left: -5px;
  }
  .browsing-swiper-button-next {
    right: -5px;
  }
  .browsing-swiper-button-prev:after,
  .browsing-swiper-button-next:after {
    background-size: 14px;
  }
	.browsing-swiper-scrollbar {
		display: none;
	}
	.browsing_item_img {
		padding: 30px 10px 10px;
	}
}

/** 登録ステップ **/
.register_steps {
 width: auto;
 display: flex;
 counter-reset: section;
 justify-content: center;
 margin-bottom: 40px;
}
.register_steps > li {
 display: flex;
 flex-shrink: 0;
 align-items: center;
 list-style: none;
 font-size: 14px;
 margin: 0 5px;
 position: relative;
}
.register_steps > li:not(:last-of-type)::after {
 display: block;
 width: 35px;
 height: 1px;
 margin-left: 5px;
 background-color: #707070;
 content: "";
}
.register_steps > li.select::after {
 background-color: #b6002a;
}
.register_steps > li.select .text,
.register_steps > li.select .text .break {
 color: #b6002a;
 font-weight: bold;
}
.register_steps > li .text {
 display: block;
 line-height: 1.3;
 text-align: center;
}
.register_steps > li .marker {
 border: 1px solid #707070;
 border-radius: 50%;
 display: block;
 width: 26px;
 height: 26px;
 text-align: center;
 line-height: 26px;
 font-size: 14px;
 margin: 0 5px;
 padding: 0;
}
.register_steps > li.select .marker {
 background-color: #b6002a;
 border-color: #b6002a;
 color: #fff;
}
.register_steps .break {
 display: inline-block;
}
@media screen and (max-width: 960px) {
 .register_steps {
  position: static;
  justify-content: center;
  align-items: flex-start;
 }
 .register_steps > li {
  display: block;
 }
 .register_steps > li .marker, .register_steps > li .text {
  margin: 0 auto;
 }
 .register_steps > li:not(:last-of-type)::after {
  position: absolute;
  top: 14px;
  left: 78%;
  width: 50%;
 }
 .register_steps .break {
  display: block;
 }
}
@media screen and (max-width: 600px) {
 .register_steps > li {
  font-size: 12px;
  width: calc(90% / 4);
 }
}



/* ページネーション */
ul.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 0;
  line-height: 0;
}
ul.pagination > li {
  font-size: 14px;
}
ul.pagination a.PAGING_LINK_PAGE, ul.pagination .PAGING_LINK_NOW_PAGE {
  border: 1px solid #b9b9b9;
  border-radius: 50%;
  line-height: 20px;
  padding: 0;
  margin: 0 3px;
  min-width: 22px;
  min-height: 22px;
}
ul.pagination .PAGING_LINK_NOW_PAGE {
  background-color: #b6002a;
  border-color: #b6002a;
  color: #fff;
}
.resultsPagingResultsShow {
	float: right;
	margin: 5px 0 0;
}
@media screen and (max-width: 600px) {
  ul.pagination {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
	.pageInfo, .resultsPagingResultsShow {
		float: none;
	}
	.resultsPagingResultsShow {
		text-align: center;
	}
}


/* 注文確認時の注意文言 */
.cationArea {
  margin-top: 50px;
  font-size: .9em;
}
.cationArea .cationTitle {
  font-weight: bold;
  padding-bottom: 5px;
  border-bottom: 1px solid #b9b9b9;
  margin-bottom: 10px;
}
.cationArea p {
  margin-bottom: 20px;
}
.cationArea .cationList li {
  margin-bottom: 5px;
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.5;
}
.cationArea .cationList li:empty {
  display: none;
}

/* 購入情報 */
.cationArea .cationList .itemsWrap {
  text-indent: 0;
}
.cationArea .cationList .itemsWrap > div {
  display: flex;
  align-items: baseline;
}
.cationArea .cationList .itemsWrap > div::before {
  display: inline-block;
  width: 7em;
}
.cationArea .cationList .itemsWrap > div::after {
  padding-left: 5px;
  font-size: .8em;
}
.cationArea .cationList .itemsWrap .cycle::before {
  content: "定期サイクル：";
}
.cationArea .cationList .itemsWrap .cycle::after {
  content: "ごと";
}
.cationArea .cationList .itemsWrap .itemAmtSum::before {
  content: "商品小計：";
}
.cationArea .cationList .itemsWrap .itemAmtSum::after {
  content: "円（税込）";
}
.cationArea .cationList .itemsWrap .discount::before {
  content: "全体値引き：";
}
.cationArea .cationList .itemsWrap .discount::after {
  content: "円（税込）";
}
.cationArea .cationList .itemsWrap .postage::before {
  content: "送料：";
}
.cationArea .cationList .itemsWrap .postage::after {
  content: "円（税込）";
}
.cationArea .cationList .itemsWrap .paymentFee::before {
  content: "決済手数料：";
}
.cationArea .cationList .itemsWrap .paymentFee::after {
  content: "円（税込）";
}
.cationArea .cationList .itemsWrap .total::before {
  content: "合計：";
}
.cationArea .cationList .itemsWrap .total::after {
  content: "円（税込）";
}
.cationArea .cationList .itemsWrap summary {
  margin-left: -1em;
  width: fit-content;
}
.cationArea .cationList .itemsWrap summary span::before {
  content: "詳細を見る";
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.cationArea .cationList .itemsWrap details {
  margin-left: 1em;
}

.cationArea .cationList .itemsWrap details .items {
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
  margin-bottom: 10px;
}
.cationArea .cationList .itemsWrap details .goodsName {
  width: 100%;
}
.cationArea .cationList .itemsWrap details .goodsName::before {
  content: "商品名：";
}
.cationArea .cationList .itemsWrap details .orderNum::after {
  content: "個";
}
.cationArea .cationList .itemsWrap details .formatSalePriceTotal::after {
  content: "円（税込）";
}
.cationArea .cationList .itemsWrap details ::after {
  padding-left: 5px;
  font-size: .8em;
}
.cationArea .cationList .itemsWrap details .discountAll,
.cationArea .cationList .itemsWrap details .postageAll,
.cationArea .cationList .itemsWrap details .paymentFeeAll,
.cationArea .cationList .itemsWrap details .totalAll {
  display: none;
}


/* 検索：ポップリンク（上書き） */
div.poplink > div.poplink_search > div.item a:hover {
  opacity: 1;
}
.searchNavi div.poplink div.highlighted {
  color: #333;
  background-color: #f2f0ed;
}
.searchNavi div.poplink > div.poplink_suggest,
.searchNavi div.poplink > div.poplink_search,
.searchNavi div.poplink > div.poplink_recommend {
  border: 1px solid #ddd;
  box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 0.3);
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 5px;
  overflow: hidden;
}
.searchNavi div.poplink > div.poplink_search > div.header,
.searchNavi div.poplink > div.poplink_recommend > div.header {
  border: none;
  color: #333;
  font-size: 14px;
  font-weight: bold;
  background-color: transparent;
  padding: 10px;
  border-radius: 5px;
}
.searchNavi div.poplink > div.poplink_suggest > div.word:hover,
.searchNavi div.poplink > div.poplink_search > div.item:hover,
.searchNavi div.poplink > div.poplink_recommend > div.item:hover {
  background-color: #f2f0ed;
}
.searchNavi div.poplink > div.poplink_suggest > div.word {
  padding: 5px;
}
.searchNavi div.poplink > div.poplink_search > div.item {
  padding: 5px 0;
}
.searchNavi div.poplink > div.poplink_search > div.item a > div.item_right > div.title {
  margin-top: 10px;
  padding-right: 10px;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  line-height: 1.4;
  font-weight: normal;
}
.searchNavi div.poplink > div.poplink_search > div.item a > div.item_right > div.any1 {
  font-size: 14px;
  color: #333;
}
div.poplink > div.poplink_search > div.item a > div.item_right > div.any1::before {
  content: "通常価格：";
  font-size: .8em;
}
div.poplink > div.poplink_search > div.item a > div.item_right > div.any1::after {
  content: "円（税込）";
  font-size: .7em;
  padding-left: 5px;
}

@media screen and (max-width: 960px) {
  .searchNavi div.poplink div.highlighted {
    color: #333;
    background-color: transparent;
  }
  .searchNavi div.poplink div.highlighted::after {
    content: "\f078";
    font-size: 12px;
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
    display: inline-block;
    margin-left: 10px;
  }
  .searchNavi div.poplink > div.poplink_suggest > div.word:hover,
  .searchNavi div.poplink > div.poplink_search > div.item:hover,
  .searchNavi div.poplink > div.poplink_recommend > div.item:hover {
    background-color: transparent;
  }
}

/** 強制表示制御用 */
.defaultNoDisplay {
	display: none !important;
}
.defaultBlockDisplay {
	display: block !important;
}
