@charset "UTF-8";
/*--------------------------------------------------------------
# mixinや変数の定義を行う
--------------------------------------------------------------*/
/**
 * clamp関数の文字列を返す
 *
 * @param {Number} $size-at-min-width - 最小画面幅での要素のサイズ (px|rem|emなど)
 * @param {Number} $size-at-max-width - 最大画面幅での要素のサイズ (px|rem|emなど)
 * @param {Number} $min-width [optional] - 最小画面幅 (デフォルト: $min-width-default)
 * @param {Number} $max-width [optional] - 最大画面幅 (デフォルト: $max-width-default)
 * @return {String} CSS clamp関数を含む計算式
 *
 * @description
 * 画面幅に応じて値が滑らかに変化するレスポンシブな値を生成します。
 * 例えば、フォントサイズやマージン、パディングなどの値を画面幅に応じて
 * 自動的に調整することができます。
 *
 * @example
 *   // フォントサイズを16pxから24pxまで可変させる
 *   font-size: clamp-calc(16px, 24px);
 *
 *   // マージンを2remから4remまで可変させる（画面幅768px～1200px）
 *   margin: clamp-calc(2rem, 4rem, 768px, 1200px);
 *
 * @note
 * - 引数の単位は一貫している必要はありません（px, rem等が混在可能）
 * - 内部で全ての値をpxに変換して計算を行います
 * - 返り値は入力された$size-at-min-widthと同じ単位で返されます
 * - 負の値（マイナスマージンなど）にも対応しています
 *
 * @implementation
 * 1. 入力値を全てpxに変換
 * 2. 線形の傾きを計算
 * 3. y軸との交点を計算
 * 4. 必要に応じて最小値と最大値を入れ替え
 * 5. 元の単位に変換して最終的なclamp関数を構築
 */
/**
	* 与えられた値をピクセル(px)単位に変換する関数
	*
	* @param {Number} $value - 変換したい値（rem または px）
	* @return {Number} 変換後のピクセル値
	*
	* @example
	*   convert-to-px(1.5rem)  // 24px ($base-font-size が 16px の場合)
	*   convert-to-px(20px)    // 20px (そのまま返される)
	*   convert-to-px(2em)     // 2em (非対応の単位はそのまま返される)
	*
	* @description
	* - rem単位の場合: $base-font-sizeを基準にしてpxに変換
	* - px単位の場合: 値をそのまま返す
	* - その他の単位: 変換せずそのまま返す
	*
	* @throws {Error} $base-font-size が定義されていない場合にエラー
	*/
/**
	* ピクセル(px)単位の値をrem単位に変換する関数
	*
	* @param {Number} $px-value - 変換したい値（px または rem）
	* @return {Number} 変換後のrem値
	*
	* @example
	*   convert-to-rem(16px)   // 1rem ($base-font-size が 16px の場合)
	*   convert-to-rem(24px)   // 1.5rem ($base-font-size が 16px の場合)
	*   convert-to-rem(1.5rem) // 1.5rem (そのまま返される)
	*   convert-to-rem(2em)    // 2em (非対応の単位はそのまま返される)
	*
	* @description
	* - px単位の場合: $base-font-sizeを基準にしてremに変換
	* - rem単位の場合: 値をそのまま返す
	* - その他の単位: 変換せずそのまま返す
	*
	* @note
	* - レスポンシブデザインに適したrem単位への変換に使用
	* - $base-font-size はグローバルで定義されている必要がある
	*
	* @throws {Error} $base-font-size が定義されていない場合にエラー
	*/
/*
	* 補助関数：小数点以下の指定した桁数で四捨五入する関数
	*/
/*
	* 補助関数：累乗を計算する関数
	* 引数：$number 底となる数
	*      $exponent 指数（正の整数のみ対応）
	*/
:root {
  --main-text-color: #333;
  --main-color: #dfa927;
  --sub-color: #5e460e;
  --sub-color-light: #f1d9a2;
  --toggle-icon-color: #c1c1c1;
  --border-color: #dadada;
  --link-button-font-size: 1em;
  --accent-color: #bf4040;
  --button-color: #65b34d;
  --button-buy: #ce7d4e;
  --bg-color-beige: #f6efe0;
  --link-color: #0d79f2;
  --button-blue: #427fc3;
  --pickup-color: #333;
  --pickup-border-color: rgba(51, 51, 51, 0.3);
  --pickup-bg-color: #f7ef17;
  --wc-form-color-background: #fafafa;
  --on-hold-color: #f8dda7;
  --on-hold-text-color: #573b00;
  --processing-color: #c6e1c6;
  --processing-text-color: #2c4700;
  --completed-color: #c8d7e1;
  --completed-text-color: #003d66;
  --cancelled-color: #999;
  --cancelled-text-color: #fff;
  --failed-color: #eba3a3;
  --failed-text-color: #570000;
  --pending-color: #e5e5e5;
  --pending-text-color: #454545;
  --waiting-color: #d4d0e1;
  --waiting-text-color: #333;
  --site-width: 1280px;
  --site-inline-padding: 20px;
  --content-width: 994px;
  --wide-width: 1300px;
  --header-height: 55px;
  --simple-header-height: 55px;
  --global-menu-hover-color: #333;
  --global-menu-hover-bg: #efefef;
  --global-submenu-bg: rgb(255 255 255 / 50%);
  --global-submenu-hover-bg: rgba(239, 239, 239, 0.5);
  --entry-title-fsz: 28px;
  --entry-h2-fsz: 22px;
  --entry-h3-fsz: 18px;
  --article-mt: 15px;
  --artilce-heading-mt: 40px;
  --column-in-mt: 15px;
  --inner-mt: 15px;
  --transition-time: 0.3s;
  --transition: var(--transition-time) ease;
  --fw-regular: 400;
  --fw-bold: 700;
}
@media screen and (min-width: 900px) {
  :root {
    --column-in-mt: 20px;
    --header-height: 55px;
    --site-inline-padding: 10px;
    --entry-title-fsz: 40px;
    --entry-h2-fsz: 28px;
    --entry-h3-fsz: 20px;
    --article-mt: 20px;
    --artilce-heading-mt: 50px;
    --inner-mt: 40px;
  }
}
@media screen and (min-width: 1240px) {
  :root {
    --sidebar-width: 250px;
    --site-inline-padding: 0;
  }
}

html,
body,
div,
span,
object,
iframe,
button,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
sub,
sup,
var,
b,
i,
a,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  font-weight: inherit;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  word-break: normal;
  line-break: strict;
  word-wrap: normal;
  word-break: normal;
  line-height: inherit;
}

textarea,
input[type=button],
input[type=text],
input[type=image],
input[type=submit] {
  -webkit-appearance: none;
  word-break: normal;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

* {
  outline: none;
}

body {
  font-size: 15px;
  word-break: break-all;
  -webkit-text-size-adjust: none;
}

* html body {
  font-size: small;
  font: x-small;
}

*:first-child + html body {
  font-size: small;
  font: x-small;
}

img {
  border: 0;
  vertical-align: bottom;
}

ul,
dl {
  text-indent: 0;
}

ul li {
  list-style: none;
}

ol li {
  list-style: decimal;
}

ol ul li {
  list-style: none;
}

address,
caption,
cite,
code,
dfn,
em,
var {
  font-style: normal;
  font-weight: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

* html input,
* html textarea,
* html select {
  font-size: 100%;
}

*:first-child + html + input,
*:first-child html + textarea,
*:first-child + html select {
  font-size: 100%;
}

table {
  border-collapse: separate;
  border-spacing: 0;
  font-size: inherit;
  font: 100%;
}

th,
td {
  text-align: left;
  vertical-align: top;
}

caption {
  text-align: left;
}

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
}

* html pre,
* html code,
* html kbd,
* html samp,
* html tt {
  font-size: 108%;
  line-height: 100%;
}

*:first-child + html pre,
*:first-child html + code,
*:first-child html + kbd,
*:first-child + html + samp,
*:first-child + html tt {
  font-size: 108%;
  line-height: 100%;
}

input,
select,
textarea {
  font-size: 100%;
  font-family: Verdana, Helvetica, sans-serif;
  margin: 0;
}

button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  line-height: inherit;
}

figure {
  line-height: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  backface-visibility: hidden;
}

input,
textarea {
  border-radius: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

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

body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-color);
}

.is_sans_regular {
  font-family: YakuHanJP_Narrow, "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.is_sans_medium {
  font-family: YakuHanJP_Narrow, "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.is_sans_bold {
  font-family: YakuHanJP_Narrow, "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.is_sans_black {
  font-family: YakuHanJP_Narrow, "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

.is_serif_light {
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}

.is_serif_regular {
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.is_serif_medium {
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.is_serif_bold {
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

@media screen and (min-width: 900px) {
  .br_sp {
    display: none;
  }
}

@media screen and (max-width: 899px) {
  .br_pc {
    display: none;
  }
}

@media screen and (max-width: 899px) {
  .is-pc {
    display: none !important;
  }
}

@media screen and (min-width: 900px) {
  .is-mobile {
    display: none !important;
  }
}

.ut_flex_row {
  display: flex;
  flex-wrap: wrap;
}

.ly_siteHeader {
  width: 100%;
  z-index: 12;
  position: relative;
}
@media screen and (max-width: 899px) {
  .ly_siteHeader {
    padding-right: 0;
  }
}
.ly_siteHeader.is_simpleHeader {
  --header-height: var(--simple-header-height);
}
.is_scrolled .ly_siteHeader {
  --header-height: 40px;
}

.ly_siteHeader_content {
  display: flex;
  align-items: center;
  margin-inline: auto;
  height: var(--header-height);
  max-width: var(--site-width);
  position: relative;
  gap: 15px;
  padding-inline: var(--site-inline-padding);
  transition: height var(--transition);
  justify-content: center;
}
@media screen and (min-width: 480px) {
  .ly_siteHeader_content {
    justify-content: space-between;
  }
}
@media screen and (max-width: 899px) {
  .ly_siteHeader_content {
    --site-inline-padding: 0;
    padding-block: 5px;
    gap: 0;
  }
}
.is_simpleHeader .ly_siteHeader_content {
  justify-content: center;
}
.ly_siteHeader_content .el_siteHeader_logo {
  flex-shrink: 0;
}
.ly_siteHeader_content .el_siteHeader_logo img {
  transition: all var(--transition);
  height: 32px;
  width: auto;
}
@media screen and (min-width: 900px) {
  .ly_siteHeader_content .el_siteHeader_logo img {
    height: 40px;
  }
}
.is_scrolled .ly_siteHeader_content .el_siteHeader_logo img {
  height: 30px;
  width: auto;
}
.ly_siteHeader_content .bl_siteHeader_cart {
  flex-shrink: 0;
  margin-inline: 12px 10px;
}
@media screen and (min-width: 900px) {
  .ly_siteHeader_content .bl_siteHeader_cart {
    margin-left: 0;
  }
}

.ly_siteHeader_nav {
  display: flex;
  align-items: center;
  margin-left: auto;
}
@media screen and (max-width: 899px) {
  .ly_siteHeader_nav {
    flex-direction: column;
    position: fixed;
    width: 100%;
    height: 100dvh;
    top: calc(var(--header-height) + 2px);
    right: -130vw;
    background-color: #fff;
    overflow-y: auto;
    transition: all 0.5s ease;
    visibility: hidden;
  }
  .is_open .ly_siteHeader_nav {
    right: 0;
    visibility: visible;
  }
}
@media screen and (max-width: 480px) {
  .ly_siteHeader_nav {
    top: 0;
    padding-block: 10px 60px;
  }
}
@media screen and (max-width: 899px) {
  .ly_siteHeader_nav .bl_globalNav {
    order: 2;
  }
}
.ly_siteHeader_nav .el_language {
  margin-inline: 20px;
}
@media screen and (max-width: 899px) {
  .ly_siteHeader_nav .el_language {
    margin-block: 20px;
    order: 3;
  }
}
.ly_siteHeader_nav .bl_searhForm {
  margin-inline: auto;
}
@media screen and (max-width: 899px) {
  .ly_siteHeader_nav .bl_searhForm {
    order: 1;
    padding: 15px 20px;
    border-bottom: 1px solid var(--border-color);
    width: 100%;
  }
}

.ly_fixed_header {
  margin-top: var(--header-height);
}
.ly_fixed_header.has_mv_slider {
  margin-top: 0;
}
.ly_fixed_header .ly_siteHeader {
  position: fixed;
  top: 0;
  left: 0;
}
@media screen and (max-width: 480px) {
  .ly_fixed_header .ly_siteHeader {
    position: relative;
  }
}
@media print {
  .ly_fixed_header .ly_siteHeader {
    display: none;
  }
}
.ly_fixed_header.admin-bar {
  margin-top: 0;
}
@media screen and (min-width: 480px) {
  .ly_fixed_header.admin-bar .ly_siteHeader {
    top: 32px;
  }
}
@media screen and (max-width: 480px) {
  .ly_fixed_header.has_mv_slider .ly_siteHeader {
    margin-bottom: -55px;
  }
}

.bl_siteHeader_menu {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-inline: 10px;
}
@media screen and (max-width: 480px) {
  .bl_siteHeader_menu {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #fff;
    padding-inline: 15px 10px;
    padding-block: 10px 2px;
    border-top: 1px solid #efefef;
    justify-content: space-between;
    z-index: 9999;
  }
}

body {
  overflow-x: hidden;
}

.ly_MV {
  margin-inline: auto;
  position: relative;
  overflow: hidden;
}

.ly_breadcrumb {
  margin-inline: auto;
  max-width: var(--site-width);
  display: flex;
  padding-inline: var(--site-inline-padding);
}

.ly_content_header {
  margin-inline: auto;
  max-width: var(--site-width);
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--content-header-height, 150px);
  padding: 20px;
}

.ly_siteMain {
  margin-inline: auto;
  padding-inline: 15px;
  width: 100%;
}
@media screen and (min-width: 900px) {
  .ly_siteMain {
    padding-inline: 40px;
  }
}
@media screen and (min-width: 1440px) {
  .ly_siteMain {
    padding-inline: 0;
  }
}
.ly_MV + .ly_siteMain {
  margin-block: 40px 70px;
}
@media screen and (min-width: 900px) {
  .ly_MV + .ly_siteMain {
    margin-block: 60px 90px;
  }
}

.ly_mainContent {
  max-width: var(--site-width);
  margin-inline: auto;
  margin-block: 50px 100px;
}

.ly_content_feature {
  margin-block: 0 100px;
}

.ly_article {
  max-width: var(--content-width);
  margin-inline: auto;
}
.woocommerce-page .ly_article {
  max-width: var(--site-width);
}
.ly_article .bl_postThumbnail {
  margin-bottom: var(--article-mt);
}
.ly_article .bl_article_content > * + * {
  margin-top: var(--article-mt);
}
.ly_article .bl_article_content > * + h2,
.ly_article .bl_article_content > * + h3,
.ly_article .bl_article_content > * + h4,
.ly_article .bl_article_content > * + h5,
.ly_article .bl_article_content > * + h6 {
  margin-top: var(--artilce-heading-mt);
}

.ly_siteFooter {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-block: 30px 0;
  background-color: #f6efe0;
  background-image: url(../images/footer-bg.png);
  background-size: contain;
}
@media print {
  .ly_siteFooter {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  .ly_siteFooter {
    margin-bottom: 60px;
  }
}

.ly_siteFooter_support {
  width: 100%;
  max-width: var(--site-width);
  margin-inline: auto;
  display: grid;
  padding-inline: 15px;
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .ly_siteFooter_support {
    grid-template-columns: 50% 50%;
  }
}

.ly_siteFooter_navigation {
  margin-bottom: 20px;
  border-bottom: 1px solid rgba(94, 70, 13, 0.19);
  width: 100%;
  max-width: var(--site-width);
  padding-bottom: 20px;
  padding-inline: 15px;
}
.ly_siteFooter_navigation .widget_block {
  max-width: var(--content-width);
  margin-inline: auto;
}

.ly_indexArticles .bl_indexArticle_wrapper + .bl_indexArticle_wrapper {
  margin-top: 20px;
}
.ly_indexArticles .bl_pagination {
  margin-top: 30px;
}

body.page-template-page-checkout {
  margin-top: 100px;
}
body.page-template-page-checkout .entry-content.bl_article_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 100px;
}

@media screen and (max-width: 899px) {
  body.has_fixed_footer {
    margin-bottom: var(--fixed-footer-h, 50px);
  }
}

.ly_main_payment {
  max-width: 720px;
  margin-inline: auto;
  margin-block: 0 3em;
  padding-inline: 20px;
}
.ly_main_payment > * + * {
  margin-top: 2em;
}
.ly_main_payment .alignfull {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.alignfull {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
.alignfull .wp-block-group__inner-container {
  max-width: var(--content-width);
  margin-inline: auto;
}

.alignwide {
  width: 100vw;
  max-width: var(--wide-width);
  margin-left: calc(50% - 50vw);
}
@media screen and (min-width: 1300px) {
  .alignwide {
    margin-left: calc(50% - var(--wide-width) / 2);
  }
}
.alignwide .wp-block-group__inner-container {
  max-width: var(--content-width);
  margin-inline: auto;
}

.bl_button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  padding: 20px;
  border-radius: 10px;
  background-color: var(--link-button-bg);
  color: var(--link-button-color);
  font-size: var(--link-button-font-size);
  transition: color 0.3s ease, background-color 0.3s ease;
}
.bl_button:before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  border-style: solid solid none none;
  border-width: 2px;
  border-color: inherit;
  transform: rotate(45deg);
  margin-right: 6px;
}
.bl_button:hover {
  background-color: var(--link-button-hover-bg);
  color: var(--link-button-hover-color);
}

.el_arrow {
  display: inline-flex;
  align-items: center;
  font-size: 1.1em;
}
.el_arrow::before {
  content: "";
  display: inline-block;
  position: relative;
  width: var(--el-arrow-size, 0.625em);
  height: var(--el-arrow-size, 0.625em);
  background-color: transparent;
  border-style: solid solid none none;
  border-width: 2px;
  transform: rotate(45deg);
  transform-origin: center;
}

.el_arrow__left {
  margin-left: 5px;
}

.el_arrow__right {
  margin-right: 5px;
}
.el_arrow__right::before {
  border-style: none none solid solid;
}

.el_post_category {
  display: inline-flex;
  flex-wrap: wrap;
}
.el_post_category span {
  margin-inline: 5px;
  display: inline-block;
  background-color: var(--sub-color);
  color: var(--sub-text-color);
  font-size: 0.8em;
  padding: 3px 10px;
  line-height: 1;
}

.ut_row_2col {
  display: flex;
  gap: 20px;
}
.ut_row_2col.ut_sp_1col {
  flex-direction: column;
}
@media screen and (min-width: 900px) {
  .ut_row_2col.ut_sp_1col {
    flex-direction: row;
  }
}

.ut_small_txt {
  font-size: 0.8em;
}

.wp-block-image {
  margin-bottom: 0;
}

.wp-block-query.wp-block-query-is-layout-flow {
  border: 1px solid #dadada;
  border-style: solid none;
  margin-top: 20px;
}
.wp-block-query.wp-block-query-is-layout-flow ul.wp-block-post-template.is-layout-flow.wp-block-post-template-is-layout-flow {
  padding-left: 0;
}
.wp-block-query.wp-block-query-is-layout-flow ul.wp-block-post-template.is-layout-flow.wp-block-post-template-is-layout-flow li {
  list-style: none;
  display: flex;
  gap: 20px;
  padding-block: 10px;
}
.wp-block-query.wp-block-query-is-layout-flow ul.wp-block-post-template.is-layout-flow.wp-block-post-template-is-layout-flow li + li {
  border-top: 1px solid #dadada;
}
.wp-block-query.wp-block-query-is-layout-flow ul.wp-block-post-template.is-layout-flow.wp-block-post-template-is-layout-flow li .wp-block-post-date {
  opacity: 0.5;
  white-space: nowrap;
}
.wp-block-query.wp-block-query-is-layout-flow ul.wp-block-post-template.is-layout-flow.wp-block-post-template-is-layout-flow li .wp-block-post-title {
  line-height: 1.4;
}
.wp-block-query.wp-block-query-is-layout-flow .wp-block-query-no-results {
  padding-block: 10px;
  text-align: center;
}

.wp-block-group__inner-container > * + * {
  margin-top: var(--inner-mt);
}

.bl_article_content .wp-block-group {
  --article-mt: 70px;
}
@media screen and (min-width: 900px) {
  .bl_article_content .wp-block-group {
    --article-mt: 140px;
  }
}

figcaption {
  line-height: 1.5;
}

.grecaptcha-badge {
  visibility: hidden;
}

.bl_contact_notice {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--main-color);
  padding: 30px 20px;
  border-radius: 10px;
  max-width: 800px;
  margin-inline: auto;
  background-color: rgba(255, 255, 255, 0.3);
}
@media screen and (min-width: 900px) {
  .bl_contact_notice {
    padding: 40px 40px;
    text-align: center;
  }
}

.el_notice_heading {
  font-size: 22px;
  font-weight: var(--fw-bold);
  margin-bottom: 20px;
}

p.el_contact_direction {
  --article-mt: 60px;
}
@media screen and (min-width: 900px) {
  p.el_contact_direction {
    text-align: center;
  }
}

.wpcf7 {
  --article-mt: 60px;
  max-width: 1100px;
  margin-inline: auto;
}

.wpcf7-form .el_formItem {
  border-bottom: 1px solid #dadada;
  display: grid;
  grid-template-columns: 1fr;
  padding-block: 20px;
  gap: 6px;
}
@media screen and (min-width: 900px) {
  .wpcf7-form .el_formItem {
    gap: 20px;
    grid-template-columns: 240px 1fr;
  }
}
.wpcf7-form .el_formItem.is_formItem_1col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.wpcf7-form .el_formItem label {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (min-width: 900px) {
  .wpcf7-form .el_formItem label {
    padding-top: 10px;
    align-items: flex-start;
    justify-content: space-between;
  }
}
.wpcf7-form .el_formItem label.is_require::after {
  content: "必須";
  background-color: var(--accent-color);
  font-weight: normal;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  padding: 5px 10px;
  border-radius: 3px;
  white-space: nowrap;
}
@media screen and (min-width: 900px) {
  .wpcf7-form .el_formItem label.is_require::after {
    font-size: 14px;
  }
}
.wpcf7-form textarea,
.wpcf7-form input[type=tel],
.wpcf7-form input[type=email],
.wpcf7-form input[type=text] {
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 6px;
  width: 100%;
  font-size: 18px;
  padding: 10px 10px;
}
.wpcf7-form input.el_input_zip {
  width: 140px;
  margin-inline: 10px;
  margin-bottom: 15px;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label {
  padding-top: 0;
  align-items: flex-start;
  display: grid;
  grid-template-columns: 1em 1fr;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label input {
  margin-top: 4px;
}
@media screen and (min-width: 900px) {
  .wpcf7-form .wpcf7-acceptance .wpcf7-list-item label {
    align-items: center;
  }
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label::after {
  order: 1;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label input {
  margin-top: 4px;
  order: 2;
}
@media screen and (min-width: 900px) {
  .wpcf7-form .wpcf7-acceptance .wpcf7-list-item label input {
    margin-top: 0;
  }
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label span {
  order: 3;
  line-height: 1.3;
}
.wpcf7-form .el_formButtons {
  text-align: center;
  margin-block: 20px 0;
}
.wpcf7-form .wpcf7-previous,
.wpcf7-form .wpcf7-submit {
  width: 100%;
  max-width: 300px;
  display: inline-flex;
  margin-top: 20px;
  margin-inline: 10px;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  padding: 10px;
  border-radius: 10px;
  height: 55px;
  transition: all var(--transition-time) ease;
}
@media screen and (min-width: 900px) {
  .wpcf7-form .wpcf7-previous,
  .wpcf7-form .wpcf7-submit {
    width: 400px;
  }
}
.wpcf7-form .wpcf7-previous:disabled,
.wpcf7-form .wpcf7-submit:disabled {
  opacity: 0.2;
}
.wpcf7-form .wpcf7-submit {
  background: var(--sub-color);
  color: #fff;
}
.wpcf7-form .wpcf7-submit:hover {
  opacity: 0.7;
}
.wpcf7-form .wpcf7-previous {
  border: 1px solid var(--sub-color);
  background-color: #fff;
  color: var(--sub-color);
}
.wpcf7-form .wpcf7-previous:hover {
  background-color: var(--sub-color);
  color: #fff;
}
.wpcf7-form .wpcf7-spinner {
  display: block;
  margin-inline: auto;
  margin-block: 30px 0;
}

.bl_thanksMessage {
  text-align: center;
  font-size: 22px;
}

a.el_linkButton.is_go_home {
  color: #fff;
  max-width: 300px;
  margin-inline: auto;
  margin-top: 60px;
  width: 100%;
  padding-inline: 20px;
}

.wpcf7 form .wpcf7-response-output {
  border-radius: 10px;
  padding-block: 0.7em;
  margin-top: 0;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  background: #ffebb7;
  border: none;
}

.wpcf7 form.sent .wpcf7-response-output {
  font-size: 20px;
}
@media screen and (min-width: 900px) {
  .wpcf7 form.sent .wpcf7-response-output {
    text-align: center;
    font-size: 25px;
  }
}

.woocommerce form .show-password-input,
.woocommerce-page form .show-password-input {
  top: 1.1em;
}

.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
  border-bottom: 1px solid #7f54b3;
  background-color: transparent;
}

.woocommerce-info {
  background-color: #f6f8fa;
  border-color: #1e85be;
  border-width: 5px;
  border-style: none none none solid;
}

.woocommerce-error {
  border-color: var(--accent-color);
  border-style: none none none solid;
  border-width: 5px;
}
.woocommerce-error.el_orderStatus_failed {
  background-color: #faf8f5;
}

.woocommerce-message {
  color: #8fae1b;
  background-color: #f7fbea;
  border-style: none none none solid;
  border-width: 5px;
}

.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--main-color);
}

.woocommerce a.button {
  color: #fff;
  background-color: var(--button-color);
  transition: all var(--transition-time) ease;
  text-align: center;
}
@media (hover: hover) {
  .woocommerce a.button:hover {
    color: #fff;
    background-color: var(--button-color);
    filter: brightness(1.1);
  }
}
.woocommerce button.button,
.woocommerce button.woocommerce-Button.button {
  min-width: 250px;
  color: #fff;
  background-color: var(--button-color);
  transition: all var(--transition-time) ease;
  margin-top: 1em;
}
.woocommerce button.button:disabled,
.woocommerce button.woocommerce-Button.button:disabled {
  pointer-events: none;
  color: #fff !important;
}
@media (hover: hover) {
  .woocommerce button.button:hover,
  .woocommerce button.woocommerce-Button.button:hover {
    color: #fff;
    background-color: var(--button-color);
    filter: brightness(1.1);
  }
}
.woocommerce h1.el_myaccount_title {
  font-size: 1.4em;
  font-weight: 700;
  margin-top: 0;
  text-align: center;
}
@media screen and (min-width: 900px) {
  .woocommerce h1.el_myaccount_title {
    text-align: left;
  }
}

button.woocommerce-button.button {
  min-width: 250px;
  color: #fff;
  background-color: var(--button-color);
  transition: opacity var(--transition-time) ease;
}
@media (hover: hover) {
  button.woocommerce-button.button:hover {
    opacity: 0.8;
    background-color: var(--button-color);
    color: #fff;
  }
}
button.woocommerce-button.button.woocommerce-form-login__submit, button.woocommerce-button.button.woocommerce-form-register__submit {
  width: 100%;
  margin-inline: auto;
  margin-top: 1em;
}

form.woocommerce-form.woocommerce-form-login.login {
  display: flex;
  flex-direction: column;
  max-width: 600px;
  margin-inline: auto;
}
form.woocommerce-form.woocommerce-form-login.login .form-row-first,
form.woocommerce-form.woocommerce-form-login.login .form-row-last {
  width: 100%;
}

.bl_loginForm {
  margin-inline: auto;
}
.bl_loginForm form.login {
  margin-block: 1em;
}
.bl_loginForm .u-columns.col2-set {
  display: grid;
  grid-template-columns: 1fr;
  margin-inline: auto;
  max-width: -moz-fit-content;
  max-width: fit-content;
}
.bl_loginForm .u-columns.col2-set .u-column1,
.bl_loginForm .u-columns.col2-set .u-column2 {
  float: none;
  width: 100%;
  max-width: 460px;
}
.bl_loginForm .u-columns.col2-set h2 {
  font-weight: 700;
  font-size: clamp(26px, 19.621px + 1.329vw, 30px);
  text-align: center;
  letter-spacing: 5px;
}
.bl_loginForm .u-column1,
.bl_loginForm .u-column2 {
  display: none;
}
.bl_loginForm .bl_switchLoginFrom {
  text-align: center;
}
.bl_loginForm .bl_switchLoginFrom button,
.bl_loginForm .bl_switchLoginFrom a {
  color: var(--link-color);
}
.bl_loginForm .bl_switchLoginFrom .to_login {
  display: none;
}
.bl_loginForm .bl_switchLoginFrom .woocommerce-error {
  margin-top: 2em;
  text-align: left;
  border-style: solid;
  border-width: 3px;
}
.bl_loginForm.is_registration .u-column2 {
  display: block;
}
.bl_loginForm.is_registration .u-column1 {
  display: none;
}
.bl_loginForm.is_registration .to_login {
  display: inline-block;
}
.bl_loginForm.is_registration .to_register {
  display: none;
}
.bl_loginForm.is_login .u-column2 {
  display: none;
}
.bl_loginForm.is_login .u-column1 {
  display: block;
}
.bl_loginForm.is_login .to_login {
  display: none;
}
.bl_loginForm.is_login .to_register {
  display: inline-block;
}

.woocommerce-form-register.register a,
.woocommerce-form.woocommerce-form-login.login a {
  color: var(--link-color);
}
@media (hover: hover) {
  .woocommerce-form-register.register a:hover,
  .woocommerce-form.woocommerce-form-login.login a:hover {
    text-decoration: underline;
  }
}

.woocommerce-form-register.register .woocommerce-privacy-policy-text,
.woocommerce-form-register.register > p:not(.woocommerce-form-row) {
  font-size: 0.8em;
}

table.bl_recipients {
  width: 100%;
  margin-bottom: 2em;
}
table.bl_recipients thead th {
  background-color: #fcf6e8;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  font-weight: 700;
  text-align: center;
}
table.bl_recipients tbody td {
  border-bottom: 1px solid var(--border-color);
}
table.bl_recipients th,
table.bl_recipients td {
  padding-inline: 10px;
  padding-block: 10px;
  line-height: 1.2;
  vertical-align: middle;
}
table.bl_recipients .el_recipient_company {
  display: block;
}
table.bl_recipients tr.is_deleteing {
  opacity: 0.3;
  background-color: #ccc;
}
table.bl_recipients tr.is_uncomplete {
  background-color: #faf8f5;
  color: var(--accent-color);
}
table.bl_recipients tr.is_uncomplete td:first-child {
  position: relative;
}
table.bl_recipients tr.is_uncomplete td:first-child::before {
  content: "要修正";
  position: absolute;
  top: -17px;
  left: -21px;
  color: #fff;
  background-color: var(--accent-color);
  padding: 3px 10px;
  font-size: 0.8em;
  border-bottom-right-radius: 5px;
}
@media screen and (min-width: 782px) {
  table.bl_recipients tr.is_uncomplete td:first-child::before {
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 781px) {
  table.bl_recipients thead {
    display: none;
  }
  table.bl_recipients tbody tr {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 1em;
    padding-block: 1em;
    padding-inline: 20px;
  }
  table.bl_recipients tbody td {
    display: flex;
    align-items: center;
    padding-block: 10px;
    padding-inline: 0;
    border-bottom: none;
  }
  table.bl_recipients tbody td::before {
    content: attr(data-label);
    font-weight: bold;
    flex-basis: 30%;
  }
}
table.bl_recipients span.el_unregistered {
  opacity: 0.4;
  font-size: 0.8em;
  display: block;
  text-align: center;
}

.el_itemActions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.el_itemActions button.el_button_s {
  width: 100%;
  max-width: 87px;
}
@media screen and (max-width: 781px) {
  .el_itemActions {
    flex-direction: row;
    width: 100%;
  }
}

button.el_button_s {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 11px;
  white-space: nowrap;
  line-height: 1;
  border-radius: 3px;
  font-size: 0.9em;
  transition: filter var(--transition-time) ease;
}
button.el_button_s.is_edit {
  background-color: var(--link-color);
  color: #fff;
}
button.el_button_s.is_delete {
  background-color: var(--accent-color);
  color: #fff;
}
@media (hover: hover) {
  button.el_button_s:hover {
    filter: brightness(1.1);
  }
}

form.woocommerce-EditAccountForm.edit-account fieldset {
  margin-top: 30px;
}
form.woocommerce-EditAccountForm.edit-account fieldset legend {
  border-top: 1px solid var(--border-color);
  padding-top: 15px;
  font-weight: bold;
  padding-inline: 0 20px;
  width: 100%;
}
form.woocommerce-EditAccountForm.edit-account .form-row.has_border_top {
  margin-top: 20px;
  border-top: 1px solid var(--border-color);
  padding-top: 15px;
}
form.woocommerce-EditAccountForm.edit-account .form-row.has_border_top h3 {
  font-weight: var(--fw-bold);
}

.bl_cartTotal {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  font-size: 25px;
  margin-bottom: 20px;
  align-items: baseline;
}
.bl_cartTotal .el_cartTotal_label {
  font-weight: 700;
  margin-right: 10px;
  font-size: 0.7em;
}
.bl_cartTotal .el_cartTotal_taxLabel {
  font-size: 0.6em;
  font-feature-settings: "palt";
}
.bl_cartTotal .el_cartTotal_note {
  width: 100%;
  text-align: right;
  font-size: 12px;
  line-height: 1;
  margin-top: 10px;
}
.bl_cartTotal .el_cartTotal_price {
  display: flex;
  flex-direction: column;
}
.bl_cartTotal .el_cartTotal_includeTax {
  font-size: 0.7em;
  line-height: 1;
}
.bl_cartTotal .el_cartTotal_includeTax .el_taxLabel {
  font-size: 0.9em;
}

.bl_cartMain {
  display: grid;
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .bl_cartMain {
    grid-template-columns: 1fr 220px;
    gap: 40px;
  }
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
#add_payment_method .wc-proceed-to-checkout a.checkout-button {
  background-color: var(--button-color);
  color: #fff;
  font-size: 18px;
  transition: opacity var(--transition-time) ease;
}
@media (hover: hover) {
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
  .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover,
  #add_payment_method .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: var(--button-color);
    opacity: 0.7;
  }
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
  float: none;
  width: auto;
}

.woocommerce table.shop_table {
  border: none;
  border-radius: 0;
}
.woocommerce table.shop_table thead {
  background-color: var(--bg-color-beige);
}
.woocommerce table.shop_table th {
  font-weight: normal;
  padding-block: 10px;
  font-size: 1em;
  background-color: var(--bg-color-beige);
}
@media screen and (min-width: 900px) {
  .woocommerce table.shop_table th.product-name {
    text-align: center;
    width: 55%;
  }
  .woocommerce table.shop_table th.product-quantity {
    text-align: center;
    width: 30%;
  }
  .woocommerce table.shop_table th.product-subtotal {
    text-align: center;
    width: 15%;
  }
}
.woocommerce table.shop_table td {
  border-color: var(--border-color);
  padding-inline: 0;
}
@media screen and (min-width: 900px) {
  .woocommerce table.shop_table td {
    padding-block: 20px;
    padding-inline: 20px;
  }
}
.woocommerce table.shop_table td.product-name {
  vertical-align: top;
}
@media screen and (max-width: 899px) {
  .woocommerce table.shop_table td.product-name {
    padding-right: 10px;
  }
}
.woocommerce table.shop_table td.product-quantity {
  vertical-align: top;
}
@media screen and (max-width: 899px) {
  .woocommerce table.shop_table td.product-quantity {
    width: 100%;
    border: none;
  }
}
.woocommerce table.shop_table td.product-subtotal {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}
@media screen and (max-width: 899px) {
  .woocommerce table.shop_table td.product-subtotal {
    border: none;
    flex-direction: row-reverse;
    justify-content: space-between;
    padding-block: 0;
  }
}
.woocommerce table.shop_table td.product-subtotal .el_cart_subtotal {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 899px) {
  .woocommerce table.shop_table td.product-subtotal .el_cart_subtotal::before {
    content: "小計: ";
    font-size: 0.8em;
  }
}
.woocommerce table.shop_table .bl_cartProduct_info {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .woocommerce table.shop_table .bl_cartProduct_info {
    grid-template-columns: 150px 1fr;
  }
}
.woocommerce table.shop_table .bl_cartProduct_info figure img {
  display: block;
  margin-inline: auto;
  width: 100%;
}
.woocommerce table.shop_table .el_cartProduct_meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  gap: 5px;
}
.woocommerce table.shop_table .el_cartProduct_meta .woocommerce-Price-amount.amount {
  margin-top: 10px;
}
.woocommerce table.shop_table .el_cartItem_meta {
  font-size: 13px;
  line-height: 1.2;
  opacity: 0.5;
}
.woocommerce table.shop_table a + .el_cartItem_meta {
  margin-top: 10px;
}
.woocommerce table.shop_table .woocommerce-Price-amount.amount {
  display: block;
  font-weight: bold;
  font-size: 17px;
  white-space: nowrap;
}
@media screen and (min-width: 900px) {
  .woocommerce table.shop_table .woocommerce-Price-amount.amount {
    font-size: 18px;
  }
}
.woocommerce table.shop_table span.woocommerce-Price-currencySymbol {
  font-weight: normal;
  font-size: 0.8em;
  margin-right: 4px;
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents {
  margin-bottom: 0;
}

@media screen and (max-width: 899px) {
  .woocommerce table.shop_table_responsive tr,
  .woocommerce-page table.shop_table_responsive tr {
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding-block: 15px 20px;
    padding-inline: 20px;
  }
  .woocommerce table.shop_table_responsive tr + tr,
  .woocommerce-page table.shop_table_responsive tr + tr {
    margin-top: 20px;
  }
}
.woocommerce table.shop_table_responsive tr:first-child td,
.woocommerce-page table.shop_table_responsive tr:first-child td {
  border-top: none;
}
.woocommerce table.shop_table_responsive tr:nth-child(2n) td,
.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
  background-color: #fff;
}
@media screen and (max-width: 899px) {
  .woocommerce table.shop_table_responsive tr:nth-child(2n) td,
  .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
    border-top: none;
  }
}
.woocommerce table.shop_table_responsive tr td::before,
.woocommerce-page table.shop_table_responsive tr td::before {
  content: none;
}
@media screen and (max-width: 899px) {
  .woocommerce table.shop_table_responsive tr.actions_row,
  .woocommerce-page table.shop_table_responsive tr.actions_row {
    border: none;
    padding: 0;
    margin-top: 0;
  }
}

.woocommerce a.remove {
  font-size: 12px;
  white-space: nowrap;
  background-color: #a00;
  font-weight: normal;
  --wc-red: #fff;
  width: 40px;
  height: 20px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity var(--transition-time) ease;
}
@media (hover: hover) {
  .woocommerce a.remove:hover {
    opacity: 0.7;
    background-color: #a00;
  }
}

.product-quantity {
  width: 150px;
  text-align: center;
}
.product-quantity ul.el_cart_quantity {
  padding-left: 0;
  text-align: left;
  font-size: 0.9em;
  margin-bottom: 10px;
}
.product-quantity ul.el_cart_quantity li {
  list-style: none;
  line-height: 1.2;
  display: flex;
  align-items: center;
  padding-block: 10px;
  border-bottom: 1px solid var(--border-color);
}
.product-quantity .el_cart_qty_itemQty {
  margin-left: auto;
}
.product-quantity .el_company_name {
  font-size: 0.8em;
}
.product-quantity a.el_cart_productLink {
  font-size: 0.8em;
  display: block;
  background-color: var(--link-color);
  margin-top: 10px;
}
@media (hover: hover) {
  .product-quantity a.el_cart_productLink:hover {
    background-color: var(--link-color);
  }
}

.woocommerce-cart-form__contents button[name=update_cart] {
  font-size: 0.8em;
  width: 150px;
  display: inline-block;
  min-width: auto;
}
.woocommerce-cart-form__contents button[name=update_cart]:disabled {
  border: 1px solid;
  background: transparent;
}

.shipping_address {
  display: none;
}

#add_payment_method table.cart img,
.woocommerce-checkout table.cart img {
  width: 80px;
}

.bl_cartRecipientIndex {
  margin-block: 20px 60px;
}
.bl_cartRecipientIndex h2 {
  font-size: var(--entry-h2-fsz);
  font-weight: 700;
}

.bl_cartRecipientIntex_items {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .bl_cartRecipientIntex_items {
    grid-template-columns: repeat(4, 1fr);
  }
}

.bl_cartRecipient {
  padding-block: 5px 5px;
  padding-inline: 20px;
  border: 1px solid var(--border-color);
  border-top: 3px solid var(--main-color);
  display: flex;
  flex-direction: column;
}
.bl_cartRecipient .el_cartRecipient_name {
  font-weight: 700;
  padding-block: 5px;
  border-bottom: 1px solid var(--border-color);
}
.bl_cartRecipient .el_cartRecipient_total {
  font-size: 0.9em;
  margin-top: auto;
  border-top: 1px solid var(--border-color);
  padding-block: 5px 0;
  text-align: right;
  font-weight: 700;
}

.bl_recipientItem_prodcuts .el_cartRecipient_details,
.bl_cartRecipient .el_cartRecipient_details {
  padding-left: 0;
  padding-block: 10px;
}
.bl_recipientItem_prodcuts .el_cartRecipient_details li,
.bl_cartRecipient .el_cartRecipient_details li {
  list-style: none;
}

.bl_cartRecipient .el_cartRecipient_details {
  font-size: 0.8em;
}

.bl_checkout_forms {
  max-width: 800px;
  margin-inline: auto;
  margin-block: 40px;
}

.el_checkout_form {
  display: none;
  position: relative;
  opacity: 0;
  visibility: hidden;
  z-index: 1;
  transition: all var(--transition-time) ease;
}
.el_checkout_form.is_active {
  display: block;
  opacity: 1;
  visibility: visible;
  z-index: 2;
}
.el_checkout_form h2 {
  font-size: 1.8em;
  font-weight: var(--fw-bold);
  text-align: center;
}
@media screen and (min-width: 900px) {
  .el_checkout_form h2 {
    font-size: 2.2em;
  }
}
.el_checkout_form h2 + p {
  text-align: center;
  margin-bottom: 20px;
}
.el_checkout_form h3 {
  font-size: 1.3em;
  font-weight: var(--fw-bold);
  text-align: center;
}
.el_checkout_form h3 + p {
  text-align: center;
  margin-bottom: 20px;
}
.el_checkout_form h3#ship-to-different-address {
  text-align: left;
}
.el_checkout_form h4 {
  font-size: 1.1em;
  font-weight: var(--fw-bold);
  text-align: center;
  margin-top: 40px;
}
.el_checkout_form .bl_shipping_products {
  padding-block: 0 30px;
  margin-inline: auto;
  margin-block: 20px 20px;
}
.el_checkout_form table.bl_shipping_productsTab {
  table-layout: fixed;
  width: 100%;
  margin-inline: auto;
}
.el_checkout_form table.bl_shipping_productsTab thead {
  background-color: var(--bg-color-beige);
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 899px) {
  .el_checkout_form table.bl_shipping_productsTab thead {
    display: none;
  }
}
@media screen and (max-width: 899px) {
  .el_checkout_form table.bl_shipping_productsTab tbody tr {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    align-items: center;
  }
  .el_checkout_form table.bl_shipping_productsTab tbody tr + tr {
    margin-top: 30px;
  }
}
.el_checkout_form table.bl_shipping_productsTab th {
  padding-block: 5px;
  padding-inline: 10px;
}
.el_checkout_form table.bl_shipping_productsTab td {
  border-bottom: 1px solid var(--border-color);
  padding-block: 10px;
  padding-inline: 10px;
}
.el_checkout_form table.bl_shipping_productsTab th.el_recipientCell {
  text-align: center;
  width: 250px;
}
.el_checkout_form table.bl_shipping_productsTab th.el_productCell {
  padding-inline: 50px;
}
.el_checkout_form table.bl_shipping_productsTab .el_quantityCell {
  width: 100px;
  text-align: center;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell {
  vertical-align: middle;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell .el_productCell_detail {
  display: flex;
  align-items: center;
  gap: 30px;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell figure {
  flex-shrink: 0;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell figure img {
  width: 120px;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell .el_productCell_meta {
  font-size: 12px;
  line-height: 1.4;
  opacity: 0.5;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell .el_productCell_meta .el_price {
  font-size: 14px;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell .el_productCell_sum {
  font-weight: 700;
  font-size: 14px;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell .el_productCell_sum span {
  font-size: 1.1em;
}
.el_checkout_form table.bl_shipping_productsTab td.el_productCell button.el_linkButton_s {
  font-size: 13px;
  margin-top: 6px;
  padding-inline: 8px 14px;
  padding-block: 5px;
  border-radius: 10px;
  background-color: #666;
  color: #fff;
}
.el_checkout_form table.bl_shipping_productsTab td.product-quantity {
  width: 200px;
}
.el_checkout_form .is_allocate_complete,
.el_checkout_form .is_allocate_not_complete {
  background-color: #f5e1e8;
  padding-block: 2px;
  padding-inline: 10px;
  font-size: 0.8em;
  color: #f20d0d;
  border-radius: 3px;
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
}
.el_checkout_form .is_allocate_complete::before,
.el_checkout_form .is_allocate_not_complete::before {
  content: "i";
  background-color: #fff;
  font-size: 11px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  width: 1.3em;
  height: 1.3em;
  border-radius: 100%;
  margin-right: 5px;
}
.el_checkout_form .is_allocate_complete {
  background-color: #d7ef82;
  color: #44520d;
}
.el_checkout_form .el_remaining_note {
  margin-top: 20px;
}
.el_checkout_form a.button.is_back_cart {
  --button-color: var(--sub-color);
  font-size: 14px;
  padding-inline: 28px 20px;
}
.el_checkout_form a.button.is_back_cart::before {
  content: "";
  width: 0.7em;
  height: 0.7em;
  border-style: solid none none solid;
  border-color: #fff;
  border-width: 2px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 0.35em);
  left: 13px;
}
.el_checkout_form a.button.is_back_cart:hover {
  filter: brightness(1.1);
}
.el_checkout_form a.button.is_back_cart:focus {
  outline: 1px solid var(--main-color);
  outline-offset: 2px;
}
.el_checkout_form .bl_packages,
.el_checkout_form .bl_shipping_lists {
  display: grid;
  gap: 50px;
}
.el_checkout_form .bl_packages .bl_billing,
.el_checkout_form .bl_packages .bl_package,
.el_checkout_form .bl_packages .bl_recipientItem,
.el_checkout_form .bl_shipping_lists .bl_billing,
.el_checkout_form .bl_shipping_lists .bl_package,
.el_checkout_form .bl_shipping_lists .bl_recipientItem {
  position: relative;
  border: 1px solid var(--border-color);
  border-top: none;
}
.el_checkout_form .bl_packages .bl_billing::before,
.el_checkout_form .bl_packages .bl_package::before,
.el_checkout_form .bl_packages .bl_recipientItem::before,
.el_checkout_form .bl_shipping_lists .bl_billing::before,
.el_checkout_form .bl_shipping_lists .bl_package::before,
.el_checkout_form .bl_shipping_lists .bl_recipientItem::before {
  content: "";
  width: calc(100% + 2px);
  height: 3px;
  background-color: var(--main-color);
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 1;
}
.el_checkout_form .bl_packages .el_recipientItem_editor,
.el_checkout_form .bl_shipping_lists .el_recipientItem_editor {
  display: flex;
  gap: 20px;
  border-bottom: 1px solid #dadada;
  background-color: #faf8f5;
  padding: 8px 10px 3px;
  justify-content: flex-end;
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 899px) {
  .el_checkout_form .bl_packages .el_recipientItem_editor,
  .el_checkout_form .bl_shipping_lists .el_recipientItem_editor {
    flex-wrap: wrap;
    row-gap: 0;
    font-size: 0.9em;
    line-height: 1.4;
  }
  .el_checkout_form .bl_packages .el_recipientItem_editor .el_package_num,
  .el_checkout_form .bl_packages .el_recipientItem_editor .el_package_total,
  .el_checkout_form .bl_shipping_lists .el_recipientItem_editor .el_package_num,
  .el_checkout_form .bl_shipping_lists .el_recipientItem_editor .el_package_total {
    width: 100%;
    text-align: right;
  }
}
.el_checkout_form .bl_packages .el_recipientItem_section,
.el_checkout_form .bl_shipping_lists .el_recipientItem_section {
  display: grid;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .bl_packages .el_recipientItem_section,
  .el_checkout_form .bl_shipping_lists .el_recipientItem_section {
    grid-template-columns: 150px 1fr;
  }
}
.el_checkout_form .bl_packages .el_recipientItem_section + .el_recipientItem_section,
.el_checkout_form .bl_shipping_lists .el_recipientItem_section + .el_recipientItem_section {
  border-top: 1px solid var(--border-color);
}
.el_checkout_form .bl_packages .el_recipientItem_section input::-moz-placeholder, .el_checkout_form .bl_shipping_lists .el_recipientItem_section input::-moz-placeholder {
  color: #bebdbd;
  opacity: 1;
}
.el_checkout_form .bl_packages .el_recipientItem_section input::placeholder,
.el_checkout_form .bl_shipping_lists .el_recipientItem_section input::placeholder {
  color: #bebdbd;
  opacity: 1;
}
.el_checkout_form .bl_packages .el_package.bl_shipping + .el_recipientItem_section,
.el_checkout_form .bl_shipping_lists .el_package.bl_shipping + .el_recipientItem_section {
  border-top: 1px solid var(--border-color);
}
.el_checkout_form .bl_packages label.woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox,
.el_checkout_form .bl_shipping_lists label.woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox {
  font-size: 13px;
  font-weight: normal;
  display: inline-flex;
  gap: 5px;
  align-items: center;
}
.el_checkout_form .bl_packages .el_recipientItem_label,
.el_checkout_form .bl_shipping_lists .el_recipientItem_label {
  align-self: center;
  font-weight: var(--fw-bold);
  height: 100%;
  border-bottom: 1px solid var(--border-color);
  background-color: #faf8f5;
  padding: 5px 20px;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .bl_packages .el_recipientItem_label,
  .el_checkout_form .bl_shipping_lists .el_recipientItem_label {
    border-bottom: none;
    border-right: 1px solid var(--border-color);
    padding: 15px 20px;
  }
}
.el_checkout_form .bl_packages .el_recipientItem_label + div,
.el_checkout_form .bl_shipping_lists .el_recipientItem_label + div {
  padding: 15px 20px;
}
.el_checkout_form .bl_packages .el_recipientItem_shipping,
.el_checkout_form .bl_shipping_lists .el_recipientItem_shipping {
  display: flex;
  flex-direction: column;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.el_checkout_form .bl_packages .el_recipientItem_shipping button.el_cart_productLink,
.el_checkout_form .bl_shipping_lists .el_recipientItem_shipping button.el_cart_productLink {
  width: -moz-fit-content;
  width: fit-content;
  align-self: flex-end;
}
.el_checkout_form .bl_packages .el_recipientItem_shipping .bl_guest_billing_data.is_hide,
.el_checkout_form .bl_shipping_lists .el_recipientItem_shipping .bl_guest_billing_data.is_hide {
  opacity: 0.4;
}
.el_checkout_form .bl_packages .el_allocatedItem,
.el_checkout_form .bl_shipping_lists .el_allocatedItem {
  display: flex;
  width: 100%;
  border-bottom: 1px solid var(--border-color);
  padding-block: 5px;
  gap: 10px;
  align-items: center;
}
.el_checkout_form .bl_packages .el_allocatedItem figure,
.el_checkout_form .bl_shipping_lists .el_allocatedItem figure {
  width: 100px;
  flex-shrink: 0;
}
.el_checkout_form .bl_packages .el_allocatedItem span:last-child,
.el_checkout_form .bl_shipping_lists .el_allocatedItem span:last-child {
  margin-left: auto;
}
.el_checkout_form .bl_packages .el_allocatedItem_total,
.el_checkout_form .bl_shipping_lists .el_allocatedItem_total {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  font-weight: 700;
}
.el_checkout_form .bl_packages .el_recipientItem_name,
.el_checkout_form .bl_shipping_lists .el_recipientItem_name {
  font-size: 1.3em;
  font-weight: bold;
  line-height: 1.3;
  width: 100%;
}
.el_checkout_form .bl_packages .el_user_yonigana,
.el_checkout_form .bl_shipping_lists .el_user_yonigana {
  font-size: 0.7em;
  margin-left: 7px;
}
.el_checkout_form .bl_packages .el_yorself,
.el_checkout_form .bl_shipping_lists .el_yorself {
  margin-left: 10px;
  font-size: 14px;
  border: 1px solid;
  padding: 2px 5px;
  border-radius: 3px;
  opacity: 0.5;
  font-weight: var(--fw-regular);
  vertical-align: 2px;
}
.el_checkout_form .bl_packages .el_recipientItem_address,
.el_checkout_form .bl_shipping_lists .el_recipientItem_address {
  line-height: 1.4;
  margin-top: 10px;
}
.el_checkout_form .bl_packages .el_recipientItem_address span,
.el_checkout_form .bl_shipping_lists .el_recipientItem_address span {
  white-space: nowrap;
}
.el_checkout_form .bl_packages .el_linkButton,
.el_checkout_form .bl_shipping_lists .el_linkButton {
  color: var(--link-color);
  font-weight: var(--fw-regular);
  font-size: 0.9em;
}
.el_checkout_form .bl_packages .el_linkButton:disabled,
.el_checkout_form .bl_shipping_lists .el_linkButton:disabled {
  display: none;
  opacity: 0.5;
  cursor: no-drop;
}
.el_checkout_form .bl_packages .el_useBilling,
.el_checkout_form .bl_shipping_lists .el_useBilling {
  margin-left: 10px;
  font-size: 0.8em;
  color: var(--link-color);
  line-height: 1;
  white-space: nowrap;
}
.el_checkout_form .bl_packages .bl_recipientItem_options input[type=text],
.el_checkout_form .bl_shipping_lists .bl_recipientItem_options input[type=text] {
  width: 100%;
}
.el_checkout_form .bl_packages .bl_recipientItem_options select,
.el_checkout_form .bl_shipping_lists .bl_recipientItem_options select {
  border-color: var(--border-color);
}
.el_checkout_form .bl_packages .bl_recipientItem_options textarea,
.el_checkout_form .bl_shipping_lists .bl_recipientItem_options textarea {
  border-color: var(--border-color);
  width: 100%;
  height: 100px;
  padding: 5px;
}
.el_checkout_form .bl_packages .bl_recipientItem_prodcuts ul,
.el_checkout_form .bl_shipping_lists .bl_recipientItem_prodcuts ul {
  padding-inline: 20px !important;
}
.el_checkout_form .bl_packages .el_alertLabel,
.el_checkout_form .bl_shipping_lists .el_alertLabel {
  background-color: var(--accent-color);
  color: #fff;
  padding: 2px 5px;
  border-radius: 3px;
  font-size: 0.9em;
  margin-left: 10px;
}
.el_checkout_form .bl_packages .el_notice,
.el_checkout_form .bl_shipping_lists .el_notice {
  color: var(--accent-color);
  font-size: 0.9em;
}
.el_checkout_form .bl_packages .is_unfinished_address,
.el_checkout_form .bl_shipping_lists .is_unfinished_address {
  background-color: #f5e1e8;
  padding-block: 5px;
  padding-inline: 10px;
  font-size: 0.9em;
  color: #f20d0d;
  border-radius: 3px;
  display: flex;
  align-items: center;
}
.el_checkout_form .bl_packages .is_unfinished_address::before,
.el_checkout_form .bl_shipping_lists .is_unfinished_address::before {
  content: "i";
  background-color: #fff;
  font-size: 15px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  width: 1.3em;
  height: 1.3em;
  border-radius: 100%;
  margin-right: 10px;
  flex-shrink: 0;
}
.el_checkout_form .bl_packages,
.el_checkout_form .bl_shipping_lists {
  counter-reset: shipping;
  margin-top: 40px;
}
.el_checkout_form .bl_packages.bl_order_reviews,
.el_checkout_form .bl_shipping_lists.bl_order_reviews {
  margin-top: 10px;
  margin-bottom: 40px;
}
.el_checkout_form .bl_package,
.el_checkout_form .bl_recipientItem {
  counter-increment: shipping;
}
.el_checkout_form .el_recipientItem_editor {
  position: relative;
}
.el_checkout_form .el_recipientItem_editor button.el_linkButton_s.is_delete_item {
  font-size: 12px;
  font-weight: normal;
  align-self: center;
}
.el_checkout_form .el_recipientItem_index {
  position: absolute;
  top: -15px;
  left: -10px;
  padding-inline: 15px;
  background-color: var(--main-color);
  color: #fff;
  font-weight: var(--fw-bold);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 99px;
  padding-block: 5px 7px;
  z-index: 2;
  line-height: 1;
  gap: 5px;
  white-space: nowrap;
  align-items: baseline;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .el_recipientItem_index {
    left: -15px;
    padding-inline: 20px;
  }
}
.el_checkout_form .el_recipientItem_index::after {
  content: counter(shipping);
  font-size: 1.3em;
}
.el_checkout_form p.el_note {
  font-size: 14px;
  opacity: 0.6;
}
.el_checkout_form ul.bl_totalCost {
  padding-left: 0;
  margin-block: 20px 30px;
  border: 1px solid var(--border-color);
  border-radius: 5px;
  padding: 15px;
  line-height: 1.6;
  max-width: 500px;
  margin-right: 0;
  margin-left: auto;
}
.el_checkout_form ul.bl_totalCost li {
  list-style: none;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.el_checkout_form ul.bl_totalCost .el_totalCost_amount {
  white-space: nowrap;
}
.el_checkout_form .el_package {
  display: grid;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .el_package {
    grid-template-columns: 150px 1fr;
  }
}
.el_checkout_form .el_package + .el_package {
  border-top: 1px solid var(--border-color);
}
.el_checkout_form .el_package_label {
  align-self: center;
  font-weight: var(--fw-bold);
  height: 100%;
  border-bottom: 1px solid var(--border-color);
  background-color: #faf8f5;
  padding: 5px 20px;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .el_package_label {
    border-bottom: none;
    border-right: 1px solid var(--border-color);
    padding: 15px 20px;
  }
}
.el_checkout_form .bl_package_info {
  padding: 15px 20px;
  display: flex;
  padding-inline: 20px;
  padding-block: 15px;
  row-gap: 10px;
  -moz-column-gap: 20px;
       column-gap: 20px;
  flex-wrap: wrap;
  font-weight: var(--fw-bold);
}
.el_checkout_form .bl_package_info .el_package_shippingName {
  font-size: 1.3em;
  line-height: 1.3;
}
.el_checkout_form .bl_package_info .el_package_total {
  font-size: 1.1em;
}
.el_checkout_form .bl_package_info .el_package_shippingAddress {
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
  opacity: 0.6;
}
.el_checkout_form .bl_package_items {
  counter-reset: package;
  display: flex;
  flex-direction: column;
  padding-block: 25px;
  padding-inline: 15px;
  gap: 25px;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .bl_package_items {
    padding-inline: 25px;
  }
}
.el_checkout_form .bl_package_item {
  padding-inline: 17px;
  padding-block: 30px 25px;
  border: 2px solid var(--sub-color);
  border-radius: 10px;
  counter-increment: package;
  position: relative;
  order: 2;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .bl_package_item {
    padding-inline: 25px;
  }
}
.el_checkout_form .bl_package_reset {
  order: 1;
}
.el_checkout_form .el_package_itemNumber {
  display: block;
  background-color: var(--sub-color);
  color: #fff;
  border-radius: 5px;
  padding-block: 3px 6px;
  padding-inline: 12px;
  font-weight: var(--fw-bold);
  font-size: 14px;
  position: absolute;
  top: -15px;
  left: -8px;
  line-height: 1;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .el_package_itemNumber {
    left: -14px;
  }
}
.el_checkout_form .el_package_itemNumber::after {
  content: counter(package);
  font-size: 25px;
  margin-left: 5px;
  vertical-align: -1px;
}
.el_checkout_form .bl_package_itemSettings {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--border-color);
}
.el_checkout_form .bl_package_itemSettings dl {
  display: grid;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .bl_package_itemSettings dl {
    grid-template-columns: 100px 1fr;
  }
}
.el_checkout_form .bl_package_itemSettings dl + dl {
  margin-top: 5px;
  border-top: 1px solid #efefef;
  padding-top: 5px;
}
.el_checkout_form .bl_package_itemSettings dt {
  font-weight: bold;
}
.el_checkout_form .bl_package_itemSettings .el_subTotal {
  font-size: 0.9em;
  opacity: 0.7;
  margin-left: 10px;
}
.el_checkout_form .bl_package_itemSettings .el_gift_setting {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 5px;
}
.el_checkout_form .bl_package_itemSettingForm {
  border-top: 1px solid var(--border-color);
  padding-block: 15px 0;
  margin-top: 10px;
}
.el_checkout_form ul.el_package_itemDetails {
  padding-block: 10px 0;
  padding-inline: 0;
}
.el_checkout_form ul.el_package_itemDetails li {
  list-style: none;
  padding-inline: 5px;
  padding-block: 10px;
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 5px;
}
@media screen and (max-width: 899px) {
  .el_checkout_form ul.el_package_itemDetails li {
    flex-wrap: wrap;
  }
}
.el_checkout_form ul.el_package_itemDetails li figure {
  width: 70px;
  flex-shrink: 0;
}
.el_checkout_form ul.el_package_itemDetails li span.el_delivery_info {
  font-size: 0.8em;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ccc;
  border-radius: 5px;
  color: #666;
  padding-inline: 5px;
  white-space: nowrap;
}
.el_checkout_form ul.el_package_itemDetails li .el_package_itemDetails_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 5px;
}
.el_checkout_form .bl_package_delivery {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (max-width: 899px) {
  .el_checkout_form .bl_package_delivery {
    gap: 20px;
  }
}
.el_checkout_form .bl_package_delivery .el_package_selectForm {
  display: flex;
  gap: 15px;
  align-items: center;
  flex-wrap: wrap;
}
.el_checkout_form .bl_package_delivery .el_package_selectForm label {
  font-weight: var(--fw-bold);
}
.el_checkout_form .bl_package_delivery select:disabled {
  display: none;
}
.el_checkout_form .bl_package_delivery .el_package_form_alert {
  width: 100%;
}
.el_checkout_form .el_package_form_alert,
.el_checkout_form .el_package_faster_shipping {
  width: auto;
  background-color: #faf8f5;
  padding-block: 15px;
  padding-inline: 40px 15px;
  font-size: 0.9em;
  margin-block: 5px;
  border-left: 5px solid var(--accent-color);
  position: relative;
}
.el_checkout_form .el_package_form_alert .material-symbols-outlined,
.el_checkout_form .el_package_faster_shipping .material-symbols-outlined {
  position: absolute;
  left: 8px;
  top: 15px;
  color: var(--accent-color);
}
.el_checkout_form .el_package_form_alert .ut_small_txt,
.el_checkout_form .el_package_faster_shipping .ut_small_txt {
  display: block;
}
.el_checkout_form .el_package_form_alert button.el_linkButton,
.el_checkout_form .el_package_faster_shipping button.el_linkButton {
  font-size: 1em;
}
.el_checkout_form .bl_package_reset {
  width: auto;
  background-color: #faf8f5;
  padding-block: 15px;
  padding-inline: 40px 15px;
  font-size: 0.9em;
  border-left: 5px solid var(--accent-color);
  margin-block: 0 15px;
  position: relative;
}
.el_checkout_form .bl_package_reset .material-symbols-outlined {
  position: absolute;
  left: 8px;
  top: 15px;
  color: var(--accent-color);
}
.el_checkout_form .bl_package_reset button.el_linkButton {
  font-size: 1em;
}
.el_checkout_form .bl_package_gift {
  display: flex;
  padding-inline: 5px 20px;
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 8px;
  flex-wrap: wrap;
}
.el_checkout_form .el_package_form {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 900px) {
  .el_checkout_form .el_package_form {
    gap: 15px;
    flex-direction: row;
    align-items: center;
  }
}
.el_checkout_form .el_package_form label {
  white-space: nowrap;
  font-weight: var(--fw-bold);
}
.el_checkout_form .el_package_form select {
  border: 1px solid var(--border-color);
  background-color: var(--wc-form-color-background);
  padding: 10px 10px;
  border-radius: 3px;
  width: auto;
}
.el_checkout_form .el_package_form .el_button {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--sub-color-light);
  padding: 5px 10px;
  border-radius: 5px;
  white-space: nowrap;
  transition: opacity var(--transition-time) ease;
}
@media (hover: hover) {
  .el_checkout_form .el_package_form .el_button:hover {
    opacity: 0.7;
  }
}
.el_checkout_form .el_package_form .el_button:disabled {
  visibility: hidden;
}
.el_checkout_form .el_package_form.is_hide {
  display: none;
}
.el_checkout_form .el_gift_item {
  display: flex;
  white-space: nowrap;
  gap: 10px;
}
.el_checkout_form .bl_package_note {
  padding-block: 10px 10px;
  padding-inline: 0 20px;
}
.el_checkout_form .bl_package_note label span {
  margin-left: 10px;
  font-size: 0.8em;
  opacity: 0.7;
}
@media screen and (max-width: 899px) {
  .el_checkout_form .bl_package_note label span {
    display: block;
    line-height: 1.5;
    margin-bottom: 5px;
    margin-left: 0;
  }
}
.el_checkout_form .bl_package_note textarea {
  background-color: var(--wc-form-color-background);
  border: 1px solid var(--border-color);
  padding: 5px 10px;
  border-radius: 5px;
  height: 8em;
  width: 100%;
  display: block;
}

.el_label_noshi,
.el_label_wrapping,
.el_label_gift {
  font-size: 0.8em;
  display: inline-flex;
  white-space: nowrap;
  align-items: center;
  justify-content: center;
  padding-inline: 7px;
  border: 1px solid;
  border-radius: 5px;
  color: #666;
}

.el_label_gift.is_disabled,
.el_label_noshi {
  color: var(--accent-color);
}

.el_selectButton {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  padding-block: 6px;
  padding-inline: 12px 30px;
  border: 1px solid var(--border-color);
  background-color: var(--wc-form-color-background);
  border-radius: 3px;
  min-width: 150px;
  justify-content: space-between;
  gap: 0;
}
.el_selectButton::after {
  content: "";
  width: 6px;
  height: 6px;
  border-width: 1px;
  border-style: none none solid solid;
  display: block;
  margin-bottom: 2px;
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}

.is_loading {
  position: relative;
}
.is_loading::before {
  content: "更新中...";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
}

.woocommerce form .form-row {
  --wc-form-border-color: var(--border-color);
}
.woocommerce form .form-row label {
  font-size: 16px;
  font-weight: var(--fw-bold);
}
.woocommerce form .form-row label.error {
  font-weight: 500;
  font-size: 0.8em;
  color: #a00;
  line-height: 1.2;
  margin-top: 5px;
}
.woocommerce form .form-row label.woocommerce-form__label-for-checkbox {
  font-weight: var(--fw-regular);
}
.woocommerce form .form-row .required {
  font-size: 0;
}
.woocommerce form .form-row .required::before {
  content: "必須";
  color: #fff;
  padding-inline: 5px;
  padding-block: 3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
  border-radius: 3px;
  font-weight: 500;
  margin-left: 5px;
  vertical-align: 2px;
  background-color: var(--accent-color);
}
.woocommerce form .form-row .optional {
  visibility: hidden;
}
.woocommerce form .form-row.form-row-3col {
  width: 27%;
  max-width: 120px;
  float: left;
}
.woocommerce form .form-row#billing_phone_1_field label {
  position: relative;
  white-space: nowrap;
}
.woocommerce form .form-row#billing_phone_1_field .required {
  position: absolute;
  top: 6px;
}
.woocommerce form .form-row#shipping_phone_3_field, .woocommerce form .form-row#shipping_phone_2_field, .woocommerce form .form-row#billing_phone_3_field, .woocommerce form .form-row#billing_phone_2_field {
  position: relative;
}
.woocommerce form .form-row#shipping_phone_3_field label, .woocommerce form .form-row#shipping_phone_2_field label, .woocommerce form .form-row#billing_phone_3_field label, .woocommerce form .form-row#billing_phone_2_field label {
  opacity: 0;
}
.woocommerce form .form-row#shipping_phone_3_field label.error, .woocommerce form .form-row#shipping_phone_2_field label.error, .woocommerce form .form-row#billing_phone_3_field label.error, .woocommerce form .form-row#billing_phone_2_field label.error {
  opacity: 1;
}
.woocommerce form .form-row#shipping_phone_3_field::before, .woocommerce form .form-row#shipping_phone_2_field::before, .woocommerce form .form-row#billing_phone_3_field::before, .woocommerce form .form-row#billing_phone_2_field::before {
  content: "-";
  position: absolute;
  top: 40px;
  left: -13px;
}
.woocommerce form .form-row#shipping_address_2_field, .woocommerce form .form-row#shipping_company_field, .woocommerce form .form-row#billing_address_2_field, .woocommerce form .form-row#billing_company_field {
  margin-bottom: 15px;
  border-bottom: 5px solid #f7f7f7;
  padding-bottom: 30px;
}
.woocommerce form .form-row#billing_email_field {
  margin-top: 20px;
  border-top: 5px solid #f7f7f7;
  padding-top: 20px;
}
.woocommerce form .form-row#shipping_state_field, .woocommerce form .form-row#shipping_postcode_field, .woocommerce form .form-row#billing_state_field, .woocommerce form .form-row#billing_postcode_field {
  width: 130px;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
  width: calc(50% - 10px);
}

.woocommerce form .shipping_address .form-row.form-row-3col {
  margin-right: 20px;
}

#billing_country_field {
  display: none;
}

.woocommerce-billing-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
       column-gap: 20px;
  margin-top: 30px;
}
.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide {
  width: 100%;
}

.woocommerce form .form-row.woocommerce-validated input.input-text.error,
.woocommerce form .form-row.woocommerce-validated select.error {
  border-color: #a00;
}

.select2-container .select2-selection--single {
  height: 40px;
  display: flex;
  align-items: center;
  border-color: var(--border-color);
  border-radius: 3px;
}
.select2-container .select2-selection--single .select2-selection__arrow {
  height: 38px;
}

.woocommerce ul.woocommerce-error {
  padding: 1em 2em 1em 3.5em;
}

.woocommerce-message[role=alert] {
  position: fixed;
  top: 60px;
  right: 20px;
  z-index: 9999;
  max-width: 400px;
  width: 80%;
  border-radius: 5px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s ease-in-out;
  background-color: rgba(1, 1, 1, 0.7);
  color: #fff;
  border: none;
}
.woocommerce-message[role=alert]::before {
  top: 1em;
  left: 1.2em;
  background-color: #fff;
  padding-inline: 5px;
  border-radius: 100%;
  width: 1.8em;
  height: 1.8em;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1em;
}
.woocommerce-message[role=alert]::after {
  content: "×";
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 1.2em;
  cursor: pointer;
  color: #fff;
}

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info:not(.cart-empty) {
  position: fixed;
  top: 60px;
  right: 20px;
  z-index: 9999;
  max-width: 400px;
  width: 80%;
  border-radius: 5px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s ease-in-out;
  background-color: rgba(1, 1, 1, 0.7);
  color: #fff;
  border: none;
}
.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-error::before,
.woocommerce-notices-wrapper .woocommerce-info:not(.cart-empty)::before {
  top: 1em;
  left: 1.2em;
  background-color: #fff;
  padding-inline: 5px;
  border-radius: 100%;
  width: 1.8em;
  height: 1.8em;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1em;
}
.woocommerce-notices-wrapper .woocommerce-message::after,
.woocommerce-notices-wrapper .woocommerce-error::after,
.woocommerce-notices-wrapper .woocommerce-info:not(.cart-empty)::after {
  content: "×";
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 1.2em;
  cursor: pointer;
  color: #fff;
}

.woocommerce-NoticeGroup {
  position: fixed;
  right: 20px;
  top: 100px;
  z-index: 9999;
  max-width: 400px;
  width: 80%;
  border-radius: 5px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s ease-in-out;
  background-color: rgba(1, 1, 1, 0.7);
  opacity: 0;
}
.woocommerce-NoticeGroup .woocommerce-message,
.woocommerce-NoticeGroup .woocommerce-error,
.woocommerce-NoticeGroup .woocommerce-info {
  color: #fff;
  border: none;
  margin-bottom: 0;
}
.woocommerce-NoticeGroup .woocommerce-message::before,
.woocommerce-NoticeGroup .woocommerce-error::before,
.woocommerce-NoticeGroup .woocommerce-info::before {
  top: 1em;
  left: 1.2em;
  background-color: #fff;
  padding-inline: 5px;
  border-radius: 100%;
  width: 1.8em;
  height: 1.8em;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1em;
}

.woocommerce .woocommerce-ordering select {
  padding: 5px;
}

.cart-empty.woocommerce-info {
  border: none;
  text-align: center;
  padding-block: 50px;
}
.cart-empty.woocommerce-info::before {
  content: none;
}

.wc-empty-cart-message + .return-to-shop {
  text-align: center;
}
.wc-proceed-to-checkout + .return-to-shop a {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  --button-color: var(--sub-color);
}

.bl_recentlyViewed {
  margin-top: 4em;
  border-top: 1px solid var(--border-color);
}

.el_recentlyViewed-title {
  margin-top: 30px;
  font-size: 1.4em;
  font-weight: var(--fw-bold);
  margin-bottom: 20px;
}

.woocommerce ul.products li.product a img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
}

h1.woocommerce-products-header__title.page-title {
  font-size: var(--entry-title-fsz);
  text-align: center;
  padding-inline: 20px;
  padding-block: 0.7em;
  line-height: 1.5;
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
}

header.woocommerce-products-header {
  background-color: #fff;
  background-image: url(../images/bg-heading.svg);
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-top: -64px;
  margin-bottom: 10px;
}

.woocommerce-checkout .ly_mainContent {
  margin-block: 0 50px;
}
.woocommerce-checkout .bl_siteMain {
  border-top: none;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: var(--main-color);
}
.woocommerce-checkout input[type=checkbox]:focus,
.woocommerce-checkout input[type=radio]:focus {
  outline: 1px solid var(--main-color);
  outline-offset: 3px;
}
.woocommerce-checkout button:focus {
  outline: 1px solid var(--main-color);
  outline-offset: 3px;
}
.woocommerce-checkout.woocommerce-order-pay form#order_review {
  max-width: 740px;
  margin-inline: auto;
}
.woocommerce-checkout.woocommerce-order-pay .el_product_name {
  display: flex;
  gap: 10px;
}
.woocommerce-checkout.woocommerce-order-pay .el_product_name img {
  max-width: 60px;
  margin-right: 10px;
  flex-shrink: 0;
}

.woocommerce-checkout-user-select {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
}
.woocommerce-checkout-user-select form {
  width: 100%;
  max-width: 500px;
}
.woocommerce-checkout-user-select p.el_note {
  margin-top: 10px;
  line-height: 1.3;
  font-size: 1em;
}
.woocommerce-checkout-user-select button {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  width: 100%;
  max-width: 500px;
  min-height: 70px;
  padding-inline: 20px;
  padding-block: 5px;
  font-weight: var(--fw-bold);
  font-size: 18px;
  gap: 10px;
  border-radius: 3px;
  margin-inline: auto;
  transition: all var(--transition);
}
@media screen and (min-width: 900px) {
  .woocommerce-checkout-user-select button {
    font-size: 20px;
    gap: 20px;
  }
}
.woocommerce-checkout-user-select button span {
  font-size: 1.7em;
}
.woocommerce-checkout-user-select button.is_login {
  background-color: var(--button-color);
  color: #fff;
}
.woocommerce-checkout-user-select button.is_register {
  background-color: var(--accent-color);
  color: #fff;
}
.woocommerce-checkout-user-select button.is_guest {
  border: 2px solid var(--main-color);
  background-color: #fefcf7;
  color: var(--sub-color);
}
@media (hover: hover) {
  .woocommerce-checkout-user-select button:hover.is_login, .woocommerce-checkout-user-select button:hover.is_register {
    filter: brightness(1.1);
  }
  .woocommerce-checkout-user-select button:hover.is_guest {
    background-color: #fcf7ed;
  }
}

.el_shippingType_heading {
  text-align: center;
  font-size: 24px;
}

.bl_shippingType_select {
  display: grid;
  gap: 25px;
  margin-block: 40px;
  justify-content: center;
}
@media screen and (min-width: 900px) {
  .bl_shippingType_select {
    grid-template-columns: 300px 300px;
  }
}
.bl_shippingType_select .el_shippingType_select {
  display: grid;
  align-items: center;
  justify-content: center;
  grid-template-columns: 170px 1fr;
  font-size: 14px;
  text-align: center;
  padding-inline: 0 15px;
  padding-block: 10px;
  border: 2px solid var(--main-color);
  border-radius: 10px;
  background-color: #fefcf7;
  transition: background-color var(--transition);
}
.bl_shippingType_select .el_shippingType_select img {
  margin-inline: auto;
  justify-self: center;
}
@media screen and (max-width: 899px) {
  .bl_shippingType_select .el_shippingType_select img {
    height: 36px;
  }
}
@media screen and (min-width: 900px) {
  .bl_shippingType_select .el_shippingType_select img {
    margin-top: 45px;
  }
}
.bl_shippingType_select .el_shippingType_select span {
  font-size: 1.33333333em;
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 900px) {
  .bl_shippingType_select .el_shippingType_select {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 100px;
    font-size: 22px;
    min-height: 300px;
    padding-inline: 20px;
  }
  .bl_shippingType_select .el_shippingType_select div {
    align-self: flex-start;
  }
}
@media (hover: hover) {
  .bl_shippingType_select .el_shippingType_select:hover {
    background-color: #fcf7ed;
  }
}

.el_button_goCart {
  background-color: var(--sub-color);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  padding-block: 5px;
  margin-top: 0;
  white-space: nowrap;
  position: relative;
  border-radius: 3px;
  min-width: 300px;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 50px;
  font-size: 20px;
  margin-inline: auto;
  padding-inline: 30px 10px;
  transition: all var(--transition);
}
.el_button_goCart::before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  border-style: solid none none solid;
  border-color: #fff;
  border-width: 1px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 0.3em);
  left: 1em;
}
@media (hover: hover) {
  .el_button_goCart:hover {
    filter: brightness(1.2);
  }
}

.bl_checkout_timeline {
  margin-inline: auto;
  max-width: 800px;
}
.woocommerce-checkout + .bl_checkout_timeline {
  margin-top: 40px;
}
.bl_checkout_timeline .bl_checkoutPagenation {
  display: flex;
  counter-reset: step;
  width: 100%;
  max-width: 700px;
  margin-inline: auto;
  position: relative;
  padding-left: 0;
}
@media screen and (max-width: 899px) {
  .bl_checkout_timeline .bl_checkoutPagenation {
    order: 1;
    grid-column: 1/-1;
  }
}
.bl_checkout_timeline .bl_checkoutPagenation::before {
  content: "";
  width: 83%;
  height: 4px;
  background-color: #efd49a;
  opacity: 0.5;
  position: absolute;
  top: 6px;
  left: 50%;
  transform: translateX(-50%);
}
.bl_checkout_timeline .bl_checkoutPagenation li {
  flex: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  counter-increment: step;
  color: #ccc;
  transition: all var(--transition-time) ease;
  font-size: 10px;
}
@media screen and (min-width: 900px) {
  .bl_checkout_timeline .bl_checkoutPagenation li {
    font-size: 13px;
  }
}
.bl_checkout_timeline .bl_checkoutPagenation li::before {
  content: "";
  transition: all var(--transition-time) ease;
  font-weight: bold;
  color: #fff;
  font-size: 1.2em;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #efd49a;
  width: 15px;
  height: 15px;
  border-radius: 100%;
}
.bl_checkout_timeline[data-active="1"] li:first-child, .bl_checkout_timeline[data-active="2"] li:nth-child(2), .bl_checkout_timeline[data-active="3"] li:nth-child(3), .bl_checkout_timeline[data-active="4"] li:nth-child(4), .bl_checkout_timeline[data-active="5"] li:nth-child(5), .bl_checkout_timeline[data-active="6"] li:nth-child(6) {
  color: #333;
  font-weight: bold;
}
.bl_checkout_timeline[data-active="1"] li:first-child::before, .bl_checkout_timeline[data-active="2"] li:nth-child(2)::before, .bl_checkout_timeline[data-active="3"] li:nth-child(3)::before, .bl_checkout_timeline[data-active="4"] li:nth-child(4)::before, .bl_checkout_timeline[data-active="5"] li:nth-child(5)::before, .bl_checkout_timeline[data-active="6"] li:nth-child(6)::before {
  background-color: var(--main-color);
}

.bl_checkout_navi {
  display: flex;
  justify-content: space-between;
  max-width: 800px;
  margin-inline: auto;
  gap: 20px;
}
.bl_checkout_navi .el_timeline_buttton {
  background-color: var(--sub-color);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  padding-block: 5px;
  margin-top: 0;
  white-space: nowrap;
  position: relative;
  border-radius: 3px;
  min-width: 150px;
  font-size: 14px;
  min-height: 50px;
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 900px) {
  .bl_checkout_navi .el_timeline_buttton {
    font-size: 16px;
  }
}
.bl_checkout_navi .el_timeline_buttton::before {
  content: "";
  width: 0.7em;
  height: 0.7em;
  border-style: solid none none solid;
  border-color: #fff;
  border-width: 2px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 0.35em);
}
.bl_checkout_navi .el_timeline_buttton.js-prev {
  padding-inline: 30px 20px;
}
@media screen and (max-width: 899px) {
  .bl_checkout_navi .el_timeline_buttton.js-prev {
    order: 2;
  }
}
.bl_checkout_navi .el_timeline_buttton.js-prev::before {
  left: 13px;
}
.bl_checkout_navi .el_timeline_buttton.js-next {
  padding-inline: 20px 30px;
}
@media screen and (max-width: 899px) {
  .bl_checkout_navi .el_timeline_buttton.js-next {
    order: 3;
  }
}
.bl_checkout_navi .el_timeline_buttton.js-next::before {
  right: 13px;
  transform: rotate(135deg);
}
.bl_checkout_navi .el_timeline_buttton.is_disabled {
  visibility: hidden;
}
.bl_checkout_navi .el_timeline_buttton:disabled {
  opacity: 0.4;
}
.bl_checkout_navi .el_timeline_buttton:focus {
  outline: 1px solid var(--main-color);
  outline-offset: 3px;
}

.bl_formHeader {
  top: 0;
  z-index: 10;
  background: #fff;
  padding-block: 15px 5px;
  border-color: #f0f0f0;
  border-style: solid;
  border-width: 1px;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  z-index: 13;
  transition: all var(--transition);
}
.admin-bar .bl_formHeader {
  top: 32px;
}

.bl_formFooter {
  padding-block: 20px 10px;
}

.woocommerce-checkout-review-order-table .product-total {
  text-align: right;
}
.woocommerce-checkout-review-order-table tfoot th {
  background-color: var(--bg-color-beige);
  width: 50%;
}
.woocommerce-checkout-review-order-table tfoot td {
  text-align: right;
}
.woocommerce-checkout-review-order-table .order-total td {
  font-size: 1.3em;
}

.bl_recipinet_buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 10px;
}
.bl_recipinet_buttons button.button {
  min-width: 250px;
  min-height: 50px;
}
.bl_recipinet_buttons button.button.new_recipient {
  background-color: var(--button-blue);
}
.bl_recipinet_buttons button.button.add_self {
  border: 2px solid var(--main-color);
  background-color: #fefcf7;
  color: var(--main-text-color);
}
.bl_recipinet_buttons button.button.add_self:disabled {
  color: var(--main-text-color) !important;
}

.woocommerce-order-received h2 {
  font-weight: var(--fw-bold);
  font-size: 20px;
  margin-block: 40px 20px;
  border-left: 3px solid var(--main-color);
  padding-inline: 15px;
  padding-block: 0;
}
.woocommerce-order-received h2.woocommerce-column__title {
  margin-top: 40px !important;
}
.woocommerce-order-received .woocommerce .woocommerce-customer-details address {
  border: none;
}
.woocommerce-order-received ul.bl_orderShippingList {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-left: 0;
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .woocommerce-order-received ul.bl_orderShippingList {
    grid-template-columns: repeat(4, 1fr);
  }
}
.woocommerce-order-received ul.bl_orderShippingList li {
  list-style: none;
  line-height: 1.4;
}
.woocommerce-order-received ul.bl_orderShippingList li > span {
  display: flex;
  margin-top: 5px;
}
.woocommerce-order-received .woocommerce-thankyou-order-received {
  margin-bottom: 20px;
}
@media screen and (min-width: 900px) {
  .woocommerce-order-received .woocommerce-thankyou-order-received {
    margin-bottom: 40px;
    text-align: center;
  }
}
.woocommerce-order-received .woocommerce ul.order_details {
  padding-left: 0;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 899px) {
  .woocommerce-order-received .woocommerce ul.order_details {
    flex-direction: column;
  }
  .woocommerce-order-received .woocommerce ul.order_details li {
    border-right: none;
  }
  .woocommerce-order-received .woocommerce ul.order_details li:not(.account_info) {
    display: grid;
    grid-template-columns: 80px 1fr;
    align-items: center;
  }
}
.woocommerce-order-received .order_details tfoot th,
.woocommerce-order-received .order_details tfoot td {
  font-weight: var(--fw-regular) !important;
}
.woocommerce-order-received .order_details tfoot th {
  background-color: var(--bg-color-beige);
}

button.el_linkButton_s {
  padding-inline: 14px 14px;
  padding-block: 5px;
  border-radius: 10px;
  background-color: #666;
  color: #fff;
  line-height: 1;
  white-space: nowrap;
  transition: all var(--transition);
}
@media (hover: hover) {
  button.el_linkButton_s:hover {
    filter: brightness(1.1);
  }
}

.bl_checkoutReview_wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

li.wc_payment_method.payment_method_postofficebank label {
  display: block;
}
li.wc_payment_method.payment_method_postofficebank label img {
  display: none;
}

table.shop_table.woocommerce-checkout-review-order-table thead th {
  border-bottom: 1px solid var(--border-color);
}
table.shop_table.woocommerce-checkout-review-order-table th {
  font-weight: var(--fw-bold);
  padding-block: 10px;
  padding-inline: 15px;
  font-size: 13px;
}
@media screen and (min-width: 900px) {
  table.shop_table.woocommerce-checkout-review-order-table th {
    font-size: 1em;
    padding-inline: 25px;
  }
  table.shop_table.woocommerce-checkout-review-order-table th.product-name {
    text-align: left;
    width: auto;
  }
  table.shop_table.woocommerce-checkout-review-order-table th.product-total {
    text-align: center;
    width: 100px1;
  }
}
table.shop_table.woocommerce-checkout-review-order-table td {
  padding-block: 10px;
}
table.shop_table.woocommerce-checkout-review-order-table .cart_item td {
  padding-block: 15px 0;
  border: none;
}
table.shop_table.woocommerce-checkout-review-order-table .cart_item:last-child td {
  padding-bottom: 15px;
}
table.shop_table.woocommerce-checkout-review-order-table .el_reviewOrder_prodcutName {
  display: grid;
  align-items: center;
  grid-template-columns: 70px 1fr auto;
  gap: 10px;
  font-size: 14px;
  line-height: 1.4;
}
@media screen and (min-width: 900px) {
  table.shop_table.woocommerce-checkout-review-order-table .el_reviewOrder_prodcutName {
    font-size: 16px;
    grid-template-columns: 100px auto 1fr;
  }
}
table.shop_table.woocommerce-checkout-review-order-table .el_reviewOrder_prodcutName > img {
  max-width: 60px;
}
@media screen and (min-width: 900px) {
  table.shop_table.woocommerce-checkout-review-order-table .el_reviewOrder_prodcutName > img {
    max-width: 70px;
    grid-column: 1/2;
  }
}
table.shop_table.woocommerce-checkout-review-order-table .el_reviewOrder_prodcutName .product-quantity {
  width: 50px;
}
table.shop_table.woocommerce-checkout-review-order-table tr.shipping th,
table.shop_table.woocommerce-checkout-review-order-table tr.order-total th,
table.shop_table.woocommerce-checkout-review-order-table tr.cart-subtotal th {
  padding-block: 10px;
}
table.shop_table.woocommerce-checkout-review-order-table tfoot th {
  width: 110px;
  font-size: 13px;
}
@media screen and (min-width: 900px) {
  table.shop_table.woocommerce-checkout-review-order-table tfoot th {
    width: 170px;
    font-size: 1em;
  }
}
table.shop_table.woocommerce-checkout-review-order-table tfoot th.no_border {
  border-top: none;
}
table.shop_table.woocommerce-checkout-review-order-table .order-total th,
table.shop_table.woocommerce-checkout-review-order-table .order-total td {
  border-bottom: 1px solid var(--border-color);
  vertical-align: middle;
}
table.shop_table.woocommerce-checkout-review-order-table .el_table_spacer + tr th {
  border-top: 1px solid var(--border-color);
}
table.shop_table.woocommerce-checkout-review-order-table .el_fee_detail {
  font-weight: normal;
  text-align: left;
}

.bl_shippingTotal_heading {
  display: grid;
}
@media screen and (min-width: 900px) {
  .bl_shippingTotal_heading {
    grid-template-columns: 130px 1fr;
  }
}

.el_orderReview_recipient {
  font-size: 13px;
  font-weight: normal;
  line-height: 1.4;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.el_orderReview_recipient .el_orderReview_name {
  font-weight: var(--fw-bold);
  font-size: 16px;
  white-space: nowrap;
}

.el_shippingTotal_detail {
  text-align: left;
  padding-inline: 10px 0;
}

p.woocommerce-shipping-contents {
  font-weight: var(--fw-regular);
  font-size: 13px;
  opacity: 0.6;
  line-height: 1.3;
}

.woocommerce-cart #payment,
#add_payment_method #payment {
  background-color: #fff;
  border-radius: 5px;
}
.woocommerce-cart #payment .wc_payment_methods.payment_methods.methods,
#add_payment_method #payment .wc_payment_methods.payment_methods.methods {
  padding: 0;
}
.woocommerce-cart #payment .wc_payment_methods.payment_methods.methods li,
#add_payment_method #payment .wc_payment_methods.payment_methods.methods li {
  list-style: none;
  padding-block: 20px;
  padding-inline: 20px;
  background-color: var(--bg-color-beige);
}
.woocommerce-cart #payment .wc_payment_methods.payment_methods.methods li + li,
#add_payment_method #payment .wc_payment_methods.payment_methods.methods li + li {
  margin-top: 5px;
}

.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box,
#add_payment_method #payment div.payment_box {
  background-color: #fefdfa;
  width: calc(100% + 40px);
  margin-left: -20px;
  padding-inline: 40px;
  margin-block: 10px 0;
}
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before,
#add_payment_method #payment div.payment_box::before {
  content: none;
}

.woocommerce-checkout #payment {
  background-color: #fff;
}
.woocommerce-checkout #payment ul.wc_payment_methods.payment_methods.methods {
  border-bottom: none;
  padding: 0;
}
.woocommerce-checkout #payment li.wc_payment_method {
  padding: 0;
  background-color: transparent;
  list-style: none;
}
.woocommerce-checkout #payment li.wc_payment_method + li {
  margin-top: 20px;
}
.woocommerce-checkout #payment li.wc_payment_method > .input-radio {
  display: none;
}
.woocommerce-checkout #payment li.wc_payment_method > .input-radio:checked + label {
  border: 2px solid var(--main-color);
}
.woocommerce-checkout #payment li.wc_payment_method > .input-radio:checked + label::before {
  background-color: var(--main-color);
  outline-color: var(--main-color);
}
.woocommerce-checkout #payment li.wc_payment_method > label {
  background-color: #faf8f5;
  font-weight: var(--fw-bold);
  display: flex;
  align-items: center;
  min-height: 50px;
  padding: 10px 15px;
  border-radius: 10px;
  transition: all var(--transition);
  cursor: pointer;
  border: 2px solid #eee0c1;
}
.woocommerce-checkout #payment li.wc_payment_method > label::before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  outline: 1px solid #eee0c1;
  margin-right: 10px;
  border-radius: 100%;
  outline-offset: 3px;
}

.woocommerce-terms-and-conditions-wrapper {
  margin-top: 30px;
  margin-bottom: 30px;
  border-style: solid none;
  border-width: 1px;
  border-color: var(--border-color);
  padding-block: 20px;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
  max-width: 600px;
  float: none;
  width: 100%;
  min-height: 50px;
  font-size: 25px;
  padding-block: 8px;
  padding-inline: 20px;
  margin-top: 40px;
  background-color: var(--button-color);
}

.woocommerce-privacy-policy-text {
  font-size: 0.9em;
}
.woocommerce-privacy-policy-text a {
  color: var(--link-color);
}

textarea.sonypayment_agreement_message {
  width: 100%;
  padding: 10px;
  border-radius: 0px;
  margin-bottom: 20px;
}

div#sonypayment-consent-message {
  border-top: 1px solid #b6abc2;
  padding-top: 40px;
}

#sonypayment-payment-data > p.form-row.form-row-wide:not(.woocommerce-validated):nth-child(2) {
  margin-top: -15px;
  border-bottom: 1px solid #b6abc2;
  padding-bottom: 20px;
}
#sonypayment-payment-data > p.form-row.form-row-wide:not(.woocommerce-validated):nth-child(2) label {
  font-size: 14px;
  font-weight: normal;
}
#sonypayment-payment-data > p.form-row.form-row-wide:not(.woocommerce-validated):nth-child(2) > * {
  opacity: 0.7;
}
#sonypayment-payment-data p.form-row.form-row-wide {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#sonypayment-payment-data p.form-row.form-row-wide label {
  width: 100%;
}
#sonypayment-payment-data p.form-row.form-row-wide > input[type=radio] + label {
  width: auto;
}
#sonypayment-payment-data p.form-row.form-row-wide #sonypayment-card-expmm {
  margin-right: 0;
}
.has_registerd_card #sonypayment-payment-data .wc-payment-form p.form-row.form-row-wide:nth-child(2) {
  font-weight: normal;
  margin-top: -24px;
  padding-left: 33px;
  opacity: 0.8;
}
.has_registerd_card #sonypayment-payment-data p.form-row.woocommerce-SavedPaymentMethods-saveNew.woocommerce-validated,
.has_registerd_card #sonypayment-payment-data p.form-row.form-row-wide.woocommerce-validated {
  display: none;
}
.has_registerd_card #sonypayment-payment-data.use_new_card p.form-row.woocommerce-SavedPaymentMethods-saveNew.woocommerce-validated,
.has_registerd_card #sonypayment-payment-data.use_new_card p.form-row.form-row-wide.woocommerce-validated {
  display: block;
}

.woocommerce-checkout #payment div.payment_box .use_new_card #sonypayment-card-form .form-row {
  display: flex;
  flex-wrap: wrap;
}
.woocommerce-checkout #payment div.payment_box .use_new_card #sonypayment-card-form .form-row > label {
  width: 100%;
}
.woocommerce-checkout #payment div.payment_box .use_new_card #sonypayment-card-form .form-row > input[type=radio] + label {
  width: auto;
}

p.sonypayment-consent-area {
  font-size: 18px;
  /* font-weight: bold; */
}

.bl_thankyou_buttons {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  gap: 20px;
  flex-wrap: wrap;
}
.bl_thankyou_buttons a.button {
  background-color: var(--sub-color);
}
.bl_thankyou_buttons a.button:hover {
  background-color: var(--sub-color);
  filter: brightness(1.3);
}

.woocommerce-address-fields__field-wrapper {
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.woocommerce-address-fields__field-wrapper .form-row.form-row-wide {
  width: 100%;
}

.woocommerce-account .woocommerce {
  display: flex;
  gap: 0;
  flex-direction: column;
  max-width: var(--content-width);
  margin-inline: auto;
}
@media screen and (min-width: 900px) {
  .woocommerce-account .woocommerce {
    flex-direction: row;
    gap: 20px;
  }
}
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after {
  content: none;
}
.woocommerce-account .woocommerce-MyAccount-content {
  width: 100%;
}
@media screen and (min-width: 900px) {
  .woocommerce-account .woocommerce-MyAccount-content h3 {
    font-weight: 700;
  }
}
.woocommerce-account .bl_myAcount_navigation {
  flex-shrink: 0;
}
@media screen and (max-width: 899px) {
  .woocommerce-account .bl_myAcount_navigation {
    margin-bottom: 20px;
    margin-top: -25px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
@media screen and (min-width: 900px) {
  .woocommerce-account .bl_myAcount_navigation {
    float: left;
    width: 200px;
    margin-right: 30px;
    border-right: 1px solid var(--border-color);
  }
}
.woocommerce-account nav.woocommerce-MyAccount-navigation {
  float: none;
  width: 100%;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation ul {
  padding-left: 0;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation ul li {
  list-style: none;
}
@media screen and (max-width: 899px) {
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
  }
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li {
    list-style: none;
    font-size: 12px;
    border: 1px solid var(--border-color);
    border-radius: 5px;
  }
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li.is-active {
    border-bottom: 2px solid var(--main-color);
    font-weight: var(--fw-bold);
  }
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 5px;
    padding-inline: 5px;
    min-height: 44px;
  }
}
@media screen and (min-width: 900px) {
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul {
    padding-left: 0;
    padding-block: 20px;
  }
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li {
    list-style: none;
    border-bottom: 1px solid var(--border-color);
    padding: 5px;
    transition: background-color var(--transition-time) ease;
  }
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li:first-child {
    border-top: 1px solid var(--border-color);
  }
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li.is-active {
    font-weight: 700;
    border-right: 4px solid var(--main-color);
  }
}
@media screen and (min-width: 900px) and (hover: hover) {
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li:hover {
    background-color: #f6f6f6;
    font-weight: 700;
    border-right: 4px solid var(--main-color);
  }
}
@media screen and (min-width: 900px) {
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li a {
    color: var(--main-text-color);
  }
}
@media screen and (min-width: 900px) and (hover: hover) {
  .woocommerce-account nav.woocommerce-MyAccount-navigation ul li a:hover {
    text-decoration: none;
  }
}
.woocommerce-account.woocommerce-lost-password .woocommerce {
  flex-direction: column;
  gap: 0;
}
.woocommerce-account.woocommerce-lost-password .woocommerce h2 {
  font-weight: 700;
  font-size: clamp(26px, 19.621px + 1.329vw, 30px);
  text-align: center;
  letter-spacing: 5px;
  margin-bottom: 20px;
}

.woocommerce-MyAccount-content > * + * {
  margin-top: 1em;
}
.woocommerce-MyAccount-content > * + *.cancel_membership {
  margin-top: 2em;
}
.woocommerce-MyAccount-content h2 {
  font-weight: 700;
  padding-block: 2px;
  line-height: 1.75;
  margin-bottom: 0.5em;
  font-size: 1.3em;
}
.woocommerce-MyAccount-content a.edit {
  display: inline-block;
  padding: 2px 10px;
  background-color: var(--button-color);
  color: #fff;
  border-radius: 3px;
  font-size: 0.9em;
  transition: all var(--transition-time) ease;
}
@media (hover: hover) {
  .woocommerce-MyAccount-content a.edit:hover {
    filter: brightness(1.1);
  }
}
.woocommerce-MyAccount-content address {
  margin-top: 1em;
}
.woocommerce-MyAccount-content .cancel_membership_buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .woocommerce-MyAccount-content .cancel_membership_buttons {
    flex-direction: row;
  }
}
.woocommerce-MyAccount-content .cancel_membership_buttons button.woocommerce-Button.button {
  margin-top: 0;
  width: 250px;
}
.woocommerce-MyAccount-content .woocommerce-Button.button.is_style_outline {
  width: 250px;
  border: 1px solid var(--button-color);
  background-color: #fff;
  color: var(--button-color);
}
.woocommerce-MyAccount-content .el_cancel_membership {
  border-top: 1px solid var(--border-color);
  margin-top: 2em;
  padding-top: 2em;
}
.woocommerce-MyAccount-content p.order-print {
  display: none;
}

.woocommerce ul li.woocommerce-PaymentMethod {
  list-style: none;
}

.bl_myAcount_profile {
  font-size: 14px;
}
@media screen and (min-width: 900px) {
  .bl_myAcount_profile {
    font-size: 16px;
  }
}
.bl_myAcount_profile a {
  color: var(--link-color);
  font-size: 0.875em;
  margin-top: 4px;
  text-align: right;
  display: block;
  margin-inline: 10px;
}
@media screen and (min-width: 900px) {
  .bl_myAcount_profile a {
    margin-top: 10px;
  }
}
.bl_myAcount_profile .el_myAcount_name {
  line-height: 1.5;
}
.bl_myAcount_profile span.el_profile_name {
  word-break: break-word;
  font-weight: var(--fw-bold);
}

.bl_recipients .el_th_name {
  width: 150px;
}
.bl_recipients .el_th_tel {
  width: 140px;
}
.bl_recipients .el_th_action {
  width: 100px;
}
.bl_recipients a.button.el_button_s.is_edit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 11px;
  white-space: nowrap;
  line-height: 1;
  border-radius: 3px;
  font-size: 0.9em;
  transition: filter var(--transition-time) ease;
  background-color: var(--link-color);
  color: #fff;
  font-weight: var(--fw-regular);
  width: 100%;
  max-width: 87px;
}

.woocommerce-edit-address form {
  max-width: 700px;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders {
  margin-top: 30px;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders th.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-number {
  font-weight: var(--fw-regular);
  line-height: 1.3;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders th.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-number time {
  display: block;
  margin-top: 10px;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders ul {
  padding-left: 0;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders ul li {
  list-style: none;
  display: grid;
  align-items: center;
  grid-template-columns: 100px 1fr;
  gap: 10px;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders ul li + li {
  margin-top: 10px;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders ul li img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders td.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-status {
  padding-inline: 15;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders .el_orderStatus {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 10px;
  background-color: #efefef;
  white-space: nowrap;
  border-radius: 5px;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders .bl_orderActions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders a.woocommerce-button.button {
  font-weight: var(--fw-regular);
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders a.woocommerce-button.button.view {
  background-color: var(--main-color);
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders a.woocommerce-button.button.print {
  background-color: var(--sub-color);
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders a.woocommerce-button.button.print::before {
  content: "領収書";
}

.bl_orderList_item {
  border: 1px solid var(--border-color);
  border-radius: 0 0 10px 10px;
  position: relative;
}
.bl_orderList_item::before {
  content: "";
  width: 100%;
  height: 3px;
  background-color: var(--main-color);
  position: absolute;
  top: -1px;
  left: 0;
  z-index: 1;
}
.bl_orderList_item > div {
  padding-inline: 20px;
}
.bl_orderList_item + .bl_orderList_item {
  margin-top: 20px;
}

.el_orderListItem_header {
  display: flex;
  padding-block: 10px;
  border-bottom: 1px solid #efefef;
  font-size: 18px;
  line-height: 1.2;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 5px;
}
.el_orderListItem_header .el_orderListItem_total,
.el_orderListItem_header .el_orderListItem_orderDate {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.el_orderListItem_header .el_orderListItem_total .amount,
.el_orderListItem_header .el_orderListItem_orderDate .amount {
  font-size: 1.2em;
  font-weight: var(--fw-bold);
}
.el_orderListItem_header .el_orderListItem_total .amount .woocommerce-Price-currencySymbol,
.el_orderListItem_header .el_orderListItem_orderDate .amount .woocommerce-Price-currencySymbol {
  font-size: 18px;
  font-weight: var(--fw-regular);
}
.el_orderListItem_header .el_orderListItem_label {
  font-size: 14px;
}

.bl_orderListItem_status {
  font-weight: var(--fw-bold);
  line-height: 1;
}
.bl_orderListItem_status span.el_orderStatus {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 15px;
  padding-block: 8px;
  line-height: 1;
  background-color: #666;
  color: #fff;
  border-radius: 3px;
  font-size: 16px;
}
.bl_orderListItem_status span.el_orderStatus.on-hold {
  background-color: var(--on-hold-color);
  color: var(--on-hold-text-color);
}
.bl_orderListItem_status span.el_orderStatus.preparing, .bl_orderListItem_status span.el_orderStatus.pending {
  background-color: var(--pending-color);
  color: var(--pending-text-color);
}
.bl_orderListItem_status span.el_orderStatus.waiting {
  background-color: var(--waiting-color);
  color: var(--waiting-text-color);
}
.bl_orderListItem_status span.el_orderStatus.processing {
  background-color: var(--processing-color);
  color: var(--processing-text-color);
}
.bl_orderListItem_status span.el_orderStatus.completed {
  background-color: var(--completed-color);
  color: var(--completed-text-color);
}
.bl_orderListItem_status span.el_orderStatus.failed {
  background-color: var(--failed-color);
  color: var(--failed-text-color);
}
.bl_orderListItem_status span.el_orderStatus.cancelled {
  background-color: var(--cancelled-color);
  color: var(--cancelled-text-color);
}

.bl_orderListItem_content {
  display: grid;
  padding-block: 20px;
  gap: 20px;
}
@media screen and (min-width: 900px) {
  .bl_orderListItem_content {
    grid-template-columns: 1fr 200px;
  }
}
.bl_orderListItem_content .el_orderListItem_products ul {
  padding-left: 0;
}
.bl_orderListItem_content .el_orderListItem_products ul li {
  list-style: none;
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 10px;
}
.bl_orderListItem_content .el_orderListItem_products ul li figure img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 610/500;
}
.bl_orderListItem_content .el_orderListItem_products ul li + li {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid #efefef;
}
.bl_orderListItem_content a.el_product_name {
  display: inline-block;
  line-height: 1.3;
  margin-right: 3px;
}
.bl_orderListItem_content .el_product_meta {
  display: flex;
  gap: 10px;
  align-items: baseline;
}
.bl_orderListItem_content .el_product_meta .el_product_meta_price .amount {
  font-weight: var(--fw-bold);
  font-size: 1.2em;
}
.bl_orderListItem_content .el_product_meta .el_product_meta_price .amount span {
  font-size: initial;
  font-weight: var(--fw-regular);
  margin-right: 5px;
}
.bl_orderListItem_content .el_product_meta .el_product_meta_summary {
  opacity: 0.7;
  font-size: 14px;
}
.bl_orderListItem_content .el_orderListItem_action {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 10px;
}
.bl_orderListItem_content .el_orderListItem_action a.button.print {
  background-color: var(--button-buy);
}

.el_orderListItem_footer {
  padding-block: 10px;
  opacity: 0.8;
  border-top: 1px solid var(--border-color);
}
.el_orderListItem_footer span {
  white-space: nowrap;
}

.bl_orderMeta .el_orderStatus {
  font-size: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  border: 1px solid #666;
  padding: 1px 20px;
  border-radius: 5px;
}
.bl_orderMeta a.button {
  background-color: #fff;
  border: 1px solid #999;
  color: #666;
}

.bl_orderDetail_packages {
  counter-reset: order;
  margin-top: 2em;
}
.bl_orderDetail_packages > * + * {
  margin-top: 3em;
}

.bl_orderDetail_package {
  border: 1px solid var(--border-color);
  border-top: none;
  position: relative;
  counter-increment: order;
}
.bl_orderDetail_package::before {
  content: "";
  width: calc(100% + 2px);
  height: 3px;
  background-color: var(--main-color);
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 1;
}
.bl_orderDetail_package .el_orderDetail_index {
  position: absolute;
  top: -15px;
  left: -10px;
  padding-inline: 15px;
  background-color: var(--main-color);
  color: #fff;
  font-weight: var(--fw-bold);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 99px;
  padding-block: 5px 7px;
  z-index: 2;
  line-height: 1;
  gap: 5px;
  white-space: nowrap;
  align-items: baseline;
}
@media screen and (min-width: 900px) {
  .bl_orderDetail_package .el_orderDetail_index {
    left: -15px;
    padding-inline: 20px;
  }
}
.bl_orderDetail_package .el_orderDetail_index::after {
  content: counter(order);
  font-size: 1.3em;
}

.bl_orderDetail_row {
  display: grid;
  border-bottom: 1px solid var(--border-color);
}
@media screen and (min-width: 900px) {
  .bl_orderDetail_row {
    grid-template-columns: 120px 1fr;
  }
}
.bl_orderDetail_row:last-child {
  border-bottom: none;
}
.bl_orderDetail_row.is_1col {
  grid-template-columns: 1fr;
}

.el_recipientMeta {
  background-color: #faf8f5;
  display: flex;
  padding-inline: 15px;
  padding-block: 15px 5px;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 0;
  flex-wrap: wrap;
}
@media screen and (min-width: 900px) {
  .el_recipientMeta {
    justify-content: flex-end;
    padding-block: 5px;
  }
}
.el_recipientMeta .woocommerce-Price-amount.amount {
  font-weight: var(--fw-bold);
  font-size: 1.2em;
}
.el_recipientMeta .woocommerce-Price-amount.amount span.woocommerce-Price-currencySymbol {
  font-size: 0.83333333em;
  margin-right: 4px;
}

.el_orderDetail_label {
  padding-block: 15px;
  padding-inline: 20px;
  background-color: #faf8f5;
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 900px) {
  .el_orderDetail_label {
    border-right: 1px solid var(--border-color);
  }
}

.el_orderDetail_content {
  padding-block: 15px;
  padding-inline: 20px;
  counter-reset: package;
}
@media screen and (min-width: 900px) {
  .el_orderDetail_content {
    padding-inline: 30px;
  }
}
.el_orderDetail_content > span {
  line-height: 1.2;
  display: inline-block;
  margin-right: 5px;
}
.el_orderDetail_content .el_user_name {
  font-weight: var(--fw-bold);
  font-size: 1.2em;
  display: block;
}
.el_orderDetail_content .el_shipping_name {
  display: block;
  margin-top: 5px;
}

.el_orderPackage {
  display: grid;
  margin-block: 30px 30px;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
  padding-inline: 17px;
  padding-block: 30px 25px;
  border: 2px solid var(--sub-color);
  border-radius: 10px;
  position: relative;
}
@media screen and (min-width: 900px) {
  .el_orderPackage {
    grid-template-columns: 1fr 1fr;
    padding-inline: 25px;
    row-gap: 0;
  }
}
.el_orderPackage .el_orderPakage_index {
  counter-increment: package;
  display: block;
  background-color: var(--sub-color);
  color: #fff;
  border-radius: 5px;
  padding-block: 3px 6px;
  padding-inline: 12px;
  font-weight: var(--fw-bold);
  font-size: 14px;
  position: absolute;
  top: -15px;
  left: -8px;
  line-height: 1;
}
@media screen and (min-width: 900px) {
  .el_orderPackage .el_orderPakage_index {
    left: -14px;
  }
}
.el_orderPackage .el_orderPakage_index::after {
  content: counter(package);
  font-size: 25px;
  margin-left: 5px;
  vertical-align: -1px;
}
.el_orderPackage .el_orderPackage_meta {
  padding-inline: 0;
  line-height: 1.4;
}
.el_orderPackage .el_orderPackage_meta .el_orderPackege_status {
  font-size: 20px;
  font-weight: var(--fw-bold);
  margin-bottom: 15px;
}
.el_orderPackage a.el_trackingLink {
  display: block;
  font-size: 0.9em;
  color: var(--link-color);
}
.el_orderPackage dl {
  display: grid;
  grid-template-columns: 100px 1fr;
}
.el_orderPackage dl + dl {
  margin-top: 10px;
  border-top: 1px solid var(--border-color);
  padding-top: 10px;
}
.el_orderPackage dt {
  font-weight: var(--fw-bold);
}
.el_orderPackage ul.el_orderPackage_items {
  list-style: none;
  padding-inline: 0;
  line-height: 1.4;
}
@media screen and (max-width: 899px) {
  .el_orderPackage ul.el_orderPackage_items {
    border-top: 1px solid var(--border-color);
    padding-top: 20px;
  }
}
.el_orderPackage ul.el_orderPackage_items li {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 10px;
}
.el_orderPackage ul.el_orderPackage_items li + li {
  margin-top: 10px;
}
.el_orderPackage .el_orderPackage_note {
  grid-column: 1/-1;
  margin-top: 15px;
  border-top: 1px solid var(--border-color);
  padding-top: 10px;
}
.el_orderPackage span.el_shippingStatus {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 15px;
  padding-block: 5px;
  line-height: 1;
  background-color: #666;
  color: #fff;
  border-radius: 3px;
  font-size: 16px;
  font-weight: var(--fw-bold);
}
.el_orderPackage span.el_shippingStatus.wc-on-hold {
  background-color: var(--processing-color);
  color: var(--processing-text-color);
}
.el_orderPackage span.el_shippingStatus.wc-completed {
  background-color: var(--completed-color);
  color: var(--completed-text-color);
}

table.woocommerce-table--order-details.order_details td.woocommerce-table__product-name.product-name .el_product_name {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 10px;
}
table.woocommerce-table--order-details.order_details tfoot th {
  background-color: var(--bg-color-beige);
  width: 200px;
}
table.woocommerce-table--order-details.order_details tr.is_spacer_tr td {
  padding-block: 5px;
}

.bl_orderHeader {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 10px;
  flex-wrap: wrap;
  font-size: 1.2em;
  line-height: 1.4;
  flex-direction: column;
}
@media screen and (min-width: 900px) {
  .bl_orderHeader {
    align-items: center;
    flex-direction: row;
  }
}
.bl_orderHeader .bl_orderListItem_status span.el_orderStatus {
  font-size: 20px;
  letter-spacing: 0.2em;
}
.bl_orderHeader .el_orderHeader_label {
  display: block;
  font-size: 0.8em;
}

.order-detail_wrapper {
  display: grid;
  gap: 20px;
  max-width: 840px;
  margin-inline: auto;
}
.woocommerce-MyAccount-content .order-detail_wrapper {
  margin-left: 0;
}

.el_orderPackage_deliveryDate {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  -moz-column-gap: 5px;
       column-gap: 5px;
  row-gap: 0;
}
@media screen and (min-width: 900px) {
  .el_orderPackage_deliveryDate {
    flex-direction: row;
  }
}
.el_orderPackage_deliveryDate span {
  white-space: nowrap;
}

.bl_order_after_action {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details {
  border-bottom: 1px solid var(--border-color);
}

.woocommerce-order p.order-print {
  display: none;
}

.bl_cancelMembership {
  max-width: 600px;
}
.bl_cancelMembership ul {
  padding-left: 0 !important;
}
.bl_cancelMembership li {
  list-style: none;
  display: flex;
  gap: 8px;
  align-items: flex-start;
  line-height: 1.4;
}
.bl_cancelMembership li + li {
  margin-top: 20px;
}
.bl_cancelMembership li input {
  margin-top: 5px;
}
.bl_cancelMembership li label {
  cursor: pointer;
}
.bl_cancelMembership button.woocommerce-Button.button {
  margin-top: 3em;
}
.bl_cancelMembership .cancel_membership_buttons {
  display: flex;
  gap: 20px;
  flex-direction: column;
  margin-top: 3em;
}
@media screen and (min-width: 900px) {
  .bl_cancelMembership .cancel_membership_buttons {
    flex-direction: row;
  }
}

form.woocommerce-ResetPassword.lost_reset_password {
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  padding: 30px 15px;
  border: 1px solid var(--border-color);
  border-radius: 10px;
  gap: 10px;
  max-width: 540px;
  width: 100%;
}
@media screen and (min-width: 480px) {
  form.woocommerce-ResetPassword.lost_reset_password {
    padding: 30px 30px;
  }
}
form.woocommerce-ResetPassword.lost_reset_password .form-row-first,
form.woocommerce-ResetPassword.lost_reset_password .form-row-last {
  width: 100%;
}
form.woocommerce-ResetPassword.lost_reset_password button.woocommerce-Button.button {
  width: 100%;
  min-height: 50px;
}

.spfwc-edit-cardmember-form p.form-row.form-row-wide {
  display: flex;
  flex-wrap: wrap;
}
.spfwc-edit-cardmember-form p.form-row.form-row-wide > label {
  width: 100%;
}
.spfwc-edit-cardmember-form textarea.sonypayment_agreement_message {
  border-color: var(--border-color);
  font-size: 0.8em;
  margin-block: 20px;
}

ul.bl_recentlyViewed_items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-left: 0 !important;
  gap: 10px;
}
@media screen and (min-width: 480px) {
  ul.bl_recentlyViewed_items {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 900px) {
  ul.bl_recentlyViewed_items {
    grid-template-columns: repeat(6, 1fr);
  }
}
ul.bl_recentlyViewed_items li {
  list-style: none !important;
}
ul.bl_recentlyViewed_items li img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 150px;
  max-height: 150px;
}
ul.bl_recentlyViewed_items li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: var(--link-color);
  font-size: 0.9em;
  text-align: center;
}
ul.bl_recentlyViewed_items li .bl_recentlyViewed_title {
  line-height: 1.4;
  font-size: 0.9em;
  text-align: left;
}

ul.bl_orderHistory_items {
  display: flex;
  padding-left: 0 !important;
  flex-direction: column;
  gap: 20px;
}
ul.bl_orderHistory_items li {
  list-style: none !important;
}
ul.bl_orderHistory_items ul.el_orderHistory_content {
  display: flex;
  flex-wrap: wrap;
  padding-inline: 10px;
  padding-block: 10px;
  flex-direction: column;
}
@media screen and (min-width: 900px) {
  ul.bl_orderHistory_items ul.el_orderHistory_content {
    flex-direction: row;
  }
}
ul.bl_orderHistory_items ul.el_orderHistory_content li {
  display: flex;
  gap: 10px;
  font-size: 13px;
  line-height: 1.4;
  align-items: center;
}
@media screen and (min-width: 900px) {
  ul.bl_orderHistory_items ul.el_orderHistory_content li {
    width: 30%;
  }
}
ul.bl_orderHistory_items ul.el_orderHistory_content li figure {
  width: 50px;
  flex-shrink: 0;
}
ul.bl_orderHistory_items li.bl_orderHistory_item {
  border: 1px solid var(--border-color);
  border-radius: 5px;
  overflow: hidden;
}
@media (hover: hover) {
  ul.bl_orderHistory_items li.bl_orderHistory_item:hover {
    outline: 2px solid var(--border-color);
  }
}
ul.bl_orderHistory_items li.bl_orderHistory_item a {
  display: flex;
  flex-direction: column;
}
ul.bl_orderHistory_items li.bl_orderHistory_item .el_orderHistory_meta {
  border-bottom: 1px solid #efefef;
  padding: 5px 10px;
}
ul.bl_orderHistory_items li.bl_orderHistory_item .el_orderHistory_meta > div {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 0;
  flex-wrap: wrap;
}
ul.bl_orderHistory_items li.bl_orderHistory_item .el_orderHistory_number {
  font-size: 12px;
  display: block;
}
ul.bl_orderHistory_items span.el_orderHistory_status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 10px;
  padding-block: 5px;
  line-height: 1;
  background-color: #666;
  color: #fff;
  border-radius: 3px;
  font-size: 14px;
}
ul.bl_orderHistory_items span.el_orderHistory_status.on-hold {
  background-color: var(--on-hold-color);
  color: var(--on-hold-text-color);
}
ul.bl_orderHistory_items span.el_orderHistory_status.pending {
  background-color: var(--pending-color);
  color: var(--pending-text-color);
}
ul.bl_orderHistory_items span.el_orderHistory_status.processing {
  background-color: var(--processing-color);
  color: var(--processing-text-color);
}
ul.bl_orderHistory_items span.el_orderHistory_status.completed {
  background-color: var(--completed-color);
  color: var(--completed-text-color);
}
ul.bl_orderHistory_items span.el_orderHistory_status.failed {
  background-color: var(--failed-color);
  color: var(--failed-text-color);
}
ul.bl_orderHistory_items span.el_orderHistory_status.cancelled {
  background-color: var(--cancelled-color);
  color: var(--cancelled-text-color);
}

.el_link_more {
  margin-top: 10px;
  text-align: right;
  color: var(--link-color);
  display: block;
}
@media (hover: hover) {
  .el_link_more:hover {
    text-decoration: underline;
  }
}

.woocommerce-lost-password .bl_article_content .woocommerce > p {
  max-width: 600px;
  margin-inline: auto;
  padding-inline: 20px;
  padding-block: 20px;
  border: 1px solid #dadada;
  border-radius: 10px;
}
.woocommerce-lost-password .bl_article_content .is-style-alert-box {
  max-width: 600px;
  margin-top: 2em;
  margin-inline: auto;
}

.bl_article_content a.el_linkButton {
  padding: 8px 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  background-color: var(--button-blue);
  border-radius: 5px;
  color: #fff;
  font-size: 0.9em;
  line-height: 1;
  margin-top: 10px;
  transition: all var(--transition-time) ease;
}
@media (hover: hover) {
  .bl_article_content a.el_linkButton:hover {
    filter: brightness(1.1);
    text-decoration: none;
  }
}

.order-failed-notice {
  margin-block: 10px 25px;
  line-height: 1.4;
}
.order-failed-notice a {
  color: var(--link-color);
}
@media (hover: hover) {
  .order-failed-notice a:hover {
    text-decoration: underline;
  }
}

.bl_siteHeader {
  background-color: #fff;
  box-shadow: 0px 0px 3px #ccc;
  transition: background-color var(--transition);
}
.has_mv_slider .bl_siteHeader {
  background-color: rgba(255, 255, 255, 0.6);
}
.is_scrolled.has_mv_slider .bl_siteHeader {
  background-color: #fff;
}

@media screen and (max-width: 899px) {
  .bl_siteHeadr_nav {
    background-color: #fff;
  }
}

@media screen and (max-width: 899px) {
  .bl_globalNav {
    display: grid;
    grid-template-columns: 1fr;
    margin-left: auto;
    line-height: 1;
    width: 100%;
  }
  .bl_globalNav > li {
    font-size: 16px;
    display: flex;
    flex-wrap: wrap;
    border-color: #dadada;
    border-style: solid;
    border-bottom-width: 1px;
  }
  .bl_globalNav > li > a {
    display: flex;
    align-items: center;
    min-height: 45px;
    width: calc(100% - 48px);
    padding-left: 20px;
  }
  .bl_globalNav ul.sub-menu {
    display: none;
    width: 100%;
    margin-block: 0;
    border-top: 1px solid #dadada;
  }
  .bl_globalNav ul.sub-menu > li a {
    display: flex;
    align-items: center;
    min-height: 45px;
    padding-block: 10px;
    padding-left: 45px;
  }
  .bl_globalNav ul.sub-menu li + li {
    border-top: 1px solid #dadada;
  }
}
@media screen and (min-width: 900px) {
  .bl_globalNav {
    display: flex;
    gap: 0;
    margin-right: 20px;
    max-width: var(--site-width);
    width: 100%;
    margin-inline: auto;
  }
  .bl_globalNav li:hover > .sub-menu {
    display: block;
  }
  .bl_globalNav a {
    transition: color 0.3s ease, background-color 0.3s ease;
  }
  .bl_globalNav > li {
    width: 100%;
    position: relative;
    border-left: 1px solid rgba(255, 255, 255, 0.26);
    font-size: 14px;
  }
  .bl_globalNav > li:last-child {
    border-right: 1px solid rgba(255, 255, 255, 0.26);
  }
  .bl_globalNav > li::after {
    content: "";
    background-color: var(--main-color);
    width: 0;
    height: 1px;
    position: absolute;
    bottom: 5px;
    left: 50%;
    transform: translateX(-50%);
    transition: all var(--transition);
  }
  .is_scrolled .bl_globalNav > li::after {
    bottom: 0;
  }
  .bl_globalNav > li.is_mobile_only {
    display: none;
  }
  .bl_globalNav > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--global-menu-color);
    padding-block: 10px;
    padding-inline: 10px;
    line-height: 1.2;
    white-space: nowrap;
    height: 100%;
    position: relative;
    transition: all var(--transition);
  }
  .is_scrolled .bl_globalNav > li > a {
    padding-block: 0 2px;
  }
}
@media screen and (min-width: 900px) and (hover: hover) {
  .bl_globalNav > li:hover > a {
    font-weight: 700;
  }
  .bl_globalNav > li:hover::after {
    width: 20%;
  }
}
@media screen and (min-width: 900px) {
  .bl_globalNav > li > .sub-menu .sub-menu {
    left: 100%;
    top: 0;
  }
  .bl_globalNav > .current-menu-item > a,
  .bl_globalNav > .current-menu-parent > a {
    font-weight: 700;
  }
  .bl_globalNav > .current-menu-item::after,
  .bl_globalNav > .current-menu-parent::after {
    width: 20%;
  }
  .bl_globalNav .sub-menu {
    display: none;
    position: absolute;
    min-width: 100%;
    box-shadow: 1px 1px 3px rgba(51, 51, 51, 0.5019607843);
    background-color: #fff;
  }
  .has_mv_slider:not(.is_scrolled) .bl_globalNav .sub-menu {
    background-color: var(--global-submenu-bg, #fff);
  }
  .bl_globalNav .sub-menu a {
    color: var(--global-submenu-color, #333);
    display: flex;
    align-items: center;
    padding: 10px;
    white-space: nowrap;
    transition: all var(--transition);
  }
}
@media screen and (min-width: 900px) and (hover: hover) {
  .bl_globalNav .sub-menu a:hover {
    background-color: var(--global-submenu-hover-bg, #efefef);
    color: var(--global-submenu-hover-color, #333);
    font-weight: var(--fw-bold);
  }
}
@media print {
  .bl_globalNav {
    display: none;
  }
}

/* スライドメニューボタン */
.el_menuToggleButton {
  z-index: 10;
  padding: 5px 5px;
  top: 0;
  right: 0;
  width: 52px;
  height: 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  /*ボタン内側*/
}
@media screen and (min-width: 900px) {
  .el_menuToggleButton {
    display: none;
  }
}
.el_menuToggleButton .el_menu_label {
  font-size: 10px;
  white-space: nowrap;
  line-height: 1;
  margin-top: 5px;
}
@media screen and (min-width: 480px) {
  .is_scrolled .el_menuToggleButton .el_menu_label {
    display: none;
  }
}
.el_menuToggleButton .openbtn1 {
  position: relative; /*ボタン内側の基点となるためrelativeを指定*/
  width: 25px;
  height: 20px;
}
.el_menuToggleButton .openbtn1 span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 0;
  height: 1.5px;
  background: var(--menu-button-line, #333);
  width: 100%;
}
.el_menuToggleButton .openbtn1 span:nth-of-type(1) {
  top: 0;
}
.el_menuToggleButton .openbtn1 span:nth-of-type(2) {
  top: 8px;
}
.el_menuToggleButton .openbtn1 span:nth-of-type(3) {
  top: 16px;
}
.el_menuToggleButton.is_open .openbtn1 span:nth-of-type(1) {
  transform: translateY(8px) rotate(-45deg);
}
.el_menuToggleButton.is_open .openbtn1 span:nth-of-type(2) {
  opacity: 0; /*真ん中の線は透過*/
}
.el_menuToggleButton.is_open .openbtn1 span:nth-of-type(3) {
  transform: translateY(-8px) rotate(45deg);
}

body.is_open {
  overflow: hidden;
}

.global-menu-toggle {
  display: flex;
  width: 25px;
  height: 25px;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  display: grid;
  margin-top: 9px;
  border-radius: 100%;
  border: 1px solid var(--toggle-icon-color);
}
.global-menu-toggle::before, .global-menu-toggle::after {
  grid-area: 1/1;
  content: "";
  background-color: var(--toggle-icon-color);
  width: 11px;
  height: 1px;
  transition: transform 0.3s;
}
.global-menu-toggle::before {
  transform: rotate(90deg);
}
.global-menu-toggle.is_open::before {
  transform: rotate(0);
}
@media screen and (min-width: 900px) {
  .global-menu-toggle {
    display: none;
  }
}

.bl_searhForm,
.bl_siteHeader_mypage,
.bl_siteHeader_cart {
  display: flex;
  gap: 10px;
  height: 100%;
  --count-size: 15px;
}
@media screen and (min-width: 900px) {
  .bl_searhForm,
  .bl_siteHeader_mypage,
  .bl_siteHeader_cart {
    --count-size: 18px;
  }
}
.bl_searhForm .el_cartIcon,
.bl_siteHeader_mypage .el_cartIcon,
.bl_siteHeader_cart .el_cartIcon {
  position: relative;
  display: grid;
  grid-template-rows: 1fr 15px;
  margin-bottom: 5px;
  transition: all var(--transition);
}
.bl_searhForm .el_cartIcon > *,
.bl_siteHeader_mypage .el_cartIcon > *,
.bl_siteHeader_cart .el_cartIcon > * {
  align-self: flex-end;
  justify-self: center;
}
.bl_searhForm .el_cartIcon img,
.bl_siteHeader_mypage .el_cartIcon img,
.bl_siteHeader_cart .el_cartIcon img {
  width: 20px;
  height: auto;
}
@media screen and (min-width: 900px) {
  .bl_searhForm .el_cartIcon img,
  .bl_siteHeader_mypage .el_cartIcon img,
  .bl_siteHeader_cart .el_cartIcon img {
    width: 25px;
  }
}
@media screen and (min-width: 480px) {
  .is_scrolled .bl_searhForm .el_cartIcon,
  .is_scrolled .bl_siteHeader_mypage .el_cartIcon,
  .is_scrolled .bl_siteHeader_cart .el_cartIcon {
    grid-template-rows: 1fr 0;
  }
}
.bl_searhForm .el_cartIcon_count,
.bl_siteHeader_mypage .el_cartIcon_count,
.bl_siteHeader_cart .el_cartIcon_count {
  position: absolute;
  top: calc(0.2 * var(--count-size));
  right: calc(-0.5 * var(--count-size));
  height: var(--count-size);
  min-width: var(--count-size);
  background-color: red;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--count-size);
  padding: 5px;
  font-size: calc(0.6 * var(--count-size));
}
.bl_searhForm .el_cartIcon_count[data-count="0"],
.bl_siteHeader_mypage .el_cartIcon_count[data-count="0"],
.bl_siteHeader_cart .el_cartIcon_count[data-count="0"] {
  display: none;
}
.bl_searhForm span.el_menu_label,
.bl_siteHeader_mypage span.el_menu_label,
.bl_siteHeader_cart span.el_menu_label {
  font-size: 8px;
  line-height: 1;
  overflow: hidden;
  transition: all var(--transition);
}
@media screen and (min-width: 900px) {
  .bl_searhForm span.el_menu_label,
  .bl_siteHeader_mypage span.el_menu_label,
  .bl_siteHeader_cart span.el_menu_label {
    font-size: 10px;
  }
}
@media screen and (min-width: 480px) {
  .is_scrolled .bl_searhForm span.el_menu_label,
  .is_scrolled .bl_siteHeader_mypage span.el_menu_label,
  .is_scrolled .bl_siteHeader_cart span.el_menu_label {
    line-height: 0;
  }
}

.bl_siteHeader_cart .el_cartIcon {
  grid-template-rows: 1fr 14px;
}
.bl_siteHeader_cart .el_cartIcon img {
  margin-bottom: 2px;
}

.bl_breadcrumb_wrapper {
  background-color: var(--site-bg-color);
  color: var(--text-color);
}

.bl_breadcrumb {
  font-size: 0.92em;
  color: #767676;
  overflow: hidden;
}
.bl_breadcrumb li {
  padding-block: 5px;
  list-style: none;
  white-space: nowrap;
}
.bl_breadcrumb li + li::before {
  content: "/";
  padding-inline: 5px;
  opacity: 0.5;
}

.bl_siteMain {
  border-top: 14px solid #f6efe0;
}

.el_article_title {
  font-family: "Yu Mincho", "YuMincho", serif;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-size: var(--entry-title-fsz);
  text-align: center;
}

.bl_article_content h2.wp-block-heading {
  padding-bottom: 0.3em;
  font-size: var(--entry-h2-fsz);
  font-weight: 700;
  line-height: 1.4;
  border-bottom: solid 1px #dfa927;
}
.bl_article_content h3.wp-block-heading {
  font-size: var(--entry-h3-fsz);
  line-height: 1.5;
}
.bl_article_content p a {
  color: var(--link-color);
}
@media (hover: hover) {
  .bl_article_content p a:hover {
    text-decoration: underline;
  }
}

.bl_pageHeader {
  background-color: #fff;
  background-image: url(../images/bg-heading.svg);
  background-size: 86px;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-top: -14px;
  margin-bottom: 10px;
}
.bl_pageHeader h1 {
  font-size: var(--entry-title-fsz);
  text-align: center;
  padding-inline: 20px;
  padding-block: 0.7em;
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  line-height: 1.4;
}

.ly_MV {
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: #fff;
  --swiper-pagination-bullet-border-radius: 0px;
  --swiper-pagination-bullet-size: 15px;
  --swiper-pagination-bullet-horizontal-gap: 6.5px;
  --swiper-pagination-bullet-inactive-color: #fff;
  --swiper-pagination-bullet-inactive-opacity: 0.6;
  --swiper-pagination-bullet-opacity: 0.3;
  --swiper-pagination-color: #000;
}
@media screen and (min-width: 1300px) {
  .ly_MV {
    --swiper-navigation-sides-offset: calc((100vw - 1300px) / 2 + 10px);
  }
}
.ly_MV .swiper-slide {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 1300px;
  position: relative;
}
.ly_MV .swiper-slide a {
  position: relative;
  display: block;
}
.ly_MV .swiper-slide img {
  width: 100vw;
  max-width: 1300px;
  position: relative;
}
.ly_MV .swiper-slide::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 70%, rgba(0, 0, 0, 0.1) 100%);
  opacity: 0;
  visibility: hidden;
  z-index: 1;
  transition: all var(--transition);
}
.ly_MV .swiper-slide:not(.swiper-slide-active)::before {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}
.ly_MV .swiper-pagination-bullet {
  box-shadow: 1px 1px 5px #999;
}
.ly_MV .mv-prev::after,
.ly_MV .mv-next::after {
  text-shadow: 1px 1px 5px #999;
}

.bl_footerNavi {
  padding: 60px 0 100px;
  background: url(../images/footer-bg.png) repeat center;
  background-size: contain;
}

.bl_siteFooter_company {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 899px) {
  .bl_siteFooter_company {
    justify-content: center;
  }
}

.bl_siteFooter_Logo {
  width: 130px;
}

.bl_siteFooter_info {
  font-size: 12px;
  line-height: 1.4;
}
.bl_siteFooter_info .el_siteFooter_name {
  font-size: 14px;
  font-weight: var(--fw-bold);
}

.bl_siteFooter_supportNavi {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
}

.bl_footer_menuItems {
  display: flex;
  -moz-column-gap: 15px;
       column-gap: 15px;
  font-size: 12px;
  row-gap: 2px;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (min-width: 900px) {
  .bl_footer_menuItems {
    justify-content: flex-start;
  }
}
.bl_footer_menuItems li {
  white-space: nowrap;
}
@media (hover: hover) {
  .bl_footer_menuItems li:hover {
    text-decoration: underline;
  }
}

.bl_siteFooter_copyRight {
  margin-top: 20px;
  font-size: 12px;
  width: 100%;
  background-color: var(--sub-color);
  color: #fff;
  text-align: center;
}

.bl_contact_copy {
  font-weight: 700;
  font-size: var(--contact-copy, 14px);
  text-align: left;
}

.bl_contact_note_wrapper {
  display: flex;
  align-items: center;
  justify-content: left;
}

.bl_contact_note {
  font-size: var(--contact-note, 14px);
}

.bl_contact_free_dial {
  border: 1px solid;
  border-radius: 2px;
  padding-block: var(--contact-free-pblk, 0.1em);
  padding-inline: var(--contact-free-pinl, 0.5em);
  font-size: var(--contact-freeDial, 10px);
  display: inline-block;
  margin-right: 1em;
}

.free-dial-image {
  height: 0.8em;
  width: auto;
  margin-right: 10px;
  vertical-align: -1px;
}

.bl_contact_tel {
  font-size: 1.2em;
  line-height: 1;
  padding: 0;
  margin-bottom: 5px;
  font-weight: 900;
  letter-spacing: -0.02em;
  white-space: nowrap;
}
@media screen and (min-width: 900px) {
  .bl_contact_tel {
    font-size: 2.6rem;
  }
}
.bl_contact_tel span {
  font-weight: normal;
}

.bl_contact_tel__free-dial span {
  font-size: 0.85em;
  margin-right: 5px;
}

.bl_contact_tel__tel-receiver span {
  font-size: 0.8em;
  margin-right: 5px;
}

.bl_contact_tel__sp span {
  font-size: 0.8em;
  margin-right: 8px;
}

.bl_contact_tel__telephone span {
  font-size: 0.75em;
  margin-right: 7px;
}

.bl_main_wrapper {
  background-color: var(--site-bg-color);
  color: var(--text-color);
}
.bl_main_wrapper a:not(.wp-block-button__link) {
  color: var(--link-color);
}
.bl_main_wrapper a:not(.wp-block-button__link):hover {
  color: var(--link-hover-color);
}

.entry-header {
  border-bottom: 1px solid #dadada;
  margin-bottom: 2em;
  padding-block: 5px;
}
.entry-header h1 {
  font-size: var(--entry-tilte-size);
  font-weight: 700;
  font-size: 25px;
  margin-bottom: 0;
  text-align: left;
}
@media screen and (min-width: 900px) {
  .entry-header h1 {
    font-size: 30px;
  }
}
.entry-header .el_entry_date.is_published + .is_updated::before {
  content: " / 更新日 ";
}

.entry-meta {
  font-size: 14px;
  opacity: 0.7;
}
.entry-meta > span {
  margin-right: 10px;
}

.bl_postThumbnail {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.bl_postThumbnail::before {
  content: "";
  display: block;
  padding-top: 67%;
}
.bl_postThumbnail img {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease;
  -o-object-fit: cover;
     object-fit: cover;
}

.bl_article_content > h2 {
  font-weight: 700;
  font-size: 1.35em;
  line-height: 1.25;
}
.bl_article_content > h3 {
  font-weight: 700;
  font-size: 1.2em;
  line-height: 1.25;
}

.is_h2_upperline .bl_article_content h2,
.is_h3_upperline .bl_article_content h3 {
  background-color: var(--h2-bg);
  border-top: 3px solid var(--h2-accent-color);
  color: var(--h2-text-color);
  padding: 0.8em;
}

.is_h2_underline .bl_article_content h2,
.is_h3_underline .bl_article_content h3 {
  background-color: var(--h2-bg);
  border-bottom: 3px solid var(--h2-accent-color);
  color: var(--h2-text-color);
  padding: 0.8em;
}

.is_h2_leftline .bl_article_content h2,
.is_h3_leftline .bl_article_content h3 {
  background-color: var(--h2-bg);
  border-left: 3px solid var(--h2-accent-color);
  color: var(--h2-text-color);
  padding: 0.8em;
}

.is_h2_theme .bl_article_content h2,
.is_h3_theme .bl_article_content h3 {
  background-color: var(--h2-bg);
  color: var(--h2-text-color);
  padding: 0.8em;
}

.is_h2_balloon .bl_article_content h2,
.is_h3_balloon .bl_article_content h3 {
  background-color: var(--h2-bg);
  color: var(--h2-text-color);
  padding: 0.8em;
  position: relative;
}
.is_h2_balloon .bl_article_content h2::after,
.is_h3_balloon .bl_article_content h3::after {
  content: "";
  position: absolute;
  border-style: solid solid none solid;
  border-color: var(--h2-bg) transparent transparent transparent;
  border-width: 13px 10px 0 10px;
  bottom: -12px;
  left: 50px;
}

.is_h2_balloon-round .bl_article_content h2,
.is_h3_balloon-round .bl_article_content h3 {
  background-color: var(--h2-bg);
  color: var(--h2-text-color);
  padding: 0.8em;
  position: relative;
  border-radius: 10px;
}
.is_h2_balloon-round .bl_article_content h2::after,
.is_h3_balloon-round .bl_article_content h3::after {
  content: "";
  position: absolute;
  border-style: solid solid none solid;
  border-color: var(--h2-bg) transparent transparent transparent;
  border-width: 13px 10px 0 10px;
  bottom: -12px;
  left: 50px;
}

.bl_article_content table {
  line-height: 1.5;
  font-size: 1em;
}
.bl_article_content table th,
.bl_article_content table td {
  border-color: #ccc;
}
.bl_article_content table th {
  background-color: var(--table-th-bg, #efefef);
  font-weight: 700;
}
.bl_article_content table thead {
  border-bottom: none;
}

.entry-content ul {
  padding-left: 1.5625em;
}
.entry-content ul li {
  list-style: disc;
}
.entry-content ol {
  padding-left: 1.5625em;
}

.navigation-post {
  max-width: var(--content-width);
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}

.bl_postNav {
  max-width: var(--content-width);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0;
  margin-inline: auto;
  padding-block: 30px 30px;
  flex-wrap: wrap;
  margin-top: 60px;
  padding-inline: var(--site-inline-padding);
}
.bl_postNav .el_moreLink a {
  max-width: none;
  width: 270px;
}

.bl_postNav_previous,
.bl_postNav_next {
  color: #808080;
}
.bl_postNav_previous > div,
.bl_postNav_previous > a,
.bl_postNav_next > div,
.bl_postNav_next > a {
  display: flex;
  line-height: 1.4;
  color: #fff;
  border-radius: 100px;
  padding: 5px 20px;
  width: -moz-fit-content;
  width: fit-content;
}
.bl_postNav_previous a,
.bl_postNav_next a {
  background-color: var(--sub-color);
  transition: opacity var(--transition-time);
}
.bl_postNav_previous a .el_postNav_icon::before,
.bl_postNav_next a .el_postNav_icon::before {
  filter: brightness(1);
}
@media (hover: hover) {
  .bl_postNav_previous a:hover,
  .bl_postNav_next a:hover {
    opacity: 0.7;
  }
}
.bl_postNav_previous div,
.bl_postNav_next div {
  background-color: #ccc;
}

@media screen and (max-width: 899px) {
  .bl_postNav_previous {
    width: 48%;
    order: 1;
  }
}

@media screen and (max-width: 899px) {
  .bl_postNav_next {
    width: 48%;
    order: 2;
    display: flex;
    justify-content: flex-end;
  }
}

@media screen and (max-width: 899px) {
  .bl_postNav_home {
    width: 100%;
    order: 3;
    display: flex;
    justify-content: center;
    margin-top: 30px;
  }
}
.bl_postNav_home a {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--sub-color);
  color: #fff;
  padding: 5px 20px;
  border-radius: 100px;
  transition: opacity var(--transition-time) ease;
}
@media (hover: hover) {
  .bl_postNav_home a:hover {
    opacity: 0.7;
  }
}

.el_postNav_icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.el_postNav_icon:before {
  content: "";
  background-image: url(../images/more_button_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 13px;
  filter: brightness(1);
}
.el_postNav_icon.is_next {
  margin-left: 10px;
}
.el_postNav_icon.is_prev {
  transform: rotate(180deg);
  margin-right: 10px;
}

.ly_archiveIndex_articles {
  max-width: var(--content-width);
  margin-inline: auto;
  margin-block: 40px 60px;
}

.bl_archive_art a {
  display: flex;
  gap: 20px;
  padding-block: 15px;
  padding-inline: 15px;
  transition: background-color var(--transition);
}
.bl_archive_art a .posted-on {
  opacity: 0.6;
}
@media (hover: hover) {
  .bl_archive_art a:hover {
    background-color: #f7f7f7;
  }
}
.bl_archive_art + .bl_archive_art {
  border-top: 1px solid var(--border-color);
}

p.has-text-align-right.el_buttonLink {
  --inner-mt: 15px;
  color: var(--link-color);
  display: flex;
  justify-content: flex-end;
}
p.has-text-align-right.el_buttonLink::after {
  content: "≫";
  margin-left: 5px;
}

.wp-block-list a {
  color: var(--link-color);
}
@media (hover: hover) {
  .wp-block-list a:hover {
    text-decoration: underline;
  }
}

@media screen and (max-width: 600px) {
  .ar-375-667 img {
    aspect-ratio: 375/667;
  }
  .ar-125-221 img {
    aspect-ratio: 125/221;
  }
  .ar-50-117 img {
    aspect-ratio: 50/117;
  }
  .ar-701-2560 img {
    aspect-ratio: 701/2560;
  }
  .ar-35-128 img {
    aspect-ratio: 35/128;
  }
  .ar-50-117 img {
    aspect-ratio: 50/117;
  }
  .ar-599-2560 img {
    aspect-ratio: 599/2560;
  }
  .ar-100-229 img {
    aspect-ratio: 100/229;
  }
  .ar-37-160 img {
    aspect-ratio: 37/160;
  }
  .ar-709-2560 img {
    aspect-ratio: 709/2560;
  }
  .ar-75-172 img {
    aspect-ratio: 75/172;
  }
  .ar-400-841 img {
    aspect-ratio: 400/841;
  }
  .ar-369-608 img {
    aspect-ratio: 369/608;
  }
  .ar-371-604 img {
    aspect-ratio: 371/604;
  }
  .ar-186-299 img {
    aspect-ratio: 186/299;
  }
}
a.bl_indexArticle {
  display: grid;
  grid-template-columns: 1fr;
  border: 1px solid #efefef;
  color: var(--text-color);
}
@media screen and (min-width: 900px) {
  a.bl_indexArticle {
    grid-template-columns: 40% 1fr;
  }
}
a.bl_indexArticle:hover {
  color: var(--text-color);
  --index-art-lead-color: var(--main-color);
}
a.bl_indexArticle:hover .bl_postThumbnail__index img {
  transform: translate(-50%, -50%) scale(1.1);
}
a.bl_indexArticle .el_entry_date.is_published {
  margin-right: 10px;
}

.bl_indexArticle_content {
  padding-block: 20px 40px;
  padding-inline: 30px 20px;
  position: relative;
}

.bl_indexArticle_date {
  color: var(--main-color);
  font-size: 14px;
}

.bl_indexArticle_title {
  font-weight: 700;
  font-size: 20px;
}

.bl_indexArticle_excerpt {
  font-size: 12px;
}

.bl_indexArticle_lead {
  position: absolute;
  bottom: 20px;
  right: 20px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  transition: 0.2s;
  color: var(--index-art-lead-color);
}

nav.bl_pagination.bl_pagination__articles {
  margin-top: 50px;
}

.bl_pagination_link {
  display: flex;
  justify-content: center;
  /* gap: 10px; */
}
.bl_pagination_link > * {
  padding-inline: 5px;
}
.bl_pagination_link > div.no-page {
  opacity: 0.3;
}

.bl_pagination_numbers {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 899px) {
  .bl_pagination_numbers {
    display: none;
  }
}

.bl_pagenation_next,
.bl_pagination_prev,
.page-numbers:not(.dots) {
  color: var(--text-color);
  margin-inline: 5px;
  padding: 0px 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 99px;
  min-width: 30px;
  height: 30px;
  line-height: 1;
  transition: all 0.3s ease;
}
@media screen and (max-width: 899px) {
  .bl_pagenation_next,
  .bl_pagination_prev,
  .page-numbers:not(.dots) {
    min-width: 130px;
    height: 50px;
  }
}
.bl_pagenation_next:not(.no-page):hover, .bl_pagenation_next.current,
.bl_pagination_prev:not(.no-page):hover,
.bl_pagination_prev.current,
.page-numbers:not(.dots):not(.no-page):hover,
.page-numbers:not(.dots).current {
  background-color: var(--main-color);
  color: #fff;
  border-color: var(--main-color);
}
.bl_pagenation_next.current,
.bl_pagination_prev.current,
.page-numbers:not(.dots).current {
  font-weight: 700;
}

.bl_pagenation_next,
.bl_pagination_prev {
  font-size: 0.9em;
  padding-inline: 10px;
}
.bl_pagenation_next a,
.bl_pagination_prev a {
  color: var(--text-color);
}
.bl_pagenation_next a:hover,
.bl_pagination_prev a:hover {
  color: var(--main-text-color);
}

.bl_pagenation_next {
  padding-inline: 15px 10px;
}

.bl_pagination_prev {
  padding-inline: 10px 15px;
}

.bl_searhForm {
  height: 100%;
}
.bl_widget_title + .bl_searhForm {
  margin-top: 10px;
}

.bl_searhForm_input {
  border: 1px solid var(--border-color);
  padding-inline: 15px;
  padding-block: 7px;
  border-radius: 5px;
}
@media screen and (min-width: 900px) {
  .bl_searhForm_input {
    font-size: 13px;
  }
}

.bl_searhForm_popup .bl_searhForm_iconButton {
  background-color: var(--main-color);
  color: var(--main-text-color);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  border-radius: 5px;
  flex-shrink: 0;
  padding-inline: 10px 15px;
  color: #fff;
  gap: 5px;
  line-height: 1;
  white-space: nowrap;
  flex-shrink: 0;
}
.bl_searhForm_popup .bl_searhForm_iconButton img {
  width: 12px;
}
.bl_searhForm_popup .bl_searhForm_button {
  background-color: var(--main-color);
  color: var(--main-text-color);
  display: flex;
  align-items: center;
  gap: 5px;
  justify-content: center;
  min-height: 30px;
  border-radius: 5px;
  flex-shrink: 0;
  padding: 5px 10px;
  color: #fff;
  margin-top: 10px;
  width: 120px;
}
@media screen and (min-width: 480px) {
  .bl_searhForm_popup .bl_searhForm_button {
    width: 150px;
  }
}
.bl_searhForm_popup .bl_searhForm_button.is_reset {
  border: 1px solid var(--main-color);
  background-color: #fff;
  color: var(--main-color);
}
.bl_searhForm_popup .bl_searhForm_button img {
  width: 12px;
}

#js-searhForm_popup button.el_button.close-serach {
  position: sticky;
  top: 0;
  background-color: #fff;
  line-height: 1;
  border-radius: 5px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 0px 2px #666;
  z-index: 10;
}
#js-searhForm_popup .bl_popupForm_inner {
  min-height: 400px;
  padding-block: 20px;
}
#js-searhForm_popup .bl_searchForm_item {
  display: grid;
  padding-block: 20px;
  border-bottom: 1px solid var(--border-color);
}
@media screen and (min-width: 900px) {
  #js-searhForm_popup .bl_searchForm_item {
    grid-template-columns: 120px 1fr;
  }
}
#js-searhForm_popup .bl_searchForm_item .el_searchForm_form {
  flex-wrap: nowrap;
  gap: 10px;
}
#js-searhForm_popup .bl_searchForm_item + .bl_searchForm_item {
  margin-top: 15px;
}
#js-searhForm_popup .bl_searchForm_item .el_searchForm_label {
  align-self: center;
  margin-bottom: 5px;
  font-weight: 700;
}
#js-searhForm_popup .bl_searchForm_item .el_searchForm_label.is_vertical_top {
  align-self: flex-start;
}
#js-searhForm_popup .bl_searchForm_item input[type=text] {
  width: 100%;
}
#js-searhForm_popup .el_searchForm_form {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.1;
  -moz-column-gap: 15px;
       column-gap: 15px;
  row-gap: 10px;
}
#js-searhForm_popup .el_searchForm_forms {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
#js-searhForm_popup .el_searchForm_checks {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 5px;
  line-height: 1.3;
}
#js-searhForm_popup .el_searchForm_heading {
  line-height: 1.3;
  padding-block: 10px;
}
#js-searhForm_popup * + .el_searchForm_heading {
  margin-block: 10px 0;
  border-top: 1px solid #efefef;
  padding-block: 10px;
}
#js-searhForm_popup .el_searchForm_buttons {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  gap: 20px;
}
@media screen and (min-width: 480px) {
  #js-searhForm_popup .el_searchForm_buttons {
    justify-content: flex-end;
  }
}
#js-searhForm_popup .el_searchForm_buttons .bl_searhForm_button {
  margin-top: 0;
}

#searchCondtion .bl_searchForm_item {
  border-bottom: none;
}

.woocommerce-no-products-found .woocommerce-info {
  border: none;
  text-align: center;
}
.woocommerce-no-products-found .woocommerce-info::before {
  content: none;
}

.bl_filteredSetting {
  max-width: 700px;
  margin-inline: auto;
  margin-block: 20px;
  border-radius: 10px;
  position: relative;
}
.bl_filteredSetting .el_filterd_heading {
  font-weight: 700;
  text-align: center;
  padding-block: 10px;
  padding-inline: 20px;
  border-bottom: 1px solid var(--main-color);
}
.bl_filteredSetting ul {
  padding: 20px;
}
.bl_filteredSetting ul li {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 10px;
  line-height: 1;
}
.bl_filteredSetting ul li + li {
  margin-top: 15px;
}
.bl_filteredSetting ul li.no_result {
  grid-template-columns: 1fr;
  text-align: center;
}
.bl_filteredSetting ul .el_selectItems {
  display: flex;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 5px;
  flex-wrap: wrap;
}
.bl_filteredSetting ul span.el_selectItem {
  font-size: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  padding-inline: 15px;
  padding-block: 5px;
  background-color: #f6efe0;
  border-radius: 5px;
}
.bl_filteredSetting ul span.el_label {
  font-weight: 700;
  margin-top: 6px;
}

.bl_productGallery img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
}

.bl_productGalleryThumb {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 10px;
}

.bl_productGalleryThumb_item {
  overflow: hidden;
  align-self: flex-start;
}
.bl_productGalleryThumb_item img {
  cursor: pointer;
  transition: opacity var(--transition-time) ease;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform var(--transition-time) ease;
  aspect-ratio: 610/500;
}
@media (hover: hover) {
  .bl_productGalleryThumb_item img:hover {
    transform: scale(1.1);
  }
}
.bl_productGalleryThumb_item.is_active {
  pointer-events: none;
  opacity: 0.5;
}

.woocommerce .product a.el_banner_for_bulk {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  min-height: 60px;
  border-radius: 5px;
  background-color: var(--bg-color-beige);
  font-weight: 700;
  transition: filter var(--transition);
  color: #333;
}
@media (hover: hover) {
  .woocommerce .product a.el_banner_for_bulk:hover {
    filter: brightness(1.02);
    text-decoration: none;
  }
}

.woocommerce div.product div.images,
.woocommerce #content div.product div.images,
.woocommerce-page div.product div.images,
.woocommerce-page #content div.product div.images {
  float: none;
}
@media screen and (max-width: 899px) {
  .woocommerce div.product div.images,
  .woocommerce #content div.product div.images,
  .woocommerce-page div.product div.images,
  .woocommerce-page #content div.product div.images {
    width: 100%;
  }
}

.woocommerce div.product div.summary,
.woocommerce #content div.product div.summary,
.woocommerce-page div.product div.summary,
.woocommerce-page #content div.product div.summary {
  float: none;
}
@media screen and (max-width: 899px) {
  .woocommerce div.product div.summary,
  .woocommerce #content div.product div.summary,
  .woocommerce-page div.product div.summary,
  .woocommerce-page #content div.product div.summary {
    width: 100%;
  }
}

.bl_product2col {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 60px;
}
.bl_product2col a {
  color: #2b82e5;
}
@media (hover: hover) {
  .bl_product2col a:hover {
    text-decoration: underline;
  }
}
@media screen and (min-width: 900px) {
  .bl_product2col {
    flex-direction: row;
  }
}
@media print {
  .bl_product2col {
    flex-direction: row;
  }
}

.el_product_number {
  background-color: var(--accent-color);
  color: #fff;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100px;
  height: 25px;
  padding-block: 3px;
  padding-inline: 15px;
  width: -moz-fit-content;
  width: fit-content;
}
.bl_pageProduct .el_product_number, .woocommerce ul.products .el_product_number {
  font-size: 12px;
  height: 1.7em;
  margin-bottom: 5px;
}

.bl_product .summary {
  line-height: 1.75;
}
.bl_product .summary > * + * {
  margin-top: 15px;
}
.bl_product .summary h1.product_title.entry-title {
  font-size: 30px;
  font-weight: 700;
  margin-top: 12px;
  line-height: 1.4;
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
}
.bl_product .bl_prodcut_summaryTable {
  border-top: 1px solid var(--border-color);
  width: 100%;
}
.bl_product .bl_prodcut_summaryTable th,
.bl_product .bl_prodcut_summaryTable td {
  border-bottom: 1px solid var(--border-color);
  padding-block: 10px;
}
.bl_product .bl_prodcut_summaryTable th {
  width: 130px;
  font-weight: 700;
}
.bl_product .bl_prodcut_summaryTable td {
  padding-inline: 10px;
}
.bl_product .bl_prodcut_summaryTable .ut_flex_row {
  gap: 10px;
  align-items: center;
}
.bl_product .bl_prodcut_summaryTable .el_prodcut_price {
  font-size: 16px;
  font-weight: var(--fw-bold);
  line-height: 1;
}
.bl_product .bl_prodcut_summaryTable .is_excl_tax {
  font-size: 1.5em;
  margin-right: 4px;
}
.bl_product .el_salese_limit_alert {
  padding: 10px 20px;
  background-color: #faf0f0;
  border-radius: 10px;
  color: var(--accent-color);
  font-weight: 700;
}

.bl_productData_item + .bl_productData_item {
  margin-top: 40px;
}
.bl_productData_item > * + * {
  margin-top: 20px;
}
.bl_productData_item h2 {
  font-size: 24px;
  font-weight: 700;
  padding-block: 5px;
  border-bottom: 1px solid var(--border-color);
}

.related.products,
.up-sells.upsells.products {
  margin-top: 60px;
}
.related.products > h2,
.up-sells.upsells.products > h2 {
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid var(--border-color);
  padding-inline: 10px;
}
.related.products > h2 + .products,
.up-sells.upsells.products > h2 + .products {
  margin-top: 40px;
}

.el_item_wrapping,
.el_allergy_item,
.el_shippingClass_cost,
.el_shippingClass_name {
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  padding-block: 7px;
  padding-inline: 10px;
  line-height: 1;
}

span[class^="el_shippingClass_name is_frozen"] {
  background-color: #e9eaee;
  color: #021122;
  letter-spacing: 0.4em;
  padding-left: calc(10px + 0.4em);
}

span[class^="el_shippingClass_name is_cool"] {
  background-color: #acd0f8;
  color: #074081;
}

span[class^="el_shippingClass_name is_standard"] {
  background-color: #e9f8c4;
  color: #254e00;
}

span[class^="el_shippingClass_name is_click-post"] {
  background-color: #fae1e1;
  color: #4e0000;
}

.el_shippingClass_cost {
  border: 1px solid var(--border-color);
}

.el_item_wrapping {
  border: 1px solid var(--border-color);
}

.el_deliDateRule.is_ind {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 5px;
       column-gap: 5px;
  row-gap: 5px;
}
.el_deliDateRule.is_ind span.el_deliDate {
  background-color: #f8f8f8;
  padding: 2px 8px;
  font-size: 0.9em;
  border-radius: 5px;
  border: 1px solid #dadada;
}

.el_allergy_item {
  font-size: 14px;
  color: #523d0c;
  background-color: #fdedc7;
  height: 25px;
  padding-inline: 15px;
  padding-block: 2px;
  border-radius: 99px;
}

.bl_product_notice {
  font-size: 1.2em;
  padding-block: 10px;
  padding-inline: 30px;
  margin-bottom: 20px;
  /* border: 4px solid #dfa927; */
  background-color: #f6efe0;
  border-radius: 5px;
  font-weight: 700;
}

ul.bl_assort_items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}

.el_assort_item > div,
.el_assort_item a {
  color: var(--main-text-color);
  padding-right: 10px;
  display: grid;
  font-size: 14px;
  align-items: center;
  transition: all var(--transition-time) ease;
}
@media screen and (min-width: 900px) {
  .el_assort_item > div,
  .el_assort_item a {
    grid-template-columns: 100px 1fr auto;
    gap: 10px;
    font-size: 16px;
  }
}
.el_assort_item > div figure,
.el_assort_item a figure {
  overflow: hidden;
}
.el_assort_item > div img,
.el_assort_item a img {
  aspect-ratio: 61/50;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all var(--transition-time) ease;
  width: auto;
}
@media (hover: hover) {
  .el_assort_item > div:hover,
  .el_assort_item a:hover {
    box-shadow: 0px 0px 1px #999;
  }
  .el_assort_item > div:hover img,
  .el_assort_item a:hover img {
    transform: scale(1.1);
  }
}

.el_assort_note {
  font-size: 0.8em;
  opacity: 0.8;
  margin-top: -10px;
  margin-bottom: 10px;
}

.product form.cart {
  display: flex;
  flex-direction: column;
}
.product form.cart button[name=add-to-cart] {
  margin-top: 2em;
  height: 50px;
  background-color: var(--button-buy);
  color: #fff;
  transition: filter var(--transition-time) ease;
}
.product form.cart button[name=add-to-cart]:hover {
  filter: brightness(1.1);
  background-color: var(--button-buy);
  color: #fff;
}
.product form.cart p.error-add-to-cart {
  font-size: 0.9em;
  margin-top: 5px;
  color: var(--accent-color);
}

.el_qtyInput {
  display: flex;
  align-items: center;
  gap: 30px;
}
.logged-in .bl_single_qty .el_qtyInput {
  border-bottom: 1px solid var(--border-color);
  align-items: flex-end;
}
.el_qtyInput .el_qtyInput_label {
  font-weight: 700;
}
.el_qtyInput .el_qtyInput_field {
  display: flex;
  border: 1px solid var(--border-color);
  border-radius: 3px;
}
.logged-in .bl_single_qty .el_qtyInput .el_qtyInput_field {
  border: none;
}
.el_qtyInput .el_qtyInput_action {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 15px;
  line-height: 0;
  opacity: 0.4;
}
.el_qtyInput input[type=number] {
  border-radius: 0;
  border-style: none solid;
  border-width: 1px;
  border-color: var(--border-color);
  padding-block: 5px;
  width: 50px;
  text-align: center;
}
.logged-in .bl_single_qty .el_qtyInput input[type=number] {
  border-style: none;
  font-size: 1.3em;
}
.el_qtyInput input[type=number]::-webkit-inner-spin-button,
.el_qtyInput input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.el_qtyInput input[type=number] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield; /* 互換性のため */
}

.bl_single_qty.is_hide .el_qtyInput_action {
  display: none;
}
.bl_single_qty.is_hide input {
  border: none;
}

.bl_multipleShipping {
  margin-bottom: 45px;
  padding-bottom: 20px;
  border-bottom: 1px solid #dadada;
}

.bl_multipleShipping_label {
  font-size: 1.1em;
  font-weight: 700;
  margin-bottom: 10px;
}

.bl_multipleShipping_item {
  padding-block: 10px;
}
.bl_multipleShipping_item.is_single, .bl_multipleShipping_item.is_amount_only {
  justify-content: center;
}
.bl_multipleShipping_item .el_qtyInput_label {
  margin-right: auto;
}

.bl_multipleShipping .el_qtyInput_button.button {
  --button-font-color: #fff;
  margin-top: 0;
  height: 30px;
  font-size: 0.8em;
  min-width: auto;
  width: -moz-fit-content;
  width: fit-content;
  background-color: var(--button-color);
  color: var(--button-font-color);
  transition: filter var(--transition-time) ease;
  border-radius: 3px;
  padding-inline: 13px;
}
.bl_multipleShipping .el_qtyInput_button.button:hover {
  filter: brightness(1.1);
  background-color: var(--button-color);
  color: var(--button-font-color);
}
.bl_multipleShipping .el_qtyInput_button.button.is_delete {
  --button-color: var(--accent-color);
}
.bl_multipleShipping .el_qtyInput_button.button.is_delete:disabled {
  color: #fff;
  pointer-events: none;
}
.bl_multipleShipping .el_qtyInput_button.button.is_select {
  display: block;
  width: 100%;
  --button-color: var(--sub-color);
}
.bl_multipleShipping .el_qtyInput_button.button.is_add {
  --button-color: #fff;
  color: var(--sub-color);
  border: 1px solid var(--sub-color);
  display: block;
  width: 100%;
}

.el_shipping_select {
  display: flex;
  gap: 20px;
  margin-top: 20px;
}

.woocommerce .products ul,
.woocommerce ul.products {
  display: grid;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 30px;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 900px) {
  .woocommerce .products ul,
  .woocommerce ul.products {
    -moz-column-gap: clamp(10px, -115px + 12.5vw, 40px);
         column-gap: clamp(10px, -115px + 12.5vw, 40px);
    row-gap: 40px;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1240px) {
  .woocommerce .products ul,
  .woocommerce ul.products {
    -moz-column-gap: 40px;
         column-gap: 40px;
    row-gap: 40px;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media print {
  .woocommerce .products ul,
  .woocommerce ul.products {
    -moz-column-gap: 40px;
         column-gap: 40px;
    row-gap: 40px;
    grid-template-columns: repeat(4, 1fr);
  }
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: 100% !important;
  margin: 0;
  display: flex;
  flex-direction: column;
  position: relative;
}

.woocommerce .products ul::after,
.woocommerce .products ul::before,
.woocommerce ul.products::after,
.woocommerce ul.products::before {
  content: none;
}

.woocommerce ul.products li.bl_product {
  font-size: 14px;
}
.woocommerce ul.products li.bl_product a.woocommerce-loop-product__link {
  margin-bottom: auto;
}
.woocommerce ul.products li.bl_product a.woocommerce-loop-product__link img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 900px) {
  .woocommerce ul.products li.bl_product a.woocommerce-loop-product__link > *:not(img) {
    margin-inline: 15px;
  }
}
.woocommerce ul.products li.bl_product h2.woocommerce-loop-product__title {
  padding: 0;
  line-height: 1.3;
  font-size: 18px;
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  font-weight: bold;
}
.woocommerce ul.products li.bl_product .price {
  font-size: 15px;
  margin-bottom: 0;
  line-height: 1.2;
  margin-top: 6px;
  font-feature-settings: "palt";
}
.woocommerce ul.products li.bl_product .price .el_price_number {
  font-size: 1.3em;
  margin-right: 4px;
}
.woocommerce ul.products li.bl_product a.button {
  width: calc(100% - 30px);
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
}
@media screen and (max-width: 899px) {
  .woocommerce ul.products li.bl_product a.button {
    min-height: 40px;
    font-size: 14px;
    width: 100%;
  }
}
.woocommerce ul.products li.bl_product a.button.add_to_cart_button {
  background-color: var(--button-buy);
  padding-block: 0.6em;
  margin-top: 15px;
}
.woocommerce ul.products li.bl_product a.button.is_no_stock {
  background-color: #ccc;
  padding-block: 0.6em;
  margin-top: 15px;
}
.woocommerce ul.products li.bl_product a.button.el_product_link {
  margin-top: 10px;
}
.woocommerce ul.products li.bl_product .el_productPickup {
  margin: 0 !important;
  position: absolute;
}
.woocommerce ul.products li.bl_product .el_productPickup.is_style_ribbon {
  top: -6px;
  right: -6px;
  width: 89px;
  height: 91px;
  overflow: hidden;
}
.woocommerce ul.products li.bl_product .el_productPickup.is_style_ribbon .el_productPickup_item {
  display: inline-block;
  position: absolute;
  padding: 5px 0;
  left: -24px;
  top: 20px;
  width: 160px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 16px;
  background: var(--pickup-bg-color);
  color: var(--pickup-color);
  letter-spacing: 0.05em;
  transform: rotate(45deg);
  box-shadow: 0 0 0 2px var(--pickup-bg-color);
  border-top: dashed 1px var(--pickup-border-color);
  border-bottom: dashed 1px var(--pickup-border-color);
}
.woocommerce ul.products li.bl_product .el_productPickup.is_style_ribbon_h {
  top: 5px;
  left: -10px;
}
.woocommerce ul.products li.bl_product .el_productPickup.is_style_ribbon_h .el_productPickup_item {
  color: var(--pickup-color);
  background: var(--pickup-bg-color);
  min-height: 20px;
  padding: 0 5px;
  font-size: 10px;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  margin: 0;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-bottom: 5px;
}
@media screen and (min-width: 480px) {
  .woocommerce ul.products li.bl_product .el_productPickup.is_style_ribbon_h .el_productPickup_item {
    min-height: 28px;
    padding: 0 15px 0 15px;
    font-size: 14px;
  }
}
.woocommerce ul.products li.bl_product .el_productPickup.is_style_ribbon_h .el_productPickup_item:before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 10px transparent;
  border-right: solid 10px var(--pickup-bg-color);
  filter: brightness(0.7);
}
.woocommerce ul.products .el_product_description {
  font-size: 16px;
  margin-top: 6px;
  line-height: 1.3;
  opacity: 0.5;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  /* ブラウザがサポートしていない場合のフェールセーフ */
  max-height: 45px;
  margin-bottom: 20px;
}
.woocommerce ul.products .el_product_amount {
  font-size: 1em;
  margin-top: 3px;
}
.woocommerce ul.products .el_product_salsePeriod {
  --salse-prdiod-color: #444;
  border: 1px solid var(--salse-prdiod-color);
  border-radius: 4px;
  display: flex;
  overflow: hidden;
  margin-inline: auto;
  min-height: 1.6em;
  margin-top: auto;
  flex-direction: row;
  width: 100%;
}
@media screen and (min-width: 900px) {
  .woocommerce ul.products .el_product_salsePeriod {
    width: calc(100% - 30px);
    flex-direction: column;
  }
}
@media screen and (min-width: 1240px) {
  .woocommerce ul.products .el_product_salsePeriod {
    flex-direction: row;
  }
}
.woocommerce ul.products .el_product_salsePeriod span {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
  padding-inline: 5px;
  font-size: 11px;
  width: 100%;
  padding-block: 5px;
  color: #666;
}
@media screen and (min-width: 900px) {
  .woocommerce ul.products .el_product_salsePeriod span {
    font-size: 14px;
    padding-inline: 15px;
  }
}
.woocommerce ul.products .el_product_salsePeriod .el_salsePeriod_label {
  background-color: var(--salse-prdiod-color);
  color: #fff;
  font-weight: normal;
  padding-inline: 8px;
  width: 100%;
  font-size: 10px;
  padding-inline: 10px;
}
@media screen and (min-width: 900px) {
  .woocommerce ul.products .el_product_salsePeriod .el_salsePeriod_label {
    font-size: 13px;
  }
}
@media screen and (min-width: 1240px) {
  .woocommerce ul.products .el_product_salsePeriod .el_salsePeriod_label {
    width: 80px;
    padding-inline: 10px;
  }
}

.woocommerce nav.woocommerce-pagination {
  margin-top: 50px;
}

.woocommerce nav.woocommerce-pagination ul {
  display: flex;
  gap: 10px;
  border: none;
  align-items: center;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers:not(.dots):not(.no-page):hover, .woocommerce nav.woocommerce-pagination ul.page-numbers:not(.dots).current {
  background-color: transparent;
}

.woocommerce .woocommerce-pagination ul.page-numbers li,
.woocommerce-page .woocommerce-pagination ul.page-numbers li {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 99px;
  border: none;
  flex-shrink: 0;
}
.woocommerce .woocommerce-pagination ul.page-numbers li span,
.woocommerce .woocommerce-pagination ul.page-numbers li a,
.woocommerce-page .woocommerce-pagination ul.page-numbers li span,
.woocommerce-page .woocommerce-pagination ul.page-numbers li a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  min-width: 30px;
  height: 30px;
  padding: 0;
  line-height: 1;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
  background-color: var(--main-color);
  color: #fff;
}

.is-style-trimed-top {
  margin-bottom: 0;
}
.is-style-trimed-top img {
  aspect-ratio: 994/407;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
}
@media screen and (max-width: 480px) {
  .is-style-trimed-top img {
    aspect-ratio: 375/500;
  }
}
.is-style-trimed-top + .is-style-trimed-top {
  --article-mt: 0;
}

.wp-block-image.is-style-bordered figure {
  border: 1px solid var(--border-color);
  margin: 0;
  padding: 0;
  margin-inline: auto;
}
.wp-block-image.is-style-bordered figure img {
  display: block;
}
@media screen and (max-width: 899px) {
  .wp-block-image.is-style-bordered {
    max-width: 80vw;
    margin-inline: auto;
  }
}

.bl_article_content h2.is-style-lp-heading {
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  border-bottom: none;
  margin-bottom: 0;
  padding-block: 0;
  font-size: var(--entry-h2-fsz);
}
.bl_article_content h2.is-style-lp-heading + .wp-block-group.alignfull.has-background {
  --article-mt: 20px;
}
.bl_article_content h3.is-style-lp-heading {
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  font-weight: var(--fw-bold);
  border-bottom: none;
  margin-bottom: 0;
  padding-block: 0;
  font-size: var(--entry-h3-fsz);
}
.bl_article_content h3.is-style-lp-heading + .wp-block-group.alignfull.has-background {
  --article-mt: 20px;
}

.is-style-products {
  --pro-col-gap: 70px;
  gap: var(--pro-col-gap);
}
@media screen and (max-width: 781px) {
  .is-style-products {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    --pro-col-gap: 40px;
  }
}
@media screen and (max-width: 480px) {
  .is-style-products {
    --pro-col-gap: 20px;
    grid-template-columns: 1fr;
  }
}
.is-style-products .wp-block-column > * + * {
  margin-top: var(--column-in-mt);
}
.is-style-products .wp-block-column figure {
  position: relative;
}
@media screen and (max-width: 781px) {
  .is-style-products .wp-block-column:nth-child(2n) figure::before {
    content: "";
    height: 100%;
    width: 1px;
    background-color: #ccc;
    position: absolute;
    top: 0;
    left: calc(var(--pro-col-gap) / 2 * -1);
  }
}
@media screen and (max-width: 480px) {
  .is-style-products .wp-block-column figure:before {
    content: none !important;
  }
}
@media screen and (min-width: 782px) {
  .is-style-products .wp-block-column + .wp-block-column figure::before {
    content: "";
    height: 100%;
    width: 1px;
    background-color: #ccc;
    position: absolute;
    top: 0;
    left: calc(var(--pro-col-gap) / 2 * -1);
  }
}
.is-style-products .wp-block-image {
  margin-bottom: 0;
}
.is-style-products .wp-block-image img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: none;
  width: 100%;
}
@media screen and (min-width: 900px) {
  .is-style-products .wp-block-image > *:not(img) {
    margin-inline: 15px;
  }
}

.bl_pageProduct .bl_pageProductItem,
.is-style-products .bl_pageProductItem,
.is-style-products-3-7 .bl_pageProductItem {
  font-size: 14px;
  margin-top: 10px;
}
.bl_pageProduct .bl_pageProductItem a.woocommerce-loop-product__link,
.is-style-products .bl_pageProductItem a.woocommerce-loop-product__link,
.is-style-products-3-7 .bl_pageProductItem a.woocommerce-loop-product__link {
  margin-bottom: auto;
}
.bl_pageProduct .bl_pageProductItem h2.woocommerce-loop-product__title,
.is-style-products .bl_pageProductItem h2.woocommerce-loop-product__title,
.is-style-products-3-7 .bl_pageProductItem h2.woocommerce-loop-product__title {
  padding: 0;
  line-height: 1.3;
  font-weight: 700;
  font-size: 1.28571429em;
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
}
.bl_pageProduct .bl_pageProductItem .price,
.is-style-products .bl_pageProductItem .price,
.is-style-products-3-7 .bl_pageProductItem .price {
  font-size: 1.14285714em;
  margin-bottom: 0;
  line-height: 1.2;
  margin-top: 6px;
  color: #958e09;
}
.bl_pageProduct .bl_pageProductItem a.button,
.is-style-products .bl_pageProductItem a.button,
.is-style-products-3-7 .bl_pageProductItem a.button {
  max-width: 250px;
  width: 100%;
  margin-top: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  border-radius: 5px;
  color: #fff;
  background-color: var(--button-color);
  transition: all var(--transition-time) ease;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 899px) {
  .bl_pageProduct .bl_pageProductItem a.button,
  .is-style-products .bl_pageProductItem a.button,
  .is-style-products-3-7 .bl_pageProductItem a.button {
    margin-inline: auto;
    min-height: 40px;
    font-size: 14px;
    width: 100%;
  }
}
.bl_pageProduct .bl_pageProductItem a.button.add_to_cart_button,
.is-style-products .bl_pageProductItem a.button.add_to_cart_button,
.is-style-products-3-7 .bl_pageProductItem a.button.add_to_cart_button {
  background-color: var(--button-buy);
  margin-top: 10px;
}
.bl_pageProduct .bl_pageProductItem a.button.el_product_link,
.is-style-products .bl_pageProductItem a.button.el_product_link,
.is-style-products-3-7 .bl_pageProductItem a.button.el_product_link {
  margin-top: 10px;
}
.bl_pageProduct .bl_pageProductItem a.button.el_product_link.is_view_only,
.is-style-products .bl_pageProductItem a.button.el_product_link.is_view_only,
.is-style-products-3-7 .bl_pageProductItem a.button.el_product_link.is_view_only {
  background-color: var(--button-color);
}
.bl_pageProduct .bl_pageProductItem a.button.el_product_link.is_no_stock,
.is-style-products .bl_pageProductItem a.button.el_product_link.is_no_stock,
.is-style-products-3-7 .bl_pageProductItem a.button.el_product_link.is_no_stock {
  background-color: #dadada;
  color: #666;
}
.bl_pageProduct .bl_pageProductItem .el_product_description,
.is-style-products .bl_pageProductItem .el_product_description,
.is-style-products-3-7 .bl_pageProductItem .el_product_description {
  font-size: 16px;
  margin-top: 6px;
  line-height: 1.3;
  opacity: 0.5;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  /* ブラウザがサポートしていない場合のフェールセーフ */
  max-height: 45px;
}
.bl_pageProduct .bl_pageProductItem .el_product_amount,
.is-style-products .bl_pageProductItem .el_product_amount,
.is-style-products-3-7 .bl_pageProductItem .el_product_amount {
  font-size: 14px;
}
.bl_pageProduct .bl_pageProductItem .el_product_salsePeriod,
.is-style-products .bl_pageProductItem .el_product_salsePeriod,
.is-style-products-3-7 .bl_pageProductItem .el_product_salsePeriod {
  --salse-prdiod-color: #444;
  border: 1px solid var(--salse-prdiod-color);
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  max-width: 250px;
  margin-inline: auto;
  margin-top: 15px;
  margin-bottom: 15px;
  width: 100%;
  min-height: 1.6em;
}
@media screen and (min-width: 900px) {
  .bl_pageProduct .bl_pageProductItem .el_product_salsePeriod,
  .is-style-products .bl_pageProductItem .el_product_salsePeriod,
  .is-style-products-3-7 .bl_pageProductItem .el_product_salsePeriod {
    width: 100%;
    flex-direction: row;
    margin-inline: 0 auto;
    margin-top: 10px;
  }
}
.bl_pageProduct .bl_pageProductItem .el_product_salsePeriod span,
.is-style-products .bl_pageProductItem .el_product_salsePeriod span,
.is-style-products-3-7 .bl_pageProductItem .el_product_salsePeriod span {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
  padding-inline: 5px;
  font-size: 13px;
  width: 100%;
  padding-block: 5px;
  color: #666;
}
@media screen and (min-width: 900px) {
  .bl_pageProduct .bl_pageProductItem .el_product_salsePeriod span,
  .is-style-products .bl_pageProductItem .el_product_salsePeriod span,
  .is-style-products-3-7 .bl_pageProductItem .el_product_salsePeriod span {
    padding-inline: 10px;
  }
}
.bl_pageProduct .bl_pageProductItem .el_product_salsePeriod .el_salsePeriod_label,
.is-style-products .bl_pageProductItem .el_product_salsePeriod .el_salsePeriod_label,
.is-style-products-3-7 .bl_pageProductItem .el_product_salsePeriod .el_salsePeriod_label {
  background-color: var(--salse-prdiod-color);
  color: #fff;
  font-weight: normal;
  padding-inline: 5px;
}
@media screen and (min-width: 900px) {
  .bl_pageProduct .bl_pageProductItem .el_product_salsePeriod .el_salsePeriod_label,
  .is-style-products .bl_pageProductItem .el_product_salsePeriod .el_salsePeriod_label,
  .is-style-products-3-7 .bl_pageProductItem .el_product_salsePeriod .el_salsePeriod_label {
    width: 80px;
    padding-inline: 10px;
  }
}

.wp-block-column > * + * {
  margin-top: var(--column-in-mt);
}

.wp-block-columns {
  gap: var(--wp--style--gallery-gap-default, 70px);
}
.wp-block-columns.is-gap-zero {
  --wp--style--gallery-gap-default: 0px;
}
.wp-block-columns.is-gap-s {
  --wp--style--gallery-gap-default: 8px;
}
.wp-block-columns.is-gap-m {
  --wp--style--gallery-gap-default: 35px;
}
.wp-block-columns.is-gap-l {
  --wp--style--gallery-gap-default: 70px;
}
.wp-block-columns.is-gap-line {
  --wp--style--gallery-gap-default: 70px;
  --pro-col-gap: 70px;
  gap: var(--pro-col-gap);
}
@media screen and (max-width: 781px) {
  .wp-block-columns.is-gap-line {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    --pro-col-gap: 40px;
  }
}
@media screen and (max-width: 480px) {
  .wp-block-columns.is-gap-line {
    --pro-col-gap: 20px;
    grid-template-columns: 1fr;
  }
}
.wp-block-columns.is-gap-line .wp-block-column > * + * {
  margin-top: var(--column-in-mt);
}
.wp-block-columns.is-gap-line .wp-block-column figure {
  position: relative;
}
@media screen and (max-width: 781px) {
  .wp-block-columns.is-gap-line .wp-block-column:nth-child(2n) figure::before {
    content: "";
    height: 100%;
    width: 1px;
    background-color: #ccc;
    position: absolute;
    top: 0;
    left: calc(var(--pro-col-gap) / 2 * -1);
  }
}
@media screen and (max-width: 480px) {
  .wp-block-columns.is-gap-line .wp-block-column figure:before {
    content: none !important;
  }
}
@media screen and (min-width: 782px) {
  .wp-block-columns.is-gap-line .wp-block-column + .wp-block-column figure::before {
    content: "";
    height: 100%;
    width: 1px;
    background-color: #ccc;
    position: absolute;
    top: 0;
    left: calc(var(--pro-col-gap) / 2 * -1);
  }
}
@media print {
  .wp-block-columns {
    flex-wrap: nowrap !important;
  }
}

.wp-block-columns.bl_password_check {
  margin-top: 30px;
}
.wp-block-columns.bl_password_check h3 {
  font-weight: var(--fw-bold);
  text-align: center;
}
.wp-block-columns.bl_password_check h3 + figure {
  margin-top: 5px;
}

figure.wp-block-gallery {
  --wp--style--gallery-gap-default: 35px;
}
@media screen and (min-width: 900px) {
  figure.wp-block-gallery {
    --wp--style--gallery-gap-default: 70px;
  }
}
figure.wp-block-gallery.is-gap-zero {
  --wp--style--gallery-gap-default: 0px;
}
figure.wp-block-gallery.is-gap-s {
  --wp--style--gallery-gap-default: 8px;
}
figure.wp-block-gallery.is-gap-m {
  --wp--style--gallery-gap-default: 35px;
}
figure.wp-block-gallery.is-gap-l {
  --wp--style--gallery-gap-default: 70px;
}
figure.wp-block-gallery.is-gap-line {
  --wp--style--gallery-gap-default: 70px;
}
@media screen and (max-width: 781px) {
  figure.wp-block-gallery.is-gap-line {
    --wp--style--gallery-gap-default: 40px;
  }
}
@media screen and (max-width: 480px) {
  figure.wp-block-gallery.is-gap-line {
    --wp--style--gallery-gap-default: 20px;
  }
}
figure.wp-block-gallery.is-gap-line > figure {
  position: relative;
}
figure.wp-block-gallery.is-gap-line > figure:nth-child(2n)::before {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #ccc;
  position: absolute;
  top: 0;
  left: calc(var(--wp--style--gallery-gap-default) / 2 * -1);
}
@media screen and (max-width: 480px) {
  figure.wp-block-gallery.is-gap-line > figure:before {
    content: none !important;
  }
}
figure.wp-block-gallery.is-style-social-icons {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
figure.wp-block-gallery.is-style-social-icons > figure {
  width: 50px !important;
}

@media screen and (max-width: 480px) {
  .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    margin: 0;
    width: 100%;
  }
}

.is-top-news.wp-block-latest-posts {
  margin-top: -80px;
  margin-bottom: 80px;
  padding-left: 0;
}
@media screen and (min-width: 900px) {
  .is-top-news.wp-block-latest-posts {
    margin-top: -60px;
    margin-bottom: 60px;
  }
}
.is-top-news.wp-block-latest-posts li {
  list-style: none;
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-start;
  align-items: flex-start;
  font-size: 15px;
}
@media screen and (min-width: 900px) {
  .is-top-news.wp-block-latest-posts li {
    gap: 20px;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
}
.is-top-news.wp-block-latest-posts .wp-block-latest-posts__post-date {
  white-space: nowrap;
}
.is-top-news.wp-block-latest-posts .wp-block-latest-posts__post-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.wp-block-button__link.wp-element-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  min-height: 60px;
  border-radius: 5px;
  background-color: var(--bg-color-beige);
  font-weight: 700;
  transition: filter var(--transition);
  color: var(--main-text-color);
}
@media (hover: hover) {
  .wp-block-button__link.wp-element-button:hover {
    filter: brightness(1.02);
  }
}

.bl_pageProduct {
  display: flex;
  gap: 10px;
  flex-direction: column;
}
.bl_pageProduct.is_layout_lower {
  gap: 15px;
  flex-direction: column-reverse;
}
@media screen and (max-width: 899px) {
  .bl_pageProduct.is_layout_left > *, .bl_pageProduct.is_layout_right > * {
    width: 100% !important;
  }
}
@media screen and (min-width: 900px) {
  .bl_pageProduct.is_layout_left {
    gap: 0;
    flex-direction: row;
  }
  .bl_pageProduct.is_layout_left .bl_pageProductItem {
    padding-left: 15px;
  }
  .bl_pageProduct.is_layout_right {
    gap: 0;
    flex-direction: row-reverse;
  }
  .bl_pageProduct.is_layout_right .bl_pageProductItem {
    padding-right: 15px;
  }
}
.bl_pageProduct .bl_pageProductItem {
  margin-top: 0;
}
.bl_pageProduct .wp-block-image {
  margin-bottom: 0;
}
.bl_pageProduct .wp-block-image img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: none;
  width: 100%;
}
@media screen and (min-width: 900px) {
  .bl_pageProduct .wp-block-image > *:not(img) {
    margin-inline: 15px;
  }
}
@media print {
  .bl_pageProduct.is_layout_left {
    flex-direction: row !important;
  }
  .bl_pageProduct.is_layout_right {
    flex-direction: row-reverse !important;
  }
  .bl_pageProduct.is_layout_lower {
    flex-direction: column-reverse;
  }
}

ul.bl_recommendBlock {
  display: flex;
  gap: 20px;
  overflow-x: scroll;
}
ul.bl_recommendBlock li {
  flex-shrink: 0;
  list-style: none;
}
ul.bl_recommendBlock li a {
  display: flex;
  flex-direction: column;
}
ul.bl_recommendBlock li img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
  object-fit: cover;
  max-width: none;
  width: 100%;
}
ul.bl_recommendBlock li h4 {
  font-weight: 700;
  margin-top: 10px;
  line-height: 1.3;
  font-size: 11px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media screen and (min-width: 900px) {
  ul.bl_recommendBlock li h4 {
    font-size: 14px;
  }
}

.wp-block-group.is-layout-grid {
  --wp--style-groupe-gap: 35px;
  gap: var(--wp--style-groupe-gap);
}
@media screen and (min-width: 900px) {
  .wp-block-group.is-layout-grid {
    --wp--style-groupe-gap: 70px;
  }
}
.wp-block-group.is-layout-grid.is-gap-zero {
  --wp--style-groupe-gap: 0px;
}
.wp-block-group.is-layout-grid.is-gap-s {
  --wp--style-groupe-gap: 8px;
}
.wp-block-group.is-layout-grid.is-gap-m {
  --wp--style-groupe-gap: 35px;
}
.wp-block-group.is-layout-grid.is-gap-l {
  --wp--style-groupe-gap: 70px;
}
.wp-block-group.is-layout-grid.is-gap-line {
  --wp--style-groupe-gap: 70px;
}
@media screen and (max-width: 781px) {
  .wp-block-group.is-layout-grid.is-gap-line {
    --wp--style-groupe-gap: 40px;
  }
}
@media screen and (max-width: 480px) {
  .wp-block-group.is-layout-grid.is-gap-line {
    --wp--style-groupe-gap: 20px;
  }
}
.wp-block-group.is-layout-grid.is-gap-line > figure {
  position: relative;
}
.wp-block-group.is-layout-grid.is-gap-line > figure::before {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #ccc;
  position: absolute;
  top: 0;
  left: calc(var(--wp--style-groupe-gap) / 2 * -1);
}
.wp-block-group.is-layout-grid.is-gap-line > figure:first-child::before {
  content: none;
}

.wp-block-group.wp-block-group-is-layout-flex {
  --wp--style-groupe-gap: 35px;
  gap: var(--wp--style-groupe-gap);
}
@media screen and (min-width: 900px) {
  .wp-block-group.wp-block-group-is-layout-flex {
    --wp--style-groupe-gap: 70px;
  }
}
.wp-block-group.wp-block-group-is-layout-flex.is-gap-zero {
  --wp--style-groupe-gap: 0px;
}
.wp-block-group.wp-block-group-is-layout-flex.is-gap-s {
  --wp--style-groupe-gap: 8px;
}
.wp-block-group.wp-block-group-is-layout-flex.is-gap-m {
  --wp--style-groupe-gap: 35px;
  --wp--style-groupe-gap: 25px;
}
.wp-block-group.wp-block-group-is-layout-flex.is-gap-l {
  --wp--style-groupe-gap: 70px;
}

.wp-block-group.is-style-alert-box {
  background-color: #fff1f1;
  padding: 20px;
  padding-inline: 50px 20px;
  border-left: 5px solid var(--accent-color);
  position: relative;
  --article-mt: 40px;
}
.wp-block-group.is-style-alert-box::before {
  font-family: "WooCommerce";
  display: inline-block;
  position: absolute;
  top: 0.7em;
  left: 0.6em;
  content: "\e016";
  color: var(--accent-color);
  font-size: 1.4em;
}
.wp-block-group.is-style-alert-box .wp-block-group__inner-container > * + * {
  margin-top: 10px;
}
.wp-block-group.is-style-alert-box .wp-block-group__inner-container h3 {
  font-weight: var(--fw-bold);
}

.wp-block-group.alignfull.has-background {
  padding-block: 40px;
  padding-inline: 15px;
}

#js-recipient-selector {
  z-index: 98;
}

#js-popup-form {
  z-index: 99;
}

#js-item-allocation {
  z-index: 97;
}

.bl_popupForm {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  left: 0;
  bottom: 0;
  transform: translateY(130vh);
  transition: all var(--transition-time) ease;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 16;
  padding: 20px;
}
.bl_popupForm.is_show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.bl_popupForm.is_show.is_back {
  opacity: 0;
}

.bl_popupForm_inner {
  background-color: #fff;
  max-width: 540px;
  position: relative;
  width: 90vw;
  overflow: auto;
  max-height: 95vh;
  border-radius: 5px;
  padding-block: 20px 30px;
  padding-inline: 20px;
}
@media screen and (min-width: 900px) {
  .bl_popupForm_inner {
    padding: 40px;
  }
}

.el_overlay_form {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  visibility: hidden;
  opacity: 0;
  transition: all var(--transition-time);
}
.is_show_form .el_overlay_form {
  z-index: 15;
  background-color: #000;
  opacity: 0.5;
  visibility: visible;
}

body.is_show_form {
  overflow: hidden;
}

.el_formItem {
  display: flex;
  flex-direction: column;
}
.el_formItem label {
  font-weight: var(--fw-bold);
  font-size: 0.8em;
}
@media screen and (min-width: 900px) {
  .el_formItem label {
    font-size: 1em;
  }
}
.el_formItem label.is_required::after {
  content: "必須";
  background-color: var(--accent-color);
  color: #fff;
  padding: 0 5px;
  white-space: nowrap;
  margin-left: 10px;
  font-weight: var(--fw-regular);
  font-size: 0.7em;
  border-radius: 3px;
  vertical-align: text-top;
}
.el_formItem .el_adress_note {
  font-size: 0.8em;
  opacity: 0.6;
}
.el_formItem input {
  font-family: inherit;
  font-weight: normal;
  letter-spacing: normal;
  padding: 0.5em;
  display: block;
  background-color: var(--wc-form-color-background, #fff);
  border: var(--wc-form-border-width) solid var(--border-color);
  border-radius: var(--wc-form-border-radius);
  color: var(--wc-form-color-text, #000);
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  line-height: normal;
  height: auto;
}
.el_formItem input:focus,
.el_formItem select:focus,
.el_formItem textarea:focus {
  background-color: #fff;
  box-shadow: 0 0 3px #ccc;
}
.el_formItem label.error {
  font-weight: normal;
  font-size: 14px;
  color: var(--accent-color);
  white-space: normal;
  line-height: 1.4;
}
.el_formItem input[name=postcode] + label.error {
  max-width: 180px;
}
.el_formItem .el_fromItem_phone {
  display: flex;
  gap: 20px;
}
.el_formItem .el_fromItem_phoneInput {
  position: relative;
}
.el_formItem .el_fromItem_phoneInput::before {
  content: "-";
  position: absolute;
  left: -13px;
  top: 25%;
  line-height: 1;
}
.el_formItem .el_fromItem_phoneInput:first-child::before {
  content: none;
}

.bl_recipientForm label {
  display: flex;
  font-weight: 700;
  gap: 6px;
  white-space: nowrap;
  align-items: center;
}
.bl_recipientForm label .el_address_short {
  font-weight: 500;
  font-size: 0.9em;
  opacity: 0.5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.bl_recipientForm > * + * {
  margin-top: 0.8em;
}
.bl_recipientForm button.el_linkButton {
  color: #2271b1;
}
.bl_recipientForm .el_recipientForm_note {
  color: var(--accent-color);
  line-height: 1.3;
  font-size: 0.8em;
  margin-top: 0;
}

.bl_recipientForm_address {
  margin-top: 0;
}
.bl_recipientForm_address > * + * {
  margin-top: 0.8em;
}

.bl_recipientForm_buttns {
  margin-top: 2em;
  justify-content: center;
  gap: 20px;
  display: flex;
}
.bl_recipientForm_buttns a,
.bl_recipientForm_buttns button {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  border-radius: 3px;
  padding: 5px 10px;
  line-height: 1;
  max-width: 180px;
  min-height: 40px;
  width: 100%;
  transition: all var(--transition-time) ease;
  border: none;
}
.bl_recipientForm_buttns a.is_cancel,
.bl_recipientForm_buttns button.is_cancel {
  background-color: var(--accent-color);
}
.bl_recipientForm_buttns a.is_save,
.bl_recipientForm_buttns button.is_save {
  background-color: var(--link-color);
}
.bl_recipientForm_buttns a:disabled,
.bl_recipientForm_buttns button:disabled {
  opacity: 0.4;
  cursor: no-drop;
}
@media (hover: hover) {
  .bl_recipientForm_buttns a:hover,
  .bl_recipientForm_buttns button:hover {
    filter: brightness(1.1);
  }
}

.bl_recipientSelect {
  width: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 285px;
  border: 1px solid #dadada;
  border-style: solid none;
  padding-block: 10px;
  padding-inline: 0;
}
@media screen and (min-width: 480px) {
  .bl_recipientSelect {
    padding-inline: 20;
  }
}

ul.bl_giftPackage {
  margin-block: 15px;
}

.el_giftPackage_item {
  border-bottom: 1px solid var(--border-color);
  padding-block: 5px;
  margin-block: 5px;
  display: flex;
  align-items: center;
}
.el_giftPackage_item label {
  width: 100%;
  cursor: pointer;
}
.el_giftPackage_item label img {
  width: 50px;
}
.el_giftPackage_item .woocommerce-Price-amount {
  margin-left: auto;
}
.el_giftPackage_item label.el_giftPackage_num {
  width: auto;
  white-space: nowrap;
}
.el_giftPackage_item label.el_giftPackage_num input {
  width: 60px;
  border: 1px solid var(--border-color);
  padding: 5px;
}
.el_giftPackage_item label.el_giftPackage_num input:disabled {
  opacity: 0.5;
}

.popup_lightBox {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
}

.popup_lightBox_content {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
}
.popup_lightBox_content img {
  max-width: 100%;
  max-height: 80vh;
  display: block;
  border-radius: 4px;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.3);
}

.popup_lightBox_close {
  position: absolute;
  top: -30px;
  right: 0;
  background: #fff;
  border: none;
  padding: 10px 14px;
  font-size: 18px;
  cursor: pointer;
  border-radius: 3px;
  line-height: 1;
}

.bl_deliverySchedule {
  margin-top: 20px;
  overflow: auto;
  border-top: 1px solid var(--border-color);
}
.bl_deliverySchedule li {
  display: flex;
  gap: 5px;
  width: 100%;
  align-items: center;
  border-bottom: 1px solid var(--border-color);
  padding-block: 10px;
}
.bl_deliverySchedule li > span {
  display: flex;
  gap: 5px;
}
.bl_deliverySchedule li .el_shippingClass_cost,
.bl_deliverySchedule li .el_shippingClass_name {
  font-size: 0.8em;
}
.bl_deliverySchedule li select {
  margin-left: auto;
}

#js-allocation-response.is_cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.368627451);
  font-weight: bold;
  color: #fff;
  margin-top: 0;
  font-size: 20px;
}

.bl_allocation_RecipientInfo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
  margin-top: -10px;
  margin-bottom: 10px;
  font-weight: var(--fw-bold);
  white-space: nowrap;
}
.bl_allocation_RecipientInfo .el_addItem_Label {
  font-size: 0.9em;
}
.bl_allocation_RecipientInfo .el_addItem_ShippingName {
  line-height: 1.2;
  font-size: 1.4em;
}
.bl_allocation_RecipientInfo .el_addItem_ShippingName span.el_company_name {
  font-size: 0.9em;
}
.bl_allocation_RecipientInfo .el_address_short {
  font-size: 0.9em;
  opacity: 0.6;
  font-weight: var(--fw-regular);
  overflow: hidden;
  text-overflow: ellipsis;
}
.bl_allocation_RecipientInfo + p {
  line-height: 1.4;
}

ul.bl_multipleShipping_items {
  margin-top: 15px;
}

.bl_recipientForm .bl_multipleShipping_item {
  gap: 10px;
  align-items: flex-start;
  margin-top: 15px;
}
.bl_recipientForm .bl_multipleShipping_item figure {
  width: 120px;
  flex-shrink: 0;
}
.bl_recipientForm .el_multipleShipping_prodcutInfo {
  display: flex;
  flex-direction: column;
  line-height: 1.4;
  width: 100%;
}
.bl_recipientForm .el_multipleShipping_prodcutInfo .el_productName {
  font-weight: var(--fw-bold);
  border-bottom: 1px solid #efefef;
  padding-bottom: 5px;
  margin-bottom: 5px;
  font-size: 1.1em;
}
.bl_recipientForm .el_multipleShipping_prodcutInfo .el_prodcutNum {
  font-size: 0.9em;
}
.bl_recipientForm .el_multipleShipping_prodcutInfo .js-unallocated-num {
  font-size: 1.3em;
  padding-inline: 2px;
  font-weight: var(--fw-bold);
}
.bl_recipientForm .el_multipleShipping_prodcutInfo button.el_linkButton_s {
  font-size: 13px;
  margin-top: 6px;
  padding-inline: 8px 14px;
}
.bl_recipientForm .el_multipleShipping_prodcutInfo button.el_linkButton_s:before {
  content: "+";
  margin-right: 5px;
  font-size: 1.1em;
}
.bl_recipientForm .el_multipleShipping_QtyInfo {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media screen and (min-width: 900px) {
  .bl_recipientForm .el_multipleShipping_QtyInfo {
    grid-template-columns: 1fr 145px;
    align-items: center;
  }
}
.bl_recipientForm .el_multipleShipping_cartInfo {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.bl_recipientForm .el_multipleShipping_qty {
  margin-left: auto;
}
.bl_recipientForm .el_multipleShipping_qty input[type=number] {
  font-size: 1.5em;
}

.bl_recipientForm .bl_multipleShipping {
  margin-bottom: 0;
}

.bl_addItem_info {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
@media screen and (max-width: 899px) {
  .bl_addItem_info {
    flex-direction: column;
    align-items: center;
  }
}
.bl_addItem_info figure {
  border: 1px solid var(--border-color);
  flex-shrink: 0;
  max-width: 200px;
}
.bl_addItem_info p {
  line-height: 1.4;
}
.bl_addItem_info strong {
  font-size: 1.1em;
}
.bl_multipleShipping .bl_addItem_info figure {
  max-width: 200px;
}
.bl_addItem_info .el_addItem_name {
  font-weight: 700;
  margin-bottom: 5px;
  font-size: 20px;
  font-family: YakuHanJP_Narrow, "Noto Serif JP", serif;
  line-height: 1.4;
}
.bl_addItem_info .el_cartItem_meta {
  font-size: 0.8em;
  opacity: 0.6;
  line-height: 1.4;
}
.bl_addItem_info .el_price {
  font-weight: 700;
}
.bl_addItem_info .el_price span.woocommerce-Price-currencySymbol {
  font-size: 0.8em;
  margin-right: 2px;
}
.bl_addItem_info .el_addItem_cartNum span {
  font-size: 0.8em;
}
.bl_addItem_info .el_addItem_formSum {
  font-size: 0.8em;
  opacity: 0;
}
.bl_addItem_info .el_addItem_formSum input {
  width: 30px;
  border: none;
  padding: 0;
  font-size: 16;
}
.bl_addItem_info .el_addItem_note {
  font-size: 0.8em;
  font-weight: bold;
  color: var(--accent-color);
}
.bl_addItem_info .quantity {
  margin-top: 10px;
}
.bl_addItem_info .el_qtyInput {
  gap: 10px;
}

.el_recipientsList_noList {
  font-size: 0.9em;
  margin-block: 10px;
  opacity: 0.7;
  text-align: center;
}

#js-add-checkout-cart-form p {
  text-align: center;
  background-color: #efefef;
  padding: 5px;
  border-radius: 5px;
  margin-bottom: 20px;
}
#js-add-checkout-cart-form .el_qtyInput {
  justify-content: center;
}

#js-general .bl_article_content {
  --article-mt: 20px;
  --artilce-heading-mt: 30px;
  font-size: 14px;
}
#js-general .bl_article_content .wp-block-media-text {
  gap: 15px;
  display: flex;
  flex-direction: column-reverse;
}
#js-general .bl_article_content .wp-block-media-text__content {
  padding-inline: 0;
}
#js-general .bl_article_content h2.wp-block-heading {
  padding-bottom: 10px;
}
#js-general .bl_popupContent {
  background-color: #fff;
  border-radius: 20px;
  overflow: hidden;
}
#js-general .bl_popupContent .bl_popupForm_inner {
  height: 85vh;
  padding-top: 10px;
}
#js-general button.close-general {
  display: block;
  margin-right: 0;
  margin-left: auto;
  padding-block: 10px;
  padding-inline: 23px;
}

.bl_popupForm_inner button:focus {
  box-shadow: 0 0 5px #666;
}

.js-add-checkout-cart-response {
  margin-top: 15px;
  text-align: center;
}

.bl_send-mail.js-send-mail-content pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  height: 40vh;
  overflow-y: auto;
  border: 1px solid var(--border-color);
  padding-block: 15px;
  padding-inline: 15px;
}

.bl_article_content {
  --article-mt: 20px;
}
@media screen and (min-width: 900px) {
  .bl_article_content {
    --article-mt: 50px;
  }
}

.bl_itemSlider.alignfull {
  --swiper-side-fade-color: #ffebee;
  --swiper-navigation-size: 30px;
  position: relative;
}
.has-white-background-color .bl_itemSlider.alignfull {
  --swiper-side-fade-color: #fff;
}
.bl_itemSlider.alignfull::before, .bl_itemSlider.alignfull::after {
  position: absolute;
  top: 0;
  content: "";
  height: 100%;
  background: linear-gradient(to right, var(--swiper-side-fade-color), transparent);
  z-index: 10;
  width: 10px;
}
@media screen and (min-width: 900px) {
  .bl_itemSlider.alignfull::before, .bl_itemSlider.alignfull::after {
    width: 100px;
  }
}
.bl_itemSlider.alignfull::before {
  left: 0;
  background-image: linear-gradient(90deg, var(--swiper-side-fade-color), var(--swiper-side-fade-color) 50%, transparent);
}
.bl_itemSlider.alignfull::after {
  right: 0;
  background-image: linear-gradient(-90deg, var(--swiper-side-fade-color), var(--swiper-side-fade-color) 50%, transparent);
}
.bl_itemSlider.alignfull .swiper {
  max-width: 1920px;
  margin-inline: auto;
  position: relative;
}
.bl_itemSlider.alignfull .bl_itemSlider_item {
  display: flex;
  flex-direction: column;
}
.bl_itemSlider.alignfull .bl_itemSlider_item img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: none;
  width: 100%;
}
.bl_itemSlider.alignfull h4.woocommerce-loop-product__title {
  font-weight: 700;
  margin-top: 10px;
  line-height: 1.3;
  font-size: 11px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media screen and (min-width: 900px) {
  .bl_itemSlider.alignfull h4.woocommerce-loop-product__title {
    font-size: 14px;
  }
}
.bl_itemSlider.alignfull .swiper-button-next {
  --swiper-navigation-sides-offset: 20px;
}
.bl_itemSlider.alignfull .swiper-button-prev {
  --swiper-navigation-sides-offset: 30px;
}
.bl_itemSlider.alignfull .swiper-button-next,
.bl_itemSlider.alignfull .swiper-button-prev {
  z-index: 20;
  --swiper-navigation-color: var(--main-text-color);
}
@media screen and (max-width: 600px) {
  .bl_itemSlider.alignfull .swiper-button-next,
  .bl_itemSlider.alignfull .swiper-button-prev {
    display: none;
  }
}

.bl_itemList .bl_itemSlider_item,
.bl_itemSlider.alignfull .bl_itemSlider_item {
  display: flex;
  flex-direction: column;
}
.bl_itemList .bl_itemSlider_item img,
.bl_itemSlider.alignfull .bl_itemSlider_item img {
  aspect-ratio: 610/500;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: none;
  width: 100%;
}
.bl_itemList h4.woocommerce-loop-product__title,
.bl_itemSlider.alignfull h4.woocommerce-loop-product__title {
  font-weight: 700;
  margin-top: 10px;
  line-height: 1.3;
  font-size: 11px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media screen and (min-width: 900px) {
  .bl_itemList h4.woocommerce-loop-product__title,
  .bl_itemSlider.alignfull h4.woocommerce-loop-product__title {
    font-size: 14px;
  }
}

.wp-block-separator {
  border-bottom: 1px solid;
  color: #dadada;
}

.bl_itemList {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fill, minmax(200px, 250px));
  justify-content: center;
}

.error404 .abstract {
  text-align: center;
}
.error404 a.wp-block-button__link.wp-element-button {
  max-width: 400px;
  margin-inline: auto;
}/*# sourceMappingURL=style.css.map */